diff --git a/Lib/test/test_set.py b/Lib/test/test_set.py index 26e38abb21f..46e4000e0fd 100644 --- a/Lib/test/test_set.py +++ b/Lib/test/test_set.py @@ -5,6 +5,7 @@ import operator import copy import pickle import os +from random import randrange, shuffle class PassThru(Exception): pass @@ -399,6 +400,15 @@ class TestFrozenSet(TestJointOps): self.assertEqual(hash(self.thetype('abcdeb')), hash(self.thetype('ebecda'))) + # make sure that all permutations give the same hash value + n = 100 + seq = [randrange(n) for i in xrange(n)] + results = set() + for i in xrange(200): + shuffle(seq) + results.add(hash(self.thetype(seq))) + self.assertEqual(len(results), 1) + def test_copy(self): dup = self.s.copy() self.assertEqual(id(self.s), id(dup))