63ede5c237
- refactor: move HTTP status and DTO concerns out of model and service layers into API and handler code. - feat: add admin service boundary and route auth through services instead of direct repository access. - test: add architecture and error tests covering package boundaries, redaction, and service behavior. - docs: record the protocol-neutral boundary decision and update architecture and roadmap notes.
28 lines
609 B
Go
28 lines
609 B
Go
package app
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/dhao2001/mygo/internal/config"
|
|
)
|
|
|
|
func TestNewWebApp(t *testing.T) {
|
|
cfg := &config.Config{}
|
|
|
|
webApp := NewWebApp(cfg, nil, nil, nil, nil, nil, nil, nil, nil, nil)
|
|
|
|
if webApp.Config != cfg {
|
|
t.Fatal("Config was not assigned")
|
|
}
|
|
if webApp.Version != AppVersion {
|
|
t.Errorf("Version = %q, want %q", webApp.Version, AppVersion)
|
|
}
|
|
}
|
|
|
|
func TestCloseNilDB(t *testing.T) {
|
|
webApp := NewWebApp(&config.Config{}, nil, nil, nil, nil, nil, nil, nil, nil, nil)
|
|
if err := webApp.Close(); err != nil {
|
|
t.Errorf("Close with nil DB should not error: %v", err)
|
|
}
|
|
}
|