From 11cbb597471127c1b29e78e6cad0a1a4d93ea24c Mon Sep 17 00:00:00 2001 From: Christopher Speller Date: Thu, 17 May 2018 12:40:40 -0700 Subject: Renaming platform binary to mattermost. (#8801) --- cmd/mattermost/commands/cmdtestlib.go | 45 +++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 cmd/mattermost/commands/cmdtestlib.go (limited to 'cmd/mattermost/commands/cmdtestlib.go') diff --git a/cmd/mattermost/commands/cmdtestlib.go b/cmd/mattermost/commands/cmdtestlib.go new file mode 100644 index 000000000..93dcc9566 --- /dev/null +++ b/cmd/mattermost/commands/cmdtestlib.go @@ -0,0 +1,45 @@ +// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. + +package commands + +import ( + "flag" + "fmt" + "os" + "os/exec" + "path/filepath" + "strings" + "testing" + + "github.com/stretchr/testify/require" +) + +var coverprofileCounters map[string]int = make(map[string]int) + +func execArgs(t *testing.T, args []string) []string { + ret := []string{"-test.run", "ExecCommand"} + if coverprofile := flag.Lookup("test.coverprofile").Value.String(); coverprofile != "" { + dir := filepath.Dir(coverprofile) + base := filepath.Base(coverprofile) + baseParts := strings.SplitN(base, ".", 2) + coverprofileCounters[t.Name()] = coverprofileCounters[t.Name()] + 1 + baseParts[0] = fmt.Sprintf("%v-%v-%v", baseParts[0], t.Name(), coverprofileCounters[t.Name()]) + ret = append(ret, "-test.coverprofile", filepath.Join(dir, strings.Join(baseParts, "."))) + } + return append(append(ret, "--", "--disableconfigwatch"), args...) +} + +func CheckCommand(t *testing.T, args ...string) string { + path, err := os.Executable() + require.NoError(t, err) + output, err := exec.Command(path, execArgs(t, args)...).CombinedOutput() + require.NoError(t, err, string(output)) + return strings.TrimSpace(strings.TrimSuffix(strings.TrimSpace(string(output)), "PASS")) +} + +func RunCommand(t *testing.T, args ...string) error { + path, err := os.Executable() + require.NoError(t, err) + return exec.Command(path, execArgs(t, args)...).Run() +} -- cgit v1.2.3-1-g7c22