From 97656a1c823706c2ee5d0b9e3d6d7be0c0550d9f Mon Sep 17 00:00:00 2001 From: Fred Drake Date: Fri, 18 May 2001 21:45:35 +0000 Subject: Simple conversion to PyUnit. --- Lib/test/test_hash.py | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/Lib/test/test_hash.py b/Lib/test/test_hash.py index d5ac026..befde74 100644 --- a/Lib/test/test_hash.py +++ b/Lib/test/test_hash.py @@ -3,21 +3,29 @@ # import test_support +import unittest -def same_hash(*objlist): - # hash each object given an raise TestFailed if - # the hash values are not all the same - hashed = map(hash, objlist) - for h in hashed[1:]: - if h != hashed[0]: - raise TestFailed, "hashed values differ: %s" % `objlist` +class HashEqualityTestCase(unittest.TestCase): + def same_hash(self, *objlist): + # hash each object given an raise TestFailed if + # the hash values are not all the same + hashed = map(hash, objlist) + for h in hashed[1:]: + if h != hashed[0]: + self.fail("hashed values differ: %s" % `objlist`) + def test_numeric_literals(self): + self.same_hash(1, 1L, 1.0, 1.0+0.0j) -same_hash(1, 1L, 1.0, 1.0+0.0j) -same_hash(int(1), long(1), float(1), complex(1)) + def test_coerced_integers(self): + self.same_hash(int(1), long(1), float(1), complex(1), + int('1'), float('1.0')) -same_hash(long(1.23e300), float(1.23e300)) + def test_coerced_floats(self): + self.same_hash(long(1.23e300), float(1.23e300)) + self.same_hash(float(0.5), complex(0.5, 0.0)) -same_hash(float(0.5), complex(0.5, 0.0)) + +test_support.run_unittest(HashEqualityTestCase) -- cgit v0.12