summaryrefslogtreecommitdiff
path: root/internal/configuration/helpers_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/configuration/helpers_test.go')
-rw-r--r--internal/configuration/helpers_test.go85
1 files changed, 85 insertions, 0 deletions
diff --git a/internal/configuration/helpers_test.go b/internal/configuration/helpers_test.go
new file mode 100644
index 000000000..b244d4dcf
--- /dev/null
+++ b/internal/configuration/helpers_test.go
@@ -0,0 +1,85 @@
+package configuration
+
+import (
+ "testing"
+
+ "github.com/stretchr/testify/assert"
+)
+
+func TestIsSecretKey(t *testing.T) {
+ assert.True(t, isSecretKey("my_fake_token"))
+ assert.False(t, isSecretKey("my_fake_tokenz"))
+ assert.True(t, isSecretKey("my_.fake.secret"))
+ assert.True(t, isSecretKey("my.password"))
+ assert.False(t, isSecretKey("my.passwords"))
+ assert.False(t, isSecretKey("my.passwords"))
+}
+
+func TestGetEnvConfigMaps(t *testing.T) {
+ var (
+ key string
+ ok bool
+ )
+
+ input := []string{
+ "my.non_secret.config_item",
+ "myother.configkey",
+ "mysecret.password",
+ "mysecret.user_password",
+ }
+
+ keys, ignoredKeys := getEnvConfigMap(input, DefaultEnvPrefix, DefaultEnvDelimiter)
+
+ key, ok = keys[DefaultEnvPrefix+"MY_NON_SECRET_CONFIG_ITEM"]
+ assert.True(t, ok)
+ assert.Equal(t, key, "my.non_secret.config_item")
+
+ key, ok = keys[DefaultEnvPrefix+"MYSECRET_USER_PASSWORD"]
+ assert.True(t, ok)
+ assert.Equal(t, key, "mysecret.user_password")
+
+ key, ok = keys[DefaultEnvPrefix+"MYOTHER_CONFIGKEY"]
+ assert.False(t, ok)
+ assert.Equal(t, key, "")
+
+ key, ok = keys[DefaultEnvPrefix+"MYSECRET_PASSWORD"]
+ assert.False(t, ok)
+ assert.Equal(t, key, "")
+
+ assert.Len(t, ignoredKeys, 3)
+ assert.Contains(t, ignoredKeys, DefaultEnvPrefix+"MYOTHER_CONFIGKEY_FILE")
+ assert.Contains(t, ignoredKeys, DefaultEnvPrefix+"MYSECRET_PASSWORD_FILE")
+ assert.Contains(t, ignoredKeys, DefaultEnvPrefix+"MYSECRET_USER_PASSWORD_FILE")
+}
+
+func TestGetSecretConfigMap(t *testing.T) {
+ var (
+ key string
+ ok bool
+ )
+
+ input := []string{
+ "my.non_secret.config_item",
+ "myother.configkey",
+ "mysecret.password",
+ "mysecret.user_password",
+ }
+
+ keys := getSecretConfigMap(input, DefaultEnvPrefix, DefaultEnvDelimiter)
+
+ key, ok = keys[DefaultEnvPrefix+"MY_NON_SECRET_CONFIG_ITEM_FILE"]
+ assert.False(t, ok)
+ assert.Equal(t, key, "")
+
+ key, ok = keys[DefaultEnvPrefix+"MYOTHER_CONFIGKEY_FILE"]
+ assert.True(t, ok)
+ assert.Equal(t, key, "myother.configkey")
+
+ key, ok = keys[DefaultEnvPrefix+"MYSECRET_PASSWORD_FILE"]
+ assert.True(t, ok)
+ assert.Equal(t, key, "mysecret.password")
+
+ key, ok = keys[DefaultEnvPrefix+"MYSECRET_USER_PASSWORD_FILE"]
+ assert.True(t, ok)
+ assert.Equal(t, key, "mysecret.user_password")
+}