Skip to content

Commit 5dbcd9a

Browse files
committed
Add C API tests
1 parent 161ed33 commit 5dbcd9a

1 file changed

Lines changed: 13 additions & 1 deletion

File tree

Lib/test/test_capi/test_abstract.py

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -411,6 +411,11 @@ def test_mapping_getoptionalitem(self):
411411
self.assertEqual(getitem(dct2, 'a'), 1)
412412
self.assertEqual(getitem(dct2, 'b'), KeyError)
413413

414+
frozendct = frozendict(dct)
415+
self.assertEqual(getitem(frozendct, 'a'), 1)
416+
self.assertEqual(getitem(frozendct, 'b'), KeyError)
417+
self.assertEqual(getitem(frozendct, '\U0001f40d'), 2)
418+
414419
self.assertEqual(getitem(['a', 'b', 'c'], 1), 'b')
415420

416421
self.assertRaises(TypeError, getitem, 42, 'a')
@@ -431,6 +436,11 @@ def test_mapping_getoptionalitemstring(self):
431436
self.assertEqual(getitemstring(dct2, b'a'), 1)
432437
self.assertEqual(getitemstring(dct2, b'b'), KeyError)
433438

439+
frozendct = frozendict(dct)
440+
self.assertEqual(getitemstring(frozendct, 'a'), 1)
441+
self.assertEqual(getitemstring(frozendct, 'b'), KeyError)
442+
self.assertEqual(getitemstring(frozendct, '\U0001f40d'.encode()), 2)
443+
434444
self.assertRaises(TypeError, getitemstring, 42, b'a')
435445
self.assertRaises(UnicodeDecodeError, getitemstring, {}, b'\xff')
436446
self.assertRaises(SystemError, getitemstring, {}, NULL)
@@ -677,8 +687,10 @@ def items(self):
677687
dict_obj = {'foo': 1, 'bar': 2, 'spam': 3}
678688

679689
for mapping in [{}, OrderedDict(), Mapping1(), Mapping2(),
690+
frozendict(),
680691
dict_obj, OrderedDict(dict_obj),
681-
Mapping1(dict_obj), Mapping2(dict_obj)]:
692+
Mapping1(dict_obj), Mapping2(dict_obj),
693+
frozendict(dict_obj)]:
682694
self.assertListEqual(_testlimitedcapi.mapping_keys(mapping),
683695
list(mapping.keys()))
684696
self.assertListEqual(_testlimitedcapi.mapping_values(mapping),

0 commit comments

Comments
 (0)