diff options
Diffstat (limited to 'spec/ruby/core/kernel/open_spec.rb')
| -rw-r--r-- | spec/ruby/core/kernel/open_spec.rb | 100 |
1 files changed, 50 insertions, 50 deletions
diff --git a/spec/ruby/core/kernel/open_spec.rb b/spec/ruby/core/kernel/open_spec.rb index bb42c31f31..14a3c43cad 100644 --- a/spec/ruby/core/kernel/open_spec.rb +++ b/spec/ruby/core/kernel/open_spec.rb @@ -15,70 +15,70 @@ describe "Kernel#open" do end it "is a private method" do - Kernel.should have_private_instance_method(:open) + Kernel.private_instance_methods(false).should.include?(:open) end it "opens a file when given a valid filename" do @file = open(@name) - @file.should be_kind_of(File) + @file.should.is_a?(File) end it "opens a file when called with a block" do open(@name, "r") { |f| f.gets }.should == @content end - platform_is_not :windows, :wasi do - it "opens an io when path starts with a pipe" do - suppress_warning do # https://bugs.ruby-lang.org/issues/19630 - @io = open("|date") + ruby_version_is ""..."4.0" do + platform_is_not :windows, :wasi do + it "opens an io when path starts with a pipe" do + suppress_warning do # https://bugs.ruby-lang.org/issues/19630 + @io = open("|date") + end + begin + @io.should.is_a?(IO) + @io.read + ensure + @io.close + end end - begin - @io.should be_kind_of(IO) - @io.read - ensure - @io.close - end - end - it "opens an io when called with a block" do - suppress_warning do # https://bugs.ruby-lang.org/issues/19630 - @output = open("|date") { |f| f.read } + it "opens an io when called with a block" do + suppress_warning do # https://bugs.ruby-lang.org/issues/19630 + @output = open("|date") { |f| f.read } + end + @output.should_not == '' end - @output.should_not == '' - end - it "opens an io for writing" do - suppress_warning do # https://bugs.ruby-lang.org/issues/19630 - -> { - bytes = open("|cat", "w") { |io| io.write(".") } - bytes.should == 1 - }.should output_to_fd(".") + it "opens an io for writing" do + suppress_warning do # https://bugs.ruby-lang.org/issues/19630 + -> { + bytes = open("|cat", "w") { |io| io.write(".") } + bytes.should == 1 + }.should output_to_fd(".") + end end end - end - platform_is :windows do - it "opens an io when path starts with a pipe" do - suppress_warning do # https://bugs.ruby-lang.org/issues/19630 - @io = open("|date /t") + platform_is :windows do + it "opens an io when path starts with a pipe" do + suppress_warning do # https://bugs.ruby-lang.org/issues/19630 + @io = open("|date /t") + end + begin + @io.should.is_a?(IO) + @io.read + ensure + @io.close + end end - begin - @io.should be_kind_of(IO) - @io.read - ensure - @io.close - end - end - it "opens an io when called with a block" do - suppress_warning do # https://bugs.ruby-lang.org/issues/19630 - @output = open("|date /t") { |f| f.read } + it "opens an io when called with a block" do + suppress_warning do # https://bugs.ruby-lang.org/issues/19630 + @output = open("|date /t") { |f| f.read } + end + @output.should_not == '' end - @output.should_not == '' end - end - ruby_version_is "3.3" do # https://bugs.ruby-lang.org/issues/19630 it "warns about deprecation given a path with a pipe" do cmd = "|echo ok" @@ -89,16 +89,16 @@ describe "Kernel#open" do end it "raises an ArgumentError if not passed one argument" do - -> { open }.should raise_error(ArgumentError) + -> { open }.should.raise(ArgumentError) end it "accepts options as keyword arguments" do @file = open(@name, "r", 0666, flags: File::CREAT) - @file.should be_kind_of(File) + @file.should.is_a?(File) -> { open(@name, "r", 0666, {flags: File::CREAT}) - }.should raise_error(ArgumentError, "wrong number of arguments (given 4, expected 1..3)") + }.should.raise(ArgumentError, "wrong number of arguments (given 4, expected 1..3)") end describe "when given an object that responds to to_open" do @@ -106,7 +106,7 @@ describe "Kernel#open" do ScratchPad.clear end - it "calls #to_path to covert the argument to a String before calling #to_str" do + it "calls #to_path to convert the argument to a String before calling #to_str" do obj = mock("open to_path") obj.should_receive(:to_path).at_least(1).times.and_return(@name) obj.should_not_receive(:to_str) @@ -126,7 +126,7 @@ describe "Kernel#open" do @file = File.open(@name) obj.should_receive(:to_open).and_return(@file) @file = open(obj) - @file.should be_kind_of(File) + @file.should.is_a?(File) end it "returns the value from #to_open" do @@ -167,9 +167,9 @@ describe "Kernel#open" do it "raises a TypeError if passed a non-String that does not respond to #to_open" do obj = mock('non-fileish') - -> { open(obj) }.should raise_error(TypeError) - -> { open(nil) }.should raise_error(TypeError) - -> { open(7) }.should raise_error(TypeError) + -> { open(obj) }.should.raise(TypeError) + -> { open(nil) }.should.raise(TypeError) + -> { open(7) }.should.raise(TypeError) end it "accepts nil for mode and permission" do |
