]> granicus.if.org Git - pdns/commitdiff
test ANY query against name with LUA record
authorPeter van Dijk <peter.van.dijk@powerdns.com>
Mon, 26 Nov 2018 16:09:45 +0000 (17:09 +0100)
committerPeter van Dijk <peter.van.dijk@powerdns.com>
Mon, 26 Nov 2018 16:09:45 +0000 (17:09 +0100)
regression-tests.auth-py/test_LuaRecords.py

index f812b479e8f66c9f7e920274f4eec4d374914f69..226fd9d6bd28d68a713ba4f1ce714911f718be8f 100644 (file)
@@ -103,6 +103,10 @@ none.view        IN    LUA    A          ("view({{
                                           " }})                                          " )
 *.magic          IN    LUA    A     "closestMagic()"
 www-balanced     IN           CNAME 1-1-1-3.17-1-2-4.1-2-3-5.magic.example.org.
+
+any              IN    LUA    A   "'192.0.2.1'"
+any              IN           TXT "hello there"
+
         """,
     }
     _web_rrsets = []
@@ -522,6 +526,41 @@ www-balanced     IN           CNAME 1-1-1-3.17-1-2-4.1-2-3-5.magic.example.org.
         first = self.sendUDPQuery(query)
         self.assertRcodeEqual(first, dns.rcode.SERVFAIL)
 
+
+    def testA(self):
+        """
+        Test A query against `any`
+        """
+        name = 'any.example.org.'
+
+        query = dns.message.make_query(name, 'A')
+
+        response = dns.message.make_response(query)
+
+        response.answer.append(dns.rrset.from_text(name, 0, dns.rdataclass.IN, dns.rdatatype.A, '192.0.2.1'))
+
+        res = self.sendUDPQuery(query)
+        self.assertRcodeEqual(res, dns.rcode.NOERROR)
+        self.assertEqual(res.answer, response.answer)
+
+    def testANY(self):
+        """
+        Test ANY query against `any`
+        """
+
+        name = 'any.example.org.'
+
+        query = dns.message.make_query(name, 'ANY')
+
+        response = dns.message.make_response(query)
+
+        response.answer.append(dns.rrset.from_text(name, 0, dns.rdataclass.IN, dns.rdatatype.A, '192.0.2.1'))
+        response.answer.append(dns.rrset.from_text(name, 0, dns.rdataclass.IN, 'TXT', '"hello there"'))
+
+        res = self.sendUDPQuery(query)
+        self.assertRcodeEqual(res, dns.rcode.NOERROR)
+        self.assertEqual(res.answer, response.answer)
+
 if __name__ == '__main__':
     unittest.main()
     exit(0)