]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Some tests need a bit of extra delay.
authorOtto Moerbeek <otto.moerbeek@open-xchange.com>
Mon, 21 Nov 2022 08:05:08 +0000 (09:05 +0100)
committerOtto Moerbeek <otto.moerbeek@open-xchange.com>
Mon, 21 Nov 2022 14:26:03 +0000 (15:26 +0100)
regression-tests.dnsdist/dnsdisttests.py
regression-tests.dnsdist/test_Caching.py
regression-tests.dnsdist/test_Carbon.py
regression-tests.dnsdist/test_HealthChecks.py
regression-tests.dnsdist/test_Responses.py
regression-tests.dnsdist/test_SNMP.py
regression-tests.dnsdist/test_TLS.py

index 6e540b125e3032e980cbaa2d05776d76e3d20772..a11f6d1369ed903526ea06943d4ad886ddb94f5e 100644 (file)
@@ -72,6 +72,7 @@ class DNSDistTest(AssertEqualDNSMessageMixin, unittest.TestCase):
     _backgroundThreads = {}
     _UDPResponder = None
     _TCPResponder = None
+    _extraStartupSleep = 0
 
     @classmethod
     def waitForTCPSocket(cls, ipaddress, port):
@@ -148,6 +149,7 @@ class DNSDistTest(AssertEqualDNSMessageMixin, unittest.TestCase):
                 print(fdLog.read())
             print(f"*** End startDNSDist log for {logFile} ***")
             raise AssertionError('%s failed (%d)' % (dnsdistcmd, cls._dnsdist.returncode))
+        time.sleep(cls._extraStartupSleep)
 
     @classmethod
     def setUpSockets(cls):
index 587b0f0b3df94ae04e3aab7d6e0b662b440c0341..dafa0c89abba7f0de28a2510e3dd9974d49400e2 100644 (file)
@@ -849,6 +849,7 @@ class TestCachingHashingCookies(DNSDistTest):
 
 class TestTempFailureCacheTTLAction(DNSDistTest):
 
+    _extraStartupSleep = 1
     _config_template = """
     pc = newPacketCache(100, {maxTTL=86400, minTTL=1})
     getPool(""):setCache(pc)
index 85ce6361ceaaa4290cd0089cdf37c2e040abf4be..cd8535114d89a6f42026c26a95ac9169b11a31af 100644 (file)
@@ -7,6 +7,7 @@ from dnsdisttests import DNSDistTest, Queue
 
 class TestCarbon(DNSDistTest):
 
+    _extraStartupSleep = 2
     _carbonServer1Port = 8000
     _carbonServer1Name = "carbonname1"
     _carbonServer2Port = 8001
@@ -71,17 +72,6 @@ class TestCarbon(DNSDistTest):
         cls._CarbonResponder2.setDaemon(True)
         cls._CarbonResponder2.start()
 
-    @classmethod
-    def setUpClass(cls):
-
-        cls.startResponders()
-        cls.startDNSDist()
-        cls.setUpSockets()
-        time.sleep(1)
-
-        print("Launching tests..")
-
-
     def testCarbon(self):
         """
         Carbon: send data to 2 carbon servers
@@ -102,6 +92,7 @@ class TestCarbon(DNSDistTest):
         self.assertTrue(len(data1.splitlines()) > 1)
         expectedStart = b"dnsdist.%s.main." % self._carbonServer1Name.encode('UTF-8')
         for line in data1.splitlines():
+            print(line, file=sys.stderr)
             self.assertTrue(line.startswith(expectedStart))
             parts = line.split(b' ')
             self.assertEqual(len(parts), 3)
@@ -113,6 +104,7 @@ class TestCarbon(DNSDistTest):
         self.assertTrue(len(data2.splitlines()) > 1)
         expectedStart = b"dnsdist.%s.main." % self._carbonServer2Name.encode('UTF-8')
         for line in data2.splitlines():
+            print(line, file=sys.stderr)
             self.assertTrue(line.startswith(expectedStart))
             parts = line.split(b' ')
             self.assertEqual(len(parts), 3)
index a42cb5ff0bceb91efb6975bc9f163da5be476ba9..f5554abfdd4ba4620f736c4f2e3ca6fe834b6ff0 100644 (file)
@@ -183,6 +183,7 @@ _dotHealthCheckQueries = 0
 _dohHealthCheckQueries = 0
 
 class TestLazyHealthChecks(HealthCheckTest):
+    _extraStartupSleep = 1
     _do53Port = 10700
     _dotPort = 10701
     _dohPort = 10702
index 1fd2f4f054f35bc7303339d79e8887773cc475a7..243ae6f50d442b63f211636990a22d8c34b801b3 100644 (file)
@@ -55,6 +55,7 @@ class TestResponseRuleNXDelayed(DNSDistTest):
 
 class TestResponseRuleERCode(DNSDistTest):
 
+    _extraStartupSleep = 1
     _config_template = """
     newServer{address="127.0.0.1:%s"}
     addResponseAction(ERCodeRule(DNSRCode.BADVERS), DelayResponseAction(1000))
index 5d6db34cbde45346d9c29a9d5ee2eeed79aa117b..3d806ed831bc2654bd29cea04f197edf8382337b 100644 (file)
@@ -6,7 +6,8 @@ from pysnmp.hlapi import *
 from dnsdisttests import DNSDistTest
 
 class TestSNMP(DNSDistTest):
-
+    # wait 1s so that the uptime is > 0
+    _extraStartupSleep = 1
     _snmpTimeout = 2.0
     _snmpServer = '127.0.0.1'
     _snmpPort = 161
@@ -98,8 +99,6 @@ class TestSNMP(DNSDistTest):
         return results
 
     def _checkStats(self, auth, name):
-        # wait 1s so that the uptime is > 0
-        time.sleep(1)
 
         results = self._getSNMPStats(auth)
         self._checkStatsValues(results, self.__class__._queriesSent)
index 73ea381587e4ec1391e649950c1b887ec484c00a..ff2ef630cc8441deb9028f259b927e88f1582081 100644 (file)
@@ -10,16 +10,6 @@ from dnsdisttests import DNSDistTest
 
 class TLSTests(object):
 
-    @classmethod
-    def setUpClass(cls):
-
-        cls.startResponders()
-        cls.startDNSDist()
-        cls.setUpSockets()
-        time.sleep(1)
-
-        print("Launching tests..")
-
     def getServerCertificate(self):
         conn = self.openTLSConnection(self._tlsServerPort, self._serverName, self._caCert)
         cert = conn.getpeercert()
@@ -275,6 +265,7 @@ class TLSTests(object):
 
 class TestOpenSSL(DNSDistTest, TLSTests):
 
+    _extraStartupSleep = 1
     _consoleKey = DNSDistTest.generateConsoleKey()
     _consoleKeyB64 = base64.b64encode(_consoleKey).decode('ascii')
     _serverKey = 'server.key'