diff options
| author | Paul Buetow <paul@buetow.org> | 2025-09-27 02:19:22 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2025-09-27 02:19:22 +0300 |
| commit | 51b2621d58633aa5c0f5cc7b64616d70d41acc91 (patch) | |
| tree | 0c413061a5ab8061ddeab9c3f421228737613ecb /internal/appconfig/config_test.go | |
| parent | 1731126b52e406a300270c8fc8ac1061a4422b27 (diff) | |
Support multi-provider fan-out across CLI and completions
Diffstat (limited to 'internal/appconfig/config_test.go')
| -rw-r--r-- | internal/appconfig/config_test.go | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/internal/appconfig/config_test.go b/internal/appconfig/config_test.go index e7f6059..4ae04d8 100644 --- a/internal/appconfig/config_test.go +++ b/internal/appconfig/config_test.go @@ -1,6 +1,7 @@ package appconfig import ( + "bytes" "io" "log" "os" @@ -64,6 +65,33 @@ func TestLoad_Defaults_WithLogger_NoFile_NoEnv(t *testing.T) { } } +func TestParseSurfaceModels_CodeActionWarns(t *testing.T) { + dir := t.TempDir() + path := filepath.Join(dir, "config.toml") + writeFile(t, path, ` +[models] + [[models.code_action]] + provider = "openai" + model = "gpt-4o" + + [[models.code_action]] + provider = "copilot" + model = "cpt" +`) + var buf bytes.Buffer + logger := log.New(&buf, "", 0) + app, err := loadFromFile(path, logger) + if err != nil { + t.Fatalf("loadFromFile: %v", err) + } + if len(app.CodeActionConfigs) != 1 || app.CodeActionConfigs[0].Model != "gpt-4o" { + t.Fatalf("expected single code action entry, got %+v", app.CodeActionConfigs) + } + if msg := buf.String(); !strings.Contains(msg, "models.code_action supports a single entry") { + t.Fatalf("expected warning, got %q", msg) + } +} + func TestLoad_FileMerge_And_EnvOverride(t *testing.T) { dir := t.TempDir() t.Setenv("XDG_CONFIG_HOME", dir) |
