diff options
author | Benoit Daloze <eregontp@gmail.com> | 2022-01-10 16:29:54 +0100 |
---|---|---|
committer | Benoit Daloze <eregontp@gmail.com> | 2022-01-10 16:29:54 +0100 |
commit | 4053e8ba0d39b688440fedee2ab3fffabcd64312 (patch) | |
tree | 8a29366a09cd159798fada68fb1007a2fece5ec6 /spec/ruby/core/module | |
parent | 8abfc106058d09840d13f64e7e87cb7e40c3d6fa (diff) |
Update to ruby/spec@226cfdc
Diffstat (limited to 'spec/ruby/core/module')
-rw-r--r-- | spec/ruby/core/module/include_spec.rb | 21 | ||||
-rw-r--r-- | spec/ruby/core/module/prepend_spec.rb | 2 |
2 files changed, 22 insertions, 1 deletions
diff --git a/spec/ruby/core/module/include_spec.rb b/spec/ruby/core/module/include_spec.rb index 128b9af2bf..c47e052d22 100644 --- a/spec/ruby/core/module/include_spec.rb +++ b/spec/ruby/core/module/include_spec.rb @@ -532,6 +532,27 @@ describe "Module#include" do B.foo.should == 'n' end end + + it "overrides a previous super method call" do + c1 = Class.new do + def foo + [:c1] + end + end + c2 = Class.new(c1) do + def foo + [:c2] + super + end + end + c2.new.foo.should == [:c2, :c1] + m = Module.new do + def foo + [:m1] + end + end + c2.include(m) + c2.new.foo.should == [:c2, :m1] + end end describe "Module#include?" do diff --git a/spec/ruby/core/module/prepend_spec.rb b/spec/ruby/core/module/prepend_spec.rb index 04cc27d472..d636e023ed 100644 --- a/spec/ruby/core/module/prepend_spec.rb +++ b/spec/ruby/core/module/prepend_spec.rb @@ -499,7 +499,7 @@ describe "Module#prepend" do c.dup.new.should be_kind_of(m) end - ruby_version_is '0'...'3.0' do + ruby_version_is ''...'3.0' do it "keeps the module in the chain when dupping an intermediate module" do m1 = Module.new { def calc(x) x end } m2 = Module.new { prepend(m1) } |