Skip to content

Commit c053de3

Browse files
committed
Add test case for domain not found
1 parent 8c5b238 commit c053de3

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

dnsproxy.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,6 @@ func (proxy *DNSProxy) getResponse(requestMsg *dns.Msg) (*dns.Msg, error) {
5353

5454
answer, err := proxy.processTypeA(&question, requestMsg)
5555
if err != nil {
56-
5756
return responseMsg, err
5857
}
5958
responseMsg.Answer = append(responseMsg.Answer, *answer)

dnsproxy_test.go

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ func TestDNSProxy_getResponse(t *testing.T) {
3535
httpmock.RegisterResponder("GET", "https://dns.google/resolve?name=allowed.com.&type=a",
3636
httpmock.NewStringResponder(200, `{"Status":0,"TC":false,"RD":true,"RA":true,"AD":false,"CD":false,"Question":[{"name":"allowed.com.","type":1}],"Answer":[{"name":"allowed.com.","type":1,"TTL":3080,"data":"67.225.146.248"}]}`))
3737

38+
httpmock.RegisterResponder("GET", "https://dns.google/resolve?name=notfound.com.&type=a",
39+
httpmock.NewStringResponder(200, `{"Status":3,"TC":false,"RD":true,"RA":true,"AD":false,"CD":false,"Question":[{"name":"notfound.com.","type":1}],"Authority":[{"name":"com.","type":6,"TTL":900,"data":"a.gtld-servers.net. nstld.verisign-grs.com. 1640040308 1800 900 604800 86400"}],"Comment":"Response from 2001:503:231d::2:30."}`))
40+
3841
tests := []struct {
3942
name string
4043
fields fields
@@ -78,6 +81,12 @@ func TestDNSProxy_getResponse(t *testing.T) {
7881
want: &dns.Msg{Answer: []dns.RR{rrDnsAllowed}},
7982
wantErr: false,
8083
},
84+
{name: "type A notfound.com",
85+
fields: fields{Cache: &Cache, EgressPolicy: EgressPolicyAudit},
86+
args: args{requestMsg: &dns.Msg{Question: []dns.Question{{Name: "notfound.com.", Qtype: dns.TypeA}}}},
87+
want: &dns.Msg{},
88+
wantErr: true,
89+
},
8190
}
8291
for _, tt := range tests {
8392
t.Run(tt.name, func(t *testing.T) {

0 commit comments

Comments
 (0)