public void Move_CanUpdateControlBlockCollections() { // arrange using (var driver = new DiskDriver()) { driver.CreateOrGetFile(@"c:\src\folder_1\subfolder_1\file_1.txt"); driver.CreateOrGetFile(@"c:\src\folder_1\subfolder_1\file_2.txt"); driver.CreateOrGetFile(@"c:\src\folder_1\subfolder_2\file_1.txt"); driver.CreateOrGetFile(@"c:\src\folder_1\subfolder_2\file_2.txt"); driver.CreateOrGetFile(@"c:\src\folder_2\subfolder_1\file_1.txt"); driver.CreateOrGetFile(@"c:\src\folder_2\subfolder_1\file_2.txt"); driver.CreateOrGetFile(@"c:\src\folder_2\subfolder_2\file_1.txt"); driver.CreateOrGetFile(@"c:\src\folder_2\subfolder_2\file_2.txt"); driver.CreateOrGetDirectory(@"c:\targ"); var folder_1 = driver.GetDirectory(@"c:\src\folder_1"); // act folder_1.MoveTo(@"c:\targ\folder_1"); // assert var fileStub = driver.GetFile(@"c:\targ\folder_1\subfolder_1\file_1.txt"); Assert.IsTrue(fileStub.Exists); fileStub = driver.GetFile(@"c:\targ\folder_1\subfolder_1\file_2.txt"); Assert.IsTrue(fileStub.Exists); fileStub = driver.GetFile(@"c:\targ\folder_1\subfolder_2\file_1.txt"); Assert.IsTrue(fileStub.Exists); fileStub = driver.GetFile(@"c:\targ\folder_1\subfolder_2\file_2.txt"); Assert.IsTrue(fileStub.Exists); fileStub = driver.GetFile(@"c:\src\folder_1\subfolder_1\file_1.txt"); Assert.IsFalse(fileStub.Exists); fileStub = driver.GetFile(@"c:\src\folder_1\subfolder_1\file_2.txt"); Assert.IsFalse(fileStub.Exists); fileStub = driver.GetFile(@"c:\src\folder_1\subfolder_2\file_1.txt"); Assert.IsFalse(fileStub.Exists); fileStub = driver.GetFile(@"c:\src\folder_1\subfolder_2\file_2.txt"); Assert.IsFalse(fileStub.Exists); fileStub = driver.GetFile(@"c:\src\folder_2\subfolder_1\file_1.txt"); Assert.IsTrue(fileStub.Exists); fileStub = driver.GetFile(@"c:\src\folder_2\subfolder_1\file_2.txt"); Assert.IsTrue(fileStub.Exists); fileStub = driver.GetFile(@"c:\src\folder_2\subfolder_2\file_1.txt"); Assert.IsTrue(fileStub.Exists); fileStub = driver.GetFile(@"c:\src\folder_2\subfolder_2\file_2.txt"); Assert.IsTrue(fileStub.Exists); var dirStub = driver.GetDirectory(@"c:\targ"); Assert.IsTrue(dirStub.Exists); dirStub = driver.GetDirectory(@"c:\targ\folder_1"); Assert.IsTrue(dirStub.Exists); dirStub = driver.GetDirectory(@"c:\targ\folder_1\subfolder_1"); Assert.IsTrue(dirStub.Exists); dirStub = driver.GetDirectory(@"c:\targ\folder_1\subfolder_2"); Assert.IsTrue(dirStub.Exists); dirStub = driver.GetDirectory(@"c:\src\folder_1"); Assert.IsFalse(dirStub.Exists); dirStub = driver.GetDirectory(@"c:\src\folder_1\subfolder_1"); Assert.IsFalse(dirStub.Exists); dirStub = driver.GetDirectory(@"c:\src\folder_1\subfolder_2"); Assert.IsFalse(dirStub.Exists); dirStub = driver.GetDirectory(@"c:\src"); Assert.IsTrue(dirStub.Exists); dirStub = driver.GetDirectory(@"c:\src\folder_2"); Assert.IsTrue(dirStub.Exists); dirStub = driver.GetDirectory(@"c:\src\folder_2\subfolder_1"); Assert.IsTrue(dirStub.Exists); dirStub = driver.GetDirectory(@"c:\src\folder_2\subfolder_2"); Assert.IsTrue(dirStub.Exists); } }