public void ShouldSetOutputAndIntegrationStatusToFailedOnFailedBuild() { ProcessResult processResult = new ProcessResult(@"Documents\WindowsPowerShell\MyScript.ps1' is not recognized as a cmdlet", string.Empty, 1, false); ProcessInfo info = null; mockProcessExecutor.Setup(executor => executor.Execute(It.IsAny <ProcessInfo>())). Callback <ProcessInfo>(processInfo => info = processInfo).Returns(processResult).Verifiable(); mytask.Executable = POWERSHELL_PATH; mytask.Script = "MyScript.ps1"; mytask.ConfiguredScriptsDirectory = @"D:\CruiseControl"; IIntegrationResult result = Integration("myProject", @"D:\CruiseControl", "myArtifactDirectory"); mytask.Run(result); Assert.AreEqual(@"D:\CruiseControl", info.WorkingDirectory); Assert.AreEqual(IntegrationStatus.Failure, result.Status); CustomAssertion.AssertMatches(@"(\.|\n)*is not recognized as a cmdlet", result.TaskOutput); }
public void ShouldSetOutputAndIntegrationStatusToFailedOnFailedBuild() { ProcessResult processResult = new ProcessResult(@"Documents\WindowsPowerShell\MyScript.ps1' is not recognized as a cmdlet", string.Empty, 1, false); CollectingConstraint constraint = new CollectingConstraint(); mockProcessExecutor.ExpectAndReturn("Execute", processResult, new object[] { constraint }); mytask.Executable = POWERSHELL_PATH; mytask.Script = "MyScript.ps1"; mytask.ConfiguredScriptsDirectory = @"D:\CruiseControl"; IIntegrationResult result = Integration("myProject", @"D:\CruiseControl", "myArtifactDirectory"); mytask.Run(result); ProcessInfo info = (ProcessInfo)constraint.Parameter; Assert.AreEqual(@"D:\CruiseControl", info.WorkingDirectory); Assert.AreEqual(IntegrationStatus.Failure, result.Status); CustomAssertion.AssertMatches(@"(\.|\n)*is not recognized as a cmdlet", result.TaskOutput); }
public void ShouldSetOutputAndIntegrationStatusToSuccessOnSuccessfulBuild() { ProcessResult processResult = new ProcessResult(" ", string.Empty, ProcessResult.SUCCESSFUL_EXIT_CODE, false); mockProcessExecutor.Setup(executor => executor.Execute(It.IsAny <ProcessInfo>())).Returns(processResult).Verifiable(); mytask.Executable = POWERSHELL_PATH; mytask.Script = "MyScript.ps1"; mytask.BuildArgs = "an arg"; mytask.EnvironmentVariables = new EnvironmentVariable[] { new EnvironmentVariable { name = "test", value = "value" } }; IntegrationResult result = (IntegrationResult)IntegrationResult(); mytask.Run(result); Assert.AreEqual(IntegrationStatus.Success, result.Status); CustomAssertion.AssertMatches(" ", result.TaskOutput); }