package health import ( "encoding/json" "net/http" "net/http/httptest" "testing" ) func TestHealthHandler(t *testing.T) { server := httptest.NewServer(Handler()) defer server.Close() response, err := http.Get(server.URL + "/health") if err != nil { t.Fatalf("get health: %v", err) } defer response.Body.Close() if response.StatusCode != http.StatusOK { t.Fatalf("unexpected status: %d", response.StatusCode) } var payload Status if err := json.NewDecoder(response.Body).Decode(&payload); err != nil { t.Fatalf("decode health payload: %v", err) } if payload.Status != "ok" || payload.Service != "cmpp-gateway" { t.Fatalf("unexpected payload: %+v", payload) } }