Skip to content
This repository was archived by the owner on Jul 22, 2021. It is now read-only.

Commit

Permalink
Fix tests.
Browse files Browse the repository at this point in the history
  • Loading branch information
wkitka committed Jun 4, 2020
1 parent 4cd4592 commit cc2874f
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 21 deletions.
38 changes: 19 additions & 19 deletions dsconfig/appending_dict/test_appendingdict.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,52 +31,52 @@ def test_init_tiny(self):
def test_init_flat(self):
FLAT_DICT = {"a": 1, "b": 2, "c": 3}
sd = SetterDict(FLAT_DICT)
self.assertDictEqual(sd, FLAT_DICT)
self.assertDictEqual(sd.to_dict(), FLAT_DICT)

def test_init_nested(self):
NESTED_DICT = {"a": {"b": 2}}
sd = SetterDict(NESTED_DICT)
self.assertDictEqual(sd, NESTED_DICT)
self.assertDictEqual(sd.to_dict(), NESTED_DICT)

def test_init_blended(self):
BLENDED_DICT = {"a": 1, "b": {"c": 3}}
sd = SetterDict(BLENDED_DICT)
self.assertDictEqual(sd, BLENDED_DICT)
self.assertDictEqual(sd.to_dict(), BLENDED_DICT)

def test_init_deep(self):
DEEP_DICT = {"a": {"b": {"c": {"d": 4}}}}
sd = SetterDict(DEEP_DICT)
self.assertDictEqual(sd, DEEP_DICT)
self.assertDictEqual(sd.to_dict(), DEEP_DICT)

def test_init_deep(self):
COMPLEX_DICT = {"a": {"b": {"c": {"d": 4}}}, "e": 5}
sd = SetterDict(COMPLEX_DICT)
self.assertDictEqual(sd, COMPLEX_DICT)
self.assertDictEqual(sd.to_dict(), COMPLEX_DICT)

def test_setting(self):
sd = SetterDict()
sd["foo"] = 1
self.assertDictEqual(sd, {"foo": 1})
self.assertDictEqual(sd.to_dict(), {"foo": 1})

def test_setting_nested(self):
sd = SetterDict()
sd["foo"]["bar"] = 2
self.assertDictEqual(sd, {"foo": {"bar": 2}})
self.assertDictEqual(sd.to_dict(), {"foo": {"bar": 2}})

def test_setting_nested_nonempty(self):
sd = SetterDict({"a": 1})
sd["foo"]["bar"] = 2
self.assertDictEqual(sd, {"a": 1, "foo": {"bar": 2}})
self.assertDictEqual(sd.to_dict(), {"a": 1, "foo": {"bar": 2}})

def test_setting_attr(self):
sd = SetterDict({"a": 1})
sd.a = 2
self.assertDictEqual(sd, {"a": 2})
self.assertDictEqual(sd.to_dict(), {"a": 2})

def test_setting_attr_deep(self):
sd = SetterDict()
sd.a.b.c = 4
self.assertDictEqual(sd, {"a": {"b": {"c": 4}}})
self.assertDictEqual(sd.to_dict(), {"a": {"b": {"c": 4}}})

def test_to_dict(self):
orig = {"a": {"b": ["3"], "c": {"d": ["4"]}, "e": ["1"]}}
Expand All @@ -103,38 +103,38 @@ class AppendingDictTestCase(unittest.TestCase):
def test_basic_appending(self):
ad = AppendingDict()
ad["a"] = 1
self.assertDictEqual(ad, {"a": ['1']})
self.assertDictEqual(ad.to_dict(), {"a": ['1']})
ad["a"] = 2
self.assertDictEqual(ad, {"a": ['1', '2']})
self.assertDictEqual(ad.to_dict(), {"a": ['1', '2']})

def test_deep_appending(self):
ad = AppendingDict()
ad["a"]["b"]["c"] = 1
ad["a"]["b"]["c"] = 2
print((type(ad["a"]["b"])))
self.assertDictEqual(ad, {"a": {"b": {"c": ['1', '2']}}})
self.assertDictEqual(ad.to_dict(), {"a": {"b": {"c": ['1', '2']}}})

def test_initial_setting_with_dict(self):
ad = AppendingDict()
ad.a = {"b": {"c": 1}}
self.assertDictEqual(ad, {"a": {"b": {"c": ["1"]}}})
self.assertDictEqual(ad.to_dict(), {"a": {"b": {"c": ["1"]}}})

def test_deep_setting_with_dict(self):
ad = AppendingDict()
ad.a.b.c = 1
ad.a = {"b": {"d": 2}}
self.assertDictEqual(ad, {"a": {"b": {"c": ['1'], "d": ['2']}}})
self.assertDictEqual(ad.to_dict(), {"a": {"b": {"c": ['1'], "d": ['2']}}})

def test_setting_with_sequence(self):
ad = AppendingDict()
ad.a = [1, "b"]
self.assertDictEqual(ad, {"a": ['1', 'b']})
self.assertDictEqual(ad.to_dict(), {"a": ['1', 'b']})

def test_setting_existing_key_with_sequence(self):
ad = AppendingDict()
ad.a = [1, "b"]
ad.a = [2, "c"]
self.assertDictEqual(ad, {"a": ['1', 'b', '2', 'c']})
self.assertDictEqual(ad.to_dict(), {"a": ['1', 'b', '2', 'c']})

def test_error_setting_existing_subtree_with_scalar(self):
ad = AppendingDict()
Expand All @@ -151,7 +151,7 @@ def test_setting_with_appendingdict(self):
ad.a.e = 1
ad.a = ad2
self.assertDictEqual(
ad, {"a": {"b": ["3"], "c": {"d": ["4"]}, "e": ["1"]}})
ad.to_dict(), {"a": {"b": ["3"], "c": {"d": ["4"]}, "e": ["1"]}})

def test_updating_does_not_work(self):
"""
Expand All @@ -164,7 +164,7 @@ def test_updating_does_not_work(self):
def test_set_string_value(self):
ad = AppendingDict()
ad.a = "abc"
self.assertDictEqual(ad, {"a": ["abc"]})
self.assertDictEqual(ad.to_dict(), {"a": ["abc"]})

def test_to_dict(self):
orig = {"a": {"b": ["3"], "c": {"d": ["4"]}, "e": ["1"]}}
Expand Down
6 changes: 4 additions & 2 deletions test/test_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,10 @@ def test_immutable(self):


def test_print_diff(capsys):
test_str = ('[{"path": "/a", "op": "remove"}, {"path": "/c", "value": 4, "op": "add"}'
', {"path": "/b", "value": 3, "op": "replace"}]')
test_str = ('[{"op": "remove", "path": "/a"}, {"op": "add", "path": "/c", "value": 4}'
', {"op": "replace", "path": "/b", "value": 3}]')
print(test_str)
print(str(print_diff({'a': 1, 'b': 2}, {'b': 3, 'c': 4})))
assert test_str == str(print_diff({'a': 1, 'b': 2}, {'b': 3, 'c': 4}))
captured = capsys.readouterr()
assert "REMOVE:\n > a" in captured.out
Expand Down

0 comments on commit cc2874f

Please sign in to comment.