Пример #1
0
def main(num):
    try:
        Log.start()
        results = []
        test_json(results, "mo-json encoder", json_encoder, num)
        test_json(results, "mo-json encoder (again)", json_encoder, num)
        test_json(results, "scrub before json.dumps",
                  cPythonJSONEncoder().encode, num)
        test_json(results, "override JSONEncoder.default()",
                  EnhancedJSONEncoder().encode, num)
        test_json(results, "default json.dumps", json.dumps,
                  num)  # WILL CRASH, CAN NOT HANDLE DIVERSITY OF TYPES
        test_json(results, "typed json", typed_encoder.encode, num)

        # test_json(results, "scrubbed ujson", ujson.dumps, num)  # THIS PLAIN CRASHES

        Log.note(u"\n{{summary}}", summary=convert.list2tab(results))
    finally:
        Log.stop()
Пример #2
0
 def test_minus_inf(self):
     test = float("-inf")
     output = value2json(test)
     expecting = cPythonJSONEncoder().encode(mo_json.scrub(test))
     self.assertEqual(output, expecting, "expecting " + expecting)