public void SetDocuments(IReadOnlyList <MutationDocument> documents, UnimaConfig config) { _config = config; RunningDocuments.AddRange(documents.Select(d => new TestRunDocument { Document = d, Status = TestRunDocument.TestRunStatusEnum.Waiting })); MutationCount = documents.Count; MutationsInQueueCount = MutationCount; }
private void MutationDocumentStarted(MutationDocument mutationDocument) { var testRunDocument = RunningDocuments.FirstOrDefault(r => r.Document == mutationDocument); if (testRunDocument != null) { MutationsInQueueCount--; testRunDocument.Status = TestRunDocument.TestRunStatusEnum.Running; } }
private async void ExecuteMutationDocuments() { TestNotStarted = false; await _mediator.Send( new ExecuteMutationsCommand( _config, RunningDocuments.Select(r => r.Document).ToList(), MutationDocumentStarted, MutationDocumentCompleted)); }
private void MutationDocumentCompleted(MutationDocumentResult result) { lock (RunningDocuments) { var runDocument = RunningDocuments.FirstOrDefault(r => r.Document.Id == result.Id); if (runDocument != null) { System.Windows.Application.Current.Dispatcher.BeginInvoke(new Action(() => RunningDocuments.Remove(runDocument))); } MutationDocumentsExecutionResults.AddResult(result); } }