From 54499d78109037d7c37bc09a8c3ffa0050da5aca Mon Sep 17 00:00:00 2001 From: Jeremy Evans Date: Sun, 25 Aug 2019 11:25:41 -0700 Subject: Remove support for passing nil to IO#ungetc Fixes [Bug #13675] --- spec/ruby/core/io/ungetc_spec.rb | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'spec') diff --git a/spec/ruby/core/io/ungetc_spec.rb b/spec/ruby/core/io/ungetc_spec.rb index 34d4caf745..4be0e3aa8b 100644 --- a/spec/ruby/core/io/ungetc_spec.rb +++ b/spec/ruby/core/io/ungetc_spec.rb @@ -103,10 +103,19 @@ describe "IO#ungetc" do -> { @io.sysread(1) }.should raise_error(IOError) end - it "does not affect the stream and returns nil when passed nil" do - @io.getc.should == ?V - @io.ungetc(nil) - @io.getc.should == ?o + ruby_version_is "0"..."2.8" do + it "does not affect the stream and returns nil when passed nil" do + @io.getc.should == ?V + @io.ungetc(nil) + @io.getc.should == ?o + end + end + + ruby_version_is "2.8" do + it "raises TypeError if passed nil" do + @io.getc.should == ?V + proc{@io.ungetc(nil)}.should raise_error(TypeError) + end end it "puts one or more characters back in the stream" do -- cgit v1.2.3