--- /dev/null
+from json.tests import PyTest, CTest\r
+\r
+\r
+# from http://json.org/JSON_checker/test/pass1.json\r
+JSON = r'''\r
+[\r
+ "JSON Test Pattern pass1",\r
+ {"object with 1 member":["array with 1 element"]},\r
+ {},\r
+ [],\r
+ -42,\r
+ true,\r
+ false,\r
+ null,\r
+ {\r
+ "integer": 1234567890,\r
+ "real": -9876.543210,\r
+ "e": 0.123456789e-12,\r
+ "E": 1.234567890E+34,\r
+ "": 23456789012E66,\r
+ "zero": 0,\r
+ "one": 1,\r
+ "space": " ",\r
+ "quote": "\"",\r
+ "backslash": "\\",\r
+ "controls": "\b\f\n\r\t",\r
+ "slash": "/ & \/",\r
+ "alpha": "abcdefghijklmnopqrstuvwyz",\r
+ "ALPHA": "ABCDEFGHIJKLMNOPQRSTUVWYZ",\r
+ "digit": "0123456789",\r
+ "0123456789": "digit",\r
+ "special": "`1~!@#$%^&*()_+-={':[,]}|;.</>?",\r
+ "hex": "\u0123\u4567\u89AB\uCDEF\uabcd\uef4A",\r
+ "true": true,\r
+ "false": false,\r
+ "null": null,\r
+ "array":[ ],\r
+ "object":{ },\r
+ "address": "50 St. James Street",\r
+ "url": "http://www.JSON.org/",\r
+ "comment": "// /* <!-- --",\r
+ "# -- --> */": " ",\r
+ " s p a c e d " :[1,2 , 3\r
+\r
+,\r
+\r
+4 , 5 , 6 ,7 ],"compact":[1,2,3,4,5,6,7],\r
+ "jsontext": "{\"object with 1 member\":[\"array with 1 element\"]}",\r
+ "quotes": "" \u0022 %22 0x22 034 "",\r
+ "\/\\\"\uCAFE\uBABE\uAB98\uFCDE\ubcda\uef4A\b\f\n\r\t`1~!@#$%^&*()_+-=[]{}|;:',./<>?"\r
+: "A key can be any string"\r
+ },\r
+ 0.5 ,98.6\r
+,\r
+99.44\r
+,\r
+\r
+1066,\r
+1e1,\r
+0.1e1,\r
+1e-1,\r
+1e00,2e+00,2e-00\r
+,"rosebud"]\r
+'''\r
+\r
+class TestPass1(object):\r
+ def test_parse(self):\r
+ # test in/out equivalence and parsing\r
+ res = self.loads(JSON)\r
+ out = self.dumps(res)\r
+ self.assertEqual(res, self.loads(out))\r
+\r
+\r
+class TestPyPass1(TestPass1, PyTest): pass\r
+class TestCPass1(TestPass1, CTest): pass\r