# -*- coding: utf-8; -*- from unittest import TestCase from wuttasync import util as mod class TestDataDiffs(TestCase): def test_source_missing_field(self): source = {"foo": "bar"} target = {"baz": "xyz", "foo": "bar"} self.assertRaises(KeyError, mod.data_diffs, source, target) def test_target_missing_field(self): source = {"foo": "bar", "baz": "xyz"} target = {"baz": "xyz"} self.assertRaises( KeyError, mod.data_diffs, source, target, fields=["foo", "baz"] ) def test_no_diffs(self): source = {"foo": "bar", "baz": "xyz"} target = {"baz": "xyz", "foo": "bar"} self.assertFalse(mod.data_diffs(source, target)) def test_with_diffs(self): source = {"foo": "bar", "baz": "xyz"} target = {"baz": "xyz", "foo": "BAR"} result = mod.data_diffs(source, target) self.assertEqual(result, ["foo"])