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

Method test_object_pairs_hook

Lib/test/test_json/test_decode.py:50–70  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

48 self.assertEqual(self.loads('""'), "")
49
50 def test_object_pairs_hook(self):
51 s = '{"xkd":1, "kcw":2, "art":3, "hxm":4, "qrt":5, "pad":6, "hoy":7}'
52 p = [("xkd", 1), ("kcw", 2), ("art", 3), ("hxm", 4),
53 ("qrt", 5), ("pad", 6), ("hoy", 7)]
54 self.assertEqual(self.loads(s), eval(s))
55 self.assertEqual(self.loads(s, object_pairs_hook=lambda x: x), p)
56 self.assertEqual(self.json.load(StringIO(s),
57 object_pairs_hook=lambda x: x), p)
58 od = self.loads(s, object_pairs_hook=OrderedDict)
59 self.assertEqual(od, OrderedDict(p))
60 self.assertEqual(type(od), OrderedDict)
61 # the object_pairs_hook takes priority over the object_hook
62 self.assertEqual(self.loads(s, object_pairs_hook=OrderedDict,
63 object_hook=lambda x: None),
64 OrderedDict(p))
65 # check that empty object literals work (see #17368)
66 self.assertEqual(self.loads('{}', object_pairs_hook=OrderedDict),
67 OrderedDict())
68 self.assertEqual(self.loads('{"empty": {}}',
69 object_pairs_hook=OrderedDict),
70 OrderedDict([('empty', OrderedDict())]))
71
72 def test_array_hook(self):
73 s = '[1, 2, 3]'

Callers

nothing calls this directly

Calls 5

StringIOClass · 0.90
OrderedDictClass · 0.90
assertEqualMethod · 0.45
loadsMethod · 0.45
loadMethod · 0.45

Tested by

no test coverage detected