2024-12-05 07:57:51 -06:00
|
|
|
# -*- coding: utf-8; -*-
|
|
|
|
|
|
|
|
from unittest import TestCase
|
|
|
|
|
|
|
|
from wuttasync import util as mod
|
|
|
|
|
|
|
|
|
|
|
|
class TestDataDiffs(TestCase):
|
|
|
|
|
|
|
|
def test_source_missing_field(self):
|
2025-08-31 12:42:59 -05:00
|
|
|
source = {"foo": "bar"}
|
|
|
|
target = {"baz": "xyz", "foo": "bar"}
|
2024-12-05 07:57:51 -06:00
|
|
|
self.assertRaises(KeyError, mod.data_diffs, source, target)
|
|
|
|
|
|
|
|
def test_target_missing_field(self):
|
2025-08-31 12:42:59 -05:00
|
|
|
source = {"foo": "bar", "baz": "xyz"}
|
|
|
|
target = {"baz": "xyz"}
|
|
|
|
self.assertRaises(
|
|
|
|
KeyError, mod.data_diffs, source, target, fields=["foo", "baz"]
|
|
|
|
)
|
2024-12-05 07:57:51 -06:00
|
|
|
|
|
|
|
def test_no_diffs(self):
|
2025-08-31 12:42:59 -05:00
|
|
|
source = {"foo": "bar", "baz": "xyz"}
|
|
|
|
target = {"baz": "xyz", "foo": "bar"}
|
2024-12-05 07:57:51 -06:00
|
|
|
self.assertFalse(mod.data_diffs(source, target))
|
|
|
|
|
|
|
|
def test_with_diffs(self):
|
2025-08-31 12:42:59 -05:00
|
|
|
source = {"foo": "bar", "baz": "xyz"}
|
|
|
|
target = {"baz": "xyz", "foo": "BAR"}
|
2024-12-05 07:57:51 -06:00
|
|
|
result = mod.data_diffs(source, target)
|
2025-08-31 12:42:59 -05:00
|
|
|
self.assertEqual(result, ["foo"])
|