Files
ttstd-infinite-canvas/backend/internal/outbound/outboundtest/resolver_test.go
2026-10-06 09:24:00 +08:00

28 lines
735 B
Go

package outboundtest
import (
"context"
"net"
"testing"
"time"
)
func TestPublicDNS(t *testing.T) {
previous := net.DefaultResolver
t.Run("fixture", func(t *testing.T) {
PublicDNS(t, "media.example.com")
ctx, cancel := context.WithTimeout(context.Background(), time.Second)
defer cancel()
ips, err := net.DefaultResolver.LookupIP(ctx, "ip", "media.example.com")
if err != nil || len(ips) != 1 || !ips[0].Equal(net.IPv4(1, 1, 1, 1)) {
t.Fatalf("A/AAAA lookup = %v, %v", ips, err)
}
if _, err := net.DefaultResolver.LookupIP(ctx, "ip", "unregistered.example.com"); err == nil {
t.Fatal("unknown host must fail closed")
}
})
if net.DefaultResolver != previous {
t.Fatal("resolver was not restored")
}
}