You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
930 B
42 lines
930 B
13 years ago
|
from unittest import TestCase
|
||
|
|
||
|
from pyutil import jsonutil as json
|
||
|
import textwrap
|
||
|
|
||
|
class TestIndent(TestCase):
|
||
|
def test_indent(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 = json.dumps(h)
|
||
|
d2 = json.dumps(h, indent=2, sort_keys=True, separators=(',', ': '))
|
||
|
|
||
|
h1 = json.loads(d1)
|
||
|
h2 = json.loads(d2)
|
||
|
|
||
|
self.assertEquals(h1, h)
|
||
|
self.assertEquals(h2, h)
|
||
|
self.assertEquals(d2, expect)
|