Add a regression test for SF bug #478536: If a value cannot be weakly

referenced, WeakKeyDictionary.has_key() should return 0 instead of raising
TypeError.
This commit is contained in:
Fred Drake 2001-11-06 16:38:34 +00:00
parent 3bae7ddf8e
commit 752eda459a

View file

@ -272,7 +272,7 @@ def test_weak_values(self):
def test_weak_keys(self):
#
# This exercises d.copy(), d.items(), d[] = v, d[], del d[],
# len(d).
# len(d), d.has_key().
#
dict, objects = self.make_weak_keyed_dict()
for o in objects:
@ -294,6 +294,10 @@ def test_weak_keys(self):
del objects, o
self.assert_(len(dict) == 0,
"deleting the keys did not clear the dictionary")
o = Object(42)
dict[o] = "What is the meaning of the universe?"
self.assert_(dict.has_key(o))
self.assert_(not dict.has_key(34))
def test_weak_keyed_iters(self):
dict, objects = self.make_weak_keyed_dict()