aboutsummaryrefslogtreecommitdiff
path: root/flag_test.go
diff options
context:
space:
mode:
authorAlbert Nigmatzianov <[email protected]>2017-03-26 00:48:22 +0500
committerEric Paris <[email protected]>2017-03-25 14:48:22 -0500
commitd90f37a48761fe767528f31db1955e4f795d652f (patch)
tree7a0d7257f30d762bd9b5872fd380b302ecbb6bfc /flag_test.go
parent9ff6c6923cfffbcd502984b8e0c80539a94968b7 (diff)
Add SortFlags option (#113)
Fixes https://github.com/spf13/cobra/issues/316
Diffstat (limited to 'flag_test.go')
-rw-r--r--flag_test.go35
1 files changed, 35 insertions, 0 deletions
diff --git a/flag_test.go b/flag_test.go
index b83a0ed..55dd6c6 100644
--- a/flag_test.go
+++ b/flag_test.go
@@ -1004,3 +1004,38 @@ func TestPrintDefaults(t *testing.T) {
t.Errorf("got %q want %q\n", got, defaultOutput)
}
}
+
+func TestVisitAllFlagOrder(t *testing.T) {
+ fs := NewFlagSet("TestVisitAllFlagOrder", ContinueOnError)
+ fs.SortFlags = false
+ names := []string{"C", "B", "A", "D"}
+ for _, name := range names {
+ fs.Bool(name, false, "")
+ }
+
+ i := 0
+ fs.VisitAll(func(f *Flag) {
+ if names[i] != f.Name {
+ t.Errorf("Incorrect order. Expected %v, got %v", names[i], f.Name)
+ }
+ i++
+ })
+}
+
+func TestVisitFlagOrder(t *testing.T) {
+ fs := NewFlagSet("TestVisitFlagOrder", ContinueOnError)
+ fs.SortFlags = false
+ names := []string{"C", "B", "A", "D"}
+ for _, name := range names {
+ fs.Bool(name, false, "")
+ fs.Set(name, "true")
+ }
+
+ i := 0
+ fs.Visit(func(f *Flag) {
+ if names[i] != f.Name {
+ t.Errorf("Incorrect order. Expected %v, got %v", names[i], f.Name)
+ }
+ i++
+ })
+}