diff options
Diffstat (limited to 'spec/ruby/core/kernel/open_spec.rb')
-rw-r--r-- | spec/ruby/core/kernel/open_spec.rb | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/spec/ruby/core/kernel/open_spec.rb b/spec/ruby/core/kernel/open_spec.rb index 981b5291b3..8d936d8ca0 100644 --- a/spec/ruby/core/kernel/open_spec.rb +++ b/spec/ruby/core/kernel/open_spec.rb @@ -2,7 +2,6 @@ require_relative '../../spec_helper' require_relative 'fixtures/classes' describe "Kernel#open" do - before :each do @name = tmp("kernel_open.txt") @content = "This is a test" @@ -137,6 +136,18 @@ describe "Kernel#open" do it "accepts nil for mode and permission" do open(@name, nil, nil) { |f| f.gets }.should == @content end + + ruby_version_is ""..."3.0" do + it "works correctly when redefined by open-uri" do + code = <<~RUBY + require 'open-uri' + obj = Object.new + def obj.to_open; self; end + p open(obj) == obj + RUBY + ruby_exe(code, args: "2>&1").should == "true\n" + end + end end describe "Kernel.open" do |