more config
build / build-push (push) Successful in 24s

This commit is contained in:
mats committed 2026-09-28 21:34:59 +02:00
1 parent 0b6dcbd547
commit d48c1863bf
9 files changed
+222 -7

No files matched your search

+30
View File
@@ -371,3 +371,33 @@ func writeTempConfig(t *testing.T, content string) string {
}
return path
}
func TestForwardZoneConfig(t *testing.T) {
c := Default()
c.Block.Enabled = false
c.Upstream.ForwardZones = []ForwardZone{{Zone: "LOCAL.", Servers: []UpstreamServer{{Addr: "10.10.0.1"}}}}
c.applyDefaults()
if err := c.Validate(); err != nil {
t.Fatal(err)
}
z := c.Upstream.ForwardZones[0]
if z.Zone != "local" || z.Servers[0].Addr != "10.10.0.1:53" || z.Servers[0].Proto != "udp" {
t.Fatalf("defaults: %+v", z)
}
for _, bad := range []ForwardZone{
{Zone: "*.local", Servers: z.Servers},
{Zone: "", Servers: z.Servers},
{Zone: "local"},
{Zone: "local", Servers: []UpstreamServer{{Addr: "", Proto: "udp"}}},
{Zone: "local", Servers: []UpstreamServer{{Addr: "10.10.0.1:53", Proto: "http"}}},
} {
c.Upstream.ForwardZones = []ForwardZone{bad}
if err := c.Validate(); err == nil {
t.Fatalf("accepted %+v", bad)
}
}
c.Upstream.ForwardZones = []ForwardZone{z, z}
if err := c.Validate(); err == nil {
t.Fatal("accepted duplicate zone")
}
}