From 147fc42e9b121267c9e8f699ff34f49e1b3ed3b1 Mon Sep 17 00:00:00 2001 From: ThatBen Date: Fri, 18 Apr 2025 10:02:52 +0200 Subject: [PATCH] Support for names of parameterized testfixtures --- Tests/DistTestCore/NameUtils.cs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Tests/DistTestCore/NameUtils.cs b/Tests/DistTestCore/NameUtils.cs index 5e1f8a9f..55489db9 100644 --- a/Tests/DistTestCore/NameUtils.cs +++ b/Tests/DistTestCore/NameUtils.cs @@ -25,6 +25,7 @@ namespace DistTestCore var test = TestContext.CurrentContext.Test; if (test.ClassName!.Contains("AdhocContext")) return "none"; var className = test.ClassName!.Substring(test.ClassName.LastIndexOf('.') + 1); + className += FormatArguments(test); return className.Replace('.', '-'); } @@ -54,7 +55,7 @@ namespace DistTestCore private static string FormatArguments(TestContext.TestAdapter test) { - if (test.Arguments == null || !test.Arguments.Any()) return ""; + if (test.Arguments == null || test.Arguments.Length == 0) return ""; return $"[{string.Join(',', test.Arguments.Select(FormatArgument).ToArray())}]"; } @@ -69,6 +70,8 @@ namespace DistTestCore private static string ReplaceInvalidCharacters(string name) { return name + .Replace("codexstorage/nim-codex:", "") + .Replace("-dist-tests", "") .Replace(":", "_") .Replace("/", "_") .Replace("\\", "_"); @@ -84,9 +87,9 @@ namespace DistTestCore private static string GetFixtureName(string name, DateTime start) { - var className = GetRawFixtureName(); - if (!string.IsNullOrEmpty(name)) className = name; - return $"{Pad(start.Hour)}-{Pad(start.Minute)}-{Pad(start.Second)}Z_{className.Replace('.', '-')}"; + var fixtureName = GetRawFixtureName(); + if (!string.IsNullOrEmpty(name)) fixtureName = name; + return $"{Pad(start.Hour)}-{Pad(start.Minute)}-{Pad(start.Second)}Z_{fixtureName.Replace('.', '-')}"; } private static string Pad(int n)