| 1 | package config |
| 2 | |
| 3 | import "testing" |
| 4 | |
| 5 | func TestDefaultCompactRatioIsEightyPercent(t *testing.T) { |
| 6 | if got := Default().Agent.CompactRatio; got != 0.80 { |
| 7 | t.Fatalf("compact ratio = %v, want 0.80", got) |
| 8 | } |
| 9 | } |
| 10 | |
| 11 | func TestDefaultRetiredAutoPlanCompatibilityOff(t *testing.T) { |
| 12 | if got := Default().Agent.AutoPlan; got != "off" { |
| 13 | t.Fatalf("default auto_plan = %q, want off", got) |
| 14 | } |
| 15 | } |
| 16 | |
| 17 | func TestDefaultReasoningLanguageAuto(t *testing.T) { |
| 18 | if got := Default().ReasoningLanguage(); got != "auto" { |
| 19 | t.Fatalf("default reasoning_language = %q, want auto", got) |
| 20 | } |
| 21 | } |
| 22 | |
| 23 | func TestDefaultBotRunsWithoutStepLimit(t *testing.T) { |
| 24 | if got := Default().Bot.MaxSteps; got != 0 { |
| 25 | t.Fatalf("default bot max_steps = %d, want continuous 0", got) |
| 26 | } |
| 27 | } |
| 28 | |
| 29 | func TestDefaultDeepSeekUsesChatWithIndependentSearch(t *testing.T) { |
| 30 | cfg := Default() |
| 31 | for _, name := range []string{"deepseek-flash", "deepseek-pro"} { |
| 32 | provider, ok := cfg.Provider(name) |
| 33 | if !ok { |
| 34 | t.Fatalf("default provider %q is missing", name) |
| 35 | } |
| 36 | if provider.Kind != "openai" || provider.BaseURL != "https://api.deepseek.com" { |
| 37 | t.Fatalf("default provider %q = kind %q base_url %q, want openai %q", name, provider.Kind, provider.BaseURL, "https://api.deepseek.com") |
| 38 | } |
| 39 | if !EffectiveIndependentWebSearch(provider) { |
| 40 | t.Fatalf("default provider %q web_search = false, want true", name) |
| 41 | } |
| 42 | } |
| 43 | } |
| 44 | |
| 45 | func TestDefaultDesktopAppearanceAutoGraphite(t *testing.T) { |
| 46 | cfg := Default() |
| 47 | if got := cfg.DesktopTheme(); got != "auto" { |
| 48 | t.Fatalf("default desktop theme = %q, want auto", got) |
| 49 | } |
| 50 | if got := cfg.DesktopThemeStyle(); got != "" { |
| 51 | t.Fatalf("default desktop theme style = %q, want empty so frontend resolves graphite", got) |
| 52 | } |
| 53 | if got := cfg.DesktopTerminalTheme(); got != "auto" { |
| 54 | t.Fatalf("default desktop terminal theme = %q, want auto", got) |
| 55 | } |
| 56 | } |
| 57 | |
| 58 | func TestDefaultDesktopMetricsOn(t *testing.T) { |
| 59 | cfg := Default() |
| 60 | if !cfg.DesktopMetrics() { |
| 61 | t.Fatal("default desktop metrics = false, want true") |
| 62 | } |
| 63 | disabled := false |
| 64 | cfg.Desktop.Metrics = &disabled |
| 65 | if cfg.DesktopMetrics() { |
| 66 | t.Fatal("desktop metrics explicit false = true, want false") |
| 67 | } |
| 68 | } |
| 69 |