Issue 3161: Missing import and test.

This commit is contained in:
Raymond Hettinger 2008-06-23 03:29:28 +00:00
parent 9da18b3133
commit 4c52f52ef3
2 changed files with 16 additions and 0 deletions

View File

@ -9,6 +9,7 @@ bootstrapping issues. Unit tests are in test_collections.
""" """
from abc import ABCMeta, abstractmethod from abc import ABCMeta, abstractmethod
import sys
__all__ = ["Hashable", "Iterable", "Iterator", __all__ = ["Hashable", "Iterable", "Iterator",
"Sized", "Container", "Callable", "Sized", "Container", "Callable",

View File

@ -294,6 +294,21 @@ class TestCollectionABCs(unittest.TestCase):
self.failUnless(isinstance(sample(), Set)) self.failUnless(isinstance(sample(), Set))
self.failUnless(issubclass(sample, Set)) self.failUnless(issubclass(sample, Set))
def test_hash_Set(self):
class OneTwoThreeSet(Set):
def __init__(self):
self.contents = [1, 2, 3]
def __contains__(self, x):
return x in self.contents
def __len__(self):
return len(self.contents)
def __iter__(self):
return iter(self.contents)
def __hash__(self):
return self._hash()
a, b = OneTwoThreeSet(), OneTwoThreeSet()
self.failUnless(hash(a) == hash(b))
def test_MutableSet(self): def test_MutableSet(self):
self.failUnless(isinstance(set(), MutableSet)) self.failUnless(isinstance(set(), MutableSet))
self.failUnless(issubclass(set, MutableSet)) self.failUnless(issubclass(set, MutableSet))