internal/cli:命令保留旗標機制,修正 login add 旗標被全域剖析搶走(#18) #20

Merged
alex merged 3 commits from fix/issue18-reserved-flags into main 2026-09-10 10:37:21 +08:00
Showing only changes of commit 0ed6f262c8 - Show all commits
+4 -4
View File
@@ -79,7 +79,7 @@ func TestExtractGlobals(t *testing.T) {
"--output", "table",
"--timeout", "45s",
"next",
})
}, nil)
if err != nil {
t.Fatal(err)
}
@@ -100,7 +100,7 @@ func TestExtractGlobals(t *testing.T) {
func TestExtractGlobalsAfterCommand(t *testing.T) {
// 全域選項出現在命令之後也應抽出(README:teai next --output table)。
g := defaultGlobals()
rest, err := extractGlobals(&g, []string{"version", "--output", "table"})
rest, err := extractGlobals(&g, []string{"version", "--output", "table"}, nil)
if err != nil {
t.Fatal(err)
}
@@ -124,7 +124,7 @@ func TestExtractGlobalsKeepsCommandFlags(t *testing.T) {
}
for _, args := range cases {
g := defaultGlobals()
rest, err := extractGlobals(&g, args)
rest, err := extractGlobals(&g, args, nil)
if err != nil {
t.Fatalf("extractGlobals(%v) 不應報錯:%v", args, err)
}
@@ -145,7 +145,7 @@ func TestExtractGlobalsKeepsCommandFlags(t *testing.T) {
func TestExtractGlobalsDoubleDashStops(t *testing.T) {
g := defaultGlobals()
rest, err := extractGlobals(&g, []string{"--output", "table", "--", "--url", "x"})
rest, err := extractGlobals(&g, []string{"--output", "table", "--", "--url", "x"}, nil)
if err != nil {
t.Fatal(err)
}