Panic on duplicate command names (#317)

This commit is contained in:
Michal Kralik
2022-07-17 11:31:21 +02:00
committed by GitHub
parent 81070a043b
commit f9bc630ef8
2 changed files with 54 additions and 0 deletions
+32
View File
@@ -1662,3 +1662,35 @@ func TestMapDecoderHelpfulErrorMsg(t *testing.T) {
})
}
}
func TestDuplicateName(t *testing.T) {
var cli struct {
DupA struct{} `cmd:"" name:"duplicate"`
DupB struct{} `cmd:"" name:"duplicate"`
}
_, err := kong.New(&cli)
assert.Error(t, err)
}
func TestDuplicateChildName(t *testing.T) {
var cli struct {
A struct {
DupA struct{} `cmd:"" name:"duplicate"`
DupB struct{} `cmd:"" name:"duplicate"`
} `cmd:""`
B struct{} `cmd:""`
}
_, err := kong.New(&cli)
assert.Error(t, err)
}
func TestChildNameCanBeDuplicated(t *testing.T) {
var cli struct {
A struct {
A struct{} `cmd:"" name:"duplicateA"`
B struct{} `cmd:"" name:"duplicateB"`
} `cmd:"" name:"duplicateA"`
B struct{} `cmd:"" name:"duplicateB"`
}
mustNew(t, &cli)
}