Merge pull request #166 from codegangsta/fix-generic-flag-help-text

Fix help text for generic flag to not insinuate that you can specify mul...
This commit is contained in:
Dan Buch 2015-01-08 14:50:16 -05:00
commit 21d399c3fa
2 changed files with 9 additions and 5 deletions

View File

@ -69,10 +69,15 @@ type GenericFlag struct {
EnvVar string
}
// String returns the string representation of the generic flag to display the
// help text to the user (uses the String() method of the generic flag to show
// the value)
func (f GenericFlag) String() string {
return withEnvHint(f.EnvVar, fmt.Sprintf("%s%s %v\t`%v` %s", prefixFor(f.Name), f.Name, f.Value, "-"+f.Name+" option -"+f.Name+" option", f.Usage))
return withEnvHint(f.EnvVar, fmt.Sprintf("%s%s '%v'\t%v", prefixFor(f.Name), f.Name, f.Value, f.Usage))
}
// Apply takes the flagset and calls Set on the generic flag with the value
// provided by the user for parsing by the flag
func (f GenericFlag) Apply(set *flag.FlagSet) {
val := f.Value
if f.EnvVar != "" {

View File

@ -262,15 +262,14 @@ var genericFlagTests = []struct {
value cli.Generic
expected string
}{
{"help", &Parser{}, "--help <nil>\t`-help option -help option` "},
{"h", &Parser{}, "-h <nil>\t`-h option -h option` "},
{"test", &Parser{}, "--test <nil>\t`-test option -test option` "},
{"test", &Parser{"abc", "def"}, "--test 'abc,def'\ttest flag"},
{"t", &Parser{"abc", "def"}, "-t 'abc,def'\ttest flag"},
}
func TestGenericFlagHelpOutput(t *testing.T) {
for _, test := range genericFlagTests {
flag := cli.GenericFlag{Name: test.name}
flag := cli.GenericFlag{Name: test.name, Value: test.value, Usage: "test flag"}
output := flag.String()
if output != test.expected {