aboutsummaryrefslogtreecommitdiff
path: root/plugin/auto/setup_test.go
diff options
context:
space:
mode:
authorGravatar gomakesix <94422637+gomakesix@users.noreply.github.com> 2021-11-20 00:19:25 +0800
committerGravatar GitHub <noreply@github.com> 2021-11-19 16:19:25 +0000
commit71bb575b7187852a100f54453c519b8a2c821cb1 (patch)
tree8ee068fa03a1e2d94a07da0a28e428abc7c1dfb9 /plugin/auto/setup_test.go
parente799a0f5c7ae90b6db3b9f63e2d82765b30200e6 (diff)
downloadcoredns-71bb575b7187852a100f54453c519b8a2c821cb1.tar.gz
coredns-71bb575b7187852a100f54453c519b8a2c821cb1.tar.zst
coredns-71bb575b7187852a100f54453c519b8a2c821cb1.zip
plugin/auto: Fix panic caused by config invalid reload value (#4986)
Automatically submitted.
Diffstat (limited to 'plugin/auto/setup_test.go')
-rw-r--r--plugin/auto/setup_test.go49
1 files changed, 49 insertions, 0 deletions
diff --git a/plugin/auto/setup_test.go b/plugin/auto/setup_test.go
index 987411c07..4fada6f6b 100644
--- a/plugin/auto/setup_test.go
+++ b/plugin/auto/setup_test.go
@@ -126,3 +126,52 @@ func TestAutoParse(t *testing.T) {
}
}
}
+
+func TestSetupReload(t *testing.T) {
+ tests := []struct {
+ name string
+ config string
+ wantErr bool
+ }{
+ {
+ name: "reload valid",
+ config: `auto {
+ directory .
+ reload 5s
+ }`,
+ wantErr: false,
+ },
+ {
+ name: "reload disable",
+ config: `auto {
+ directory .
+ reload 0
+ }`,
+ wantErr: false,
+ },
+ {
+ name: "reload invalid",
+ config: `auto {
+ directory .
+ reload -1s
+ }`,
+ wantErr: true,
+ },
+ {
+ name: "reload invalid",
+ config: `auto {
+ directory .
+ reload
+ }`,
+ wantErr: true,
+ },
+ }
+ for _, tt := range tests {
+ t.Run(tt.name, func(t *testing.T) {
+ ctr := caddy.NewTestController("dns", tt.config)
+ if err := setup(ctr); (err != nil) != tt.wantErr {
+ t.Errorf("Error: setup() error = %v, wantErr %v", err, tt.wantErr)
+ }
+ })
+ }
+}