From 4e6cc846a618ecef5c101727bbd03f6674044ab7 Mon Sep 17 00:00:00 2001 From: Chris Date: Wed, 17 Jan 2018 12:38:37 -0600 Subject: Finally remove utils.Cfg (#8113) * finally remove utils.Cfg * fix compile error * another test compilation fix --- api/apitestlib.go | 38 ++++++++++++++++++++++++++------------ 1 file changed, 26 insertions(+), 12 deletions(-) (limited to 'api/apitestlib.go') diff --git a/api/apitestlib.go b/api/apitestlib.go index 7e3c10efc..8d7f54902 100644 --- a/api/apitestlib.go +++ b/api/apitestlib.go @@ -5,6 +5,8 @@ package api import ( "fmt" + "io" + "io/ioutil" "net" "os" "strings" @@ -24,7 +26,7 @@ import ( type TestHelper struct { App *app.App - originalConfig *model.Config + tempConfigPath string BasicClient *model.Client BasicTeam *model.Team @@ -64,7 +66,22 @@ func StopTestStore() { } func setupTestHelper(enterprise bool) *TestHelper { - options := []app.Option{app.DisableConfigWatch} + permConfig, err := os.Open(utils.FindConfigFile("config.json")) + if err != nil { + panic(err) + } + defer permConfig.Close() + tempConfig, err := ioutil.TempFile("", "") + if err != nil { + panic(err) + } + _, err = io.Copy(tempConfig, permConfig) + tempConfig.Close() + if err != nil { + panic(err) + } + + options := []app.Option{app.ConfigFile(tempConfig.Name()), app.DisableConfigWatch} if testStore != nil { options = append(options, app.StoreOverride(testStore)) } @@ -75,9 +92,9 @@ func setupTestHelper(enterprise bool) *TestHelper { } th := &TestHelper{ - App: a, + App: a, + tempConfigPath: tempConfig.Name(), } - th.originalConfig = th.App.Config().Clone() th.App.UpdateConfig(func(cfg *model.Config) { *cfg.TeamSettings.MaxUsersPerTeam = 50 @@ -176,7 +193,7 @@ func (me *TestHelper) CreateTeam(client *model.Client) *model.Team { team := &model.Team{ DisplayName: "dn_" + id, Name: GenerateTestTeamName(), - Email: GenerateTestEmail(), + Email: me.GenerateTestEmail(), Type: model.TEAM_OPEN, } @@ -190,7 +207,7 @@ func (me *TestHelper) CreateUser(client *model.Client) *model.User { id := model.NewId() user := &model.User{ - Email: GenerateTestEmail(), + Email: me.GenerateTestEmail(), Username: "un_" + id, Nickname: "nn_" + id, Password: "Password1", @@ -353,8 +370,8 @@ func (me *TestHelper) LoginSystemAdmin() { utils.EnableDebugLogForTest() } -func GenerateTestEmail() string { - if utils.Cfg.EmailSettings.SMTPServer != "dockerhost" && os.Getenv("CI_INBUCKET_PORT") == "" { +func (me *TestHelper) GenerateTestEmail() string { + if me.App.Config().EmailSettings.SMTPServer != "dockerhost" && os.Getenv("CI_INBUCKET_PORT") == "" { return strings.ToLower("success+" + model.NewId() + "@simulator.amazonses.com") } return strings.ToLower(model.NewId() + "@dockerhost") @@ -365,11 +382,8 @@ func GenerateTestTeamName() string { } func (me *TestHelper) TearDown() { - me.App.UpdateConfig(func(cfg *model.Config) { - *cfg = *me.originalConfig - }) - me.App.Shutdown() + os.Remove(me.tempConfigPath) if err := recover(); err != nil { StopTestStore() panic(err) -- cgit v1.2.3-1-g7c22