public void FileRenameRoundtrip(string[] renames) { for (var i = 0; i < renames.Length - 1; i++) { _entries.RenameFile(renames[i], renames[i + 1]); } _entries.RenameFile(renames[renames.Length - 1], renames[0]); var changeset = _entries.ProduceChangeset(); changeset.Should().NotBeNull().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(); }