summaryrefslogtreecommitdiff
path: root/parse_test.go
diff options
context:
space:
mode:
authorAlex Flint <[email protected]>2019-04-14 18:00:40 -0700
committerAlex Flint <[email protected]>2019-04-14 18:00:40 -0700
commitb8678d404568d6df96cf390eab226a2ebc04d208 (patch)
tree88d8f9e6aeb1c5eb68fe7645c677b44fb722f8c7 /parse_test.go
parent7b1d9ef23f852b0f770072be69df83b5a1bbee8f (diff)
refactor validation
Diffstat (limited to 'parse_test.go')
-rw-r--r--parse_test.go15
1 files changed, 15 insertions, 0 deletions
diff --git a/parse_test.go b/parse_test.go
index 2e438aa..81cd2c3 100644
--- a/parse_test.go
+++ b/parse_test.go
@@ -969,3 +969,18 @@ func TestSpacesAllowedInTags(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, []string{"one", "two", "three", "four"}, args.Foo)
}
+
+func TestReuseParser(t *testing.T) {
+ var args struct {
+ Foo string `arg:"required"`
+ }
+
+ p, err := NewParser(Config{}, &args)
+ require.NoError(t, err)
+
+ err = p.Parse([]string{"--foo=abc"})
+ assert.Equal(t, args.Foo, "abc")
+
+ err = p.Parse([]string{})
+ assert.Error(t, err)
+}