From: Otto Moerbeek Date: Mon, 24 Mar 2025 12:10:28 +0000 (+0100) Subject: rec: in test_SimpleDot.py make sure we have the root DNSKEY in cache, it might requir... X-Git-Tag: dnsdist-2.0.0-alpha2~122^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4025ecc524689b38527e31c1f38aa1ebb23e7bc3;p=thirdparty%2Fpdns.git rec: in test_SimpleDot.py make sure we have the root DNSKEY in cache, it might require TCP Previously we assumed we didn't need TCP at all. --- diff --git a/regression-tests.recursor-dnssec/test_SimpleDoT.py b/regression-tests.recursor-dnssec/test_SimpleDoT.py index 20eaea132d..30b14dd405 100644 --- a/regression-tests.recursor-dnssec/test_SimpleDoT.py +++ b/regression-tests.recursor-dnssec/test_SimpleDoT.py @@ -33,6 +33,25 @@ devonly-regression-test-mode @pytest.mark.external def testTXT(self): + query = dns.message.make_query('.', 'DNSKEY', want_dnssec=True) + query.flags |= dns.flags.AD + + # As this test uses external servers, be a more generous wrt timeouts than the default 2.0s + res = self.sendUDPQuery(query, timeout=5.0) + + self.assertMessageIsAuthenticated(res) + self.assertRcodeEqual(res, 0); + rec_controlCmd = [os.environ['RECCONTROL'], + '--config-dir=%s' % 'configs/' + self._confdir, + 'get tcp-outqueries'] + try: + ret = subprocess.check_output(rec_controlCmd, stderr=subprocess.STDOUT) + tcpcount = ret + + except subprocess.CalledProcessError as e: + print(e.output) + raise + expected = dns.rrset.from_text('dot-test-target.powerdns.org.', 0, dns.rdataclass.IN, 'TXT', 'https://github.com/PowerDNS/pdns/pull/12825') query = dns.message.make_query('dot-test-target.powerdns.org', 'TXT', want_dnssec=True) query.flags |= dns.flags.AD @@ -61,7 +80,7 @@ devonly-regression-test-mode 'get tcp-outqueries'] try: ret = subprocess.check_output(rec_controlCmd, stderr=subprocess.STDOUT) - self.assertEqual(ret, b'0\n') + self.assertEqual(ret, tcpcount) except subprocess.CalledProcessError as e: print(e.output)