From 7e5ce976681e99be6b26d428935ba1106d530efa Mon Sep 17 00:00:00 2001 From: Chris Date: Fri, 12 Jan 2018 08:02:11 -0600 Subject: Remove global cfg vars (#8099) * remove global cfg vars * enterprise update --- app/config_test.go | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 app/config_test.go (limited to 'app/config_test.go') 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") + } +} -- cgit v1.2.3-1-g7c22