package utils
import (
"os"
"path/filepath"
"testing"
)
func TestLoadConfig(t *testing.T) {
homeDir := t.TempDir()
t.Setenv("HOME", homeDir)
configDir := filepath.Join(homeDir, ".skraak")
err := os.MkdirAll(configDir, 0755)
if err != nil {
t.Fatalf("failed to create config dir: %v", err)
}
jsonContent := `{
"classify": {
"reviewer": "Test Reviewer",
"color": true
}
}`
err = os.WriteFile(filepath.Join(configDir, "config.json"), []byte(jsonContent), 0644)
if err != nil {
t.Fatalf("failed to write config: %v", err)
}
cfg, path, err := LoadConfig()
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
if cfg.Classify.Reviewer != "Test Reviewer" {
t.Errorf("expected Test Reviewer, got %s", cfg.Classify.Reviewer)
}
if !cfg.Classify.Color {
t.Error("expected color to be true")
}
if path == "" {
t.Error("expected path to be returned")
}
}