Pull request 2309: fix-safesearch-test
Squashed commit of the following: commit a5b6c831d86ee5264c0918bf12ddef7c78f78f38 Author: Stanislav Chzhen <s.chzhen@adguard.com> Date: Mon Nov 25 13:45:17 2024 +0300 dnsforward: imp tests commit1ca353423c
Author: Stanislav Chzhen <s.chzhen@adguard.com> Date: Fri Nov 22 20:08:28 2024 +0300 dnsforward: imp tests commit82851aa825
Author: Stanislav Chzhen <s.chzhen@adguard.com> Date: Fri Nov 22 19:54:53 2024 +0300 dnsforward: imp tests commitefabbe318e
Author: Stanislav Chzhen <s.chzhen@adguard.com> Date: Fri Nov 22 19:36:27 2024 +0300 dnsforward: fix safesearch test
This commit is contained in:
parent
abb738013a
commit
d4ca14806e
|
@ -500,6 +500,10 @@ func TestServerRace(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestSafeSearch(t *testing.T) {
|
func TestSafeSearch(t *testing.T) {
|
||||||
|
const (
|
||||||
|
googleSafeSearch = "forcesafesearch.google.com."
|
||||||
|
)
|
||||||
|
|
||||||
safeSearchConf := filtering.SafeSearchConfig{
|
safeSearchConf := filtering.SafeSearchConfig{
|
||||||
Enabled: true,
|
Enabled: true,
|
||||||
Google: true,
|
Google: true,
|
||||||
|
@ -536,10 +540,17 @@ func TestSafeSearch(t *testing.T) {
|
||||||
ServePlainDNS: true,
|
ServePlainDNS: true,
|
||||||
}
|
}
|
||||||
s := createTestServer(t, filterConf, forwardConf)
|
s := createTestServer(t, filterConf, forwardConf)
|
||||||
startDeferStop(t, s)
|
|
||||||
|
|
||||||
|
ups := aghtest.NewUpstreamMock(func(req *dns.Msg) (resp *dns.Msg, err error) {
|
||||||
|
pt := testutil.PanicT{}
|
||||||
|
assert.Equal(pt, googleSafeSearch, req.Question[0].Name)
|
||||||
|
|
||||||
|
return aghtest.MatchedResponse(req, dns.TypeA, googleSafeSearch, "1.2.3.4"), nil
|
||||||
|
})
|
||||||
|
s.conf.UpstreamConfig.Upstreams = []upstream.Upstream{ups}
|
||||||
|
|
||||||
|
startDeferStop(t, s)
|
||||||
addr := s.dnsProxy.Addr(proxy.ProtoUDP).String()
|
addr := s.dnsProxy.Addr(proxy.ProtoUDP).String()
|
||||||
client := &dns.Client{}
|
|
||||||
|
|
||||||
yandexIP := netip.AddrFrom4([4]byte{213, 180, 193, 56})
|
yandexIP := netip.AddrFrom4([4]byte{213, 180, 193, 56})
|
||||||
|
|
||||||
|
@ -585,17 +596,9 @@ func TestSafeSearch(t *testing.T) {
|
||||||
t.Run(tc.host, func(t *testing.T) {
|
t.Run(tc.host, func(t *testing.T) {
|
||||||
req := createTestMessage(tc.host)
|
req := createTestMessage(tc.host)
|
||||||
|
|
||||||
// TODO(a.garipov): Create our own helper for this.
|
|
||||||
var reply *dns.Msg
|
var reply *dns.Msg
|
||||||
once := &sync.Once{}
|
reply, err = dns.Exchange(req, addr)
|
||||||
require.EventuallyWithT(t, func(c *assert.CollectT) {
|
require.NoError(t, err)
|
||||||
r, _, errExch := client.Exchange(req, addr)
|
|
||||||
if assert.NoError(c, errExch) {
|
|
||||||
once.Do(func() { reply = r })
|
|
||||||
} else {
|
|
||||||
t.Logf("got error: %v", errExch)
|
|
||||||
}
|
|
||||||
}, testTimeout*10, testTimeout)
|
|
||||||
|
|
||||||
if tc.wantCNAME != "" {
|
if tc.wantCNAME != "" {
|
||||||
require.Len(t, reply.Answer, 2)
|
require.Len(t, reply.Answer, 2)
|
||||||
|
|
Loading…
Reference in New Issue