all: Convert folders to use filesystem abstraction
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4228
This commit is contained in:
committed by
Jakob Borg
parent
ab8c2fb5c7
commit
3d8b4a42b7
@@ -12,6 +12,8 @@ import (
|
||||
"path/filepath"
|
||||
"runtime"
|
||||
"testing"
|
||||
|
||||
"github.com/syncthing/syncthing/lib/fs"
|
||||
)
|
||||
|
||||
func TestExternalNoCommand(t *testing.T) {
|
||||
@@ -28,8 +30,8 @@ func TestExternalNoCommand(t *testing.T) {
|
||||
// The versioner should fail due to missing command.
|
||||
|
||||
e := External{
|
||||
filesystem: fs.NewFilesystem(fs.FilesystemTypeBasic, "."),
|
||||
command: "nonexistent command",
|
||||
folderPath: "testdata/folder path",
|
||||
}
|
||||
if err := e.Archive(file); err == nil {
|
||||
t.Error("Command should have failed")
|
||||
@@ -43,12 +45,12 @@ func TestExternalNoCommand(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestExternal(t *testing.T) {
|
||||
cmd := "./_external_test/external.sh"
|
||||
cmd := "./_external_test/external.sh %FOLDER_PATH% %FILE_PATH%"
|
||||
if runtime.GOOS == "windows" {
|
||||
cmd = `.\_external_test\external.bat`
|
||||
cmd = `.\\_external_test\\external.bat %FOLDER_PATH% %FILE_PATH%`
|
||||
}
|
||||
|
||||
file := "testdata/folder path/dir (parens)/long filename (parens).txt"
|
||||
file := filepath.Join("testdata", "folder path", "dir (parens)", "/long filename (parens).txt")
|
||||
prepForRemoval(t, file)
|
||||
defer os.RemoveAll("testdata")
|
||||
|
||||
@@ -61,8 +63,8 @@ func TestExternal(t *testing.T) {
|
||||
// The versioner should run successfully.
|
||||
|
||||
e := External{
|
||||
filesystem: fs.NewFilesystem(fs.FilesystemTypeBasic, "."),
|
||||
command: cmd,
|
||||
folderPath: "testdata/folder path",
|
||||
}
|
||||
if err := e.Archive(file); err != nil {
|
||||
t.Fatal(err)
|
||||
|
||||
Reference in New Issue
Block a user