summaryrefslogtreecommitdiffstats
path: root/app/config_test.go
diff options
context:
space:
mode:
authorChris <ccbrown112@gmail.com>2018-01-12 08:02:11 -0600
committerJoram Wilander <jwawilander@gmail.com>2018-01-12 09:02:11 -0500
commit7e5ce976681e99be6b26d428935ba1106d530efa (patch)
treee050da49c943bf77f57b03eceb0b650114c7f1b6 /app/config_test.go
parent3d3a234fca1d2ee43f5c4fc8961d44fde2512c82 (diff)
downloadchat-7e5ce976681e99be6b26d428935ba1106d530efa.tar.gz
chat-7e5ce976681e99be6b26d428935ba1106d530efa.tar.bz2
chat-7e5ce976681e99be6b26d428935ba1106d530efa.zip
Remove global cfg vars (#8099)
* remove global cfg vars * enterprise update
Diffstat (limited to 'app/config_test.go')
-rw-r--r--app/config_test.go56
1 files changed, 56 insertions, 0 deletions
diff --git a/app/config_test.go b/app/config_test.go
new file mode 100644
index 000000000..e3d50b958
--- /dev/null
+++ b/app/config_test.go
@@ -0,0 +1,56 @@
+// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
+// See License.txt for license information.
+
+package app
+
+import (
+ "testing"
+
+ "github.com/mattermost/mattermost-server/model"
+)
+
+func TestConfigListener(t *testing.T) {
+ th := Setup().InitBasic()
+ defer th.TearDown()
+
+ originalSiteName := th.App.Config().TeamSettings.SiteName
+ th.App.UpdateConfig(func(cfg *model.Config) {
+ cfg.TeamSettings.SiteName = "test123"
+ })
+
+ listenerCalled := false
+ listener := func(oldConfig *model.Config, newConfig *model.Config) {
+ if listenerCalled {
+ t.Fatal("listener called twice")
+ }
+
+ if oldConfig.TeamSettings.SiteName != "test123" {
+ t.Fatal("old config contains incorrect site name")
+ } else if newConfig.TeamSettings.SiteName != originalSiteName {
+ t.Fatal("new config contains incorrect site name")
+ }
+
+ listenerCalled = true
+ }
+ listenerId := th.App.AddConfigListener(listener)
+ defer th.App.RemoveConfigListener(listenerId)
+
+ listener2Called := false
+ listener2 := func(oldConfig *model.Config, newConfig *model.Config) {
+ if listener2Called {
+ t.Fatal("listener2 called twice")
+ }
+
+ listener2Called = true
+ }
+ listener2Id := th.App.AddConfigListener(listener2)
+ defer th.App.RemoveConfigListener(listener2Id)
+
+ th.App.ReloadConfig()
+
+ if !listenerCalled {
+ t.Fatal("listener should've been called")
+ } else if !listener2Called {
+ t.Fatal("listener 2 should've been called")
+ }
+}