diff --git a/spec/rubyspec/library/delegate/delegator/eql_spec.rb b/spec/rubyspec/library/delegate/delegator/eql_spec.rb index 7d101eb262..fd6824ec55 100644 --- a/spec/rubyspec/library/delegate/delegator/eql_spec.rb +++ b/spec/rubyspec/library/delegate/delegator/eql_spec.rb @@ -2,34 +2,45 @@ require File.expand_path('../../../../spec_helper', __FILE__) require File.expand_path('../../fixtures/classes', __FILE__) describe "Delegator#eql?" do - it "returns true when compared with same delegator" do - base = mock('base') - delegator = DelegateSpecs::Delegator.new(base) - - delegator.eql?(delegator).should be_true + ruby_version_is ""..."2.5" do + it "is delegated" do + base = mock('base') + delegator = DelegateSpecs::Delegator.new(base) + base.should_receive(:eql?).with(42).and_return(:foo) + delegator.eql?(42).should == :foo + end end - it "returns true when compared with the inner object" do - base = mock('base') - delegator = DelegateSpecs::Delegator.new(base) + ruby_version_is "2.5" do + it "returns true when compared with same delegator" do + base = mock('base') + delegator = DelegateSpecs::Delegator.new(base) - delegator.eql?(base).should be_true - end + delegator.eql?(delegator).should be_true + end - it "returns false when compared with the delegator with other object" do - base = mock('base') - other = mock('other') - delegator0 = DelegateSpecs::Delegator.new(base) - delegator1 = DelegateSpecs::Delegator.new(other) + it "returns true when compared with the inner object" do + base = mock('base') + delegator = DelegateSpecs::Delegator.new(base) - delegator0.eql?(delegator1).should be_false - end + delegator.eql?(base).should be_true + end - it "returns false when compared with the other object" do - base = mock('base') - other = mock('other') - delegator = DelegateSpecs::Delegator.new(base) + it "returns false when compared with the delegator with other object" do + base = mock('base') + other = mock('other') + delegator0 = DelegateSpecs::Delegator.new(base) + delegator1 = DelegateSpecs::Delegator.new(other) - delegator.eql?(other).should be_false + delegator0.eql?(delegator1).should be_false + end + + it "returns false when compared with the other object" do + base = mock('base') + other = mock('other') + delegator = DelegateSpecs::Delegator.new(base) + + delegator.eql?(other).should be_false + end end end