(self)
| 334 | self.assertEqual(repr(s), '%s({%s(...)})' % (name, name)) |
| 335 | |
| 336 | def test_do_not_rehash_dict_keys(self): |
| 337 | n = 10 |
| 338 | d = dict.fromkeys(map(HashCountingInt, range(n))) |
| 339 | self.assertEqual(sum(elem.hash_count for elem in d), n) |
| 340 | s = self.thetype(d) |
| 341 | self.assertEqual(sum(elem.hash_count for elem in d), n) |
| 342 | s.difference(d) |
| 343 | self.assertEqual(sum(elem.hash_count for elem in d), n) |
| 344 | if hasattr(s, 'symmetric_difference_update'): |
| 345 | s.symmetric_difference_update(d) |
| 346 | self.assertEqual(sum(elem.hash_count for elem in d), n) |
| 347 | d2 = dict.fromkeys(set(d)) |
| 348 | self.assertEqual(sum(elem.hash_count for elem in d), n) |
| 349 | d3 = dict.fromkeys(frozenset(d)) |
| 350 | self.assertEqual(sum(elem.hash_count for elem in d), n) |
| 351 | d3 = dict.fromkeys(frozenset(d), 123) |
| 352 | self.assertEqual(sum(elem.hash_count for elem in d), n) |
| 353 | self.assertEqual(d3, dict.fromkeys(d, 123)) |
| 354 | |
| 355 | def test_container_iterator(self): |
| 356 | # Bug #3680: tp_traverse was not implemented for set iterator object |
nothing calls this directly
no test coverage detected