[MM-10117] Add support to add/delete and enable/disable plugins via CLI (#8745)
* Testing caching for emojis * MM-10117 Add support to add/delete and activate/deactivate plugins via CLI * Removing old work * MM-10117 Moved files and addedd plugin test * MM-10117 Renamed commands to enable/disable and updated add test * MM-10117 Finished plugin test and improved error message for plugin commands * MM-10117 Fixing plugin directories for test * MM-10117 Renamed commands and updated commands to support multiple plugins * MM-10117 Updating removed to deleted textclear * MM-10117 Fixing nil pointer error for listing plugins * MM-10117 Removing fileReader close * MM-10117 Declaring error for GetPlugins * MM-10117 Removing unnecessary nil check
Этот коммит содержится в:
коммит произвёл
Joram Wilander
родитель
e135cc99e1
Коммит
f57d279dc0
42
cmd/mattermost/commands/plugin_test.go
Обычный файл
42
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"))
|
||||
}
|
||||
Ссылка в новой задаче
Block a user