Lines Matching refs:self

34     def test_init(self):
35 OrderedDict = self.OrderedDict
36 with self.assertRaises(TypeError):
39 self.assertEqual(sorted(OrderedDict(dict(pairs)).items()), pairs) # dict input
40 self.assertEqual(sorted(OrderedDict(**dict(pairs)).items()), pairs) # kwds input
41 self.assertEqual(list(OrderedDict(pairs).items()), pairs) # pairs input
42 self.assertEqual(list(OrderedDict([('a', 1), ('b', 2), ('c', 9), ('d', 4)],
46 self.assertEqual(list(OrderedDict(self=42).items()), [('self', 42)])
47 self.assertEqual(list(OrderedDict(other=42).items()), [('other', 42)])
48 self.assertRaises(TypeError, OrderedDict, 42)
49 self.assertRaises(TypeError, OrderedDict, (), ())
50 self.assertRaises(TypeError, OrderedDict.__init__)
55 self.assertEqual(list(d.items()),
58 def test_468(self):
59 OrderedDict = self.OrderedDict
64 self.assertEqual(list(d.items()), items)
66 def test_update(self):
67 OrderedDict = self.OrderedDict
68 with self.assertRaises(TypeError):
73 self.assertEqual(sorted(od.items()), pairs) # dict input
76 self.assertEqual(sorted(od.items()), pairs) # kwds input
79 self.assertEqual(list(od.items()), pairs) # pairs input
82 self.assertEqual(list(od.items()), pairs) # mixed input
84 # Issue 9137: Named argument called 'other' or 'self'
87 od.update(self=23)
88 self.assertEqual(list(od.items()), [('self', 23)])
91 self.assertEqual(list(od.items()), [('other', {})])
93 od.update(red=5, blue=6, other=7, self=8)
94 self.assertEqual(sorted(list(od.items())),
95 [('blue', 6), ('other', 7), ('red', 5), ('self', 8)])
101 self.assertEqual(list(d.items()),
104 self.assertRaises(TypeError, OrderedDict().update, 42)
105 self.assertRaises(TypeError, OrderedDict().update, (), ())
106 self.assertRaises(TypeError, OrderedDict.update)
108 self.assertRaises(TypeError, OrderedDict().update, 42)
109 self.assertRaises(TypeError, OrderedDict().update, (), ())
110 self.assertRaises(TypeError, OrderedDict.update)
112 def test_init_calls(self):
115 def keys(self):
118 def items(self):
122 self.OrderedDict(Spam())
123 self.assertEqual(calls, ['keys'])
125 def test_fromkeys(self):
126 OrderedDict = self.OrderedDict
128 self.assertEqual(list(od.items()), [(c, None) for c in 'abc'])
130 self.assertEqual(list(od.items()), [(c, None) for c in 'abc'])
132 self.assertEqual(list(od.items()), [(c, 0) for c in 'abc'])
134 def test_abc(self):
135 OrderedDict = self.OrderedDict
136 self.assertIsInstance(OrderedDict(), MutableMapping)
137 self.assertTrue(issubclass(OrderedDict, MutableMapping))
139 def test_clear(self):
140 OrderedDict = self.OrderedDict
144 self.assertEqual(len(od), len(pairs))
146 self.assertEqual(len(od), 0)
148 def test_delitem(self):
149 OrderedDict = self.OrderedDict
153 self.assertNotIn('a', od)
154 with self.assertRaises(KeyError):
156 self.assertEqual(list(od.items()), pairs[:2] + pairs[3:])
158 def test_setitem(self):
159 OrderedDict = self.OrderedDict
163 self.assertEqual(list(od.items()),
166 def test_iterators(self):
167 OrderedDict = self.OrderedDict
171 self.assertEqual(list(od), [t[0] for t in pairs])
172 self.assertEqual(list(od.keys()), [t[0] for t in pairs])
173 self.assertEqual(list(od.values()), [t[1] for t in pairs])
174 self.assertEqual(list(od.items()), pairs)
175 self.assertEqual(list(reversed(od)),
177 self.assertEqual(list(reversed(od.keys())),
179 self.assertEqual(list(reversed(od.values())),
181 self.assertEqual(list(reversed(od.items())), list(reversed(pairs)))
183 def test_detect_deletion_during_iteration(self):
184 OrderedDict = self.OrderedDict
189 with self.assertRaises(Exception):
194 def test_sorted_iterators(self):
195 OrderedDict = self.OrderedDict
196 with self.assertRaises(TypeError):
200 self.assertEqual(sorted(od), [t[0] for t in pairs])
201 self.assertEqual(sorted(od.keys()), [t[0] for t in pairs])
202 self.assertEqual(sorted(od.values()), [t[1] for t in pairs])
203 self.assertEqual(sorted(od.items()), pairs)
204 self.assertEqual(sorted(reversed(od)),
207 def test_iterators_empty(self):
208 OrderedDict = self.OrderedDict
211 self.assertEqual(list(od), empty)
212 self.assertEqual(list(od.keys()), empty)
213 self.assertEqual(list(od.values()), empty)
214 self.assertEqual(list(od.items()), empty)
215 self.assertEqual(list(reversed(od)), empty)
216 self.assertEqual(list(reversed(od.keys())), empty)
217 self.assertEqual(list(reversed(od.values())), empty)
218 self.assertEqual(list(reversed(od.items())), empty)
220 def test_popitem(self):
221 OrderedDict = self.OrderedDict
226 self.assertEqual(od.popitem(), pairs.pop())
227 with self.assertRaises(KeyError):
229 self.assertEqual(len(od), 0)
231 def test_popitem_last(self):
232 OrderedDict = self.OrderedDict
240 self.assertEqual(len(obj), 20)
242 def test_pop(self):
243 OrderedDict = self.OrderedDict
250 self.assertEqual(od.pop(k), v)
251 with self.assertRaises(KeyError):
253 self.assertEqual(len(od), 0)
254 self.assertEqual(od.pop(k, 12345), 12345)
258 def __missing__(self, key):
261 self.assertEqual(m.pop('b', 5), 5)
262 self.assertEqual(m.pop('a', 6), 1)
263 self.assertEqual(m.pop('a', 6), 6)
264 self.assertEqual(m.pop('a', default=6), 6)
265 with self.assertRaises(KeyError):
268 def test_equality(self):
269 OrderedDict = self.OrderedDict
274 self.assertEqual(od1, od2) # same order implies equality
277 self.assertNotEqual(od1, od2) # different order implies inequality
279 self.assertEqual(od1, dict(od2))
280 self.assertEqual(dict(od2), od1)
282 self.assertNotEqual(od1, OrderedDict(pairs[:-1]))
284 def test_copying(self):
285 OrderedDict = self.OrderedDict
294 self.assertIsNot(dup, od, msg)
295 self.assertEqual(dup, od)
296 self.assertEqual(list(dup.items()), list(od.items()))
297 self.assertEqual(len(dup), len(od))
298 self.assertEqual(type(dup), type(od))
302 self.assertIs(dup.x, od.x)
303 self.assertIs(dup.z, od.z)
304 self.assertFalse(hasattr(dup, 'y'))
307 self.assertEqual(dup.x, od.x)
308 self.assertIsNot(dup.x, od.x)
309 self.assertEqual(dup.z, od.z)
310 self.assertIsNot(dup.z, od.z)
311 self.assertFalse(hasattr(dup, 'y'))
313 with replaced_module('collections', self.module):
315 with self.subTest(proto=proto):
318 self.assertEqual(dup.x, od.x)
319 self.assertEqual(dup.z, od.z)
320 self.assertFalse(hasattr(dup, 'y'))
327 def test_yaml_linkage(self):
328 OrderedDict = self.OrderedDict
335 self.assertTrue(all(type(pair)==list for pair in od.__reduce__()[1]))
337 def test_reduce_not_too_fat(self):
338 OrderedDict = self.OrderedDict
342 self.assertIsInstance(od.__dict__, dict)
343 self.assertIsNone(od.__reduce__()[2])
345 self.assertEqual(od.__dict__['x'], 10)
346 self.assertEqual(od.__reduce__()[2], {'x': 10})
348 def test_pickle_recursive(self):
349 OrderedDict = self.OrderedDict
354 with replaced_module('collections', self.module):
357 self.assertIsNot(dup, od)
358 self.assertEqual(list(dup.keys()), [1])
359 self.assertIs(dup[1], dup)
361 def test_repr(self):
362 OrderedDict = self.OrderedDict
364 self.assertEqual(repr(od),
366 self.assertEqual(eval(repr(od)), od)
367 self.assertEqual(repr(OrderedDict()), "OrderedDict()")
369 def test_repr_recursive(self):
370 OrderedDict = self.OrderedDict
374 self.assertEqual(repr(od),
377 def test_repr_recursive_values(self):
378 OrderedDict = self.OrderedDict
385 self.assertIsInstance(r, str)
389 self.assertIsInstance(r, str)
391 def test_setdefault(self):
392 OrderedDict = self.OrderedDict
397 self.assertEqual(od.setdefault('a', 10), 3)
399 self.assertEqual(list(od.items()), pair_order)
400 self.assertEqual(od.setdefault('x', 10), 10)
402 self.assertEqual(list(od.items())[-1], ('x', 10))
403 self.assertEqual(od.setdefault('g', default=9), 9)
407 def __missing__(self, key):
409 self.assertEqual(Missing().setdefault(5, 9), 9)
411 def test_reinsert(self):
412 OrderedDict = self.OrderedDict
419 self.assertEqual(list(od.items()), [('b', 2)])
421 self.assertEqual(list(od.items()), [('b', 2), ('a', 1)])
423 def test_move_to_end(self):
424 OrderedDict = self.OrderedDict
426 self.assertEqual(list(od), list('abcde'))
428 self.assertEqual(list(od), list('abdec'))
430 self.assertEqual(list(od), list('cabde'))
432 self.assertEqual(list(od), list('cabde'))
434 self.assertEqual(list(od), list('cabde'))
436 self.assertEqual(list(od), list('bcade'))
437 with self.assertRaises(KeyError):
439 with self.assertRaises(KeyError):
442 def test_move_to_end_issue25406(self):
443 OrderedDict = self.OrderedDict
446 self.assertEqual(list(od), list('cab'))
448 self.assertEqual(list(od), list('acb'))
452 self.assertEqual(list(od), list('bca'))
454 self.assertEqual(list(od), list('bac'))
456 def test_sizeof(self):
457 OrderedDict = self.OrderedDict
461 self.assertGreater(sys.getsizeof(od), sys.getsizeof(d))
463 def test_views(self):
464 OrderedDict = self.OrderedDict
468 self.assertEqual(od.keys(), dict(od).keys())
469 self.assertEqual(od.items(), dict(od).items())
471 def test_override_update(self):
472 OrderedDict = self.OrderedDict
475 def update(self, *args, **kwds):
478 self.assertEqual(list(MyOD(items).items()), items)
480 def test_highly_nested(self):
484 OrderedDict = self.OrderedDict
491 def test_highly_nested_subclass(self):
495 OrderedDict = self.OrderedDict
498 def __del__(self):
499 deleted.append(self.i)
506 self.assertEqual(deleted, list(reversed(range(100))))
508 def test_delitem_hash_collision(self):
509 OrderedDict = self.OrderedDict
512 def __init__(self, hash):
513 self._hash = hash
514 self.value = str(id(self))
515 def __hash__(self):
516 return self._hash
517 def __eq__(self, other):
519 return self.value == other.value
522 def __repr__(self):
523 return self.value
545 self.assertEqual(list(od.items()), [(key, ...), ('after', ...)])
547 def test_issue24347(self):
548 OrderedDict = self.OrderedDict
551 def __hash__(self):
560 with self.assertRaises(KeyError):
562 with self.assertRaises(KeyError):
564 with self.assertRaises(KeyError):
566 with self.assertRaises(KeyError):
569 def test_issue24348(self):
570 OrderedDict = self.OrderedDict
573 def __hash__(self):
581 def test_issue24667(self):
593 OrderedDict = self.OrderedDict
606 def test_dict_setitem(self):
607 OrderedDict = self.OrderedDict
610 self.assertNotIn('NULL', repr(od))
612 def test_dict_delitem(self):
613 OrderedDict = self.OrderedDict
618 with self.assertRaises(KeyError):
621 def test_dict_clear(self):
622 OrderedDict = self.OrderedDict
627 self.assertNotIn('NULL', repr(od))
629 def test_dict_pop(self):
630 OrderedDict = self.OrderedDict
635 with self.assertRaises(KeyError):
638 def test_dict_popitem(self):
639 OrderedDict = self.OrderedDict
644 with self.assertRaises(KeyError):
647 def test_dict_setdefault(self):
648 OrderedDict = self.OrderedDict
651 self.assertNotIn('NULL', repr(od))
653 def test_dict_update(self):
654 OrderedDict = self.OrderedDict
657 self.assertNotIn('NULL', repr(od))
659 def test_reference_loop(self):
661 OrderedDict = self.OrderedDict
668 self.assertIsNone(r())
670 def test_free_after_iterating(self):
671 support.check_free_after_iterating(self, iter, self.OrderedDict)
672 support.check_free_after_iterating(self, lambda d: iter(d.keys()), self.OrderedDict)
673 support.check_free_after_iterating(self, lambda d: iter(d.values()), self.OrderedDict)
674 support.check_free_after_iterating(self, lambda d: iter(d.items()), self.OrderedDict)
676 def test_merge_operator(self):
677 OrderedDict = self.OrderedDict
687 self.assertEqual(a | dict(b), expected)
688 self.assertEqual(a | b, expected)
689 self.assertEqual(c, expected)
690 self.assertEqual(d, expected)
695 self.assertEqual(dict(b) | a, expected)
696 self.assertEqual(b | a, expected)
697 self.assertEqual(c, expected)
699 self.assertIs(type(a | b), OrderedDict)
700 self.assertIs(type(dict(a) | b), OrderedDict)
701 self.assertIs(type(a | dict(b)), OrderedDict)
706 self.assertEqual(a, expected)
708 with self.assertRaises(TypeError):
710 with self.assertRaises(TypeError):
712 with self.assertRaises(TypeError):
714 with self.assertRaises(TypeError):
716 with self.assertRaises(ValueError):
720 def test_ordered_dict_items_result_gc(self):
724 it = iter(self.OrderedDict({None: []}).items())
729 self.assertTrue(gc.is_tracked(next(it)))
764 def test_sizeof_exact(self):
765 OrderedDict = self.OrderedDict
768 check = self.check_sizeof
796 def test_key_change_during_iteration(self):
797 OrderedDict = self.OrderedDict
800 self.assertEqual(list(od), list('abcde'))
801 with self.assertRaises(RuntimeError):
804 self.assertLess(i, 5)
805 with self.assertRaises(RuntimeError):
808 with self.assertRaises(RuntimeError):
811 self.assertEqual(list(od), list('bdeaf'))
813 def test_iterators_pickling(self):
814 OrderedDict = self.OrderedDict
822 with self.subTest(method_name=method_name, protocol=i):
827 self.assertEqual(list(unpickled), expected)
828 self.assertEqual(list(it), expected)
831 def test_weakref_list_is_not_traversed(self):
837 x = self.OrderedDict()
888 def test_popitem(self):
889 d = self._empty_mapping()
890 self.assertRaises(KeyError, d.popitem)
900 def test_popitem(self):
901 d = self._empty_mapping()
902 self.assertRaises(KeyError, d.popitem)
913 def test_popitem(self):
914 d = self._empty_mapping()
915 self.assertRaises(KeyError, d.popitem)
927 def test_popitem(self):
928 d = self._empty_mapping()
929 self.assertRaises(KeyError, d.popitem)
934 def __init__(self, size):
936 self.size = size
937 self.counts = dict.fromkeys(('get', 'set', 'del'), 0)
939 def __getitem__(self, item):
940 self.counts['get'] += 1
942 self.move_to_end(item)
945 def __setitem__(self, key, value):
946 self.counts['set'] += 1
947 while key not in self and len(self) >= self.size:
948 self.popitem(last=False)
950 self.move_to_end(key)
952 def __delitem__(self, key):
953 self.counts['del'] += 1
959 def test_add_after_full(self):
960 c = self.type2test(2)
964 self.assertEqual(c.counts, {'get': 0, 'set': 3, 'del': 0})
965 self.assertEqual(list(c), ['t2', 't3'])
966 self.assertEqual(c.counts, {'get': 0, 'set': 3, 'del': 0})
968 def test_popitem(self):
969 c = self.type2test(3)
972 self.assertEqual(c.popitem(last=False), (1, 1))
973 self.assertEqual(c.popitem(last=True), (3, 3))
974 self.assertEqual(c.counts, {'get': 0, 'set': 3, 'del': 0})
976 def test_pop(self):
977 c = self.type2test(3)
980 self.assertEqual(c.counts, {'get': 0, 'set': 3, 'del': 0})
981 self.assertEqual(c.pop(2), 2)
982 self.assertEqual(c.counts, {'get': 0, 'set': 3, 'del': 0})
983 self.assertEqual(c.pop(4, 0), 0)
984 self.assertEqual(c.counts, {'get': 0, 'set': 3, 'del': 0})
985 self.assertRaises(KeyError, c.pop, 4)
986 self.assertEqual(c.counts, {'get': 0, 'set': 3, 'del': 0})
988 def test_change_order_on_get(self):
989 c = self.type2test(3)
992 self.assertEqual(list(c), list(range(1, 4)))
993 self.assertEqual(c.counts, {'get': 0, 'set': 3, 'del': 0})
994 self.assertEqual(c[2], 2)
995 self.assertEqual(c.counts, {'get': 1, 'set': 3, 'del': 0})
996 self.assertEqual(list(c), [1, 3, 2])