summaryrefslogtreecommitdiff
path: root/parse_test.go
diff options
context:
space:
mode:
authorAlex Flint <[email protected]>2019-04-30 13:54:40 -0700
committerGitHub <[email protected]>2019-04-30 13:54:40 -0700
commitfb1ae1c3e0bd00d45333c3d51384afc05846f7a0 (patch)
tree2014f28f27364532f07e82aad9472f2811a8c950 /parse_test.go
parent78d30a555ccce677d4d535d30d62218b5f3c1a27 (diff)
parent2267a587183189ac5c5d18478dba9b3c3f0eb2ec (diff)
Merge pull request #81 from alexflint/subcommands
small refactor to validation
Diffstat (limited to 'parse_test.go')
-rw-r--r--parse_test.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/parse_test.go b/parse_test.go
index 2e438aa..9aad2e3 100644
--- a/parse_test.go
+++ b/parse_test.go
@@ -969,3 +969,19 @@ 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"})
+ require.NoError(t, err)
+ assert.Equal(t, args.Foo, "abc")
+
+ err = p.Parse([]string{})
+ assert.Error(t, err)
+}