public void Create_EndpointIsNull_ThrowsArgumentNullException() { var fixture = new EndpointCreatorFixture(null); var result = Record.Exception(() => fixture.Run()); Assert.IsType <ArgumentNullException>(result); Assert.Equal("endpoints", ((ArgumentNullException)result).ParamName); }
public void Create_TargetPathPostFixDefined_TargetPathGetsExtended() { var fixture = new EndpointCreatorFixture(new[] { new Model.Endpoint { Id = "SomeEndpoint", Directories = new[] { new Directory { SourcePath = "/Working/Source/Sourcedirectory1", TargetPath = "Target/Subtarget1/" }, new Directory { SourcePath = "/Working/Source/Sourcedirectory2", TargetPath = "Target/Subtarget2/" } } } }); fixture.FileSystem.CreateDirectory("/Working/Source"); fixture.FileSystem.CreateDirectory("/Working/Source/Sourcedirectory1"); fixture.FileSystem.CreateFile("/Working/Source/Sourcedirectory1/Sourcefile1.txt"); fixture.FileSystem.CreateDirectory("/Working/Source/Sourcedirectory2"); fixture.FileSystem.CreateFile("/Working/Source/Sourcedirectory2/Sourcefile2.txt"); fixture.FileSystem.CreateDirectory("/Working/Source/Sourcedirectory2/Subsourcedirectory"); fixture.FileSystem.CreateFile("/Working/Source/Sourcedirectory2/Subsourcedirectory/Subsourcefile.txt"); EndpointCreatorSettings settings = new EndpointCreatorSettings { TargetPathPostFix = "SomeTargetPathPostFix" }; var result = Record.Exception(() => fixture.Run(settings)); Assert.Null(result); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpointSomeTargetPathPostFix/Target/Subtarget1/Sourcefile1.txt").Exists); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpointSomeTargetPathPostFix/Target/Subtarget2/Sourcefile2.txt").Exists); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpointSomeTargetPathPostFix/Target/Subtarget2/Subsourcedirectory/Subsourcefile.txt").Exists); }
public void Create_BuildConfigurationDefined_SubstitutesSourcePaths() { var fixture = new EndpointCreatorFixture(new[] { new Model.Endpoint { Id = "SomeEndpoint", Directories = new[] { new Directory { SourcePath = "/Working/Source/[BuildConfiguration]", TargetPath = "Target/Subtarget1/" }, new Directory { SourcePath = "/Working/Source/Sourcedirectory2", TargetPath = "Target/Subtarget2/" } } } }); fixture.FileSystem.CreateDirectory("/Working/Source"); fixture.FileSystem.CreateDirectory("/Working/Source/Release"); fixture.FileSystem.CreateFile("/Working/Source/Release/Sourcefile1.txt"); fixture.FileSystem.CreateDirectory("/Working/Source/Sourcedirectory2"); fixture.FileSystem.CreateFile("/Working/Source/Sourcedirectory2/Sourcefile2.txt"); fixture.FileSystem.CreateDirectory("/Working/Source/Sourcedirectory2/Subsourcedirectory"); fixture.FileSystem.CreateFile("/Working/Source/Sourcedirectory2/Subsourcedirectory/Subsourcefile.txt"); EndpointCreatorSettings settings = new EndpointCreatorSettings { BuildConfiguration = "Release" }; var result = Record.Exception(() => fixture.Run(settings)); Assert.Null(result); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint/Target/Subtarget1/Sourcefile1.txt").Exists); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint/Target/Subtarget2/Sourcefile2.txt").Exists); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint/Target/Subtarget2/Subsourcedirectory/Subsourcefile.txt").Exists); }
public void Create_FilesAreValid_FilesAreCopied() { var fixture = new EndpointCreatorFixture(new[] { new Model.Endpoint { Id = "SomeEndpoint", Files = new[] { new File { SourcePath = "/Working/Source/Sourcefile1.txt", TargetPath = "Target/Subtarget1/" }, new File { SourcePath = "/Working/Source/Sourcefile2.txt", TargetPath = "Target/Subtarget2/" }, new File { SourcePath = "/Working/Source/Sourcefile3.txt", TargetPath = "Target/Subtarget3/newname.txt", IsFilePath = true } } } }); fixture.FileSystem.CreateDirectory("/Working/Source"); fixture.FileSystem.CreateFile("/Working/Source/Sourcefile1.txt"); fixture.FileSystem.CreateFile("/Working/Source/Sourcefile2.txt"); fixture.FileSystem.CreateFile("/Working/Source/Sourcefile3.txt"); var result = Record.Exception(() => fixture.Run()); Assert.Null(result); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint/Target/Subtarget1/sourcefile1.txt").Exists); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint/Target/Subtarget2/sourcefile2.txt").Exists); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint/Target/Subtarget3/newname.txt").Exists); }
public void Create_TargetRootPathDefined_PathGetsExtended() { var fixture = new EndpointCreatorFixture(new[] { new Model.Endpoint { Id = "SomeEndpoint", Files = new[] { new File { SourcePath = "/Working/Source/Sourcefile1.txt", TargetPath = "Target/Subtarget1/" }, new File { SourcePath = "/Working/Source/Sourcefile2.txt", TargetPath = "Target/Subtarget2/" } } } }); fixture.FileSystem.CreateDirectory("/Working/Source"); fixture.FileSystem.CreateFile("/Working/Source/Sourcefile1.txt"); fixture.FileSystem.CreateFile("/Working/Source/Sourcefile2.txt"); EndpointCreatorSettings settings = new EndpointCreatorSettings { ZipTargetPath = true }; var result = Record.Exception(() => fixture.Run(settings)); Assert.Null(result); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint/Target/Subtarget1/sourcefile1.txt").Exists); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint/Target/Subtarget2/sourcefile2.txt").Exists); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint.zip").Exists); }
public void Create_DirectoriesAreValid_DirectoriesAreCopied() { var fixture = new EndpointCreatorFixture(new[] { new Model.Endpoint { Id = "SomeEndpoint", Directories = new[] { new Directory { SourcePath = "/Working/Source/Sourcedirectory1", TargetPath = "Target/Subtarget1" }, new Directory { SourcePath = "/Working/Source/Sourcedirectory2", TargetPath = "Target/Subtarget2" } } } }); fixture.FileSystem.CreateDirectory("/Working/Source"); fixture.FileSystem.CreateDirectory("/Working/Source/Sourcedirectory1"); fixture.FileSystem.CreateFile("/Working/Source/Sourcedirectory1/Sourcefile1.txt"); fixture.FileSystem.CreateDirectory("/Working/Source/Sourcedirectory2"); fixture.FileSystem.CreateFile("/Working/Source/Sourcedirectory2/Sourcefile2.txt"); fixture.FileSystem.CreateDirectory("/Working/Source/Sourcedirectory2/Subsourcedirectory"); fixture.FileSystem.CreateFile("/Working/Source/Sourcedirectory2/Subsourcedirectory/Subsourcefile.txt"); var result = Record.Exception(() => fixture.Run()); Assert.Null(result); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint/Target/Subtarget1/Sourcefile1.txt").Exists); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint/Target/Subtarget2/Sourcefile2.txt").Exists); Assert.True(fixture.FileSystem.GetFile("/Working/SomeEndpoint/Target/Subtarget2/Subsourcedirectory/Subsourcefile.txt").Exists); }