Improved tests.

This commit is contained in:
Fabio Caccamo 2021-01-18 16:00:22 +01:00
parent 6bae657d44
commit 61e50666a7
2 changed files with 26 additions and 7 deletions

View File

@ -62,6 +62,18 @@ class parse_util_test_case(unittest.TestCase):
self.assertEqual(f(''), None)
self.assertEqual(f(None), None)
def test_parse_list_with_valid_json(self):
f = lambda value: parse_util.parse_list(value, separator=None)
self.assertEqual(f('[0,1,2,3]'), [0, 1, 2, 3])
def test_parse_list_with_invalid_json_with_separator(self):
f = lambda value: parse_util.parse_list(value, separator=',')
self.assertEqual(f('[a,b,c]'), ['[a', 'b', 'c]'])
def test_parse_list_with_invalid_json_without_separator(self):
f = lambda value: parse_util.parse_list(value, separator=None)
self.assertEqual(f('[a,b,c]'), None)
def test_parse_phonenumber(self):
# TODO
pass

View File

@ -72,11 +72,18 @@ class github_issue_0046_test_case(unittest.TestCase):
d_new = benedict()
d_new = d.subset(keypaths)
d_new_raw = {'id': '37e4f6e876', 'meta': {'k0': {'kc': {'extra_key2': 'value2', 'key1': '', 'key2': 'value2', 'key3': 'value3', 'key4': True}}, 'language': 'en'}}
d_new_json = json.dumps(d_new_raw, sort_keys=True)
self.assertEqual(d_new, d_new_raw)
self.assertEqual(d_new.to_json(sort_keys=True), d_new_json)
# patch the json module to force the use of the python encoder - #46
# import json
# json.encoder.c_make_encoder = None
json_encoder = None
json_dumps = lambda d: json.dumps(d, sort_keys=True, cls=json_encoder)
d_new2 = d_new.clone()
self.assertEqual(d_new, d_new2)
self.assertEqual(d_new.to_json(sort_keys=True), d_new2.to_json(sort_keys=True))
d_new_raw = {'id': '37e4f6e876', 'meta': {'k0': {'kc': {'extra_key2': 'value2', 'key1': '', 'key2': 'value2', 'key3': 'value3', 'key4': True}}, 'language': 'en'}}
self.assertEqual(d_new, d_new_raw)
self.assertEqual(json_dumps(d_new), json_dumps(d_new_raw))
self.assertEqual(d_new.to_json(sort_keys=True, cls=json_encoder), json_dumps(d_new_raw))
d_new_cloned = d_new.clone()
self.assertEqual(d_new, d_new_cloned)
self.assertEqual(json_dumps(d_new), json_dumps(d_new_cloned))
self.assertEqual(d_new.to_json(sort_keys=True), d_new_cloned.to_json(sort_keys=True))