From d77e1876c8eea6a7e6bec29b52d837d6d689fe59 Mon Sep 17 00:00:00 2001 From: mcocdaa <2021137961@qq.com> Date: Sat, 7 Nov 2026 04:55:57 +0100 Subject: [PATCH] fix(ci): resolve standalone repo root in PawnLookupContracts and serialize UI registry tests test: serialize UI drawing contracts and fix repo root detection Add [Collection("UI drawing")] to UI-related contract test classes to prevent parallel execution conflicts, and update FindRepoRoot to locate the repo via the RimMind-Core/Source directory instead of the solution file. --- Tests/Contracts/DebugCenterLifecycleContract.cs | 1 + Tests/Contracts/P5UiAndHarnessContracts.cs | 1 + Tests/Contracts/PawnLookupContracts.cs | 2 +- Tests/Contracts/UiLifecycleContract.cs | 1 + Tests/Contracts/UiLogicCorrectnessContract.cs | 1 + 5 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Tests/Contracts/DebugCenterLifecycleContract.cs b/Tests/Contracts/DebugCenterLifecycleContract.cs index 130366fd..dba66c27 100644 --- a/Tests/Contracts/DebugCenterLifecycleContract.cs +++ b/Tests/Contracts/DebugCenterLifecycleContract.cs @@ -7,6 +7,7 @@ namespace RimMind.Tests.Contracts { + [Collection("UI drawing")] public sealed class DebugCenterLifecycleContract { [Fact] diff --git a/Tests/Contracts/P5UiAndHarnessContracts.cs b/Tests/Contracts/P5UiAndHarnessContracts.cs index 0fc391a5..423e3743 100644 --- a/Tests/Contracts/P5UiAndHarnessContracts.cs +++ b/Tests/Contracts/P5UiAndHarnessContracts.cs @@ -14,6 +14,7 @@ namespace RimMind.Tests.Contracts { + [Collection("UI drawing")] public sealed class P5UiAndHarnessContracts { [Fact] diff --git a/Tests/Contracts/PawnLookupContracts.cs b/Tests/Contracts/PawnLookupContracts.cs index df287ea0..633230ac 100644 --- a/Tests/Contracts/PawnLookupContracts.cs +++ b/Tests/Contracts/PawnLookupContracts.cs @@ -453,7 +453,7 @@ public void Lifecycle_and_dispatcher_static_invariants_contracts() private static string FindRepoRoot() { var dir = new DirectoryInfo(AppContext.BaseDirectory); - while (dir != null && !File.Exists(Path.Combine(dir.FullName, "RimMind.sln"))) + while (dir != null && !Directory.Exists(Path.Combine(dir.FullName, "RimMind-Core", "Source"))) { dir = dir.Parent; } diff --git a/Tests/Contracts/UiLifecycleContract.cs b/Tests/Contracts/UiLifecycleContract.cs index 52207602..339de4ae 100644 --- a/Tests/Contracts/UiLifecycleContract.cs +++ b/Tests/Contracts/UiLifecycleContract.cs @@ -13,6 +13,7 @@ namespace RimMind.Tests.Contracts { + [Collection("UI drawing")] public sealed class UiLifecycleContract { [Fact] diff --git a/Tests/Contracts/UiLogicCorrectnessContract.cs b/Tests/Contracts/UiLogicCorrectnessContract.cs index 4ffc247d..743aec23 100644 --- a/Tests/Contracts/UiLogicCorrectnessContract.cs +++ b/Tests/Contracts/UiLogicCorrectnessContract.cs @@ -7,6 +7,7 @@ namespace RimMind.Tests.Contracts { + [Collection("UI drawing")] public sealed class UiLogicCorrectnessContract { [Fact]