From 4b78c5f6b11b5fbc6861370f9b886ec66864dee1 Mon Sep 17 00:00:00 2001 From: Daniel Cazzulino Date: Tue, 2 Jul 2024 02:35:30 -0300 Subject: [PATCH] Add support for rendering test output and errors --- assets/img/demo.png | Bin 24174 -> 57200 bytes dotnet-trx.sln | 6 ----- readme.md | 7 +++--- src/Demo/Tests.cs | 22 ++++++++++++++++-- src/dotnet-trx/Properties/.gitignore | 1 + src/dotnet-trx/TrxCommand.cs | 32 ++++++++++++++++++++++----- 6 files changed, 51 insertions(+), 17 deletions(-) create mode 100644 src/dotnet-trx/Properties/.gitignore diff --git a/assets/img/demo.png b/assets/img/demo.png index 0872f00dd586c867b0542c50364ca9bf11de061c..df1379369f874187041137d2e36f9907135d1d95 100644 GIT binary patch literal 57200 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 literal 24174 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 output.WriteLine("Hello, world from xunit ITestOutputHelper!"); + [Fact(Skip = "Shouldn't run for now :)")] public void SampleSkipped() { } @@ -13,8 +17,22 @@ public void SampleSkipped() { } [InlineData("fr")] [InlineData("de")] [InlineData("es")] +#pragma warning disable xUnit1026 // Theory methods should use all of their parameters public async Task Parameterized(string culture) => await Task.Delay(Random.Shared.Next(100, 2000)); +#pragma warning restore xUnit1026 // Theory methods should use all of their parameters + + [Fact] + public void OhNoh() => Assert.Equal(42, 22); [Fact] - public void OhNoh() => Assert.Fail(); + public void CleanStackTrace() + { + Action runner = () => Run(); + + runner(); + } + + void Run() => Unexpected(); + + void Unexpected() => throw new InvalidOperationException("This should not happen!"); } \ No newline at end of file diff --git a/src/dotnet-trx/Properties/.gitignore b/src/dotnet-trx/Properties/.gitignore new file mode 100644 index 0000000..8392c90 --- /dev/null +++ b/src/dotnet-trx/Properties/.gitignore @@ -0,0 +1 @@ +launchSettings.json \ No newline at end of file diff --git a/src/dotnet-trx/TrxCommand.cs b/src/dotnet-trx/TrxCommand.cs index ed5c750..98a031a 100644 --- a/src/dotnet-trx/TrxCommand.cs +++ b/src/dotnet-trx/TrxCommand.cs @@ -4,6 +4,7 @@ using System.Linq; using Devlooped.Web; using Humanizer; +using Spectre.Console; using Spectre.Console.Cli; using static Spectre.Console.AnsiConsole; @@ -17,12 +18,16 @@ public class TrxSettings : CommandSettings [CommandOption("-p|--path")] public string? Path { get; init; } - [Description("Recursively search for *.trx files.")] + [Description("Include test output")] + [CommandOption("-o|--output")] + public bool? Output { get; init; } + + [Description("Recursively search for *.trx files")] [CommandOption("-r|--recursive")] [DefaultValue(true)] public bool Recursive { get; init; } = true; - [Description("Show version information.")] + [Description("Show version information")] [CommandOption("--version")] public bool? Version { get; init; } } @@ -50,6 +55,14 @@ public override int Execute(CommandContext context, TrxSettings settings) break; case "Failed": MarkupLine($":cross_mark: {test}"); + var error = new Panel( + $""" + [red]{result.CssSelectElement("Message")?.Value.Trim()}[/] + [dim]{result.CssSelectElement("StackTrace")?.Value.ReplaceLineEndings()}[/] + """); + error.Padding = new Padding(5, 0, 0, 0); + error.Border = BoxBorder.None; + Write(error); break; case "NotExecuted": MarkupLine($":fast_forward_button: {test}"); @@ -58,6 +71,13 @@ public override int Execute(CommandContext context, TrxSettings settings) default: break; } + + if (settings.Output == true && result.CssSelectElement("StdOut")?.Value is { } output) + Write(new Panel($"[dim]{output.ReplaceLineEndings()}[/]") + { + Border = BoxBorder.None, + Padding = new Padding(5, 0, 0, 0), + }); } var counters = doc.CssSelectElement("ResultSummary > Counters"); @@ -83,13 +103,15 @@ public override int Execute(CommandContext context, TrxSettings settings) MarkupLine($" :check_mark_button:"); if (passed > 0) - MarkupLine($" :check_mark_button: {passed} passed"); + MarkupLine($" :check_mark_button: {passed} passed"); if (failed > 0) - MarkupLine($" :cross_mark: {failed} failed"); + MarkupLine($" :cross_mark: {failed} failed"); if (skipped > 0) - MarkupLine($" :fast_forward_button: {skipped} skipped"); + MarkupLine($" :fast_forward_button: {skipped} skipped"); + + WriteLine(); } return 0;