summaryrefslogtreecommitdiffstats
path: root/utils
diff options
context:
space:
mode:
authorHarrison Healey <harrisonmhealey@gmail.com>2018-06-21 10:30:20 -0400
committerJesús Espino <jespinog@gmail.com>2018-06-21 16:30:20 +0200
commit07c785e294e70494ae6016d59749a71af3f74920 (patch)
tree9b5e8deb15a182aa6a890261bb77b2e6faebbaea /utils
parent1f65f0e3d6d142b859f8dda52da99cb3d4a01c9c (diff)
downloadchat-07c785e294e70494ae6016d59749a71af3f74920.tar.gz
chat-07c785e294e70494ae6016d59749a71af3f74920.tar.bz2
chat-07c785e294e70494ae6016d59749a71af3f74920.zip
MM-10730 Added support for empty environment variables to viper (#8973)
Diffstat (limited to 'utils')
-rw-r--r--utils/config_test.go25
1 files changed, 25 insertions, 0 deletions
diff --git a/utils/config_test.go b/utils/config_test.go
index 278f24251..80ab05ffe 100644
--- a/utils/config_test.go
+++ b/utils/config_test.go
@@ -335,6 +335,9 @@ func TestConfigFromEnviroVars(t *testing.T) {
"TeamSettings": {
"SiteName": "Mattermost",
"CustomBrandText": ""
+ },
+ "SupportSettings": {
+ "TermsOfServiceLink": "https://about.mattermost.com/default-terms/"
}
}`
@@ -447,6 +450,28 @@ func TestConfigFromEnviroVars(t *testing.T) {
}
}
})
+
+ t.Run("empty string setting", func(t *testing.T) {
+ os.Setenv("MM_SUPPORTSETTINGS_TERMSOFSERVICELINK", "")
+ defer os.Unsetenv("MM_SUPPORTSETTINGS_TERMSOFSERVICELINK")
+
+ cfg, envCfg, err := ReadConfig(strings.NewReader(config), true)
+ require.Nil(t, err)
+
+ if *cfg.SupportSettings.TermsOfServiceLink != "" {
+ t.Fatal("Couldn't read empty TermsOfServiceLink from environment var")
+ }
+
+ if supportSettings, ok := envCfg["SupportSettings"]; !ok {
+ t.Fatal("SupportSettings is missing from envConfig")
+ } else if supportSettingsAsMap, ok := supportSettings.(map[string]interface{}); !ok {
+ t.Fatal("SupportSettings is not a map in envConfig")
+ } else {
+ if termsOfServiceLinkInEnv, ok := supportSettingsAsMap["TermsOfServiceLink"].(bool); !ok || !termsOfServiceLinkInEnv {
+ t.Fatal("TermsOfServiceLink should be in envConfig")
+ }
+ }
+ })
}
func TestValidateLocales(t *testing.T) {