comparison tests/test_json2csv.py @ 18:56596902e9ae default tip

add some setup + tests
author Jeff Hammel <k0scist@gmail.com>
date Sun, 10 Dec 2017 17:57:03 -0800
parents
children
comparison
equal deleted inserted replaced
17:4793f99b73e0 18:56596902e9ae
1 #!/usr/bin/env python
2
3 """
4 test JSON to CSV conversion
5 """
6
7 import unittest
8 from lemuriformes import json2csv
9
10
11 class TestJSON2CSV(unittest.TestCase):
12
13 def test_flatten(self):
14 data = [{'a': 'B', 'c': 1, 'd': 'd'},
15 {'a': 'a', 'c': 2, 'd': 'e'},
16 {'a': 'H', 'c': 3, 'd': 'I'},
17 {'a': 'K', 'c': 5, 'd': 'L'},
18 ]
19 header = ['a', 'c', 'd']
20 expected = [['B', 1, 'd'],
21 ['a', 2, 'e'],
22 ['H', 3, 'I'],
23 ['K', 5, 'L'],
24 ]
25
26 received_header, flattened = json2csv.flatten_list_of_dicts(data, header=header)
27 assert flattened == expected
28 assert received_header == header
29
30 if __name__ == '__main__':
31 unittest.main()