public void RenameOldFileGeneratesNoEntries() { List <RawUSNEntry> entries = new List <RawUSNEntry> { new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 12345, FRN = 1001, PFRN = 1002, RenameOldName = true }, }; var result = RollupService.PerformRollup(entries, mountPoint.Mountpoint.Reference, null); Assert.AreEqual(result.Count, 0); }
public void InvalidRenameTest() { List <RawUSNEntry> entries = new List <RawUSNEntry> { new RawUSNEntry { Close = true, Path = sourcePath + "file2.txt", USN = 12301, FRN = 1001, PFRN = 1002, RenameNewName = true }, }; var result = RollupService.PerformRollup(entries, mountPoint.Mountpoint.Reference, null); Assert.AreEqual(result.Count, 0); }
public void PathMappingWorks() { List <RawUSNEntry> entries = new List <RawUSNEntry> { new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", RelativePath = "file1.txt", USN = 12345, FRN = 1001, PFRN = 1002 }, }; var result = RollupService.PerformRollup(entries, mountPoint.Mountpoint.Reference, null); Assert.AreEqual(1, result.Count); Assert.AreEqual("file1.txt", result[0].RelativePath); }
public void FavourCopyVSCreate() { List <RawUSNEntry> entries = new List <RawUSNEntry> { new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 10000, FRN = 1001, PFRN = 1002, FileCreate = true }, new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 13000, FRN = 1001, PFRN = 1002 }, }; var result = RollupService.PerformRollup(entries, mountPoint.Mountpoint.Reference, null); Assert.AreEqual(1, result.Count); }
public void CreateThenDeleteFileGeneratesNoEntries() { List <RawUSNEntry> entries = new List <RawUSNEntry> { new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 10000, FRN = 1001, PFRN = 1002, FileCreate = true }, new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 11000, FRN = 1001, PFRN = 1002, FileDelete = true }, }; var result = RollupService.PerformRollup(entries, mountPoint.Mountpoint.Reference, null); Assert.AreEqual(0, result.Count); }
public void OnlyCopyOneFileForMultipleChangesToSameFile() { List <RawUSNEntry> entries = new List <RawUSNEntry> { new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 12345, FRN = 1001, PFRN = 1002 }, new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 12346, FRN = 1001, PFRN = 1002 }, new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 12347, FRN = 1001, PFRN = 1002 }, new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 12348, FRN = 1001, PFRN = 1002 }, }; var result = RollupService.PerformRollup(entries, mountPoint.Mountpoint.Reference, null); Assert.AreEqual(result.Count, 1); }
public void CreateThenRenameFile() { List <RawUSNEntry> entries = new List <RawUSNEntry> { new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 10000, FRN = 1001, PFRN = 1002, FileCreate = true }, new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 10001, FRN = 1001, PFRN = 1002 }, new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 10011, FRN = 1001, PFRN = 1002, RenameOldName = true }, new RawUSNEntry { Close = true, Path = sourcePath + "file2.txt", USN = 10013, FRN = 1001, PFRN = 1002, RenameNewName = true }, }; var result = RollupService.PerformRollup(entries, mountPoint.Mountpoint.Reference, null); Assert.AreEqual(1, result.Count); }
public void CreateThenDeleteThenModifyFile() { List <RawUSNEntry> entries = new List <RawUSNEntry> { new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 10000, FRN = 1001, PFRN = 1002, FileCreate = true }, new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 11000, FRN = 1001, PFRN = 1002 }, new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 12000, FRN = 1001, PFRN = 1002, FileDelete = true }, new RawUSNEntry { Close = true, Path = sourcePath + "file1.txt", USN = 13000, FRN = 1001, PFRN = 1002 }, }; var result = RollupService.PerformRollup(entries, mountPoint.Mountpoint.Reference, null); Assert.AreEqual(1, result.Count); Assert.AreEqual(0, result.OfType <DeleteAction>().Count()); }