github.com/WindomZ/go-commander@v1.2.2/options_test.go (about) 1 package commander 2 3 import ( 4 "github.com/WindomZ/testify/assert" 5 "testing" 6 ) 7 8 func TestOptions_UsagesString(t *testing.T) { 9 var o _Options 10 11 o = _Options{} 12 assert.Equal(t, o.UsagesString(), []string(nil)) 13 14 o = _Options{ 15 newOption("-a, --about", "about description"), 16 newOption("-b=<kn>, --bold=<kn>", "bold description"), 17 newOption("-c, --config", "config description"), 18 newOption("-d, --drop", "drop description"), 19 } 20 assert.Equal(t, o.UsagesString(), 21 []string{"[-a|--about] [-b=<kn>|--bold=<kn>] [-c|--config] [-d|--drop]"}) 22 } 23 24 func TestOptions_OptionsString(t *testing.T) { 25 o := _Options{ 26 newOption("-a, --about", "about description"), 27 newOption("-b=<kn>, --bold=<kn>", "bold description"), 28 newOption("-c, --config", "config description"), 29 newOption("-d, --drop", "drop description"), 30 } 31 opts := o.OptionsString() 32 assert.Equal(t, opts["-a|--about"], "-a --about about description") 33 assert.Equal(t, opts["-b|--bold"], "-b=<kn> --bold=<kn>\n bold description") 34 assert.Equal(t, opts["-c|--config"], "-c --config config description") 35 assert.Equal(t, opts["-d|--drop"], "-d --drop drop description") 36 }