Issue #20006: Fix sporadic failures in test_weakset.

This commit is contained in:
Antoine Pitrou 2013-12-18 00:28:36 +01:00
parent 0c73fc04e6
commit 320b39158e
2 changed files with 8 additions and 1 deletions

View file

@ -370,9 +370,14 @@ class TestWeakSet(unittest.TestCase):
def testcontext():
try:
it = iter(s)
next(it)
# Start iterator
yielded = ustr(str(next(it)))
# Schedule an item for removal and recreate it
u = ustr(str(items.pop()))
if yielded == u:
# The iterator still has a reference to the removed item,
# advance it (issue #20006).
next(it)
gc.collect() # just in case
yield u
finally: