45 lines
1023 B
Python
45 lines
1023 B
Python
import textwrap
|
|
from json.tests import PyTest, CTest
|
|
|
|
|
|
class TestSeparators(object):
|
|
def test_separators(self):
|
|
h = [['blorpie'], ['whoops'], [], 'd-shtaeou', 'd-nthiouh', 'i-vhbjkhnth',
|
|
{'nifty': 87}, {'field': 'yes', 'morefield': False} ]
|
|
|
|
expect = textwrap.dedent("""\
|
|
[
|
|
[
|
|
"blorpie"
|
|
] ,
|
|
[
|
|
"whoops"
|
|
] ,
|
|
[] ,
|
|
"d-shtaeou" ,
|
|
"d-nthiouh" ,
|
|
"i-vhbjkhnth" ,
|
|
{
|
|
"nifty" : 87
|
|
} ,
|
|
{
|
|
"field" : "yes" ,
|
|
"morefield" : false
|
|
}
|
|
]""")
|
|
|
|
|
|
d1 = self.dumps(h)
|
|
d2 = self.dumps(h, indent=2, sort_keys=True, separators=(' ,', ' : '))
|
|
|
|
h1 = self.loads(d1)
|
|
h2 = self.loads(d2)
|
|
|
|
self.assertEqual(h1, h)
|
|
self.assertEqual(h2, h)
|
|
self.assertEqual(d2, expect)
|
|
|
|
|
|
class TestPySeparators(TestSeparators, PyTest): pass
|
|
class TestCSeparators(TestSeparators, CTest): pass
|