Commit eee06637 authored by Chris Bednarski's avatar Chris Bednarski

Support -flag=var1,var2,var3 to fix #2332

parent e112d9b2
......@@ -11,6 +11,6 @@ func (s *StringFlag) String() string {
}
func (s *StringFlag) Set(value string) error {
*s = append(*s, value)
*s = append(*s, strings.Split(value, ",")...)
return nil
}
......@@ -14,6 +14,8 @@ func TestStringFlag_implements(t *testing.T) {
}
}
// TestStringFlagSet tests for setting the same flag more than once on the CLI
// like: blah -flag foo -flag bar
func TestStringFlagSet(t *testing.T) {
sv := new(StringFlag)
err := sv.Set("foo")
......@@ -31,3 +33,18 @@ func TestStringFlagSet(t *testing.T) {
t.Fatalf("Bad: %#v", sv)
}
}
// TestMultiStringFlag tests for setting the same flag using a comma-separated
// list of items like: blah -flag=foo,bar
func TestMultiStringFlag(t *testing.T) {
sv := new(StringFlag)
err := sv.Set("chocolate,vanilla")
if err != nil {
t.Fatalf("err :%s", err)
}
expected := []string{"chocolate", "vanilla"}
if !reflect.DeepEqual([]string(*sv), expected) {
t.Fatalf("Expected: %#v, found: %#v", expected, sv)
}
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment