]> git.ipfire.org Git - thirdparty/pdns.git/blame - regression-tests.dnsdist/test_Deprecated.py
Merge pull request #13594 from rgacogne/ddist-http1
[thirdparty/pdns.git] / regression-tests.dnsdist / test_Deprecated.py
CommitLineData
149b7e3b
RG
1#!/usr/bin/env python
2import dns
3from dnsdisttests import DNSDistTest
4
5class TestDeprecatedMakeRule(DNSDistTest):
6
7 _config_template = """
8 addAction(makeRule("make-rule-suffix.deprecated.tests.powerdns.com."), SpoofAction("192.0.2.1"))
9 addAction("string-suffix.deprecated.tests.powerdns.com.", SpoofAction("192.0.2.2"))
10 addAction({"list-of-string-suffixes.deprecated.tests.powerdns.com."}, SpoofAction("192.0.2.3"))
11
12 newServer{address="127.0.0.1:%d"}
13 """
14
15 def testDeprecatedMakeRule(self):
16 """
17 Deprecated: makeRule
18 """
19 name = 'prefix.make-rule-suffix.deprecated.tests.powerdns.com.'
20 query = dns.message.make_query(name, 'A', 'IN')
21 # dnsdist set RA = RD for spoofed responses
22 query.flags &= ~dns.flags.RD
23 expectedResponse = dns.message.make_response(query)
24 rrset = dns.rrset.from_text(name,
25 60,
26 dns.rdataclass.IN,
27 dns.rdatatype.A,
28 '192.0.2.1')
29 expectedResponse.answer.append(rrset)
30
31 for method in ("sendUDPQuery", "sendTCPQuery"):
32 sender = getattr(self, method)
33 (_, receivedResponse) = sender(query, response=None, useQueue=False)
34 self.assertTrue(receivedResponse)
35 self.assertEqual(expectedResponse, receivedResponse)
36
37 def testDeprecatedAddActionStringSuffix(self):
38 """
39 Deprecated: addAction string suffix
40 """
41 name = 'another.prefix.string-suffix.deprecated.tests.powerdns.com.'
42 query = dns.message.make_query(name, 'A', 'IN')
43 # dnsdist set RA = RD for spoofed responses
44 query.flags &= ~dns.flags.RD
45 expectedResponse = dns.message.make_response(query)
46 rrset = dns.rrset.from_text(name,
47 60,
48 dns.rdataclass.IN,
49 dns.rdatatype.A,
50 '192.0.2.2')
51 expectedResponse.answer.append(rrset)
52
53 for method in ("sendUDPQuery", "sendTCPQuery"):
54 sender = getattr(self, method)
55 (_, receivedResponse) = sender(query, response=None, useQueue=False)
56 self.assertTrue(receivedResponse)
57 self.assertEqual(expectedResponse, receivedResponse)
58
59 def testDeprecatedAddActionListOfStringSuffixes(self):
60 """
61 Deprecated: addAction list of string suffixes
62 """
63 name = 'yet.another.prefix.list-of-string-suffixes.deprecated.tests.powerdns.com.'
64 query = dns.message.make_query(name, 'A', 'IN')
65 # dnsdist set RA = RD for spoofed responses
66 query.flags &= ~dns.flags.RD
67 expectedResponse = dns.message.make_response(query)
68 rrset = dns.rrset.from_text(name,
69 60,
70 dns.rdataclass.IN,
71 dns.rdatatype.A,
72 '192.0.2.3')
73 expectedResponse.answer.append(rrset)
74
75 for method in ("sendUDPQuery", "sendTCPQuery"):
76 sender = getattr(self, method)
77 (_, receivedResponse) = sender(query, response=None, useQueue=False)
78 self.assertTrue(receivedResponse)
79 self.assertEqual(expectedResponse, receivedResponse)