|
|
|
@ -342,6 +342,38 @@ func TestApp_ParseSliceFlags(t *testing.T) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func TestApp_ParseSliceFlagsWithMissingValue(t *testing.T) {
|
|
|
|
|
var parsedIntSlice []int
|
|
|
|
|
var parsedStringSlice []string
|
|
|
|
|
|
|
|
|
|
app := cli.NewApp()
|
|
|
|
|
command := cli.Command{
|
|
|
|
|
Name: "cmd",
|
|
|
|
|
Flags: []cli.Flag{
|
|
|
|
|
cli.IntSliceFlag{Name: "a", Usage: "set numbers"},
|
|
|
|
|
cli.StringSliceFlag{Name: "str", Usage: "set strings"},
|
|
|
|
|
},
|
|
|
|
|
Action: func(c *cli.Context) {
|
|
|
|
|
parsedIntSlice = c.IntSlice("a")
|
|
|
|
|
parsedStringSlice = c.StringSlice("str")
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
app.Commands = []cli.Command{command}
|
|
|
|
|
|
|
|
|
|
app.Run([]string{"", "cmd", "my-arg", "-a", "2", "-str", "A"})
|
|
|
|
|
|
|
|
|
|
var expectedIntSlice = []int{2}
|
|
|
|
|
var expectedStringSlice = []string{"A"}
|
|
|
|
|
|
|
|
|
|
if parsedIntSlice[0] != expectedIntSlice[0] {
|
|
|
|
|
t.Errorf("%v does not match %v", parsedIntSlice[0], expectedIntSlice[0])
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if parsedStringSlice[0] != expectedStringSlice[0] {
|
|
|
|
|
t.Errorf("%v does not match %v", parsedIntSlice[0], expectedIntSlice[0])
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func TestApp_DefaultStdout(t *testing.T) {
|
|
|
|
|
app := cli.NewApp()
|
|
|
|
|
|
|
|
|
|