MCPcopy Index your code
hub / github.com/python/cpython / test_weak_keyed_iters

Method test_weak_keyed_iters

Lib/test/test_weakref.py:1443–1468  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1441 self.assertNotIn(34, dict)
1442
1443 def test_weak_keyed_iters(self):
1444 dict, objects = self.make_weak_keyed_dict()
1445 self.check_iters(dict)
1446
1447 # Test keyrefs()
1448 refs = dict.keyrefs()
1449 self.assertEqual(len(refs), len(objects))
1450 objects2 = list(objects)
1451 for wr in refs:
1452 ob = wr()
1453 self.assertIn(ob, dict)
1454 self.assertIn(ob, dict)
1455 self.assertEqual(ob.arg, dict[ob])
1456 objects2.remove(ob)
1457 self.assertEqual(len(objects2), 0)
1458
1459 # Test iterkeyrefs()
1460 objects2 = list(objects)
1461 self.assertEqual(len(list(dict.keyrefs())), len(objects))
1462 for wr in dict.keyrefs():
1463 ob = wr()
1464 self.assertIn(ob, dict)
1465 self.assertIn(ob, dict)
1466 self.assertEqual(ob.arg, dict[ob])
1467 objects2.remove(ob)
1468 self.assertEqual(len(objects2), 0)
1469
1470 def test_weak_valued_iters(self):
1471 dict, objects = self.make_weak_valued_dict()

Callers

nothing calls this directly

Calls 7

make_weak_keyed_dictMethod · 0.95
check_itersMethod · 0.95
listClass · 0.85
keyrefsMethod · 0.80
assertInMethod · 0.80
assertEqualMethod · 0.45
removeMethod · 0.45

Tested by

no test coverage detected