summaryrefslogtreecommitdiff
path: root/internal/cli/command_test.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-04-01 20:14:03 +0300
committerPaul Buetow <paul@buetow.org>2026-04-01 20:14:03 +0300
commit4727a188102d8166e4acabc4fd62863245e6cdce (patch)
tree1e9edac79d1fb348dee86f43974ed729e03f9173 /internal/cli/command_test.go
parent3ed1c1ba41709c0de75512643c50b064f7dce650 (diff)
z8: preserve Nano Banana CLI precedence
Diffstat (limited to 'internal/cli/command_test.go')
-rw-r--r--internal/cli/command_test.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/internal/cli/command_test.go b/internal/cli/command_test.go
index 67ef6c4..37e2533 100644
--- a/internal/cli/command_test.go
+++ b/internal/cli/command_test.go
@@ -435,3 +435,31 @@ func TestBindFlagsToViper(t *testing.T) {
t.Errorf("Expected image.provider to be openai by default, got %s", viper.GetString("image.provider"))
}
}
+
+func TestMarkExplicitFlagValues(t *testing.T) {
+ flags := NewFlags()
+ cmd := &cobra.Command{}
+ setupFlags(cmd, flags)
+
+ if err := cmd.Flags().Set("image-api", "nanobanana"); err != nil {
+ t.Fatalf("Failed to set image-api flag: %v", err)
+ }
+ if err := cmd.Flags().Set("nanobanana-model", defaultNanoBananaModel); err != nil {
+ t.Fatalf("Failed to set nanobanana-model flag: %v", err)
+ }
+ if err := cmd.Flags().Set("nanobanana-text-model", defaultNanoBananaTextModel); err != nil {
+ t.Fatalf("Failed to set nanobanana-text-model flag: %v", err)
+ }
+
+ MarkExplicitFlagValues(cmd, flags)
+
+ if !flags.ImageAPISpecified {
+ t.Error("Expected ImageAPISpecified to be true")
+ }
+ if !flags.NanoBananaModelSpecified {
+ t.Error("Expected NanoBananaModelSpecified to be true")
+ }
+ if !flags.NanoBananaTextModelSpecified {
+ t.Error("Expected NanoBananaTextModelSpecified to be true")
+ }
+}