plugin/auto: Fix panic caused by config invalid reload value (#4986)

Automatically submitted.
This commit is contained in:
gomakesix 2021-11-20 00:19:25 +08:00 committed by GitHub
parent e799a0f5c7
commit 71bb575b71
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 67 additions and 3 deletions

View file

@ -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)
}
})
}
}