- Add JWT token generation and validation - Implement bcrypt password hashing - Create auth service with register/login/refresh/logout - Add app passkey generation and management - Implement protected routes and auth middleware - Add comprehensive tests for new functionality
28 lines
579 B
Go
28 lines
579 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)
|
|
|
|
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)
|
|
if err := webApp.Close(); err != nil {
|
|
t.Errorf("Close with nil DB should not error: %v", err)
|
|
}
|
|
}
|