From d6ab828369b8ab6995b47abd9ab5982618c2d334 Mon Sep 17 00:00:00 2001 From: nobu Date: Sat, 25 Jul 2009 04:44:36 +0000 Subject: * complex.c (nucomp_hash), rational.c (nurat_hash): not to use hash value of class so that equality against subclasses can work. [ruby-dev:38850] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_complex.rb | 3 +++ test/ruby/test_rational.rb | 4 ++++ 2 files changed, 7 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_complex.rb b/test/ruby/test_complex.rb index ca26f45d21..6885294f84 100644 --- a/test/ruby/test_complex.rb +++ b/test/ruby/test_complex.rb @@ -36,6 +36,9 @@ class Complex_Test < Test::Unit::TestCase assert_instance_of(ComplexSub, c5) end + c1 = Complex(1) + assert_equal(c1.hash, c.hash, '[ruby-dev:38850]') + assert_equal([true, true], [c.eql?(c1), c1.eql?(c)]) end def test_eql_p diff --git a/test/ruby/test_rational.rb b/test/ruby/test_rational.rb index 85545fea6b..82313db6b2 100644 --- a/test/ruby/test_rational.rb +++ b/test/ruby/test_rational.rb @@ -35,6 +35,10 @@ class Rational_Test < Test::Unit::TestCase assert_equal(c, c5) assert_instance_of(RationalSub, c5) end + + c1 = Rational(1) + assert_equal(c1.hash, c.hash, '[ruby-dev:38850]') + assert_equal([true, true], [c.eql?(c1), c1.eql?(c)]) end def test_eql_p -- cgit v1.2.3