package bazel import "testing" func TestConfigs_Set(t *testing.T) { tcs := map[string]struct { value string result string }{ "one": {"containers", "containers"}, "two": {"containers,ci", "containers,ci"}, "trailing comma": {"containers,ci,", "containers,ci"}, "leading comma": {",containers,ci", "containers,ci"}, "dupes": {"containers,containers,ci", "containers,ci"}, "blank": {"", ""}, "comma": {",", ""}, } for name, tc := range tcs { t.Run(name, func(t *testing.T) { var c Configs _ = c.Set(tc.value) if c.String() != tc.result { t.Errorf("expected %s, got %s", tc.result, c.String()) } }) } t.Run("accumulates", func(t *testing.T) { var c Configs _ = c.Set("containers") _ = c.Set("ci") expected := "containers,ci" if c.String() != expected { t.Errorf("expected %s, got %s", expected, c.String()) } }) }