mirror of
https://github.com/coredns/coredns.git
synced 2025-10-27 08:14:18 -04:00
mw/health: add reload test (#980)
Start CoreDNS instance in call Restart() on it.
This commit is contained in:
49
test/health_reload_test.go
Normal file
49
test/health_reload_test.go
Normal file
@@ -0,0 +1,49 @@
|
||||
package test
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"net/http"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestHealthReload(t *testing.T) {
|
||||
log.SetOutput(ioutil.Discard)
|
||||
|
||||
// Corefile with for example without proxy section.
|
||||
corefile := `example.org:0 {
|
||||
health localhost:35080
|
||||
}
|
||||
`
|
||||
i, err := CoreDNSServer(corefile)
|
||||
if err != nil {
|
||||
t.Fatalf("Could not get CoreDNS serving instance: %s", err)
|
||||
}
|
||||
|
||||
resp, err := http.Get("http://localhost:35080/health")
|
||||
if err != nil {
|
||||
t.Fatalf("Could not get health: %s", err)
|
||||
}
|
||||
body, err := ioutil.ReadAll(resp.Body)
|
||||
if x := string(body); x != "OK" {
|
||||
t.Fatalf("Expect OK, got %s", x)
|
||||
}
|
||||
resp.Body.Close()
|
||||
|
||||
i, err = i.Restart(NewInput(corefile))
|
||||
if err != nil {
|
||||
t.Fatalf("Could not restart CoreDNS serving instance: %s", err)
|
||||
}
|
||||
|
||||
defer i.Stop()
|
||||
|
||||
resp, err = http.Get("http://localhost:35080/health")
|
||||
if err != nil {
|
||||
t.Fatalf("Could not get health: %s", err)
|
||||
}
|
||||
body, err = ioutil.ReadAll(resp.Body)
|
||||
if x := string(body); x != "OK" {
|
||||
t.Fatalf("Expect OK, got %s", x)
|
||||
}
|
||||
resp.Body.Close()
|
||||
}
|
||||
Reference in New Issue
Block a user