diff options
Diffstat (limited to 'internal')
| -rw-r--r-- | internal/api/server.go | 3 | ||||
| -rw-r--r-- | internal/api/server_test.go | 19 |
2 files changed, 22 insertions, 0 deletions
diff --git a/internal/api/server.go b/internal/api/server.go index 0ec9a46..559cb1f 100644 --- a/internal/api/server.go +++ b/internal/api/server.go @@ -69,6 +69,9 @@ func NewServer(deps ServerDeps) *Server { // NewServerWithLogger creates a Server with routes and an injected logger. func NewServerWithLogger(deps ServerDeps, logger *slog.Logger) *Server { + if deps.Config == nil { + panic("api.NewServerWithLogger: Config is nil") + } if deps.StaticFS == nil { deps.StaticFS = http.Dir("web") } diff --git a/internal/api/server_test.go b/internal/api/server_test.go new file mode 100644 index 0000000..a3e84a7 --- /dev/null +++ b/internal/api/server_test.go @@ -0,0 +1,19 @@ +package api + +import ( + "log/slog" + "testing" +) + +func TestNewServerWithLogger_PanicsOnNilConfig(t *testing.T) { + defer func() { + if r := recover(); r == nil { + t.Fatal("expected panic for nil Config, got none") + } + }() + + NewServerWithLogger(ServerDeps{ + Config: nil, + StaticFS: nil, + }, slog.Default()) +} |
