diff options
| author | Alex Flint <[email protected]> | 2019-05-03 16:32:16 -0700 |
|---|---|---|
| committer | Alex Flint <[email protected]> | 2019-05-03 16:32:16 -0700 |
| commit | 990e87d80d9989dd2fbac4db21c8527e1f17cea3 (patch) | |
| tree | 1f5cb6635feef64b29e41d62cc0e9893d62a9e3d /parse_test.go | |
| parent | bd97edec87a0541321c6e2529150e315ee11cd8b (diff) | |
no need to initialize nil structs during path traversal
Diffstat (limited to 'parse_test.go')
| -rw-r--r-- | parse_test.go | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/parse_test.go b/parse_test.go index c2544fd..c18dc16 100644 --- a/parse_test.go +++ b/parse_test.go @@ -877,6 +877,26 @@ func TestEmbedded(t *testing.T) { assert.Equal(t, true, args.Z) } +func TestEmbeddedPtr(t *testing.T) { + // embedded pointer fields are not supported so this should return an error + var args struct { + *A + } + err := parse("--x=hello", &args) + require.Error(t, err) +} + +func TestEmbeddedPtrIgnored(t *testing.T) { + // embedded pointer fields are not supported but here we + var args struct { + *A `arg:"-"` + B + } + err := parse("--y=321", &args) + require.NoError(t, err) + assert.Equal(t, 321, args.Y) +} + func TestEmptyArgs(t *testing.T) { origArgs := os.Args |
