summaryrefslogtreecommitdiffstats
path: root/cmd/mattermost/commands/plugin_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/mattermost/commands/plugin_test.go')
-rw-r--r--cmd/mattermost/commands/plugin_test.go42
1 files changed, 42 insertions, 0 deletions
diff --git a/cmd/mattermost/commands/plugin_test.go b/cmd/mattermost/commands/plugin_test.go
new file mode 100644
index 000000000..043823583
--- /dev/null
+++ b/cmd/mattermost/commands/plugin_test.go
@@ -0,0 +1,42 @@
+package commands
+
+import (
+ "os"
+ "path/filepath"
+ "testing"
+
+ "github.com/mattermost/mattermost-server/api4"
+ "github.com/mattermost/mattermost-server/utils"
+ "github.com/stretchr/testify/assert"
+ "github.com/stretchr/testify/require"
+)
+
+func TestPlugin(t *testing.T) {
+ os.MkdirAll("./test-plugins", os.ModePerm)
+ os.MkdirAll("./test-client-plugins", os.ModePerm)
+
+ th := api4.Setup().InitBasic().InitSystemAdmin()
+ defer th.TearDown()
+
+ path, _ := utils.FindDir("tests")
+
+ os.Chdir(filepath.Join("..", "..", ".."))
+
+ CheckCommand(t, "--config", filepath.Join(path, "test-config.json"), "plugin", "add", filepath.Join(path, "testplugin.tar.gz"))
+
+ CheckCommand(t, "--config", filepath.Join(path, "test-config.json"), "plugin", "enable", "testplugin")
+ cfg, _, _, err := utils.LoadConfig(filepath.Join(path, "test-config.json"))
+ require.Nil(t, err)
+ assert.Equal(t, cfg.PluginSettings.PluginStates["testplugin"].Enable, true)
+
+ CheckCommand(t, "--config", filepath.Join(path, "test-config.json"), "plugin", "disable", "testplugin")
+ cfg, _, _, err = utils.LoadConfig(filepath.Join(path, "test-config.json"))
+ require.Nil(t, err)
+ assert.Equal(t, cfg.PluginSettings.PluginStates["testplugin"].Enable, false)
+
+ CheckCommand(t, "--config", filepath.Join(path, "test-config.json"), "plugin", "list")
+
+ CheckCommand(t, "--config", filepath.Join(path, "test-config.json"), "plugin", "delete", "testplugin")
+
+ os.Chdir(filepath.Join("cmd", "mattermost", "commands"))
+}