aboutsummaryrefslogtreecommitdiff
path: root/flagfolder/flagfolder_test.go
blob: d85e0234b677eb72b384e2a9e2bfbd753d73ef56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package flagfolder

import (
	"flag"
	"testing"
)

func TestFlagFolderSimple(t *testing.T) {
	for _, cs := range []struct {
		flagName  string
		wantValue string
	}{
		{
			flagName:  "foo",
			wantValue: "foo",
		},
		{
			flagName:  "bar",
			wantValue: "bar",
		},
		{
			flagName:  "something-here",
			wantValue: "something here",
		},
		{
			flagName:  "what-is-computer",
			wantValue: "what is computer",
		},
	} {
		t.Run(cs.flagName, func(t *testing.T) {
			fs := flag.NewFlagSet("flagfolder_test", flag.PanicOnError)

			f := fs.String(cs.flagName, "fail", "help for "+cs.flagName)

			if err := ParseSet("./testdata", fs); err != nil {
				t.Errorf("can't parse ./testdata: %v", err)
			}

			if *f != cs.wantValue {
				t.Errorf("wanted --%s to be %q, got: %q", cs.flagName, cs.wantValue, *f)
			}
		})
	}
}