From ea5000e191d804d6a26c0637a2059960d24ab41d Mon Sep 17 00:00:00 2001 From: Ross McFarland Date: Wed, 16 Mar 2022 12:26:29 -0700 Subject: [PATCH] Real testing of register_type --- tests/test_octodns_record.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/tests/test_octodns_record.py b/tests/test_octodns_record.py index 5ce1d0c..97ea3e3 100644 --- a/tests/test_octodns_record.py +++ b/tests/test_octodns_record.py @@ -12,7 +12,8 @@ from octodns.record import ARecord, AaaaRecord, AliasRecord, CaaRecord, \ LocValue, MxRecord, MxValue, NaptrRecord, NaptrValue, NsRecord, \ PtrRecord, Record, RecordException, SshfpRecord, SshfpValue, SpfRecord, \ SrvRecord, SrvValue, TxtRecord, Update, UrlfwdRecord, UrlfwdValue, \ - ValidationError, _Dynamic, _DynamicPool, _DynamicRule + ValidationError, _Dynamic, _DynamicPool, _DynamicRule, _NsValue, \ + _ValuesMixin from octodns.zone import Zone from helpers import DynamicProvider, GeoProvider, SimpleProvider @@ -27,6 +28,18 @@ class TestRecord(TestCase): self.assertEqual('Type "A" already registered by ' 'octodns.record.ARecord', str(ctx.exception)) + class AaRecord(_ValuesMixin, Record): + _type = 'AA' + _value_type = _NsValue + + Record.register_type('AA', AaRecord) + aa = Record.new(self.zone, 'registered', { + 'ttl': 360, + 'type': 'AA', + 'value': 'does.not.matter.', + }) + self.assertEqual(AaRecord, aa.__class__) + def test_lowering(self): record = ARecord(self.zone, 'MiXeDcAsE', { 'ttl': 30,