diff options
author | Joram Wilander <jwawilander@gmail.com> | 2017-09-01 09:00:27 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-09-01 09:00:27 -0400 |
commit | 899ab31fff9b34bc125faf75b79a89e390deb2cf (patch) | |
tree | 41dc5832268504e54a0b2188eedcf89b7828dd12 /model/bundle_info_test.go | |
parent | 74b5e52c4eb54000dcb5a7b46c0977d732bce80f (diff) | |
download | chat-899ab31fff9b34bc125faf75b79a89e390deb2cf.tar.gz chat-899ab31fff9b34bc125faf75b79a89e390deb2cf.tar.bz2 chat-899ab31fff9b34bc125faf75b79a89e390deb2cf.zip |
Implement experimental REST API endpoints for plugins (#7279)
* Implement experimental REST API endpoints for plugins
* Updates per feedback and rebase
* Update tests
* Further updates
* Update extraction of plugins
* Use OS temp dir for plugins instead of search path
* Fail extraction on paths that attempt to traverse upward
* Update pluginenv ActivePlugins()
Diffstat (limited to 'model/bundle_info_test.go')
-rw-r--r-- | model/bundle_info_test.go | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/model/bundle_info_test.go b/model/bundle_info_test.go new file mode 100644 index 000000000..e94a5cb64 --- /dev/null +++ b/model/bundle_info_test.go @@ -0,0 +1,30 @@ +package model + +import ( + "io/ioutil" + "os" + "path/filepath" + "testing" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" +) + +func TestBundleInfoForPath(t *testing.T) { + dir, err := ioutil.TempDir("", "mm-plugin-test") + require.NoError(t, err) + defer os.RemoveAll(dir) + + path := filepath.Join(dir, "plugin.json") + f, err := os.Create(path) + require.NoError(t, err) + _, err = f.WriteString(`{"id": "foo"}`) + f.Close() + require.NoError(t, err) + + info := BundleInfoForPath(dir) + assert.Equal(t, info.Path, dir) + assert.NotNil(t, info.Manifest) + assert.Equal(t, info.ManifestPath, path) + assert.Nil(t, info.ManifestError) +} |