1 from unittest
import TestCase
5 # Fri Dec 30 18:57:26 2005
7 # http://json.org/JSON_checker/test/fail1.json
8 '"A JSON payload should be an object or array, not a string."',
9 # http://json.org/JSON_checker/test/fail2.json
11 # http://json.org/JSON_checker/test/fail3.json
12 '{unquoted_key: "keys must be quoted}',
13 # http://json.org/JSON_checker/test/fail4.json
15 # http://json.org/JSON_checker/test/fail5.json
16 '["double extra comma",,]',
17 # http://json.org/JSON_checker/test/fail6.json
18 '[ , "<-- missing value"]',
19 # http://json.org/JSON_checker/test/fail7.json
20 '["Comma after the close"],',
21 # http://json.org/JSON_checker/test/fail8.json
23 # http://json.org/JSON_checker/test/fail9.json
24 '{"Extra comma": true,}',
25 # http://json.org/JSON_checker/test/fail10.json
26 '{"Extra value after close": true} "misplaced quoted value"',
27 # http://json.org/JSON_checker/test/fail11.json
28 '{"Illegal expression": 1 + 2}',
29 # http://json.org/JSON_checker/test/fail12.json
30 '{"Illegal invocation": alert()}',
31 # http://json.org/JSON_checker/test/fail13.json
32 '{"Numbers cannot have leading zeroes": 013}',
33 # http://json.org/JSON_checker/test/fail14.json
34 '{"Numbers cannot be hex": 0x14}',
35 # http://json.org/JSON_checker/test/fail15.json
36 '["Illegal backslash escape: \\x15"]',
37 # http://json.org/JSON_checker/test/fail16.json
38 '["Illegal backslash escape: \\\'"]',
39 # http://json.org/JSON_checker/test/fail17.json
40 '["Illegal backslash escape: \\017"]',
41 # http://json.org/JSON_checker/test/fail18.json
42 '[[[[[[[[[[[[[[[[[[[["Too deep"]]]]]]]]]]]]]]]]]]]]',
43 # http://json.org/JSON_checker/test/fail19.json
44 '{"Missing colon" null}',
45 # http://json.org/JSON_checker/test/fail20.json
46 '{"Double colon":: null}',
47 # http://json.org/JSON_checker/test/fail21.json
48 '{"Comma instead of colon", null}',
49 # http://json.org/JSON_checker/test/fail22.json
50 '["Colon instead of comma": false]',
51 # http://json.org/JSON_checker/test/fail23.json
52 '["Bad value", truth]',
53 # http://json.org/JSON_checker/test/fail24.json
55 # http://code.google.com/p/simplejson/issues/detail?id=3
56 u
'["A\u001FZ control characters in string"]',
60 1: "why not have a string payload?",
61 18: "spec doesn't specify any nesting limitations",
64 class TestFail(TestCase
):
65 def test_failures(self
):
66 for idx
, doc
in enumerate(JSONDOCS
):
76 self
.fail("Expected failure for fail{0}.json: {1!r}".format(idx
, doc
))