32 lines
820 B
Go
32 lines
820 B
Go
package platform
|
|
|
|
import (
|
|
"io"
|
|
"log/slog"
|
|
"net/http"
|
|
"net/http/httptest"
|
|
"testing"
|
|
)
|
|
|
|
func TestPlatformRoutesAndDisabledDemo(t *testing.T) {
|
|
app := NewApp(Config{DatabaseMode: DatabaseModeMemory}, nil, slog.New(slog.NewTextHandler(io.Discard, nil)))
|
|
|
|
for _, test := range []struct {
|
|
path string
|
|
want int
|
|
}{
|
|
{path: "/healthz", want: http.StatusOK},
|
|
{path: "/readyz", want: http.StatusOK},
|
|
{path: "/api/v1/system/info", want: http.StatusOK},
|
|
{path: "/api/v1/demo", want: http.StatusNotFound},
|
|
{path: "/api/v1/system/tools", want: http.StatusNotFound},
|
|
} {
|
|
req := httptest.NewRequest(http.MethodGet, test.path, nil)
|
|
res := httptest.NewRecorder()
|
|
app.Handler().ServeHTTP(res, req)
|
|
if res.Code != test.want {
|
|
t.Errorf("GET %s status = %d, want %d", test.path, res.Code, test.want)
|
|
}
|
|
}
|
|
}
|