package cmd import ( "os" "path/filepath" "testing" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) func Test_getToken(t *testing.T) { t.Run("empty", func(t *testing.T) { assert.Equal(t, "", getToken("")) }) t.Run("env", func(t *testing.T) { t.Setenv("POMERIUM_ZERO_TOKEN", "FROM_ENV") assert.Equal(t, "FROM_ENV", getToken("")) }) t.Run("json", func(t *testing.T) { fp := filepath.Join(t.TempDir(), "config.json") require.NoError(t, os.WriteFile(fp, []byte(`{ "pomerium_zero_token": "FROM_JSON" }`), 0o644)) assert.Equal(t, "FROM_JSON", getToken(fp)) }) t.Run("yaml", func(t *testing.T) { fp := filepath.Join(t.TempDir(), "config.yaml") require.NoError(t, os.WriteFile(fp, []byte(` pomerium_zero_token: FROM_YAML `), 0o644)) assert.Equal(t, "FROM_YAML", getToken(fp)) }) t.Run("toml", func(t *testing.T) { fp := filepath.Join(t.TempDir(), "config.toml") require.NoError(t, os.WriteFile(fp, []byte(` pomerium_zero_token = "FROM_TOML" `), 0o644)) assert.Equal(t, "FROM_TOML", getToken(fp)) }) }