public void TestMergeResults() { BuildRequest request = CreateNewBuildRequest(1, Array.Empty <string>()); BuildResult result = new BuildResult(request); result.AddResultsForTarget("foo", BuildResultUtilities.GetEmptySucceedingTargetResult()); BuildResult result2 = new BuildResult(request); result.AddResultsForTarget("bar", BuildResultUtilities.GetEmptyFailingTargetResult()); result.MergeResults(result2); Assert.Equal(TargetResultCode.Success, result["foo"].ResultCode); Assert.Equal(TargetResultCode.Failure, result["bar"].ResultCode); BuildResult result3 = new BuildResult(request); result.MergeResults(result3); BuildResult result4 = new BuildResult(request); result4.AddResultsForTarget("xor", BuildResultUtilities.GetEmptySucceedingTargetResult()); result.MergeResults(result4); Assert.Equal(TargetResultCode.Success, result["foo"].ResultCode); Assert.Equal(TargetResultCode.Failure, result["bar"].ResultCode); Assert.Equal(TargetResultCode.Success, result["xor"].ResultCode); }
public void TestSimpleBuildRequest() { BuildRequestConfiguration configuration = CreateTestProject(1); try { TestTargetBuilder targetBuilder = (TestTargetBuilder)_host.GetComponent(BuildComponentType.TargetBuilder); IConfigCache configCache = (IConfigCache)_host.GetComponent(BuildComponentType.ConfigCache); configCache.AddConfiguration(configuration); BuildRequest request = CreateNewBuildRequest(1, new string[1] { "target1" }); BuildRequestEntry entry = new BuildRequestEntry(request, configuration); BuildResult result = new BuildResult(request); result.AddResultsForTarget("target1", GetEmptySuccessfulTargetResult()); targetBuilder.SetResultsToReturn(result); _requestBuilder.BuildRequest(GetNodeLoggingContext(), entry); WaitForEvent(_buildRequestCompletedEvent, "Build Request Completed"); Assert.Equal(BuildRequestEntryState.Complete, entry.State); Assert.Equal(entry, _buildRequestCompleted_Entry); Assert.Equal(BuildResultCode.Success, _buildRequestCompleted_Entry.Result.OverallResult); } finally { DeleteTestProject(configuration); } }
public void TestOverallResult() { BuildRequest request = CreateNewBuildRequest(1, Array.Empty <string>()); BuildResult result = new BuildResult(request); Assert.Equal(BuildResultCode.Success, result.OverallResult); result.AddResultsForTarget("foo", BuildResultUtilities.GetEmptySucceedingTargetResult()); Assert.Equal(BuildResultCode.Success, result.OverallResult); result.AddResultsForTarget("bar", new TargetResult(Array.Empty <TaskItem>(), new WorkUnitResult(WorkUnitResultCode.Success, WorkUnitActionCode.Continue, new Exception()))); Assert.Equal(BuildResultCode.Success, result.OverallResult); result.AddResultsForTarget("baz", new TargetResult(Array.Empty <TaskItem>(), BuildResultUtilities.GetStopWithErrorResult(new Exception()))); Assert.Equal(BuildResultCode.Failure, result.OverallResult); BuildRequest request2 = CreateNewBuildRequest(2, Array.Empty <string>()); BuildResult result2 = new BuildResult(request2); result2.AddResultsForTarget("foo", BuildResultUtilities.GetEmptySucceedingTargetResult()); result2.AddResultsForTarget("bar", BuildResultUtilities.GetEmptyFailingTargetResult()); Assert.Equal(BuildResultCode.Failure, result2.OverallResult); }