private void ProcessOnExited(object sender, EventArgs eventArgs) { Log.Info(string.Format("Process on exited for {0}", processId)); var theProcess = sender as Process; if (theProcess != null) { using (var reader = theProcess.StandardOutput) { var result = reader.ReadToEnd(); processOutput.AppendLine(result); Console.WriteLine(result); } } var args = new ProcessRunnerExitedEventArgs { ProcessOutput = processOutput, TestsResultFilePath = resultFilePath, ProcessId = processId }; OnProcessExited(args); }
protected virtual void OnProcessExited(ProcessRunnerExitedEventArgs e) { var handler = ProcessExited; if (handler != null) { handler(this, e); } }
private void TestProcessRunnerOnProcessExited(object sender, ProcessRunnerExitedEventArgs e) { Log.Info(string.Format("Ended process for: {0} {1}", e.TestsResultFilePath, e.ProcessId)); Log.Info(string.Format("Output of the process is: {0} {1}", e.ProcessOutput, e.ProcessId)); nodesManager.FreeNode(e.ProcessId); var testsResultsModel = resultMerger.GetResult(e.TestsResultFilePath); resultPrinter.PrintIntermediate(testsResultsModel, e.TestsResultFilePath, e.ProcessOutput); processesCountdown.Signal(); }