def test_diff_dictionaries(self): old_dict = { "a": "Apple", "b": "Banana", "c": "Corn", } new_dict = { "a": "Apple", "b": "Bob", "d": "Doug", } [count, changes] = diff_dictionaries(old_dict, new_dict) self.assertEqual(count, 3) expected_output = [ [" ", "a", "Apple"], ["-", "b", "Banana"], ["+", "b", "Bob"], ["-", "c", "Corn"], ["+", "d", "Doug"], ] changes.sort() expected_output.sort() # compare all the outputs to the expected change for expected_change in expected_output: change = changes.pop(0) self.assertListEqual(change, expected_change) # No extra output self.assertEqual(len(changes), 0)
def test_diff_dictionaries(self): old_dict = { "a": "Apple", "b": "Banana", "c": "Corn", } new_dict = { "a": "Apple", "b": "Bob", "d": "Doug", } [count, changes] = diff_dictionaries(old_dict, new_dict) self.assertEqual(count, 3) expected_output = [ DictValue("a", "Apple", "Apple"), DictValue("b", "Banana", "Bob"), DictValue("c", "Corn", None), DictValue("d", None, "Doug"), ] expected_output.sort(key=attrgetter("key")) # compare all the outputs to the expected change for expected_change in expected_output: change = changes.pop(0) self.assertEqual(change, expected_change) # No extra output self.assertEqual(len(changes), 0)
def test_diff_dictionaries(self): [count, changes] = diff_dictionaries(self.old_dict, self.new_dict) self.assertEqual(count, 3) expected_output = [ [" ", "a", "Apple"], ["-", "b", "Banana"], ["+", "b", "Bob"], ["-", "c", "Corn"], ["+", "d", "Doug"], ] changes.sort() expected_output.sort() # compare all the outputs to the expected change for expected_change in expected_output: change = changes.pop(0) self.assertListEqual(change, expected_change) # No extra output self.assertEqual(len(changes), 0)