diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2009-12-08 15:40:51 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2009-12-08 15:40:51 (GMT) |
commit | 187177fc558e2dce1f55ad8bdf7344c61aec6594 (patch) | |
tree | 1dcae5a95f199abca9ff349d6bc9d47fd51e853f /Lib | |
parent | 4b7f9439c0a61ce597675f27adca2465a9c1e76b (diff) | |
download | cpython-187177fc558e2dce1f55ad8bdf7344c61aec6594.zip cpython-187177fc558e2dce1f55ad8bdf7344c61aec6594.tar.gz cpython-187177fc558e2dce1f55ad8bdf7344c61aec6594.tar.bz2 |
Issue #6986: Fix crash in the JSON C accelerator when called with the
wrong parameter types. Patch by Victor Stinner.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/json/tests/test_speedups.py | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/Lib/json/tests/test_speedups.py b/Lib/json/tests/test_speedups.py index 3a84ddf..3f8c108 100644 --- a/Lib/json/tests/test_speedups.py +++ b/Lib/json/tests/test_speedups.py @@ -1,8 +1,7 @@ import decimal from unittest import TestCase -from json import decoder -from json import encoder +from json import decoder, encoder, scanner class TestSpeedups(TestCase): def test_scanstring(self): @@ -13,3 +12,13 @@ class TestSpeedups(TestCase): self.assertEquals(encoder.encode_basestring_ascii.__module__, "_json") self.assertTrue(encoder.encode_basestring_ascii is encoder.c_encode_basestring_ascii) + +class TestDecode(TestCase): + def test_make_scanner(self): + self.assertRaises(AttributeError, scanner.c_make_scanner, 1) + + def test_make_encoder(self): + self.assertRaises(TypeError, encoder.c_make_encoder, + None, + "\xCD\x7D\x3D\x4E\x12\x4C\xF9\x79\xD7\x52\xBA\x82\xF2\x27\x4A\x7D\xA0\xCA\x75", + None) |