From 021785d750de2cd8d1f94334282a2b110b77c0fd Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Mon, 2 Mar 2026 13:42:06 +0200 Subject: llmutils: centralize provider normalization and client setup (task 410) --- internal/llmutils/client_test.go | 49 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) (limited to 'internal/llmutils/client_test.go') diff --git a/internal/llmutils/client_test.go b/internal/llmutils/client_test.go index 2e20db3..837d408 100644 --- a/internal/llmutils/client_test.go +++ b/internal/llmutils/client_test.go @@ -25,3 +25,52 @@ func TestNewClientFromApp_OpenAI_WithKey(t *testing.T) { // ensure env override precedence _ = os.Unsetenv("OPENAI_API_KEY") } + +func TestCanonicalProvider(t *testing.T) { + if got := CanonicalProvider(" OpenRouter "); got != "openrouter" { + t.Fatalf("CanonicalProvider(openrouter) = %q", got) + } + if got := CanonicalProvider(" "); got != "openai" { + t.Fatalf("CanonicalProvider(empty) = %q", got) + } +} + +func TestDefaultModelForProvider(t *testing.T) { + cfg := appconfig.App{ + OpenAIModel: "gpt-4.1", + OpenRouterModel: "openrouter/auto", + OllamaModel: "qwen3", + AnthropicModel: "claude", + } + if got := DefaultModelForProvider(cfg, "openai"); got != "gpt-4.1" { + t.Fatalf("openai model = %q", got) + } + if got := DefaultModelForProvider(cfg, "openrouter"); got != "openrouter/auto" { + t.Fatalf("openrouter model = %q", got) + } + if got := DefaultModelForProvider(cfg, "ollama"); got != "qwen3" { + t.Fatalf("ollama model = %q", got) + } + if got := DefaultModelForProvider(cfg, "anthropic"); got != "claude" { + t.Fatalf("anthropic model = %q", got) + } +} + +func TestConfigForProvider(t *testing.T) { + base := appconfig.App{ + Provider: "openai", + OpenAIModel: "gpt-4.1", + OllamaModel: "qwen3", + AnthropicModel: "claude", + } + got := ConfigForProvider(base, "ollama", "qwen3-coder") + if got.Provider != "ollama" { + t.Fatalf("provider = %q", got.Provider) + } + if got.OllamaModel != "qwen3-coder" { + t.Fatalf("ollama model = %q", got.OllamaModel) + } + if got.OpenAIModel != "gpt-4.1" { + t.Fatalf("openai model unexpectedly changed: %q", got.OpenAIModel) + } +} -- cgit v1.2.3