summaryrefslogtreecommitdiff
path: root/internal/appconfig/config_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/appconfig/config_test.go')
-rw-r--r--internal/appconfig/config_test.go28
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)