|
|
|
@ -36,10 +36,12 @@ import (
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
var device1, device2 protocol.DeviceID
|
|
|
|
|
var defaultConfig *config.Wrapper
|
|
|
|
|
var defaultCfgWrapper *config.Wrapper
|
|
|
|
|
var defaultFolderConfig config.FolderConfiguration
|
|
|
|
|
var defaultFs fs.Filesystem
|
|
|
|
|
var defaultCfg config.Configuration
|
|
|
|
|
var defaultAutoAcceptCfg config.Configuration
|
|
|
|
|
var tmpLocation string
|
|
|
|
|
|
|
|
|
|
func init() {
|
|
|
|
|
device1, _ = protocol.DeviceIDFromString("AIR6LPZ-7K4PTTV-UXQSMUU-CPQ5YWH-OEDFIIQ-JUG777G-2YQXXR5-YD6AWQR")
|
|
|
|
@ -48,7 +50,7 @@ func init() {
|
|
|
|
|
|
|
|
|
|
defaultFolderConfig = config.NewFolderConfiguration(protocol.LocalDeviceID, "default", "default", fs.FilesystemTypeBasic, "testdata")
|
|
|
|
|
defaultFolderConfig.Devices = []config.FolderDeviceConfiguration{{DeviceID: device1}}
|
|
|
|
|
_defaultConfig := config.Configuration{
|
|
|
|
|
defaultCfg = config.Configuration{
|
|
|
|
|
Version: config.CurrentVersion,
|
|
|
|
|
Folders: []config.FolderConfiguration{defaultFolderConfig},
|
|
|
|
|
Devices: []config.DeviceConfiguration{config.NewDeviceConfiguration(device1, "device1")},
|
|
|
|
@ -57,7 +59,6 @@ func init() {
|
|
|
|
|
KeepTemporariesH: 1,
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
defaultConfig = config.Wrap("/tmp/test", _defaultConfig)
|
|
|
|
|
defaultAutoAcceptCfg = config.Configuration{
|
|
|
|
|
Devices: []config.DeviceConfiguration{
|
|
|
|
|
{
|
|
|
|
@ -106,10 +107,52 @@ func init() {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func TestMain(m *testing.M) {
|
|
|
|
|
tmpLocation = "/tmp"
|
|
|
|
|
if runtime.GOOS == "windows" {
|
|
|
|
|
tmpLocation = filepath.Join("testdata", "tmp")
|
|
|
|
|
if err := os.MkdirAll(tmpLocation, 0777); err != nil {
|
|
|
|
|
panic(err)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
tmpName := fs.TempName("file")
|
|
|
|
|
if err := osutil.Copy(defaultFs, "tmpfile", tmpName); err != nil {
|
|
|
|
|
panic(err)
|
|
|
|
|
}
|
|
|
|
|
future := time.Now().Add(time.Hour)
|
|
|
|
|
if err := os.Chtimes(filepath.Join("testdata", tmpName), future, future); err != nil {
|
|
|
|
|
panic(err)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var wrapperPath string
|
|
|
|
|
defaultCfgWrapper, wrapperPath = createTmpWrapper(defaultCfg)
|
|
|
|
|
|
|
|
|
|
exitCode := m.Run()
|
|
|
|
|
|
|
|
|
|
os.Remove(wrapperPath)
|
|
|
|
|
defaultFs.Remove(tmpName)
|
|
|
|
|
defaultFs.RemoveAll(config.DefaultMarkerName)
|
|
|
|
|
defaultFs.RemoveAll(tmpLocation)
|
|
|
|
|
|
|
|
|
|
os.Exit(exitCode)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func createTmpWrapper(cfg config.Configuration) (*config.Wrapper, string) {
|
|
|
|
|
tmpFile, err := ioutil.TempFile(tmpLocation, "syncthing-testConfig-")
|
|
|
|
|
if err != nil {
|
|
|
|
|
panic(err)
|
|
|
|
|
}
|
|
|
|
|
wrapper := config.Wrap(tmpFile.Name(), cfg)
|
|
|
|
|
tmpFile.Close()
|
|
|
|
|
return wrapper, tmpFile.Name()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func newState(cfg config.Configuration) (*config.Wrapper, *Model) {
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
|
|
|
|
|
wcfg := config.Wrap("/tmp/test", cfg)
|
|
|
|
|
wcfg, path := createTmpWrapper(cfg)
|
|
|
|
|
defer os.Remove(path)
|
|
|
|
|
|
|
|
|
|
m := NewModel(wcfg, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
for _, folder := range cfg.Folders {
|
|
|
|
@ -125,7 +168,7 @@ func newState(cfg config.Configuration) (*config.Wrapper, *Model) {
|
|
|
|
|
func TestRequest(t *testing.T) {
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
|
|
|
|
|
// device1 shares default, but device2 doesn't
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
@ -204,7 +247,7 @@ func BenchmarkIndex_100(b *testing.B) {
|
|
|
|
|
|
|
|
|
|
func benchmarkIndex(b *testing.B, nfiles int) {
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -234,7 +277,7 @@ func BenchmarkIndexUpdate_10000_1(b *testing.B) {
|
|
|
|
|
|
|
|
|
|
func benchmarkIndexUpdate(b *testing.B, nfiles, nufiles int) {
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -422,7 +465,7 @@ func (f *fakeConnection) sendIndexUpdate() {
|
|
|
|
|
|
|
|
|
|
func BenchmarkRequestOut(b *testing.B) {
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.ServeBackground()
|
|
|
|
|
defer m.Stop()
|
|
|
|
@ -452,7 +495,7 @@ func BenchmarkRequestOut(b *testing.B) {
|
|
|
|
|
|
|
|
|
|
func BenchmarkRequestInSingleFile(b *testing.B) {
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.ServeBackground()
|
|
|
|
|
defer m.Stop()
|
|
|
|
@ -481,7 +524,7 @@ func TestDeviceRename(t *testing.T) {
|
|
|
|
|
ClientName: "syncthing",
|
|
|
|
|
ClientVersion: "v0.9.4",
|
|
|
|
|
}
|
|
|
|
|
defer os.Remove("tmpconfig.xml")
|
|
|
|
|
defer os.Remove("testdata/tmpconfig.xml")
|
|
|
|
|
|
|
|
|
|
rawCfg := config.New(device1)
|
|
|
|
|
rawCfg.Devices = []config.DeviceConfiguration{
|
|
|
|
@ -489,7 +532,7 @@ func TestDeviceRename(t *testing.T) {
|
|
|
|
|
DeviceID: device1,
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
cfg := config.Wrap("tmpconfig.xml", rawCfg)
|
|
|
|
|
cfg := config.Wrap("testdata/tmpconfig.xml", rawCfg)
|
|
|
|
|
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(cfg, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
@ -525,7 +568,7 @@ func TestDeviceRename(t *testing.T) {
|
|
|
|
|
t.Errorf("Device name got overwritten")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
cfgw, err := config.Load("tmpconfig.xml", protocol.LocalDeviceID)
|
|
|
|
|
cfgw, err := config.Load("testdata/tmpconfig.xml", protocol.LocalDeviceID)
|
|
|
|
|
if err != nil {
|
|
|
|
|
t.Error(err)
|
|
|
|
|
return
|
|
|
|
@ -580,7 +623,9 @@ func TestClusterConfig(t *testing.T) {
|
|
|
|
|
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
|
|
|
|
|
m := NewModel(config.Wrap("/tmp/test", cfg), protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
wrapper, path := createTmpWrapper(cfg)
|
|
|
|
|
defer os.Remove(path)
|
|
|
|
|
m := NewModel(wrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.AddFolder(cfg.Folders[0])
|
|
|
|
|
m.AddFolder(cfg.Folders[1])
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -1406,7 +1451,7 @@ func TestIgnores(t *testing.T) {
|
|
|
|
|
ioutil.WriteFile("testdata/.stignore", []byte(".*\nquux\n"), 0644)
|
|
|
|
|
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.ServeBackground()
|
|
|
|
|
defer m.Stop()
|
|
|
|
|
|
|
|
|
@ -1480,7 +1525,7 @@ func TestROScanRecovery(t *testing.T) {
|
|
|
|
|
RescanIntervalS: 1,
|
|
|
|
|
MarkerName: config.DefaultMarkerName,
|
|
|
|
|
}
|
|
|
|
|
cfg := config.Wrap("/tmp/test", config.Configuration{
|
|
|
|
|
cfg, path := createTmpWrapper(config.Configuration{
|
|
|
|
|
Folders: []config.FolderConfiguration{fcfg},
|
|
|
|
|
Devices: []config.DeviceConfiguration{
|
|
|
|
|
{
|
|
|
|
@ -1488,6 +1533,7 @@ func TestROScanRecovery(t *testing.T) {
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
defer os.Remove(path)
|
|
|
|
|
|
|
|
|
|
os.RemoveAll(fcfg.Path)
|
|
|
|
|
|
|
|
|
@ -1568,7 +1614,7 @@ func TestRWScanRecovery(t *testing.T) {
|
|
|
|
|
RescanIntervalS: 1,
|
|
|
|
|
MarkerName: config.DefaultMarkerName,
|
|
|
|
|
}
|
|
|
|
|
cfg := config.Wrap("/tmp/test", config.Configuration{
|
|
|
|
|
cfg, path := createTmpWrapper(config.Configuration{
|
|
|
|
|
Folders: []config.FolderConfiguration{fcfg},
|
|
|
|
|
Devices: []config.DeviceConfiguration{
|
|
|
|
|
{
|
|
|
|
@ -1576,6 +1622,7 @@ func TestRWScanRecovery(t *testing.T) {
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
defer os.Remove(path)
|
|
|
|
|
|
|
|
|
|
os.RemoveAll(fcfg.Path)
|
|
|
|
|
|
|
|
|
@ -1644,7 +1691,7 @@ func TestRWScanRecovery(t *testing.T) {
|
|
|
|
|
|
|
|
|
|
func TestGlobalDirectoryTree(t *testing.T) {
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.ServeBackground()
|
|
|
|
|
defer m.Stop()
|
|
|
|
@ -1896,7 +1943,7 @@ func TestGlobalDirectoryTree(t *testing.T) {
|
|
|
|
|
|
|
|
|
|
func TestGlobalDirectorySelfFixing(t *testing.T) {
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.ServeBackground()
|
|
|
|
|
|
|
|
|
@ -2071,7 +2118,7 @@ func BenchmarkTree_100_10(b *testing.B) {
|
|
|
|
|
|
|
|
|
|
func benchmarkTree(b *testing.B, n1, n2 int) {
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.ServeBackground()
|
|
|
|
|
|
|
|
|
@ -2236,7 +2283,7 @@ func TestIssue3028(t *testing.T) {
|
|
|
|
|
// Create a model and default folder
|
|
|
|
|
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
defCfg := defaultFolderConfig.Copy()
|
|
|
|
|
defCfg.RescanIntervalS = 86400
|
|
|
|
|
m.AddFolder(defCfg)
|
|
|
|
@ -2278,9 +2325,10 @@ func TestIssue3028(t *testing.T) {
|
|
|
|
|
|
|
|
|
|
func TestIssue4357(t *testing.T) {
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
cfg := defaultConfig.RawCopy()
|
|
|
|
|
cfg := defaultCfgWrapper.RawCopy()
|
|
|
|
|
// Create a separate wrapper not to pollute other tests.
|
|
|
|
|
wrapper := config.Wrap("/tmp/test", config.Configuration{})
|
|
|
|
|
wrapper, path := createTmpWrapper(config.Configuration{})
|
|
|
|
|
defer os.Remove(path)
|
|
|
|
|
m := NewModel(wrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.ServeBackground()
|
|
|
|
|
defer m.Stop()
|
|
|
|
@ -2357,21 +2405,21 @@ func TestScanNoDatabaseWrite(t *testing.T) {
|
|
|
|
|
// something actually changed.
|
|
|
|
|
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
|
|
|
|
|
|
// Start with no ignores, and restore the previous state when the test completes
|
|
|
|
|
// Reach in and update the ignore matcher to one that always does
|
|
|
|
|
// reloads when asked to, instead of checking file mtimes. This is
|
|
|
|
|
// because we will be changing the files on disk often enough that the
|
|
|
|
|
// mtimes will be unreliable to determine change status.
|
|
|
|
|
m.fmut.Lock()
|
|
|
|
|
m.folderIgnores["default"] = ignore.New(defaultFs, ignore.WithCache(true), ignore.WithChangeDetector(newAlwaysChanged()))
|
|
|
|
|
m.fmut.Unlock()
|
|
|
|
|
|
|
|
|
|
curIgn, _, err := m.GetIgnores("default")
|
|
|
|
|
if err != nil {
|
|
|
|
|
t.Fatal(err)
|
|
|
|
|
}
|
|
|
|
|
defer m.SetIgnores("default", curIgn)
|
|
|
|
|
m.SetIgnores("default", nil)
|
|
|
|
|
fakeTime := time.Now().Add(5 * time.Second)
|
|
|
|
|
os.Chtimes("testdata/.stignore", fakeTime, fakeTime)
|
|
|
|
|
defer os.Remove("testdata/.stignore")
|
|
|
|
|
|
|
|
|
|
// Scan the folder twice. The second scan should be a no-op database wise
|
|
|
|
|
|
|
|
|
@ -2388,8 +2436,6 @@ func TestScanNoDatabaseWrite(t *testing.T) {
|
|
|
|
|
// Ignore a file we know exists. It'll be updated in the database.
|
|
|
|
|
|
|
|
|
|
m.SetIgnores("default", []string{"foo"})
|
|
|
|
|
fakeTime = time.Now().Add(10 * time.Second)
|
|
|
|
|
os.Chtimes("testdata/.stignore", fakeTime, fakeTime)
|
|
|
|
|
|
|
|
|
|
m.ScanFolder("default")
|
|
|
|
|
c2 := db.Committed()
|
|
|
|
@ -2441,7 +2487,7 @@ func TestIssue2782(t *testing.T) {
|
|
|
|
|
defer os.RemoveAll(testDir)
|
|
|
|
|
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|
m.AddFolder(config.NewFolderConfiguration(protocol.LocalDeviceID, "default", "default", fs.FilesystemTypeBasic, "~/"+testName+"/synclink/"))
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -2472,7 +2518,7 @@ func TestIndexesForUnknownDevicesDropped(t *testing.T) {
|
|
|
|
|
t.Error("expected two devices")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
|
|
|
|
@ -2504,7 +2550,8 @@ func TestSharedWithClearedOnDisconnect(t *testing.T) {
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
wcfg := config.Wrap("/tmp/test", cfg)
|
|
|
|
|
wcfg, path := createTmpWrapper(cfg)
|
|
|
|
|
defer os.Remove(path)
|
|
|
|
|
|
|
|
|
|
m := NewModel(wcfg, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(fcfg)
|
|
|
|
@ -2620,7 +2667,7 @@ func TestIssue3496(t *testing.T) {
|
|
|
|
|
// checks on the completion calculation stuff.
|
|
|
|
|
|
|
|
|
|
dbi := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -2693,7 +2740,7 @@ func TestIssue3496(t *testing.T) {
|
|
|
|
|
|
|
|
|
|
func TestIssue3804(t *testing.T) {
|
|
|
|
|
dbi := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -2708,7 +2755,7 @@ func TestIssue3804(t *testing.T) {
|
|
|
|
|
|
|
|
|
|
func TestIssue3829(t *testing.T) {
|
|
|
|
|
dbi := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -2743,7 +2790,8 @@ func TestNoRequestsFromPausedDevices(t *testing.T) {
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
wcfg := config.Wrap("/tmp/test", cfg)
|
|
|
|
|
wcfg, path := createTmpWrapper(cfg)
|
|
|
|
|
defer os.Remove(path)
|
|
|
|
|
|
|
|
|
|
m := NewModel(wcfg, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(fcfg)
|
|
|
|
@ -2843,7 +2891,7 @@ func TestIssue2571(t *testing.T) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dbi := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -2895,7 +2943,7 @@ func TestIssue4573(t *testing.T) {
|
|
|
|
|
fd.Close()
|
|
|
|
|
|
|
|
|
|
dbi := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -2964,7 +3012,7 @@ func TestInternalScan(t *testing.T) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dbi := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -3008,7 +3056,7 @@ func TestCustomMarkerName(t *testing.T) {
|
|
|
|
|
RescanIntervalS: 1,
|
|
|
|
|
MarkerName: "myfile",
|
|
|
|
|
}
|
|
|
|
|
cfg := config.Wrap("/tmp/test", config.Configuration{
|
|
|
|
|
cfg, path := createTmpWrapper(config.Configuration{
|
|
|
|
|
Folders: []config.FolderConfiguration{fcfg},
|
|
|
|
|
Devices: []config.DeviceConfiguration{
|
|
|
|
|
{
|
|
|
|
@ -3016,6 +3064,7 @@ func TestCustomMarkerName(t *testing.T) {
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
defer os.Remove(path)
|
|
|
|
|
|
|
|
|
|
os.RemoveAll(fcfg.Path)
|
|
|
|
|
defer os.RemoveAll(fcfg.Path)
|
|
|
|
@ -3078,7 +3127,7 @@ func TestRemoveDirWithContent(t *testing.T) {
|
|
|
|
|
fd.Close()
|
|
|
|
|
|
|
|
|
|
dbi := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -3143,7 +3192,7 @@ func TestIssue4475(t *testing.T) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dbi := db.OpenMemory()
|
|
|
|
|
m := NewModel(defaultConfig, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m := NewModel(defaultCfgWrapper, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(defaultFolderConfig)
|
|
|
|
|
m.StartFolder("default")
|
|
|
|
|
m.ServeBackground()
|
|
|
|
@ -3225,7 +3274,8 @@ func TestVersionRestore(t *testing.T) {
|
|
|
|
|
rawConfig := config.Configuration{
|
|
|
|
|
Folders: []config.FolderConfiguration{fcfg},
|
|
|
|
|
}
|
|
|
|
|
cfg := config.Wrap("/tmp/test", rawConfig)
|
|
|
|
|
cfg, path := createTmpWrapper(rawConfig)
|
|
|
|
|
defer os.Remove(path)
|
|
|
|
|
|
|
|
|
|
m := NewModel(cfg, protocol.LocalDeviceID, "syncthing", "dev", dbi, nil)
|
|
|
|
|
m.AddFolder(fcfg)
|
|
|
|
@ -3417,8 +3467,9 @@ func TestVersionRestore(t *testing.T) {
|
|
|
|
|
|
|
|
|
|
func TestPausedFolders(t *testing.T) {
|
|
|
|
|
// Create a separate wrapper not to pollute other tests.
|
|
|
|
|
cfg := defaultConfig.RawCopy()
|
|
|
|
|
wrapper := config.Wrap("/tmp/test", cfg)
|
|
|
|
|
cfg := defaultCfgWrapper.RawCopy()
|
|
|
|
|
wrapper, path := createTmpWrapper(cfg)
|
|
|
|
|
defer os.Remove(path)
|
|
|
|
|
|
|
|
|
|
db := db.OpenMemory()
|
|
|
|
|
m := NewModel(wrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
|
|
|
|
|