public void AsyncBuildWithMultipleSubmissionsCancelAndReSubmit() { BuildRequestData[] buildRequests = GenerateBuildRequests(BuildSubmissionTests.NormalProjectExecutionTime); ConfigurationCacheTestExtension configurationCachetestExtension = this.testExtensionContainer.GetFirstTestExtension <ConfigurationCacheTestExtension>(); ResultsCacheTestExtension resultsCacheTestExtension = this.testExtensionContainer.GetFirstTestExtension <ResultsCacheTestExtension>(); this.buildManagerTestExtension.BeginBuild(BuildManagerTestExtension.CreateBuildParameters(BuildSubmissionTests.DefaultNodeReUseAction, BuildSubmissionTests.MultipleNodeCount, BuildSubmissionTests.DefaultMemoryLimit, "4.0")); AsyncBuildRequestStatus[] requestsStatus = null; this.buildManagerTestExtension.ExecuteAsyncBuildRequests(buildRequests, BuildSubmissionTests.DefaultBuildCompletionTimeout, !BuildSubmissionTests.WaitForCompletion, out requestsStatus); this.buildManagerTestExtension.CancelAllSubmissions(); for (int j = 0; j < buildRequests.Length; j++) { Verify.IsTrue(BuildManagerTestExtension.Wait(requestsStatus[j].SubmissionCompletedEvent, BuildSubmissionTests.DefaultBuildCompletionTimeout), "Submissions should have completed in the specified 60 seconds timeout."); requestsStatus[j].SubmissionCompletedEvent.Close(); requestsStatus[j].SubmissionTestExtension.BuildResultTestExtension.Verify.BuildWasAborted(); BuildResultTestExtension resultFromCacheTestExtension = resultsCacheTestExtension.GetResultFromCache(requestsStatus[j].SubmissionTestExtension.ConfigurationIdForSubmission); resultFromCacheTestExtension.Verify.BuildWasAborted(); } this.buildManagerTestExtension.EndBuild(); this.buildManagerTestExtension.BeginBuild(BuildManagerTestExtension.CreateBuildParameters(BuildSubmissionTests.DefaultNodeReUseAction, BuildSubmissionTests.MultipleNodeCount, BuildSubmissionTests.DefaultMemoryLimit, "4.0")); AsyncBuildRequestStatus[] requestsStatusAfterCancel = null; bool success = this.buildManagerTestExtension.ExecuteAsyncBuildRequests(buildRequests, BuildSubmissionTests.DefaultBuildCompletionTimeout, BuildSubmissionTests.WaitForCompletion, out requestsStatusAfterCancel); Verify.IsTrue(success, "Submissions should have completed in the specified 60 seconds timeout."); for (int k = 0; k < buildRequests.Length; k++) { requestsStatusAfterCancel[k].SubmissionTestExtension.BuildResultTestExtension.Verify.BuildSucceeded(); } this.buildManagerTestExtension.EndBuild(); }
public void SimpleSuccessfulBuild() { BuildRequestData data = this.buildManagerTestExtension.CreateBuildRequestData(BuildSubmissionTests.NormalProjectExecutionTime); BuildResultTestExtension resultTestExtension = this.buildManagerTestExtension.Build(BuildManagerTestExtension.DefaultBuildParameters, data); resultTestExtension.Verify.BuildSucceeded(); }