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()
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
74b5e52c4e
Коммит
899ab31fff
31
utils/path_test.go
Обычный файл
31
utils/path_test.go
Обычный файл
@@ -0,0 +1,31 @@
|
||||
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
||||
// See License.txt for license information.
|
||||
|
||||
package utils
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestPathTraversesUpward(t *testing.T) {
|
||||
cases := []struct {
|
||||
input string
|
||||
expected bool
|
||||
}{
|
||||
{"../test/path", true},
|
||||
{"../../test/path", true},
|
||||
{"../../test/../path", true},
|
||||
{"test/../../path", true},
|
||||
{"test/path/../../", false},
|
||||
{"test", false},
|
||||
{"test/path", false},
|
||||
{"test/path/", false},
|
||||
{"test/path/file.ext", false},
|
||||
}
|
||||
|
||||
for _, c := range cases {
|
||||
assert.Equal(t, c.expected, PathTraversesUpward(c.input), c.input)
|
||||
}
|
||||
}
|
||||
Ссылка в новой задаче
Block a user