gui, lib/model: Display list of files needed by remote (fixes #4369)

GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4559
LGTM: AudriusButkevicius, calmh
This commit is contained in:
Simon Frei
2017-12-15 20:01:56 +00:00
committed by Jakob Borg
parent c7522063b3
commit 8fa2b7765a
10 changed files with 313 additions and 76 deletions

View File

@@ -2870,6 +2870,39 @@ func TestIssue4475(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)
db := db.OpenMemory()
m := NewModel(wrapper, protocol.LocalDeviceID, "syncthing", "dev", db, nil)
m.AddFolder(defaultFolderConfig)
m.StartFolder("default")
m.ServeBackground()
defer m.Stop()
if err := m.ScanFolder("default"); err != nil {
t.Error(err)
}
pausedConfig := wrapper.RawCopy()
pausedConfig.Folders[0].Paused = true
w, err := m.cfg.Replace(pausedConfig)
if err != nil {
t.Fatal(err)
}
w.Wait()
if err := m.ScanFolder("default"); err != errFolderPaused {
t.Errorf("Expected folder paused error, received: %v", err)
}
if err := m.ScanFolder("nonexistent"); err != errFolderMissing {
t.Errorf("Expected missing folder error, received: %v", err)
}
}
func addFakeConn(m *Model, dev protocol.DeviceID) *fakeConnection {
fc := &fakeConnection{id: dev, model: m}
m.AddConnection(fc, protocol.HelloResult{})