aboutsummaryrefslogtreecommitdiff
path: root/bool_slice_test.go
diff options
context:
space:
mode:
authorMitch Connors <[email protected]>2019-09-17 09:43:30 -0700
committerGitHub <[email protected]>2019-09-17 09:43:30 -0700
commit7b22f689a41a1727c42eb02aaa1492d26402c592 (patch)
treeca8ae6c13649d5a76f09cd8c7a4ca5011c870c85 /bool_slice_test.go
parent972238283c0625cf3e881de7699ba8f2524c340a (diff)
parent8e39cc44d9bd06ee2d9ef3109c93809072d5e551 (diff)
Merge pull request #216 from therealmitchconnors/elegant
Implement SliceValue for better list semantics
Diffstat (limited to 'bool_slice_test.go')
-rw-r--r--bool_slice_test.go23
1 files changed, 23 insertions, 0 deletions
diff --git a/bool_slice_test.go b/bool_slice_test.go
index b617dd2..3c5a274 100644
--- a/bool_slice_test.go
+++ b/bool_slice_test.go
@@ -160,6 +160,29 @@ func TestBSCalledTwice(t *testing.T) {
}
}
+func TestBSAsSliceValue(t *testing.T) {
+ var bs []bool
+ f := setUpBSFlagSet(&bs)
+
+ in := []string{"true", "false"}
+ argfmt := "--bs=%s"
+ arg1 := fmt.Sprintf(argfmt, in[0])
+ arg2 := fmt.Sprintf(argfmt, in[1])
+ err := f.Parse([]string{arg1, arg2})
+ if err != nil {
+ t.Fatal("expected no error; got", err)
+ }
+
+ f.VisitAll(func(f *Flag) {
+ if val, ok := f.Value.(SliceValue); ok {
+ _ = val.Replace([]string{"false"})
+ }
+ })
+ if len(bs) != 1 || bs[0] != false {
+ t.Fatalf("Expected ss to be overwritten with 'false', but got: %v", bs)
+ }
+}
+
func TestBSBadQuoting(t *testing.T) {
tests := []struct {