|
|
|
@ -124,12 +124,15 @@ class TestMetaProcessor(TestCase): |
|
|
|
self.assertEqual(self.meta_up_to_date, record) |
|
|
|
self.assertEqual(['time=the-time'], record.values) |
|
|
|
|
|
|
|
def test_process_target_zone(self): |
|
|
|
def test_process_source_and_target_zones(self): |
|
|
|
proc = MetaProcessor('test') |
|
|
|
|
|
|
|
# with defaults, not enabled |
|
|
|
zone = self.zone.copy() |
|
|
|
processed = proc.process_target_zone(zone, None) |
|
|
|
existing = self.zone.copy() |
|
|
|
desired = self.zone.copy() |
|
|
|
processed, _ = proc.process_source_and_target_zones( |
|
|
|
existing, desired, None |
|
|
|
) |
|
|
|
self.assertFalse(processed.records) |
|
|
|
|
|
|
|
# enable provider |
|
|
|
@ -140,27 +143,35 @@ class TestMetaProcessor(TestCase): |
|
|
|
|
|
|
|
# enabled provider, no meta record, shouldn't happen, but also shouldn't |
|
|
|
# blow up |
|
|
|
processed = proc.process_target_zone(zone, DummyTarget()) |
|
|
|
processed, _ = proc.process_source_and_target_zones( |
|
|
|
existing, desired, DummyTarget() |
|
|
|
) |
|
|
|
self.assertFalse(processed.records) |
|
|
|
|
|
|
|
# enabled provider, should now look for and update the provider value, |
|
|
|
# - only record so nothing to skip over |
|
|
|
# - time value in there to be skipped over |
|
|
|
proc = MetaProcessor('test', include_provider=True) |
|
|
|
zone = self.zone.copy() |
|
|
|
existing = self.zone.copy() |
|
|
|
desired = self.zone.copy() |
|
|
|
meta = self.meta_up_to_date.copy() |
|
|
|
zone.add_record(meta) |
|
|
|
processed = proc.process_target_zone(zone, DummyTarget()) |
|
|
|
existing.add_record(meta) |
|
|
|
processed, _ = proc.process_source_and_target_zones( |
|
|
|
existing, desired, DummyTarget() |
|
|
|
) |
|
|
|
record = next(iter(processed.records)) |
|
|
|
self.assertEqual(['provider=dummy', 'time=xxx'], record.values) |
|
|
|
|
|
|
|
# add another unrelated record that needs to be skipped |
|
|
|
proc = MetaProcessor('test', include_provider=True) |
|
|
|
zone = self.zone.copy() |
|
|
|
existing = self.zone.copy() |
|
|
|
desired = self.zone.copy() |
|
|
|
meta = self.meta_up_to_date.copy() |
|
|
|
zone.add_record(meta) |
|
|
|
zone.add_record(self.not_meta) |
|
|
|
processed = proc.process_target_zone(zone, DummyTarget()) |
|
|
|
existing.add_record(meta) |
|
|
|
existing.add_record(self.not_meta) |
|
|
|
processed, _ = proc.process_source_and_target_zones( |
|
|
|
existing, desired, DummyTarget() |
|
|
|
) |
|
|
|
self.assertEqual(2, len(processed.records)) |
|
|
|
record = [r for r in processed.records if r.name == proc.record_name][0] |
|
|
|
self.assertEqual(['provider=dummy', 'time=xxx'], record.values) |
|
|
|
|