public void Preview_FileIncludedInPreviousGroup_WontBeCountedTwice() { using (var from = new TemporaryFolder("synctest_source")) using (var to = new TemporaryFolder("synctest_dest")) { File.WriteAllText(from.Combine("test1.txt"), "Blah blah"); var source1 = new RawDirectoryGroup("1", from.Path, null, null); var source2 = new RawDirectoryGroup("2", from.Path, null, null); var groups = new List <FileGroup>(new[] { source1, source2 }); var progress = new StringBuilderProgress() { ShowVerbose = true }; var sync = new MirrorController(to.Path, groups, 100, progress); sync.GatherPreview(); Assert.AreEqual(1, source1.NewFileCount); Assert.AreEqual(0, source1.UpdateFileCount); Assert.AreEqual(0, source1.DeleteFileCount); Assert.AreEqual(9, source1.NetChangeInBytes); Assert.AreEqual(0, source2.NewFileCount); Assert.AreEqual(0, source2.UpdateFileCount); Assert.AreEqual(0, source2.DeleteFileCount); Assert.AreEqual(0, source2.NetChangeInBytes); } }
public void Preview_FilteredFile_WontBeCounted() { using (var from = new TemporaryFolder("synctest_source")) using (var to = new TemporaryFolder("synctest_dest")) { File.WriteAllText(from.Combine("text.txt"), "Blah blah"); File.WriteAllText(from.Combine("info.info"), "deedeedee"); var source1 = new RawDirectoryGroup("1", from.Path, new [] { "*.info" }, null); var groups = new List <FileGroup>(new[] { source1 }); var sync = new MirrorController(to.Path, groups, 100, new NullProgress()); sync.GatherPreview(); Assert.AreEqual(1, source1.NewFileCount); Assert.AreEqual(0, source1.UpdateFileCount); Assert.AreEqual(0, source1.DeleteFileCount); Assert.AreEqual(9, source1.NetChangeInBytes); } }
public void Preview_EmptyDest_SingleFileWillBeCopied() { using (var from = new TemporaryFolder("synctest_source")) using (var to = new TemporaryFolder("synctest_dest")) { System.IO.File.WriteAllText(from.Combine("test1.txt"), "Blah blah"); System.IO.File.WriteAllText(from.Combine("test2.txt"), "Blah blah blah"); var source = new RawDirectoryGroup("1", from.Path, null, null); var groups = new List <FileGroup>(new[] { source }); var sync = new MirrorController(to.Path, groups, 100, new NullProgress()); sync.GatherPreview(); Assert.AreEqual(0, source.UpdateFileCount); Assert.AreEqual(0, source.DeleteFileCount); Assert.AreEqual(2, source.NewFileCount); Assert.AreEqual(23, source.NetChangeInBytes); } }
public void Preview_FolderExcluded_WillBeSkipped() { using (var from = new TemporaryFolder("synctest_source")) using (var to = new TemporaryFolder("synctest_dest")) { Directory.CreateDirectory(from.Combine("sub")); File.WriteAllText(from.Combine("sub", "one.txt"), "Blah blah"); var source = new RawDirectoryGroup("1", from.Path, null, null); source.Filter.SubdirectoryExcludes.Add("sub"); var groups = new List <FileGroup>(new[] { source }); var progress = new StringBuilderProgress() { ShowVerbose = true }; var sync = new MirrorController(to.Path, groups, 100, progress); sync.GatherPreview(); // we don't get this progress yet Assert.That(progress.Text.ToLower().Contains("skip")); Assert.AreEqual(0, source.NewFileCount); Assert.AreEqual(0, source.UpdateFileCount); Assert.AreEqual(0, source.DeleteFileCount); } }