Exemple #1
0
 def testReadWriteCopies(self):
     orig_obj = {'a':' " '}
     json_str = cjsonx.encode(orig_obj)
     copy_obj = cjsonx.decode(json_str)
     self.assertEqual(orig_obj, copy_obj)
     self.assertEqual(True, orig_obj == copy_obj)
     self.assertEqual(False, orig_obj is copy_obj)
Exemple #2
0
 def testWriteEscapedFormfeed(self):
     s = cjsonx.encode("\f")
     self.assertEqual(r'"\f"', _removeWhitespace(s))
Exemple #3
0
 def testWriteEscapedQuotationMark(self):
     s = cjsonx.encode(r'"')
     self.assertEqual(r'"\""', _removeWhitespace(s))
Exemple #4
0
 def testWriteLong(self):
     self.assertEqual("12345678901234567890", cjsonx.encode(12345678901234567890))
Exemple #5
0
 def testWriteArrayOfSymbolsFromTuple(self):
     self.assertEqual("[true,false,null]", _removeWhitespace(cjsonx.encode((True, False, None))))
Exemple #6
0
 def testWriteFloat(self):
     self.assertEqual("3.44556677", _removeWhitespace(cjsonx.encode(3.44556677)))
Exemple #7
0
 def testWriteFalse(self):
     self.assertEqual("false", _removeWhitespace(cjsonx.encode(False)))
Exemple #8
0
 def testWriteNegativeDecimalInt(self):
     s = cjsonx.encode(decimal.Decimal("-2"))
     self.assertEqual("D-2", _removeWhitespace(s))
Exemple #9
0
 def testWriteDateTimeWithUseconds(self):
     s = cjsonx.encode(datetime.datetime(2013, 1, 10, 4, 20, 11, 11))
     self.assertEqual('d"2013-01-10 04:20:11.000011"', s)
Exemple #10
0
 def testWriteEscapedHexCharacter(self):
     s = cjsonx.encode(u'\u1001')
     self.assertEqual(r'"\u1001"', _removeWhitespace(s))
Exemple #11
0
 def testWriteDecimal(self):
     s = cjsonx.encode(decimal.Decimal("0.1"))
     self.assertEqual("D0.1", _removeWhitespace(s))
Exemple #12
0
 def testWriteEscapedHorizontalTab(self):
     s = cjsonx.encode("\t")
     self.assertEqual(r'"\t"', _removeWhitespace(s))
Exemple #13
0
 def testWriteEscapedCarriageReturn(self):
     s = cjsonx.encode("\r")
     self.assertEqual(r'"\r"', _removeWhitespace(s))
Exemple #14
0
 def testWriteEscapedNewline(self):
     s = cjsonx.encode("\n")
     self.assertEqual(r'"\n"', _removeWhitespace(s))
Exemple #15
0
 def testWriteSmallArray(self):
     self.assertEqual('[1,2,3,4]', _removeWhitespace(cjsonx.encode([1, 2, 3, 4])))
Exemple #16
0
 def testWriteTimeWithUseconds(self):
     s = cjsonx.encode(datetime.time(4, 20, 11, 11))
     self.assertEqual('d"04:20:11.000011"', _removeWhitespace(s))
Exemple #17
0
 def testWriteSmallObject(self):
     s = cjsonx.encode({ "name" : "Patrick", "age": 44 })
     self.assertEqual('{"age":44,"name":"Patrick"}', _removeWhitespace(s))
Exemple #18
0
 def testWriteDate(self):
     s = cjsonx.encode(datetime.date(2013, 1, 10))
     self.assertEqual('d"2013-01-10"', _removeWhitespace(s))
Exemple #19
0
 def testWriteTrue(self):
     self.assertEqual("true", _removeWhitespace(cjsonx.encode(True)))
Exemple #20
0
 def testWriteNegativeTimedelta(self):
     s = cjsonx.encode(datetime.timedelta(-1, 800))
     self.assertEqual('d"-01:00:13:20"', _removeWhitespace(s))
Exemple #21
0
 def testWriteNull(self):
     self.assertEqual("null", _removeWhitespace(cjsonx.encode(None)))
Exemple #22
0
 def testWriteNegativeTimedeltaWithUseconds(self):
     s = cjsonx.encode(datetime.timedelta(-1, 800, 11))
     self.assertEqual('d"-01:00:13:20.000011"', _removeWhitespace(s))
Exemple #23
0
 def testWriteComplexArray(self):
     obj = [{"name":"Patrick","age":44,"Employed?":True,"Female?":False,"grandchildren":None},
            "used","abused","confused",
            1,2,[3,4,5]]
     self.assertEqual('[{"Employed?":true,"Female?":false,"age":44,"grandchildren":null,"name":"Patrick"},"used","abused","confused",1,2,[3,4,5]]',
                      _removeWhitespace(cjsonx.encode(obj)))
Exemple #24
0
 def testWriteWithMagicMethodReturnsObject(self):
     class O(object):
         def __jsonx__(self):
             return {'a': 1}
     s = cjsonx.encode(O())
     self.assertEqual('{"a":1}', _removeWhitespace(s))
Exemple #25
0
 def testStringEncoding(self):
     s = cjsonx.encode([1, 2, 3])
     self.assertEqual(unicode("[1,2,3]", "utf-8"), _removeWhitespace(s))
Exemple #26
0
 def testWriteStringValue(self):
     s = cjsonx.encode({ "name" : "Patrick" })
     self.assertEqual('{"name":"Patrick"}', _removeWhitespace(s))
Exemple #27
0
 def testWriteEmptyObject(self):
     s = cjsonx.encode({})
     self.assertEqual("{}", _removeWhitespace(s))
Exemple #28
0
 def testWriteEmptyArray(self):
     self.assertEqual("[]", _removeWhitespace(cjsonx.encode([])))
Exemple #29
0
 def testWriteNonEscapedSolidus(self):
     s = cjsonx.encode(r'/')
     self.assertEqual(r'"/"', _removeWhitespace(s))
Exemple #30
0
 def testWriteEscapedBackspace(self):
     s = cjsonx.encode("\b")
     self.assertEqual(r'"\b"', _removeWhitespace(s))