|
@@ -20,6 +20,7 @@ import (
|
|
|
"testing"
|
|
|
|
|
|
"github.com/d4l3k/messagediff"
|
|
|
+ "github.com/syncthing/syncthing/lib/events"
|
|
|
"github.com/syncthing/syncthing/lib/fs"
|
|
|
"github.com/syncthing/syncthing/lib/osutil"
|
|
|
"github.com/syncthing/syncthing/lib/protocol"
|
|
@@ -86,7 +87,7 @@ func TestDefaultValues(t *testing.T) {
|
|
|
func TestDeviceConfig(t *testing.T) {
|
|
|
for i := OldestHandledVersion; i <= CurrentVersion; i++ {
|
|
|
os.RemoveAll(filepath.Join("testdata", DefaultMarkerName))
|
|
|
- wr, err := Load(fmt.Sprintf("testdata/v%d.xml", i), device1)
|
|
|
+ wr, err := load(fmt.Sprintf("testdata/v%d.xml", i), device1)
|
|
|
if err != nil {
|
|
|
t.Fatal(err)
|
|
|
}
|
|
@@ -168,7 +169,7 @@ func TestDeviceConfig(t *testing.T) {
|
|
|
}
|
|
|
|
|
|
func TestNoListenAddresses(t *testing.T) {
|
|
|
- cfg, err := Load("testdata/nolistenaddress.xml", device1)
|
|
|
+ cfg, err := load("testdata/nolistenaddress.xml", device1)
|
|
|
if err != nil {
|
|
|
t.Error(err)
|
|
|
}
|
|
@@ -225,7 +226,7 @@ func TestOverriddenValues(t *testing.T) {
|
|
|
}
|
|
|
|
|
|
os.Unsetenv("STNOUPGRADE")
|
|
|
- cfg, err := Load("testdata/overridenvalues.xml", device1)
|
|
|
+ cfg, err := load("testdata/overridenvalues.xml", device1)
|
|
|
if err != nil {
|
|
|
t.Error(err)
|
|
|
}
|
|
@@ -270,7 +271,7 @@ func TestDeviceAddressesDynamic(t *testing.T) {
|
|
|
},
|
|
|
}
|
|
|
|
|
|
- cfg, err := Load("testdata/deviceaddressesdynamic.xml", device4)
|
|
|
+ cfg, err := load("testdata/deviceaddressesdynamic.xml", device4)
|
|
|
if err != nil {
|
|
|
t.Error(err)
|
|
|
}
|
|
@@ -319,7 +320,7 @@ func TestDeviceCompression(t *testing.T) {
|
|
|
},
|
|
|
}
|
|
|
|
|
|
- cfg, err := Load("testdata/devicecompression.xml", device4)
|
|
|
+ cfg, err := load("testdata/devicecompression.xml", device4)
|
|
|
if err != nil {
|
|
|
t.Error(err)
|
|
|
}
|
|
@@ -365,7 +366,7 @@ func TestDeviceAddressesStatic(t *testing.T) {
|
|
|
},
|
|
|
}
|
|
|
|
|
|
- cfg, err := Load("testdata/deviceaddressesstatic.xml", device4)
|
|
|
+ cfg, err := load("testdata/deviceaddressesstatic.xml", device4)
|
|
|
if err != nil {
|
|
|
t.Error(err)
|
|
|
}
|
|
@@ -377,7 +378,7 @@ func TestDeviceAddressesStatic(t *testing.T) {
|
|
|
}
|
|
|
|
|
|
func TestVersioningConfig(t *testing.T) {
|
|
|
- cfg, err := Load("testdata/versioningconfig.xml", device4)
|
|
|
+ cfg, err := load("testdata/versioningconfig.xml", device4)
|
|
|
if err != nil {
|
|
|
t.Error(err)
|
|
|
}
|
|
@@ -404,7 +405,7 @@ func TestIssue1262(t *testing.T) {
|
|
|
t.Skipf("path gets converted to absolute as part of the filesystem initialization on linux")
|
|
|
}
|
|
|
|
|
|
- cfg, err := Load("testdata/issue-1262.xml", device4)
|
|
|
+ cfg, err := load("testdata/issue-1262.xml", device4)
|
|
|
if err != nil {
|
|
|
t.Fatal(err)
|
|
|
}
|
|
@@ -418,7 +419,7 @@ func TestIssue1262(t *testing.T) {
|
|
|
}
|
|
|
|
|
|
func TestIssue1750(t *testing.T) {
|
|
|
- cfg, err := Load("testdata/issue-1750.xml", device4)
|
|
|
+ cfg, err := load("testdata/issue-1750.xml", device4)
|
|
|
if err != nil {
|
|
|
t.Fatal(err)
|
|
|
}
|
|
@@ -520,7 +521,7 @@ func TestNewSaveLoad(t *testing.T) {
|
|
|
}
|
|
|
|
|
|
intCfg := New(device1)
|
|
|
- cfg := Wrap(path, intCfg)
|
|
|
+ cfg := wrap(path, intCfg)
|
|
|
|
|
|
// To make the equality pass later
|
|
|
cfg.(*wrapper).cfg.XMLName.Local = "configuration"
|
|
@@ -537,7 +538,7 @@ func TestNewSaveLoad(t *testing.T) {
|
|
|
t.Error(path, "does not exist")
|
|
|
}
|
|
|
|
|
|
- cfg2, err := Load(path, device1)
|
|
|
+ cfg2, err := load(path, device1)
|
|
|
if err != nil {
|
|
|
t.Error(err)
|
|
|
}
|
|
@@ -564,7 +565,7 @@ func TestPrepare(t *testing.T) {
|
|
|
}
|
|
|
|
|
|
func TestCopy(t *testing.T) {
|
|
|
- wrapper, err := Load("testdata/example.xml", device1)
|
|
|
+ wrapper, err := load("testdata/example.xml", device1)
|
|
|
if err != nil {
|
|
|
t.Fatal(err)
|
|
|
}
|
|
@@ -603,7 +604,7 @@ func TestCopy(t *testing.T) {
|
|
|
}
|
|
|
|
|
|
func TestPullOrder(t *testing.T) {
|
|
|
- wrapper, err := Load("testdata/pullorder.xml", device1)
|
|
|
+ wrapper, err := load("testdata/pullorder.xml", device1)
|
|
|
if err != nil {
|
|
|
t.Fatal(err)
|
|
|
}
|
|
@@ -643,7 +644,7 @@ func TestPullOrder(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatal(err)
|
|
|
}
|
|
|
- wrapper = Wrap("testdata/pullorder.xml", cfg)
|
|
|
+ wrapper = wrap("testdata/pullorder.xml", cfg)
|
|
|
folders = wrapper.Folders()
|
|
|
|
|
|
for _, tc := range expected {
|
|
@@ -654,7 +655,7 @@ func TestPullOrder(t *testing.T) {
|
|
|
}
|
|
|
|
|
|
func TestLargeRescanInterval(t *testing.T) {
|
|
|
- wrapper, err := Load("testdata/largeinterval.xml", device1)
|
|
|
+ wrapper, err := load("testdata/largeinterval.xml", device1)
|
|
|
if err != nil {
|
|
|
t.Fatal(err)
|
|
|
}
|
|
@@ -692,7 +693,7 @@ func TestGUIConfigURL(t *testing.T) {
|
|
|
func TestDuplicateDevices(t *testing.T) {
|
|
|
// Duplicate devices should be removed
|
|
|
|
|
|
- wrapper, err := Load("testdata/dupdevices.xml", device1)
|
|
|
+ wrapper, err := load("testdata/dupdevices.xml", device1)
|
|
|
if err != nil {
|
|
|
t.Fatal(err)
|
|
|
}
|
|
@@ -710,7 +711,7 @@ func TestDuplicateDevices(t *testing.T) {
|
|
|
func TestDuplicateFolders(t *testing.T) {
|
|
|
// Duplicate folders are a loading error
|
|
|
|
|
|
- _, err := Load("testdata/dupfolders.xml", device1)
|
|
|
+ _, err := load("testdata/dupfolders.xml", device1)
|
|
|
if err == nil || !strings.Contains(err.Error(), errFolderIDDuplicate.Error()) {
|
|
|
t.Fatal(`Expected error to mention "duplicate folder ID":`, err)
|
|
|
}
|
|
@@ -721,7 +722,7 @@ func TestEmptyFolderPaths(t *testing.T) {
|
|
|
// get messed up by the prepare steps (e.g., become the current dir or
|
|
|
// get a slash added so that it becomes the root directory or similar).
|
|
|
|
|
|
- _, err := Load("testdata/nopath.xml", device1)
|
|
|
+ _, err := load("testdata/nopath.xml", device1)
|
|
|
if err == nil || !strings.Contains(err.Error(), errFolderPathEmpty.Error()) {
|
|
|
t.Fatal("Expected error due to empty folder path, got", err)
|
|
|
}
|
|
@@ -790,7 +791,7 @@ func TestIgnoredDevices(t *testing.T) {
|
|
|
// Verify that ignored devices that are also present in the
|
|
|
// configuration are not in fact ignored.
|
|
|
|
|
|
- wrapper, err := Load("testdata/ignoreddevices.xml", device1)
|
|
|
+ wrapper, err := load("testdata/ignoreddevices.xml", device1)
|
|
|
if err != nil {
|
|
|
t.Fatal(err)
|
|
|
}
|
|
@@ -808,7 +809,7 @@ func TestIgnoredFolders(t *testing.T) {
|
|
|
// configuration are not in fact ignored.
|
|
|
// Also, verify that folders that are shared with a device are not ignored.
|
|
|
|
|
|
- wrapper, err := Load("testdata/ignoredfolders.xml", device1)
|
|
|
+ wrapper, err := load("testdata/ignoredfolders.xml", device1)
|
|
|
if err != nil {
|
|
|
t.Fatal(err)
|
|
|
}
|
|
@@ -844,7 +845,7 @@ func TestIgnoredFolders(t *testing.T) {
|
|
|
func TestGetDevice(t *testing.T) {
|
|
|
// Verify that the Device() call does the right thing
|
|
|
|
|
|
- wrapper, err := Load("testdata/ignoreddevices.xml", device1)
|
|
|
+ wrapper, err := load("testdata/ignoreddevices.xml", device1)
|
|
|
if err != nil {
|
|
|
t.Fatal(err)
|
|
|
}
|
|
@@ -871,7 +872,7 @@ func TestGetDevice(t *testing.T) {
|
|
|
}
|
|
|
|
|
|
func TestSharesRemovedOnDeviceRemoval(t *testing.T) {
|
|
|
- wrapper, err := Load("testdata/example.xml", device1)
|
|
|
+ wrapper, err := load("testdata/example.xml", device1)
|
|
|
if err != nil {
|
|
|
t.Errorf("Failed: %s", err)
|
|
|
}
|
|
@@ -956,7 +957,7 @@ func TestIssue4219(t *testing.T) {
|
|
|
t.Errorf("There should be three ignored folders, not %d", ignoredFolders)
|
|
|
}
|
|
|
|
|
|
- w := Wrap("/tmp/cfg", cfg)
|
|
|
+ w := wrap("/tmp/cfg", cfg)
|
|
|
if !w.IgnoredFolder(device2, "t1") {
|
|
|
t.Error("Folder device2 t1 should be ignored")
|
|
|
}
|
|
@@ -1145,3 +1146,11 @@ func defaultConfigAsMap() map[string]interface{} {
|
|
|
}
|
|
|
return tmp
|
|
|
}
|
|
|
+
|
|
|
+func load(path string, myID protocol.DeviceID) (Wrapper, error) {
|
|
|
+ return Load(path, myID, events.NoopLogger)
|
|
|
+}
|
|
|
+
|
|
|
+func wrap(path string, cfg Configuration) Wrapper {
|
|
|
+ return Wrap(path, cfg, events.NoopLogger)
|
|
|
+}
|