From 2e481152920c23cb939e7224aac245973a00ee95 Mon Sep 17 00:00:00 2001 From: Alec Thomas Date: Wed, 19 Dec 2012 20:36:31 -1000 Subject: Add support for non-interspersed option/non-option args. --- flag_test.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'flag_test.go') diff --git a/flag_test.go b/flag_test.go index 9caa8c4..635f431 100644 --- a/flag_test.go +++ b/flag_test.go @@ -335,3 +335,18 @@ func TestHelp(t *testing.T) { t.Fatal("help was called; should not have been for defined help flag") } } + +func TestNoInterspersed(t *testing.T) { + f := NewFlagSet("test", ContinueOnError) + f.NoInterspersed() + f.Bool("true", true, "always true") + f.Bool("false", false, "always false") + err := f.Parse([]string{"--true", "break", "--false"}) + if err != nil { + t.Fatal("expected no error; got ", err) + } + args := f.Args() + if len(args) != 2 || args[0] != "break" || args[1] != "--false" { + t.Fatal("expected interspersed options/non-options to fail") + } +} -- cgit v1.2.3