MCPcopy Create free account
hub / github.com/docopt/docopt.go / TestLongOptionsErrorHandling

Function TestLongOptionsErrorHandling

docopt_test.go:1066–1094  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

1064}
1065
1066func TestLongOptionsErrorHandling(t *testing.T) {
1067 _, err := Parse("Usage: prog", []string{"--non-existent"}, true, "", false, false)
1068 if _, ok := err.(*UserError); !ok {
1069 t.Error(fmt.Sprintf("(%s) %s", reflect.TypeOf(err), err))
1070 }
1071 _, err = Parse("Usage: prog [--version --verbose]\nOptions: --version\n --verbose",
1072 []string{"--ver"}, true, "", false, false)
1073 if _, ok := err.(*UserError); !ok {
1074 t.Error(err)
1075 }
1076 _, err = Parse("Usage: prog --long\nOptions: --long ARG", []string{}, true, "", false, false)
1077 if _, ok := err.(*LanguageError); !ok {
1078 t.Error(err)
1079 }
1080 _, err = Parse("Usage: prog --long ARG\nOptions: --long ARG",
1081 []string{"--long"}, true, "", false, false)
1082 if _, ok := err.(*UserError); !ok {
1083 t.Error(fmt.Sprintf("(%s) %s", reflect.TypeOf(err), err))
1084 }
1085 _, err = Parse("Usage: prog --long=ARG\nOptions: --long", []string{}, true, "", false, false)
1086 if _, ok := err.(*LanguageError); !ok {
1087 t.Error(err)
1088 }
1089 _, err = Parse("Usage: prog --long\nOptions: --long",
1090 []string{}, true, "--long=ARG", false, false)
1091 if _, ok := err.(*UserError); !ok {
1092 t.Error(err)
1093 }
1094}
1095
1096func TestShortOptionsErrorHandling(t *testing.T) {
1097 _, err := Parse("Usage: prog -x\nOptions: -x this\n -x that", []string{}, true, "", false, false)

Callers

nothing calls this directly

Calls 2

ParseFunction · 0.85
ErrorMethod · 0.45

Tested by

no test coverage detected