Reload hook (#1445)

* Add reload directive

* gofmt

* Fix default jitter and error message

* remove unneeded call to NextArg, add a couple negative setup tests

* Review feedback
This commit is contained in:
John Belamaric
2018-01-27 05:42:57 -05:00
committed by Miek Gieben
parent 80050766fb
commit 0b35d4d28f
7 changed files with 237 additions and 0 deletions

View File

@@ -0,0 +1,39 @@
package reload
import (
"testing"
"github.com/mholt/caddy"
)
func TestSetupReload(t *testing.T) {
c := caddy.NewTestController("dns", `reload`)
if err := setup(c); err != nil {
t.Fatalf("Expected no errors, but got: %v", err)
}
c = caddy.NewTestController("dns", `reload 10s`)
if err := setup(c); err != nil {
t.Fatalf("Expected no errors, but got: %v", err)
}
c = caddy.NewTestController("dns", `reload 10s 2s`)
if err := setup(c); err != nil {
t.Fatalf("Expected no errors, but got: %v", err)
}
c = caddy.NewTestController("dns", `reload foo`)
if err := setup(c); err == nil {
t.Fatalf("Expected errors, but got: %v", err)
}
c = caddy.NewTestController("dns", `reload 10s foo`)
if err := setup(c); err == nil {
t.Fatalf("Expected errors, but got: %v", err)
}
c = caddy.NewTestController("dns", `reload 10s 5s foo`)
if err := setup(c); err == nil {
t.Fatalf("Expected errors, but got: %v", err)
}
}