MCPcopy
hub / github.com/grafana/dskit / TestParseFlagsWithoutArgumentsWithEnv

Function TestParseFlagsWithoutArgumentsWithEnv

flagext/parse_test.go:34–51  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

32}
33
34func TestParseFlagsWithoutArgumentsWithEnv(t *testing.T) {
35 fs := flag.NewFlagSet("test", flag.ContinueOnError)
36 var host string
37 var port int
38 fs.StringVar(&host, "server.host", "localhost", "host")
39 fs.IntVar(&port, "server.port", 80, "port")
40
41 origArgs := os.Args
42 t.Cleanup(func() { os.Args = origArgs })
43 os.Args = []string{"cmd", "-server.host", "clihost"}
44
45 t.Setenv("APP_SERVER_PORT", "9090")
46
47 err := ParseFlagsWithoutArgumentsWithEnv(fs, "APP")
48 require.NoError(t, err)
49 assert.Equal(t, "clihost", host, "CLI flag should be used")
50 assert.Equal(t, 9090, port, "env var should set unset flag")
51}
52
53func TestParseFlagsWithoutArgumentsWithEnv_RejectsArguments(t *testing.T) {
54 fs := flag.NewFlagSet("test", flag.ContinueOnError)

Callers

nothing calls this directly

Calls 2

EqualMethod · 0.45

Tested by

no test coverage detected