From 306ac0e21a4d739cac115acd621f23d3dfad8194 Mon Sep 17 00:00:00 2001 From: Steven Kirk Date: Sat, 3 Dec 2022 23:15:00 +0100 Subject: [PATCH] Throw an exception on unit test assertion fail. --- tests/Avalonia.UnitTests/ModuleInitializer.cs | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 tests/Avalonia.UnitTests/ModuleInitializer.cs diff --git a/tests/Avalonia.UnitTests/ModuleInitializer.cs b/tests/Avalonia.UnitTests/ModuleInitializer.cs new file mode 100644 index 0000000000..8e9386afa0 --- /dev/null +++ b/tests/Avalonia.UnitTests/ModuleInitializer.cs @@ -0,0 +1,28 @@ +using System; +using System.Diagnostics; +using System.Runtime.CompilerServices; + +namespace Avalonia.Base.UnitTests +{ + internal static class ModuleInitializer + { + [ModuleInitializer] + internal static void TestInit() + { + Trace.Listeners.Insert(0, new ThrowListener()); + } + + private class ThrowListener : TextWriterTraceListener + { + public override void Fail(string message) + { + throw new Exception("Assertion Failed. " + message); + } + + public override void Fail(string message, string detailMessage) + { + throw new Exception("Assertion Failed. " + message + detailMessage); + } + } + } +}