|
1 | 1 | require_relative '../../spec_helper' |
2 | | -require_relative '../../shared/kernel/equal' |
3 | 2 |
|
4 | 3 | describe "BasicObject#equal?" do |
5 | | - it "is a public instance method" do |
6 | | - BasicObject.public_instance_methods(false).should.include?(:equal?) |
7 | | - end |
8 | | - |
9 | | - it_behaves_like :object_equal, :equal? |
10 | | - |
11 | | - it "is unaffected by overriding __id__" do |
12 | | - o1 = mock("object") |
13 | | - o2 = mock("object") |
14 | | - suppress_warning { |
15 | | - def o1.__id__; 10; end |
16 | | - def o2.__id__; 10; end |
17 | | - } |
18 | | - o1.equal?(o2).should == false |
19 | | - end |
20 | | - |
21 | | - it "is unaffected by overriding object_id" do |
22 | | - o1 = mock("object") |
23 | | - o1.stub!(:object_id).and_return(10) |
24 | | - o2 = mock("object") |
25 | | - o2.stub!(:object_id).and_return(10) |
26 | | - o1.equal?(o2).should == false |
27 | | - end |
28 | | - |
29 | | - it "is unaffected by overriding ==" do |
30 | | - # different objects, overriding == to return true |
31 | | - o1 = mock("object") |
32 | | - o1.stub!(:==).and_return(true) |
33 | | - o2 = mock("object") |
34 | | - o1.equal?(o2).should == false |
35 | | - |
36 | | - # same objects, overriding == to return false |
37 | | - o3 = mock("object") |
38 | | - o3.stub!(:==).and_return(false) |
39 | | - o3.equal?(o3).should == true |
40 | | - end |
41 | | - |
42 | | - it "is unaffected by overriding eql?" do |
43 | | - # different objects, overriding eql? to return true |
44 | | - o1 = mock("object") |
45 | | - o1.stub!(:eql?).and_return(true) |
46 | | - o2 = mock("object") |
47 | | - o1.equal?(o2).should == false |
48 | | - |
49 | | - # same objects, overriding eql? to return false |
50 | | - o3 = mock("object") |
51 | | - o3.stub!(:eql?).and_return(false) |
52 | | - o3.equal?(o3).should == true |
| 4 | + it "is an alias of BasicObject#==" do |
| 5 | + BasicObject.instance_method(:equal?).should == BasicObject.instance_method(:==) |
53 | 6 | end |
54 | 7 | end |
0 commit comments