From e0e7ef766bf91748c5c55258e3773edaea7ed5f4 Mon Sep 17 00:00:00 2001 From: Eric Paris Date: Sat, 15 Aug 2015 16:05:51 -0400 Subject: New AddFlagSet function on FlagSet This function allows one to create a different FlagSets and then easily merge them together. --- flag_test.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'flag_test.go') diff --git a/flag_test.go b/flag_test.go index 9ff1934..5114f28 100644 --- a/flag_test.go +++ b/flag_test.go @@ -110,6 +110,23 @@ func TestUsage(t *testing.T) { } } +func TestAddFlagSet(t *testing.T) { + oldSet := NewFlagSet("old", ContinueOnError) + newSet := NewFlagSet("new", ContinueOnError) + + oldSet.String("flag1", "flag1", "flag1") + oldSet.String("flag2", "flag2", "flag2") + + newSet.String("flag2", "flag2", "flag2") + newSet.String("flag3", "flag3", "flag3") + + oldSet.AddFlagSet(newSet) + + if len(oldSet.formal) != 3 { + t.Errorf("Unexpected result adding a FlagSet to a FlagSet %v", oldSet) + } +} + func TestAnnotation(t *testing.T) { f := NewFlagSet("shorthand", ContinueOnError) -- cgit v1.2.3