From adf7154f6b8fe248757da490e7594c3b36f6055b Mon Sep 17 00:00:00 2001 From: Ross McFarland Date: Wed, 30 May 2018 12:22:35 -0700 Subject: [PATCH] TDD lenient add_record --- tests/test_octodns_zone.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/tests/test_octodns_zone.py b/tests/test_octodns_zone.py index 94faef3..e90f94c 100644 --- a/tests/test_octodns_zone.py +++ b/tests/test_octodns_zone.py @@ -139,9 +139,9 @@ class TestZone(TestCase): self.assertTrue('missing ending dot' in ctx.exception.message) def test_sub_zones(self): - zone = Zone('unit.tests.', set(['sub', 'barred'])) # NS for exactly the sub is allowed + zone = Zone('unit.tests.', set(['sub', 'barred'])) record = Record.new(zone, 'sub', { 'ttl': 3600, 'type': 'NS', @@ -151,6 +151,7 @@ class TestZone(TestCase): self.assertEquals(set([record]), zone.records) # non-NS for exactly the sub is rejected + zone = Zone('unit.tests.', set(['sub', 'barred'])) record = Record.new(zone, 'sub', { 'ttl': 3600, 'type': 'A', @@ -159,8 +160,12 @@ class TestZone(TestCase): with self.assertRaises(SubzoneRecordException) as ctx: zone.add_record(record) self.assertTrue('not of type NS', ctx.exception.message) + # Can add it w/lenient + zone.add_record(record, lenient=True) + self.assertEquals(set([record]), zone.records) # NS for something below the sub is rejected + zone = Zone('unit.tests.', set(['sub', 'barred'])) record = Record.new(zone, 'foo.sub', { 'ttl': 3600, 'type': 'NS', @@ -169,8 +174,12 @@ class TestZone(TestCase): with self.assertRaises(SubzoneRecordException) as ctx: zone.add_record(record) self.assertTrue('under a managed sub-zone', ctx.exception.message) + # Can add it w/lenient + zone.add_record(record, lenient=True) + self.assertEquals(set([record]), zone.records) # A for something below the sub is rejected + zone = Zone('unit.tests.', set(['sub', 'barred'])) record = Record.new(zone, 'foo.bar.sub', { 'ttl': 3600, 'type': 'A', @@ -179,6 +188,9 @@ class TestZone(TestCase): with self.assertRaises(SubzoneRecordException) as ctx: zone.add_record(record) self.assertTrue('under a managed sub-zone', ctx.exception.message) + # Can add it w/lenient + zone.add_record(record, lenient=True) + self.assertEquals(set([record]), zone.records) def test_ignored_records(self): zone_normal = Zone('unit.tests.', [])