def test_lists(self): """it should be possible to merge lists""" l1 = [10, 4.5, 11] l2 = [7, 14, 21] l3 = ["hello", "world"] l4 = ["foo", "bar"] result = sorted(_merge(l1, l2)) self.assertEqual(result, [4.5, 7, 10, 11, 14, 21]) result = sorted(_merge(l3, l4)) self.assertEqual(result, ["bar", "foo", "hello", "world"])
def test_unique_list(self): """Dupes should be removed from merged lists""" l1 = [20, 12, 70] l2 = [4, 9, 20] result = _merge(l1, l2) self.assertEqual(sorted(result), [4, 9, 12, 20, 70])
def test_merge(self): """It should be possible to merge 2 dicts""" d1 = {"a": 10, "b": 20} d2 = {"b": 30, "c": 40} merged = _merge(d1, d2) self.assertEqual(merged, {"a": 10, "b": 30, "c": 40})
def test_dicts(self): """It should be possible to merge nested dict""" d1 = {"a": {"b": 10, "c": 20}} d2 = {"a": {"d": 30, "e": "foo"}} result = _merge(d1, d2) self.assertEqual(result, {"a": {"b": 10, "c": 20, "d": 30, "e": "foo"}})
def test_nested_lists(self): """It should be possible to merge nested lists""" d1 = {"a": [10, 20]} d2 = {"a": [30, 40]} result = _merge(d1, d2) result["a"] = sorted(result["a"]) self.assertEqual(result, {"a": [10, 20, 30, 40]})
def test_values(self): """It should be possible to merge 2 values""" self.assertEqual(_merge(2, 5), 5) self.assertEqual(_merge("hello", "world"), "world")