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()
def test_minus_inf(self): test = float("-inf") output = value2json(test) expecting = cPythonJSONEncoder().encode(mo_json.scrub(test)) self.assertEqual(output, expecting, "expecting " + expecting)