From 0c0f9a53aceb964ef68ea55c57a36a9e374f00e8 Mon Sep 17 00:00:00 2001 From: Alex Flint Date: Tue, 5 Jan 2016 13:52:33 -0800 Subject: [PATCH] MustParse returns *Parser --- parse.go | 3 ++- parse_test.go | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/parse.go b/parse.go index b6eae4e..219a947 100644 --- a/parse.go +++ b/parse.go @@ -26,7 +26,7 @@ type spec struct { var ErrHelp = errors.New("help requested by user") // MustParse processes command line arguments and exits upon failure -func MustParse(dest ...interface{}) { +func MustParse(dest ...interface{}) *Parser { p, err := NewParser(dest...) if err != nil { fmt.Println(err) @@ -40,6 +40,7 @@ func MustParse(dest ...interface{}) { if err != nil { p.Fail(err.Error()) } + return p } // Parse processes command line arguments and stores them in dest diff --git a/parse_test.go b/parse_test.go index eb6080c..7fca76a 100644 --- a/parse_test.go +++ b/parse_test.go @@ -353,6 +353,7 @@ func TestMustParse(t *testing.T) { Foo string } os.Args = []string{"example", "--foo", "bar"} - MustParse(&args) + parser := MustParse(&args) assert.Equal(t, "bar", args.Foo) + assert.NotNil(t, parser) }