From 8028c05b94c1bcb2deaa1e6444b3bcfc8b63bcb4 Mon Sep 17 00:00:00 2001 From: Bob Halley Date: Fri, 26 Nov 2021 13:55:36 -0800 Subject: [PATCH] Node find_rdataset() should set covers when creating [#730] --- dns/node.py | 2 +- tests/test_zone.py | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/dns/node.py b/dns/node.py index b1baf27b..68c15266 100644 --- a/dns/node.py +++ b/dns/node.py @@ -110,7 +110,7 @@ class Node: return rds if not create: raise KeyError - rds = dns.rdataset.Rdataset(rdclass, rdtype) + rds = dns.rdataset.Rdataset(rdclass, rdtype, covers) self.rdatasets.append(rds) return rds diff --git a/tests/test_zone.py b/tests/test_zone.py index e8dd9667..3e34e720 100644 --- a/tests/test_zone.py +++ b/tests/test_zone.py @@ -145,7 +145,7 @@ Königsgäßchen 300 NS Königsgäßchen misc_cases_input = """ $ORIGIN example. $TTL 300 - + @ soa foo bar 1 2 3 4 5 @ ns ns1 @ ns ns2 @@ -501,6 +501,15 @@ class ZoneTestCase(unittest.TestCase): node.find_rdataset(dns.rdataclass.IN, dns.rdatatype.LOC) self.assertRaises(KeyError, bad) + def testNodeFindRdataset3(self): + z = dns.zone.from_text(example_text, 'example.', relativize=True) + node = z['@'] + rds = node.find_rdataset(dns.rdataclass.IN, dns.rdatatype.RRSIG, + dns.rdatatype.A, create=True) + self.assertEqual(rds.rdclass, dns.rdataclass.IN) + self.assertEqual(rds.rdtype, dns.rdatatype.RRSIG) + self.assertEqual(rds.covers, dns.rdatatype.A) + def testNodeGetRdataset1(self): z = dns.zone.from_text(example_text, 'example.', relativize=True) node = z['@'] -- 2.47.3