package main import ( "bytes" "io" "log/slog" "net/http" "net/http/httptest" "testing" "snippetbox.chaosfem.tw/internal/assert" ) func TestPing(t *testing.T) { app := &application{ logger: slog.New(slog.NewTextHandler(io.Discard, nil)), } ts := httptest.NewTLSServer(app.routes()) defer ts.Close() rs, err := ts.Client().Get(ts.URL + "/ping") if err != nil { t.Fatal(err) } assert.Equal(t, rs.StatusCode, http.StatusOK) defer rs.Body.Close() body, err := io.ReadAll(rs.Body) if err != nil { t.Fatal(err) } assert.Equal(t, string(bytes.TrimSpace(body)), "OK") }