MCPcopy Index your code
hub / github.com/coder/coder / TestParseEnvFileFlag

Function TestParseEnvFileFlag

scripts/develop/main_test.go:921–988  ·  view source on GitHub ↗

nolint:paralleltest // parseEnvFileFlag mutates process-global os.Args.

(t *testing.T)

Source from the content-addressed store, hash-verified

919
920//nolint:paralleltest // parseEnvFileFlag mutates process-global os.Args.
921func TestParseEnvFileFlag(t *testing.T) {
922 t.Run("FlagWithSpace", func(t *testing.T) {
923 orig := os.Args
924 t.Cleanup(func() { os.Args = orig })
925 os.Args = []string{"develop", "--env-file", "/tmp/test.env", "--port", "3000"}
926
927 result, err := parseEnvFileFlag()
928 require.NoError(t, err)
929 assert.Equal(t, "/tmp/test.env", result)
930 })
931
932 t.Run("FlagWithEquals", func(t *testing.T) {
933 orig := os.Args
934 t.Cleanup(func() { os.Args = orig })
935 os.Args = []string{"develop", "--env-file=/tmp/test.env", "--port", "3000"}
936
937 result, err := parseEnvFileFlag()
938 require.NoError(t, err)
939 assert.Equal(t, "/tmp/test.env", result)
940 })
941
942 t.Run("FallsBackToEnvVar", func(t *testing.T) {
943 orig := os.Args
944 t.Cleanup(func() { os.Args = orig })
945 os.Args = []string{"develop", "--port", "3000"}
946
947 t.Setenv("CODER_DEV_ENV_FILE", "/tmp/from-env.env")
948
949 result, err := parseEnvFileFlag()
950 require.NoError(t, err)
951 assert.Equal(t, "/tmp/from-env.env", result)
952 })
953
954 t.Run("FlagTakesPrecedenceOverEnvVar", func(t *testing.T) {
955 orig := os.Args
956 t.Cleanup(func() { os.Args = orig })
957 os.Args = []string{"develop", "--env-file", "/tmp/from-flag.env"}
958
959 t.Setenv("CODER_DEV_ENV_FILE", "/tmp/from-env.env")
960
961 result, err := parseEnvFileFlag()
962 require.NoError(t, err)
963 assert.Equal(t, "/tmp/from-flag.env", result)
964 })
965
966 t.Run("ReturnsEmptyWhenUnset", func(t *testing.T) {
967 orig := os.Args
968 t.Cleanup(func() { os.Args = orig })
969 os.Args = []string{"develop", "--port", "3000"}
970
971 t.Setenv("CODER_DEV_ENV_FILE", "")
972 os.Unsetenv("CODER_DEV_ENV_FILE")
973
974 result, err := parseEnvFileFlag()
975 require.NoError(t, err)
976 assert.Equal(t, "", result)
977 })
978

Callers

nothing calls this directly

Calls 7

parseEnvFileFlagFunction · 0.85
SetenvMethod · 0.80
RunMethod · 0.65
CleanupMethod · 0.65
EqualMethod · 0.45
ErrorMethod · 0.45
ContainsMethod · 0.45

Tested by

no test coverage detected