public void Copy_ShouldCopyFolder_WithItsContent() { var imageFileBuilderMock = new Mock <IImageFileBuilder>(); var sourcePath = TestFolder + "FB51D97B-5106-45EC-8EA6-A8ACE3EA7558\\"; var destinationDirectoryPath = TestFolder + "E5C698D6-C470-412C-8F3E-703100AD2A79\\"; var subFolder1 = "folder1\\"; var subFolder2 = "folder2\\"; var file1 = "testFile1.jpg"; Directory.CreateDirectory(sourcePath); Directory.CreateDirectory(destinationDirectoryPath); Directory.CreateDirectory(sourcePath + subFolder1); Directory.CreateDirectory(sourcePath + subFolder2); var fileStream = File.Create(sourcePath + subFolder2 + file1); fileStream.Close(); var service = new DirectoryService(imageFileBuilderMock.Object); service.Copy(sourcePath, destinationDirectoryPath); Assert.True(Directory.Exists(sourcePath + subFolder1) && Directory.Exists(destinationDirectoryPath + subFolder1) && File.Exists(sourcePath + subFolder2 + file1) && File.Exists(sourcePath + subFolder2 + file1)); }
public void Copy_ShouldThrowArgumentNullException_WhenDestinationDirectoryPathIsNull() { var imageFileBuilderMock = new Mock <IImageFileBuilder>(); var sourcePath = TestFolder + "0972F3EA-7C52-43A0-8139-C9862D1F34EA"; string destinationDirectoryPath = null; Directory.CreateDirectory(sourcePath); var service = new DirectoryService(imageFileBuilderMock.Object); Assert.Throws <ArgumentNullException>(() => service.Copy(sourcePath, destinationDirectoryPath)); }
public async Task Paste() { var paths = Clipboard.GetFiles(); string directoryPath; if (CommonViewModel.CurrentlyOpenedElement.FullName.EndsWith("\\")) { directoryPath = CommonViewModel.CurrentlyOpenedElement.FullName; } else { directoryPath = CommonViewModel.CurrentlyOpenedElement.FullName + "\\"; } foreach (var t in paths) { if (DirectoryService.IsDirectory(t)) { var directoryName = DirectoryService.GetInfo(t).Name; if (Clipboard.FilesState == ClipboardFilesState.Copied) { await Task.Run(() => DirectoryService.Copy(t, directoryPath + directoryName)); } else if (Clipboard.FilesState == ClipboardFilesState.Cut) { await Task.Run(() => DirectoryService.Move(t, directoryPath + directoryName)); } } else { var fileName = FileService.GetInfo(t).Name; if (Clipboard.FilesState == ClipboardFilesState.Copied) { await Task.Run(() => FileService.Copy(t, directoryPath + fileName)); } else if (Clipboard.FilesState == ClipboardFilesState.Cut) { await Task.Run(() => FileService.Move(t, directoryPath + fileName)); } } } Clipboard.Clear(); await CommonViewModel.LoadCurrentlyShownElementsAsync(); }