@@ -3,6 +3,7 @@ package health
33import (
44 "net/http"
55 "testing"
6+ "time"
67
78 "github.com/m-lab/locate/cmd/heartbeat/health/healthtest"
89)
@@ -27,7 +28,7 @@ func Test_checkHealthEndpoint(t *testing.T) {
2728 wantErr : false ,
2829 },
2930 {
30- name : "error" ,
31+ name : "error-server-not-running " ,
3132 want : false ,
3233 wantErr : true ,
3334 },
@@ -40,7 +41,8 @@ func Test_checkHealthEndpoint(t *testing.T) {
4041 defer srv .Close ()
4142 }
4243
43- got , err := checkHealthEndpoint ()
44+ hc := NewEndpointClient (time .Second )
45+ got , err := hc .checkHealthEndpoint ()
4446 if (err != nil ) != tt .wantErr {
4547 t .Errorf ("checkHealthEndpoint() error = %v, wantErr %v" , err , tt .wantErr )
4648 return
@@ -52,3 +54,20 @@ func Test_checkHealthEndpoint(t *testing.T) {
5254 })
5355 }
5456}
57+
58+ func Test_checkHealthEndpoint_timeout (t * testing.T ) {
59+ srv := healthtest .TestTimeoutServer (2 * time .Second )
60+ healthAddress = srv .URL + "/health"
61+ defer srv .Close ()
62+
63+ hc := NewEndpointClient (time .Second )
64+ got , err := hc .checkHealthEndpoint ()
65+ if err == nil {
66+ t .Errorf ("checkHealthEndpoint() error = %v, wantErr %s" , err , "context deadline error" )
67+ return
68+ }
69+
70+ if got != false {
71+ t .Errorf ("checkHealthEndpoint() = %v, want %v" , got , false )
72+ }
73+ }
0 commit comments