void PrintSummary() { var config = session.Configuration; var category = config.CurrentCategory.Name; var shortText = new StringBuilder(); var detailedText = new List <string> (); detailedText.Add($"Test Category: {category}"); foreach (var feature in config.Features) { if (!feature.CanModify || feature.Constant != null) { continue; } var defaultValue = feature.DefaultValue ?? false; var enabled = config.IsEnabled(feature); if (enabled == defaultValue) { continue; } var prefix = enabled ? "+" : "-"; detailedText.Add($"Test Feature: {prefix}{feature.Name}"); if (shortText.Length > 0) { shortText.Append(", "); } shortText.Append($"{prefix}{feature.Name}"); } var categoryText = category; if (shortText.Length > 0) { categoryText += $" ({shortText})"; } var header = $"Test Suite: {session.App.PackageName ?? session.Name} - {categoryText}"; if (JenkinsHtml != null) { JenkinsHtml.WriteLine($"<h2>{header}</h2>"); } LogInfo(header); foreach (var line in detailedText) { LogInfo(line); } }
void Finish() { if (JenkinsHtml != null) { if (Options.StdOut != null) { JenkinsHtml.WriteLine($"<p>Output: {Options.JenkinsStdOutLink}."); } JenkinsHtml.Flush(); JenkinsHtml.Dispose(); } if (StdOut != null) { StdOut.Flush(); StdOut.Dispose(); } }
void SaveResult() { LogInfo($"Test Result: {result.Status}"); LogInfo($"{countTests} tests, {countSuccess} passed, {countErrors} errors, {countUnstable} unstable, {countIgnored} ignored."); LogInfo($"Total time: {endTime - startTime}."); if (JenkinsHtml != null) { JenkinsHtml.WriteLine($"<p>Test Result: {result.Status}"); JenkinsHtml.WriteLine($"<br>{countTests} tests, {countSuccess} passed, {countErrors} errors, {countUnstable} unstable, {countIgnored} ignored."); JenkinsHtml.WriteLine($"<br>Total time: {endTime - startTime}.</p>"); } if (Options.ResultOutput != null) { var serialized = TestSerializer.WriteTestResult(result); var settings = new XmlWriterSettings(); settings.Indent = true; using (var writer = XmlTextWriter.Create(Options.ResultOutput, settings)) serialized.WriteTo(writer); Debug("Result written to {0}.", Options.ResultOutput); } if (Options.JUnitResultOutput != null) { JUnitResultPrinter.Print(result, Options.JUnitResultOutput); Debug("JUnit result written to {0}.", Options.JUnitResultOutput); } var printer = new ResultPrinter(System.Console.Out, result); printer.Print(); if (StdOut != null) { var stdoutPrinter = new ResultPrinter(StdOut, result); stdoutPrinter.Print(); } }
internal static void PrintError(string message, Exception error = null) { if (Jenkins) { WriteLine($"[error] {message}"); if (error != null) { WriteLine($"[error] {error}"); } } else { WriteLine($"ERROR: {message}"); if (error != null) { WriteLine(error.ToString()); } } if (JenkinsHtml != null) { JenkinsHtml.WriteLine("<p><b>{message}</b></p>"); if (error != null) { JenkinsHtml.WriteLine("<pre>{error}</pre>"); } } void WriteLine(string text) { System.Console.Error.WriteLine(text); if (StdOut != null) { StdOut.WriteLine(text); } } }