diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2024-07-23 20:02:54 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-23 20:02:54 +0300 |
commit | e6b25e9a09dbe09839b36f97b9174a30b1db2dbf (patch) | |
tree | 000493ed4293ecce1a6433e8892212fe9809c3d6 /Lib/test/test_json/test_recursion.py | |
parent | c908d1f87d287a4b3ec58c85b692a7eb617fa6ea (diff) | |
download | cpython-e6b25e9a09dbe09839b36f97b9174a30b1db2dbf.tar.gz cpython-e6b25e9a09dbe09839b36f97b9174a30b1db2dbf.zip |
gh-122163: Add notes for JSON serialization errors (GH-122165)
This allows to identify the source of the error.
Diffstat (limited to 'Lib/test/test_json/test_recursion.py')
-rw-r--r-- | Lib/test/test_json/test_recursion.py | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/Lib/test/test_json/test_recursion.py b/Lib/test/test_json/test_recursion.py index 164ff2013eb..290207e9c15 100644 --- a/Lib/test/test_json/test_recursion.py +++ b/Lib/test/test_json/test_recursion.py @@ -12,8 +12,8 @@ class TestRecursion: x.append(x) try: self.dumps(x) - except ValueError: - pass + except ValueError as exc: + self.assertEqual(exc.__notes__, ["when serializing list item 0"]) else: self.fail("didn't raise ValueError on list recursion") x = [] @@ -21,8 +21,8 @@ class TestRecursion: x.append(y) try: self.dumps(x) - except ValueError: - pass + except ValueError as exc: + self.assertEqual(exc.__notes__, ["when serializing list item 0"]*2) else: self.fail("didn't raise ValueError on alternating list recursion") y = [] @@ -35,8 +35,8 @@ class TestRecursion: x["test"] = x try: self.dumps(x) - except ValueError: - pass + except ValueError as exc: + self.assertEqual(exc.__notes__, ["when serializing dict item 'test'"]) else: self.fail("didn't raise ValueError on dict recursion") x = {} @@ -60,8 +60,10 @@ class TestRecursion: enc.recurse = True try: enc.encode(JSONTestObject) - except ValueError: - pass + except ValueError as exc: + self.assertEqual(exc.__notes__, + ["when serializing list item 0", + "when serializing type object"]) else: self.fail("didn't raise ValueError on default recursion") |