summaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
Diffstat (limited to 'internal')
-rw-r--r--internal/api/server.go3
-rw-r--r--internal/api/server_test.go19
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())
+}