]>
git.ipfire.org Git - thirdparty/pdns.git/blob - regression-tests.dnsdist/test_Deprecated.py
3 from dnsdisttests
import DNSDistTest
5 class TestDeprecatedMakeRule(DNSDistTest
):
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"))
12 newServer{address="127.0.0.1:%d"}
15 def testDeprecatedMakeRule(self
):
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
,
29 expectedResponse
.answer
.append(rrset
)
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
)
37 def testDeprecatedAddActionStringSuffix(self
):
39 Deprecated: addAction string suffix
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
,
51 expectedResponse
.answer
.append(rrset
)
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
)
59 def testDeprecatedAddActionListOfStringSuffixes(self
):
61 Deprecated: addAction list of string suffixes
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
,
73 expectedResponse
.answer
.append(rrset
)
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
)