Home | History | Annotate | Download | only in test

Lines Matching refs:dict

529         # attributes ("J") in the class dict first.  The class (II) wants to
1182 dict, objects = self.make_weak_valued_dict()
1185 self.assertIs(o, dict[o.arg],
1186 "wrong object returned by weak dict!")
1187 items1 = list(dict.items())
1188 items2 = list(dict.copy().items())
1194 self.assertEqual(len(dict), self.COUNT)
1196 self.assertEqual(len(dict), self.COUNT - 1,
1199 self.assertEqual(len(dict), 0,
1202 dict = weakref.WeakValueDictionary()
1203 self.assertRaises(KeyError, dict.__getitem__, 1)
1204 dict[2] = C()
1205 self.assertRaises(KeyError, dict.__getitem__, 2)
1212 dict, objects = self.make_weak_keyed_dict()
1216 self.assertIs(o.arg, dict[o],
1217 "wrong object returned by weak dict!")
1218 items1 = dict.items()
1219 items2 = dict.copy().items()
1223 self.assertEqual(len(dict), self.COUNT)
1225 self.assertEqual(len(dict), (self.COUNT - 1),
1228 self.assertEqual(len(dict), 0,
1231 dict[o] = "What is the meaning of the universe?"
1232 self.assertIn(o, dict)
1233 self.assertNotIn(34, dict)
1236 dict, objects = self.make_weak_keyed_dict()
1237 self.check_iters(dict)
1240 refs = dict.keyrefs()
1245 self.assertIn(ob, dict)
1246 self.assertIn(ob, dict)
1247 self.assertEqual(ob.arg, dict[ob])
1253 self.assertEqual(len(list(dict.keyrefs())), len(objects))
1254 for wr in dict.keyrefs():
1256 self.assertIn(ob, dict)
1257 self.assertIn(ob, dict)
1258 self.assertEqual(ob.arg, dict[ob])
1263 dict, objects = self.make_weak_valued_dict()
1264 self.check_iters(dict)
1267 refs = dict.valuerefs()
1272 self.assertEqual(ob, dict[ob.arg])
1273 self.assertEqual(ob.arg, dict[ob.arg].arg)
1279 self.assertEqual(len(list(dict.itervaluerefs())), len(objects))
1280 for wr in dict.itervaluerefs():
1282 self.assertEqual(ob, dict[ob.arg])
1283 self.assertEqual(ob.arg, dict[ob.arg].arg)
1287 def check_iters(self, dict):
1289 items = list(dict.items())
1290 for item in dict.items():
1295 keys = list(dict.keys())
1296 for k in dict:
1301 keys = list(dict.keys())
1302 for k in dict.keys():
1307 values = list(dict.values())
1308 for v in dict.values():
1313 def check_weak_destroy_while_iterating(self, dict, objects, iter_name):
1314 n = len(dict)
1315 it = iter(getattr(dict, iter_name)())
1324 self.assertEqual(len(dict), n - 1)
1326 def check_weak_destroy_and_mutate_while_iterating(self, dict, testcontext):
1327 # Check that we can explicitly mutate the weak dict without
1333 self.assertNotIn(k, dict)
1335 self.assertRaises(KeyError, dict.__delitem__, k)
1336 self.assertNotIn(k, dict)
1338 self.assertRaises(KeyError, dict.pop, k)
1339 self.assertNotIn(k, dict)
1341 dict[k] = v
1342 self.assertEqual(dict[k], v)
1343 ddict = copy.copy(dict)
1345 dict.update(ddict)
1346 self.assertEqual(dict, ddict)
1348 dict.clear()
1349 self.assertEqual(len(dict), 0)
1351 def check_weak_del_and_len_while_iterating(self, dict, testcontext):
1359 n = len(dict)
1360 # Since underlaying dict is ordered, first item is popped
1361 dict.pop(next(dict.keys()))
1362 self.assertEqual(len(dict), n - 1)
1363 dict[o] = o
1364 self.assertEqual(len(dict), n)
1365 # last item in objects is removed from dict in context shutdown
1367 self.assertEqual(len(dict), n - 1)
1369 dict.popitem()
1370 self.assertEqual(len(dict), n - 2)
1372 self.assertEqual(len(dict), n - 3)
1373 del dict[next(dict.keys())]
1374 self.assertEqual(len(dict), n - 4)
1376 self.assertEqual(len(dict), n - 5)
1377 dict.popitem()
1378 self.assertEqual(len(dict), n - 6)
1380 dict.clear()
1381 self.assertEqual(len(dict), 0)
1382 self.assertEqual(len(dict), 0)
1386 dict, objects = self.make_weak_keyed_dict()
1387 self.check_weak_destroy_while_iterating(dict, objects, 'keys')
1388 self.check_weak_destroy_while_iterating(dict, objects, 'items')
1389 self.check_weak_destroy_while_iterating(dict, objects, 'values')
1390 self.check_weak_destroy_while_iterating(dict, objects, 'keyrefs')
1391 dict, objects = self.make_weak_keyed_dict()
1395 it = iter(dict.items())
1404 self.check_weak_destroy_and_mutate_while_iterating(dict, testcontext)
1407 dict, objects = self.make_weak_keyed_dict()
1408 self.check_weak_del_and_len_while_iterating(dict, testcontext)
1412 dict, objects = self.make_weak_valued_dict()
1413 self.check_weak_destroy_while_iterating(dict, objects, 'keys')
1414 self.check_weak_destroy_while_iterating(dict, objects, 'items')
1415 self.check_weak_destroy_while_iterating(dict, objects, 'values')
1416 self.check_weak_destroy_while_iterating(dict, objects, 'itervaluerefs')
1417 self.check_weak_destroy_while_iterating(dict, objects, 'valuerefs')
1418 dict, objects = self.make_weak_valued_dict()
1422 it = iter(dict.items())
1431 self.check_weak_destroy_and_mutate_while_iterating(dict, testcontext)
1432 dict, objects = self.make_weak_valued_dict()
1433 self.check_weak_del_and_len_while_iterating(dict, testcontext)
1437 dict = weakref.WeakKeyDictionary({o:364})
1438 self.assertEqual(dict[o], 364)
1442 dict = weakref.WeakKeyDictionary({o:364})
1443 dict2 = weakref.WeakKeyDictionary(dict)
1444 self.assertEqual(dict[o], 364)
1447 dict = weakref.WeakKeyDictionary()
1450 dict[o] = o.arg
1451 return dict, objects
1455 dict = weakref.WeakValueDictionary({364:o})
1456 self.assertEqual(dict[364], o)
1460 dict = weakref.WeakValueDictionary({364:o})
1461 dict2 = weakref.WeakValueDictionary(dict)
1462 self.assertEqual(dict[364], o)
1471 for kw in 'self', 'dict', 'other', 'iterable':
1477 dict = weakref.WeakValueDictionary()
1480 dict[o.arg] = o
1481 return dict, objects
1534 def check_update(self, klass, dict):
1540 weakdict.update(dict)
1541 self.assertEqual(len(weakdict), len(dict))
1543 self.assertIn(k, dict, "mysterious new key appeared in weak dict")
1544 v = dict.get(k)
1547 for k in dict.keys():
1548 self.assertIn(k, weakdict, "original key disappeared in weak dict")
1549 v = dict[k]
1564 for kw in 'self', 'dict', 'other', 'iterable':
1613 # the dict during this (or got added), that caused a RuntimeError.
1625 # Side effect that mutates the dict, by removing the
1656 dict = weakref.WeakValueDictionary()
1657 self.assertRegex(repr(dict), '<WeakValueDictionary at 0x.*>')
1660 dict = weakref.WeakKeyDictionary()
1661 self.assertRegex(repr(dict), '<WeakKeyDictionary at 0x.*>')
1687 # o is still alive, so the dict can't be empty
1856 >>> class Dict(dict):
1859 >>> obj = Dict(red=1, green=2, blue=3) # this object is weak referencable