From: Bob Halley Date: Fri, 1 Mar 2024 13:32:13 +0000 (-0800) Subject: more coverage lint X-Git-Tag: v2.7.0rc1~71 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=cc82b5d151d7651b1d23320789ab97bd77872b7f;p=thirdparty%2Fdnspython.git more coverage lint --- diff --git a/dns/rdatatype.py b/dns/rdatatype.py index b5ef8efe..f0d524ae 100644 --- a/dns/rdatatype.py +++ b/dns/rdatatype.py @@ -126,7 +126,7 @@ class RdataType(dns.enum.IntEnum): if text.find("-") >= 0: try: return cls[text.replace("-", "_")] - except KeyError: + except KeyError: # pragma: no cover pass return _registered_by_text.get(text) diff --git a/dns/set.py b/dns/set.py index f0fb0d50..9081048a 100644 --- a/dns/set.py +++ b/dns/set.py @@ -43,7 +43,7 @@ class Set: self.add(item) # lgtm[py/init-calls-subclass] def __repr__(self): - return "dns.set.Set(%s)" % repr(list(self.items.keys())) + return "dns.set.Set(%s)" % repr(list(self.items.keys())) # pragma: no cover def add(self, item): """Add an item to the set.""" diff --git a/tests/test_rdata.py b/tests/test_rdata.py index cb8ae519..38ff8317 100644 --- a/tests/test_rdata.py +++ b/tests/test_rdata.py @@ -736,6 +736,11 @@ class RdataTestCase(unittest.TestCase): new_text = rr.to_text(chunksize=chunksize) self.assertEqual(output, new_text) + def test_simple_ordered_compare_when_equal(self): + r1 = dns.rdata.from_text("IN", "AAAA", "::1") + r2 = dns.rdata.from_text("IN", "AAAA", "0000:0000::1") + self.assertFalse(r1 < r2) + def test_relative_vs_absolute_compare_unstrict(self): try: saved = dns.rdata._allow_relative_comparisons @@ -783,15 +788,35 @@ class RdataTestCase(unittest.TestCase): finally: dns.rdata._allow_relative_comparisons = saved - def test_absolute_vs_absolute_compare(self): - r1 = dns.rdata.from_text(dns.rdataclass.IN, dns.rdatatype.NS, "www.") - r2 = dns.rdata.from_text(dns.rdataclass.IN, dns.rdatatype.NS, "xxx.") - self.assertFalse(r1 == r2) - self.assertTrue(r1 != r2) - self.assertTrue(r1 < r2) - self.assertTrue(r1 <= r2) - self.assertFalse(r1 > r2) - self.assertFalse(r1 >= r2) + def test_absolute_vs_absolute_compare_unstrict(self): + try: + saved = dns.rdata._allow_relative_comparisons + dns.rdata._allow_relative_comparisons = True + r1 = dns.rdata.from_text(dns.rdataclass.IN, dns.rdatatype.NS, "www.") + r2 = dns.rdata.from_text(dns.rdataclass.IN, dns.rdatatype.NS, "xxx.") + self.assertFalse(r1 == r2) + self.assertTrue(r1 != r2) + self.assertTrue(r1 < r2) + self.assertTrue(r1 <= r2) + self.assertFalse(r1 > r2) + self.assertFalse(r1 >= r2) + finally: + dns.rdata._allow_relative_comparisons = saved + + def test_absolute_vs_absolute_compare_strict(self): + try: + saved = dns.rdata._allow_relative_comparisons + dns.rdata._allow_relative_comparisons = False + r1 = dns.rdata.from_text(dns.rdataclass.IN, dns.rdatatype.NS, "www.") + r2 = dns.rdata.from_text(dns.rdataclass.IN, dns.rdatatype.NS, "xxx.") + self.assertFalse(r1 == r2) + self.assertTrue(r1 != r2) + self.assertTrue(r1 < r2) + self.assertTrue(r1 <= r2) + self.assertFalse(r1 > r2) + self.assertFalse(r1 >= r2) + finally: + dns.rdata._allow_relative_comparisons = saved def test_relative_vs_relative_compare_unstrict(self): try: diff --git a/tests/test_ttl.py b/tests/test_ttl.py index d566f41b..4d17628d 100644 --- a/tests/test_ttl.py +++ b/tests/test_ttl.py @@ -31,6 +31,14 @@ class TTLTestCase(unittest.TestCase): with self.assertRaises(dns.ttl.BadTTL): dns.ttl.from_text("1mw") + def test_ttl_technically_too_big_but_tolerated(self): + ttl = dns.ttl.from_text("4294967295") + assert ttl == 4294967295 + + def test_ttl_technically_too_big(self): + with self.assertRaises(dns.ttl.BadTTL): + dns.ttl.from_text("4294967296") + def test_empty(self): with self.assertRaises(dns.ttl.BadTTL): dns.ttl.from_text("")