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

Method test_dict_setdefault

Lib/test/test_capi/test_dict.py:352–370  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

350 # CRASHES delitemstring(NULL, b'a')
351
352 def test_dict_setdefault(self):
353 # Test PyDict_SetDefault()
354 setdefault = _testcapi.dict_setdefault
355 for dict_type in DICT_TYPES:
356 dct = dict_type()
357 self.assertEqual(setdefault(dct, 'a', 5), 5)
358 self.assertEqual(dct, {'a': 5})
359 self.assertEqual(setdefault(dct, 'a', 8), 5)
360 self.assertEqual(dct, {'a': 5})
361
362 self.assertRaises(TypeError, setdefault, {}, [], 5) # unhashable
363 for test_type in FROZENDICT_TYPES:
364 with self.frozendict_does_not_support('assignment'):
365 setdefault(test_type(), 'a', 5)
366 for test_type in MAPPING_TYPES + OTHER_TYPES:
367 self.assertRaises(SystemError, setdefault, test_type(), 'a', 5)
368 # CRASHES setdefault({}, NULL, 5)
369 # CRASHES setdefault({}, 'a', NULL)
370 # CRASHES setdefault(NULL, 'a', 5)
371
372 def test_dict_setdefaultref(self):
373 # Test PyDict_SetDefaultRef()

Callers

nothing calls this directly

Calls 3

assertEqualMethod · 0.45
assertRaisesMethod · 0.45

Tested by

no test coverage detected