]> git.ipfire.org Git - thirdparty/dnspython.git/commitdiff
test cache hit with live resolver
authorBob Halley <halley@dnspython.org>
Fri, 29 May 2020 15:51:22 +0000 (08:51 -0700)
committerBob Halley <halley@dnspython.org>
Fri, 29 May 2020 15:51:22 +0000 (08:51 -0700)
tests/test_resolver.py

index abc1a0f2fdf9fc1b22f6722178a0fabb2af929d3..c5814da6e5517b0fe9543ca5cbfecaa0e41dbb05 100644 (file)
@@ -393,6 +393,16 @@ class LiveResolverTests(unittest.TestCase):
             answer = dns.resolver.resolve(qname, qtype)
         self.assertRaises(dns.resolver.NXDOMAIN, bad)
 
+    @unittest.skipIf(not _network_available, "Internet not reachable")
+    def testResolveCacheHit(self):
+        res = dns.resolver.Resolver()
+        res.cache = dns.resolver.Cache()
+        answer1 = res.resolve('dns.google.', 'A')
+        seen = set([rdata.address for rdata in answer1])
+        self.assertTrue('8.8.8.8' in seen)
+        self.assertTrue('8.8.4.4' in seen)
+        answer2 = res.resolve('dns.google.', 'A')
+        self.assertTrue(answer2 is answer1)
 
 class PollingMonkeyPatchMixin(object):
     def setUp(self):