(self)
| 458 | self.assertRaises(SystemError, update, NULL, {}) |
| 459 | |
| 460 | def test_dict_merge(self): |
| 461 | # Test PyDict_Merge() |
| 462 | merge = _testlimitedcapi.dict_merge |
| 463 | for cls1 in DICT_TYPES: |
| 464 | for cls2 in ANYDICT_TYPES + MAPPING_TYPES: |
| 465 | dct = cls1({'a': 1, 'b': 2}) |
| 466 | merge(dct, cls2({'b': 3, 'c': 4}), 0) |
| 467 | self.assertEqual(dct, {'a': 1, 'b': 2, 'c': 4}) |
| 468 | dct = cls1({'a': 1, 'b': 2}) |
| 469 | merge(dct, cls2({'b': 3, 'c': 4}), 1) |
| 470 | self.assertEqual(dct, {'a': 1, 'b': 3, 'c': 4}) |
| 471 | |
| 472 | self.assertRaises(AttributeError, merge, {}, [], 0) |
| 473 | self.assertRaises(AttributeError, merge, {}, 42, 0) |
| 474 | for test_type in FROZENDICT_TYPES: |
| 475 | with self.frozendict_does_not_support('assignment'): |
| 476 | merge(test_type(), {}, 0) |
| 477 | for test_type in MAPPING_TYPES + OTHER_TYPES: |
| 478 | self.assertRaises(SystemError, merge, test_type(), {}, 0) |
| 479 | self.assertRaises(SystemError, merge, {}, NULL, 0) |
| 480 | self.assertRaises(SystemError, merge, NULL, {}, 0) |
| 481 | |
| 482 | def test_dict_mergefromseq2(self): |
| 483 | # Test PyDict_MergeFromSeq2() |
nothing calls this directly
no test coverage detected