From: Otto Moerbeek Date: Mon, 24 Mar 2025 14:11:19 +0000 (+0100) Subject: Merge pull request #15352 from omoerbeek/rec-simpedottest X-Git-Tag: dnsdist-2.0.0-alpha2~122 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=965ba4791ea32b92d576830bee54b6544d5d4229;p=thirdparty%2Fpdns.git Merge pull request #15352 from omoerbeek/rec-simpedottest rec: in test_SimpleDot.py make sure we have the root DNSKEY in cache, it might require TCP --- 965ba4791ea32b92d576830bee54b6544d5d4229 diff --cc regression-tests.recursor-dnssec/test_SimpleDoT.py index 0a2c99edd4,4ba50ebee8..af79b9bc36 --- a/regression-tests.recursor-dnssec/test_SimpleDoT.py +++ b/regression-tests.recursor-dnssec/test_SimpleDoT.py @@@ -18,8 -18,40 +18,27 @@@ devonly-regression-test-mod _roothints = None - @classmethod - def setUpClass(cls): - - # we don't need all the auth stuff - cls.setUpSockets() - cls.startResponders() - - confdir = os.path.join('configs', cls._confdir) - cls.createConfigDir(confdir) - - cls.generateRecursorConfig(confdir) - cls.startRecursor(confdir, cls._recursorPort) - @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 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