public void File_DeleteAddRenameRenameAddRename() { _entries.DeleteFile(@".x"); _entries.AddFile(@"C\a.x"); _entries.RenameFile(@"C\a.x", @".x"); _entries.RenameFile(@".x", @"D\a.x"); _entries.AddFile(@"D\b.y"); _entries.RenameFile(@"D\b.y", @".x"); var changeset = _entries.ProduceChangeset(); changeset.Should().NotBeNull() .And.HaveAddedFiles(@".x") .And.HaveRenamedFiles(new [] { @".x" }, new[] { @"D\a.x" }) .And.NoOtherChanges(); }
public MsBuildFileSystemWatcherEntriesTest() { _entries = new MsBuildFileSystemWatcherEntries(); /* * Basic relative path structure * ├─[A] * │ ├─[A] * │ │ ├─[A] * │ │ │ ├─a.x * │ │ │ └─a.y * │ │ ├─[B] * │ │ │ ├─a.x * │ │ │ └─a.y * │ │ ├─c.x * │ │ └─c.y * │ ├─[B] * │ │ ├─[A] * │ │ ├─b.x * │ │ └─b.y * │ │ * │ ├─c.x * │ └─c.y * ├─[B] * │ ├─[A] * │ │ ├─[A] * │ │ │ ├─a.x * │ │ │ └─a.y * │ │ ├─[B] * │ │ │ ├─a.x * │ │ │ └─a.y * │ │ ├─c.x * │ │ └─c.y * │ └─[B] * │ ├─[A] * │ ├─b.x * │ └─b.y * ├─.x * └─.y */ _entries.AddDirectory(@"A"); _entries.AddDirectory(@"A\A"); _entries.AddDirectory(@"A\A\A"); _entries.AddDirectory(@"A\A\B"); _entries.AddDirectory(@"A\B"); _entries.AddDirectory(@"A\B\A"); _entries.AddDirectory(@"B"); _entries.AddDirectory(@"B\A"); _entries.AddDirectory(@"B\A\A"); _entries.AddDirectory(@"B\A\B"); _entries.AddDirectory(@"B\B"); _entries.AddDirectory(@"B\B\A"); _entries.AddFile(@"A\A\A\a.x"); _entries.AddFile(@"A\A\A\a.y"); _entries.AddFile(@"A\A\B\a.x"); _entries.AddFile(@"A\A\B\a.y"); _entries.AddFile(@"A\A\c.x"); _entries.AddFile(@"A\A\c.y"); _entries.AddFile(@"A\B\b.x"); _entries.AddFile(@"A\B\b.y"); _entries.AddFile(@"A\c.x"); _entries.AddFile(@"A\c.y"); _entries.AddFile(@"B\A\A\a.x"); _entries.AddFile(@"B\A\A\a.y"); _entries.AddFile(@"B\A\B\a.x"); _entries.AddFile(@"B\A\B\a.y"); _entries.AddFile(@"B\A\c.x"); _entries.AddFile(@"B\A\c.y"); _entries.AddFile(@"B\B\b.x"); _entries.AddFile(@"B\B\b.y"); _entries.AddFile(@".x"); _entries.AddFile(@".y"); _entries.ProduceChangeset(); }