- Fix duplicate check in security_test.go lint warning - Mark SHA256 tests as Legacy for backward compatibility - Convert TODO comments to documentation (task, handlers, privacy) - Update user_manager_test to use GenerateAPIKey pattern
41 lines
1.2 KiB
Go
41 lines
1.2 KiB
Go
package config
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/jfraeys/fetch_ml/internal/config"
|
|
)
|
|
|
|
func TestModeBasedPaths(t *testing.T) {
|
|
tests := []struct {
|
|
mode string
|
|
wantBasePath string
|
|
wantDataDir string
|
|
wantLogDir string
|
|
}{
|
|
{"dev", "data/dev/experiments", "data/dev/active", "data/dev/logs"},
|
|
{"prod", "data/prod/experiments", "data/prod/active", "data/prod/logs"},
|
|
{"ci", "data/ci/experiments", "data/ci/active", "data/ci/logs"},
|
|
{"prod-smoke", "data/prod-smoke/experiments", "data/prod-smoke/active", "data/prod-smoke/logs"},
|
|
{"unknown", "data/dev/experiments", "data/dev/active", "data/dev/logs"}, // defaults to dev
|
|
}
|
|
|
|
for _, tt := range tests {
|
|
t.Run(tt.mode, func(t *testing.T) {
|
|
gotBasePath := config.ModeBasedBasePath(tt.mode)
|
|
if gotBasePath != tt.wantBasePath {
|
|
t.Errorf("ModeBasedBasePath(%q) = %q, want %q", tt.mode, gotBasePath, tt.wantBasePath)
|
|
}
|
|
|
|
gotDataDir := config.ModeBasedDataDir(tt.mode)
|
|
if gotDataDir != tt.wantDataDir {
|
|
t.Errorf("ModeBasedDataDir(%q) = %q, want %q", tt.mode, gotDataDir, tt.wantDataDir)
|
|
}
|
|
|
|
gotLogDir := config.ModeBasedLogDir(tt.mode)
|
|
if gotLogDir != tt.wantLogDir {
|
|
t.Errorf("ModeBasedLogDir(%q) = %q, want %q", tt.mode, gotLogDir, tt.wantLogDir)
|
|
}
|
|
})
|
|
}
|
|
}
|