@@ -17,21 +17,13 @@ func TestFilteringHandler(t *testing.T) {
1717 m := & sync.RWMutex {}
1818 blockResponse := false
1919
20- // Prepare the proxy server
21- dnsProxy := mustNew (t , & Config {
22- Logger : slogutil .NewDiscardLogger (),
23- UDPListenAddr : []* net.UDPAddr {net .UDPAddrFromAddrPort (localhostAnyPort )},
24- TCPListenAddr : []* net.TCPAddr {net .TCPAddrFromAddrPort (localhostAnyPort )},
25- UpstreamConfig : newTestUpstreamConfig (t , defaultTimeout , testDefaultUpstreamAddr ),
26- TrustedProxies : defaultTrustedProxies ,
27- RatelimitSubnetLenIPv4 : 24 ,
28- RatelimitSubnetLenIPv6 : 64 ,
29- RequestHandler : func (p * Proxy , d * DNSContext ) error {
20+ reqHandler := & TestRequestHandler {
21+ OnHandle : func (p * Proxy , d * DNSContext ) (err error ) {
3022 m .Lock ()
3123 defer m .Unlock ()
3224
3325 if ! blockResponse {
34- // Use the default Resolve method if response is not blocked
26+ // Use the default Resolve method if response is not blocked.
3527 return p .Resolve (d )
3628 }
3729
@@ -41,8 +33,21 @@ func TestFilteringHandler(t *testing.T) {
4133
4234 // Set the response right away
4335 d .Res = & resp
36+
4437 return nil
4538 },
39+ }
40+
41+ // Prepare the proxy server.
42+ dnsProxy := mustNew (t , & Config {
43+ Logger : slogutil .NewDiscardLogger (),
44+ TrustedProxies : defaultTrustedProxies ,
45+ UpstreamConfig : newTestUpstreamConfig (t , defaultTimeout , testDefaultUpstreamAddr ),
46+ RequestHandler : reqHandler ,
47+ UDPListenAddr : []* net.UDPAddr {net .UDPAddrFromAddrPort (localhostAnyPort )},
48+ TCPListenAddr : []* net.TCPAddr {net .TCPAddrFromAddrPort (localhostAnyPort )},
49+ RatelimitSubnetLenIPv4 : 24 ,
50+ RatelimitSubnetLenIPv6 : 64 ,
4651 })
4752
4853 servicetest .RequireRun (t , dnsProxy , testTimeout )
0 commit comments