diff --git a/src/cmds/restic/flags_test.go b/src/cmds/restic/flags_test.go new file mode 100644 index 000000000..3b313b68c --- /dev/null +++ b/src/cmds/restic/flags_test.go @@ -0,0 +1,26 @@ +package main + +import ( + "testing" +) + +// TestFlags checks for double defined flags, the commands will panic on +// ParseFlags() when a shorthand flag is defined twice. +func TestFlags(t *testing.T) { + type FlagParser interface { + ParseFlags([]string) error + } + + for _, cmd := range cmdRoot.Commands() { + t.Run(cmd.Name(), func(t *testing.T) { + err := cmd.ParseFlags([]string{"--help"}) + if err.Error() == "pflag: help requested" { + err = nil + } + + if err != nil { + t.Fatal(err) + } + }) + } +}