1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
require 'test/unit'
class TestDelegatedArrayEquals < Test::Unit::TestCase
class Foo
def initialize
@ary = [1,2,3]
end
def ==(other)
@ary == other
end
def to_ary
@ary
end
end
class Foo2
def initialize
@ary = [1,2,3]
end
def ==(other)
@ary == other
end
end
def test_delegated_array_equals
a = Foo.new
assert_equal(a, a)
assert(a == a)
end
def test_badly_delegated_array_equals
a = Foo2.new
assert_not_equal(a, a)
assert(!(a == a))
end
end
|