diff --git a/snippetbox/cmd/web/handlers_test.go b/snippetbox/cmd/web/handlers_test.go index 14b31d9..30cfe19 100644 --- a/snippetbox/cmd/web/handlers_test.go +++ b/snippetbox/cmd/web/handlers_test.go @@ -3,6 +3,7 @@ package main import ( "bytes" "io" + "log/slog" "net/http" "net/http/httptest" "testing" @@ -11,17 +12,18 @@ import ( ) func TestPing(t *testing.T) { - rr := httptest.NewRecorder() + app := &application{ + logger: slog.New(slog.NewTextHandler(io.Discard, nil)), + } - r, err := http.NewRequest(http.MethodGet, "/", nil) + ts := httptest.NewTLSServer(app.routes()) + defer ts.Close() + + rs, err := ts.Client().Get(ts.URL + "/ping") if err != nil { t.Fatal(err) } - ping(rr, r) - - rs := rr.Result() - assert.Equal(t, rs.StatusCode, http.StatusOK) defer rs.Body.Close() diff --git a/snippetbox/cmd/web/routes.go b/snippetbox/cmd/web/routes.go index 44b8e82..23a7ff9 100644 --- a/snippetbox/cmd/web/routes.go +++ b/snippetbox/cmd/web/routes.go @@ -25,6 +25,8 @@ func (app *application) routes() http.Handler { fileServer := http.FileServer(http.FS(ui.Files)) router.Handler(http.MethodGet, "/static/*filepath", fileServer) + router.HandlerFunc(http.MethodGet, "/ping", ping) + dynamic := alice.New(app.sessionManager.LoadAndSave, noSurf, app.authenticate) router.Handler(http.MethodGet, "/", dynamic.ThenFunc(app.home))