diff options
author | Raymond Hettinger <python@rcn.com> | 2003-12-31 02:01:33 +0000 |
---|---|---|
committer | Raymond Hettinger <python@rcn.com> | 2003-12-31 02:01:33 +0000 |
commit | 9854e879a03396d6961322c26de2c99534f05e29 (patch) | |
tree | ec1ac67d40749971200f34a4e9d0e356ae9bcb9c /Lib | |
parent | d7987facb945b789e3f508db12f4dea4a4fd6422 (diff) | |
download | cpython-9854e879a03396d6961322c26de2c99534f05e29.tar.gz |
Strengthen the test for hash effectiveness
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_set.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/Lib/test/test_set.py b/Lib/test/test_set.py index 5d3716967c..2104ee90e1 100644 --- a/Lib/test/test_set.py +++ b/Lib/test/test_set.py @@ -389,12 +389,12 @@ class TestFrozenSet(TestJointOps): def test_hash_effectiveness(self): n = 13 - rng = range(n) hashvalues = set() + addhashvalue = hashvalues.add + elemmasks = [(i+1, 1<<i) for i in range(n)] for i in xrange(2**n): - combination = [j for j in rng if (1<<j)&i] - hashvalues.add(hash(self.thetype(combination))) - self.assert_(len(hashvalues) >= 2**(n-2)) + addhashvalue(hash(frozenset([e for e, m in elemmasks if m&i]))) + self.assertEqual(len(hashvalues), 2**n) class FrozenSetSubclass(frozenset): pass |