summaryrefslogtreecommitdiffstats
path: root/api4/api_test.go
diff options
context:
space:
mode:
authorChris <ccbrown112@gmail.com>2017-10-12 12:24:54 -0700
committerChristopher Speller <crspeller@gmail.com>2017-10-12 12:24:54 -0700
commit917e4789c2fde00bcae0f0ccc82b3c3815e1d38a (patch)
tree115270abbda7c7991fbfc419aff465b29fec1f88 /api4/api_test.go
parent86a0e16035fa94487c606d925fd856164481a60f (diff)
downloadchat-917e4789c2fde00bcae0f0ccc82b3c3815e1d38a.tar.gz
chat-917e4789c2fde00bcae0f0ccc82b3c3815e1d38a.tar.bz2
chat-917e4789c2fde00bcae0f0ccc82b3c3815e1d38a.zip
Use tmpfs containers for api/api4 tests, move and speed up CLI tests (#7606)
* use tmpfs containers for api/api4, move and speed up cli tests * minor optimizations * add missing files, fix pre-existing race condition * add . to TestMain check * add requested log message
Diffstat (limited to 'api4/api_test.go')
-rw-r--r--api4/api_test.go48
1 files changed, 48 insertions, 0 deletions
diff --git a/api4/api_test.go b/api4/api_test.go
new file mode 100644
index 000000000..8a8753a4f
--- /dev/null
+++ b/api4/api_test.go
@@ -0,0 +1,48 @@
+// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
+// See License.txt for license information.
+
+package api4
+
+import (
+ "flag"
+ "os"
+ "testing"
+
+ l4g "github.com/alecthomas/log4go"
+
+ "github.com/mattermost/mattermost-server/store/storetest"
+ "github.com/mattermost/mattermost-server/utils"
+)
+
+func TestMain(m *testing.M) {
+ flag.Parse()
+
+ // In the case where a dev just wants to run a single test, it's faster to just use the default
+ // store.
+ if filter := flag.Lookup("test.run").Value.String(); filter != "" && filter != "." {
+ utils.TranslationsPreInit()
+ utils.LoadConfig("config.json")
+ l4g.Info("-test.run used, not creating temporary containers")
+ os.Exit(m.Run())
+ }
+
+ utils.TranslationsPreInit()
+ utils.LoadConfig("config.json")
+ utils.InitTranslations(utils.Cfg.LocalizationSettings)
+
+ status := 0
+
+ container, settings, err := storetest.NewMySQLContainer()
+ if err != nil {
+ panic(err)
+ }
+
+ UseTestStore(container, settings)
+
+ defer func() {
+ StopTestStore()
+ os.Exit(status)
+ }()
+
+ status = m.Run()
+}