public void Should_Recursively_Copy_Files_And_Directory() { // Given var context = Substitute.For <ICakeContext>(); var environment = FakeEnvironment.CreateUnixEnvironment(); var fileSystem = new FakeFileSystem(environment); CreateFileStructure(fileSystem); context.FileSystem.Returns(fileSystem); var sourcePath = new DirectoryPath("/Temp"); var destinationPath = new DirectoryPath("/Temp2"); // When DirectoryAliases.CopyDirectory(context, sourcePath, destinationPath); // Then // Directories should exist Assert.True(fileSystem.GetDirectory("/Temp2/Stuff").Exists); Assert.True(fileSystem.GetDirectory("/Temp2/Things").Exists); // Files should exist Assert.True(fileSystem.GetFile("/Temp2/Stuff/file1.txt").Exists); Assert.True(fileSystem.GetFile("/Temp2/Stuff/file2.txt").Exists); Assert.True(fileSystem.GetFile("/Temp2/Things/file1.txt").Exists); }
public void Should_Throw_If_Source_Directory_Is_Null() { // Given var context = Substitute.For<ICakeContext>(); // When var result = Record.Exception(() => DirectoryAliases.CopyDirectory(context, null, null)); // Then Assert.IsType<ArgumentNullException>(result); Assert.Equal("source", ((ArgumentNullException)result).ParamName); }
public void Should_Throw_If_Destination_Directory_Is_Null() { // Given var context = Substitute.For<ICakeContext>(); var sourcePath = new DirectoryPath("C:/Temp"); // When var result = Record.Exception(() => DirectoryAliases.CopyDirectory(context, sourcePath, null)); // Then Assert.IsType<ArgumentNullException>(result); Assert.Equal("destination", ((ArgumentNullException)result).ParamName); }
public void Should_Throw_If_Context_Is_Null() { // Given var sourcePath = new DirectoryPath("C:/Temp"); var destinationPath = new DirectoryPath("C:/Temp2"); // When var result = Record.Exception(() => DirectoryAliases.CopyDirectory(null, sourcePath, destinationPath)); // Then Assert.IsType<ArgumentNullException>(result); Assert.Equal("context", ((ArgumentNullException)result).ParamName); }
public void Should_Create_Destination_Folder_If_Not_Exist() { // Given var context = Substitute.For<ICakeContext>(); var environment = FakeEnvironment.CreateUnixEnvironment(); var fileSystem = new FakeFileSystem(environment); CreateFileStructure(fileSystem); context.FileSystem.Returns(fileSystem); var sourcePath = new DirectoryPath("/Temp"); var destinationPath = new DirectoryPath("/Temp2"); // When DirectoryAliases.CopyDirectory(context, sourcePath, destinationPath); // Then Assert.True(fileSystem.GetDirectory(destinationPath).Exists); }
public void Should_Throw_If_Source_Directory_Does_Not_Exist() { // Given var context = Substitute.For<ICakeContext>(); var environment = FakeEnvironment.CreateUnixEnvironment(); context.FileSystem.Returns(new FakeFileSystem(environment)); var sourcePath = new DirectoryPath("/Temp"); var destinationPath = new DirectoryPath("/Temp2"); // When var result = Record.Exception(() => DirectoryAliases.CopyDirectory(context, sourcePath, destinationPath)); // Then Assert.IsType<DirectoryNotFoundException>(result); Assert.Equal("Source directory does not exist or could not be found: /Temp", result.Message); }