summaryrefslogtreecommitdiff
path: root/tests/test_resolver.py
diff options
context:
space:
mode:
authorPetr Špaček <petr.spacek@nic.cz>2020-05-28 09:55:24 +0200
committerPetr Špaček <petr.spacek@nic.cz>2020-05-28 09:55:24 +0200
commitedde4a1938056e2cb088fa708390d927f9a6e993 (patch)
treec53529616930e69b176c2a006373a664cf8e2e7e /tests/test_resolver.py
parentc3c14141b63cd14030ef5588b079d5058d23dbb4 (diff)
downloaddnspython-edde4a1938056e2cb088fa708390d927f9a6e993.tar.gz
tests: resolver Nodata answers
Diffstat (limited to 'tests/test_resolver.py')
-rw-r--r--tests/test_resolver.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/test_resolver.py b/tests/test_resolver.py
index 0403510..40a95ef 100644
--- a/tests/test_resolver.py
+++ b/tests/test_resolver.py
@@ -207,6 +207,22 @@ class BaseResolverTests(unittest.TestCase):
dnsgoogle = dns.name.from_text('dns.google.')
self.assertEqual(answer[0].target, dnsgoogle)
+ @unittest.skipIf(not _network_available, "Internet not reachable")
+ def testResolveNodataException(self):
+ def bad():
+ dns.resolver.resolve('dnspython.org.', 'TYPE3') # obsolete MB
+ self.assertRaises(dns.resolver.NoAnswer, bad)
+
+ @unittest.skipIf(not _network_available, "Internet not reachable")
+ def testResolveNodataAnswer(self):
+ qname = dns.name.from_text('dnspython.org')
+ qclass = dns.rdataclass.from_text('IN')
+ qtype = dns.rdatatype.from_text('TYPE3') # obsolete MB
+ answer = dns.resolver.resolve(qname, qtype, raise_on_no_answer=False)
+ self.assertRaises(KeyError,
+ lambda: answer.response.find_rrset(answer.response.answer,
+ qname, qclass, qtype))
+
def testLRUReplace(self):
cache = dns.resolver.LRUCache(4)
for i in range(0, 5):
@@ -487,4 +503,6 @@ class ResolverNameserverValidTypeTestCase(unittest.TestCase):
resolver.nameservers = invalid_nameserver
if __name__ == '__main__':
+ from IPython.core.debugger import set_trace
+ set_trace()
unittest.main()