package health import ( "net/http" "net/http/httptest" "testing" ) // /healthz 恒 200;/readyz 随 ready() 翻 200/503。 func TestHandler(t *testing.T) { ready := false h := Handler("test", func() bool { return ready }) do := func(path string) int { w := httptest.NewRecorder() h.ServeHTTP(w, httptest.NewRequest(http.MethodGet, path, nil)) return w.Code } if c := do("/healthz"); c != 200 { t.Fatalf("/healthz 应恒 200,得 %d", c) } if c := do("/readyz"); c != 503 { t.Fatalf("未就绪时 /readyz 应 503,得 %d", c) } ready = true if c := do("/readyz"); c != 200 { t.Fatalf("就绪后 /readyz 应 200,得 %d", c) } }