From ce3ba51c02efa4247bea19214cabf3a1fe62c76d Mon Sep 17 00:00:00 2001 From: JustMe Date: Mon, 5 Oct 2026 00:49:20 +0800 Subject: [PATCH] test: normalize project reference paths across platforms --- backend/tests/Monitor.Backend.Tests/ArchitectureTests.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/backend/tests/Monitor.Backend.Tests/ArchitectureTests.cs b/backend/tests/Monitor.Backend.Tests/ArchitectureTests.cs index 1c54695..cf81a17 100644 --- a/backend/tests/Monitor.Backend.Tests/ArchitectureTests.cs +++ b/backend/tests/Monitor.Backend.Tests/ArchitectureTests.cs @@ -36,10 +36,13 @@ public sealed class ArchitectureTests Path.GetFileNameWithoutExtension(path), path, Path.GetDirectoryName(path)!, - [.. items.Where(e => e.Name == "ProjectReference").Select(e => Path.GetFileNameWithoutExtension((string?)e.Attribute("Include") ?? ""))], + [.. items.Where(e => e.Name == "ProjectReference").Select(e => Path.GetFileNameWithoutExtension(NormalizePath((string?)e.Attribute("Include") ?? "")))], [.. items.Where(e => e.Name == "PackageReference").Select(e => (string?)e.Attribute("Include") ?? "")]); })]; + private static string NormalizePath(string path) => + path.Replace('\\', Path.DirectorySeparatorChar).Replace('/', Path.DirectorySeparatorChar); + private static bool IsTest(Project p) => p.Path.Contains(Path.DirectorySeparatorChar + "tests" + Path.DirectorySeparatorChar, StringComparison.Ordinal); private static bool IsFleet(Project p) => p.Name.StartsWith("Fleet.", StringComparison.Ordinal) && !IsTest(p);