MCPcopy
hub / github.com/spf13/viper / TestBindFlagValueSet

Function TestBindFlagValueSet

flags_test.go:11–44  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

9)
10
11func TestBindFlagValueSet(t *testing.T) {
12 Reset()
13 flagSet := pflag.NewFlagSet("test", pflag.ContinueOnError)
14
15 testValues := map[string]*string{
16 "host": nil,
17 "port": nil,
18 "endpoint": nil,
19 }
20
21 mutatedTestValues := map[string]string{
22 "host": "localhost",
23 "port": "6060",
24 "endpoint": "/public",
25 }
26
27 for name := range testValues {
28 testValues[name] = flagSet.String(name, "", "test")
29 }
30
31 flagValueSet := pflagValueSet{flagSet}
32
33 err := BindFlagValues(flagValueSet)
34 require.NoError(t, err, "error binding flag set")
35
36 flagSet.VisitAll(func(flag *pflag.Flag) {
37 flag.Value.Set(mutatedTestValues[flag.Name])
38 flag.Changed = true
39 })
40
41 for name, expected := range mutatedTestValues {
42 assert.Equal(t, expected, Get(name))
43 }
44}
45
46func TestBindFlagValue(t *testing.T) {
47 testString := "testing"

Callers

nothing calls this directly

Calls 6

ResetFunction · 0.85
BindFlagValuesFunction · 0.85
GetFunction · 0.85
StringMethod · 0.80
VisitAllMethod · 0.65
SetMethod · 0.45

Tested by

no test coverage detected