public void Directory_RenameAddRenameRename() { _entries.RenameDirectory(@"B\B", @"C"); _entries.AddDirectory(@"B\B"); _entries.RenameDirectory(@"B\B", @"B\D"); _entries.RenameDirectory(@"A\B", @"B\B"); var changeset = _entries.ProduceChangeset(); changeset.Should().NotBeNull() .And.HaveAddedDirectories(@"B\D\") .And.HaveRenamedDirectories(new[] { @"A\B\", @"A\B\A\", @"B\B\", @"B\B\A\" }, new[] { @"B\B\", @"B\B\A\", @"C\", @"C\A\" }) .And.HaveRenamedFiles(new[] { @"A\B\b.x", @"A\B\b.y", @"B\B\b.x", @"B\B\b.y" }, new[] { @"B\B\b.x", @"B\B\b.y", @"C\b.x", @"C\b.y" }) .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(); }