test: classify prerequisite lanes and own Avalonia sessions

This commit is contained in:
Erik 2026-08-18 11:30:47 +02:00
parent c1a905004a
commit 3684e7b5e7
113 changed files with 273 additions and 22 deletions

View file

@ -15,6 +15,7 @@ namespace AcDream.Core.Tests.Conformance;
/// not the master plan's loose "0031↔0170↔0171". The cottage cellar is the
/// 0x014x range (#98 fixtures); the doorway room/vestibule is in 0x017x.
/// </summary>
[Trait("Lane", "InstalledDat")]
public class CottageDoorwayCharacterizationTests
{
private readonly ITestOutputHelper _out;

View file

@ -39,6 +39,7 @@ namespace AcDream.Core.Tests.Conformance;
/// (e.g. dispose-during-read at teardown) or layers above the dat reader.
/// </summary>
[Trait("Category", "Conformance")]
[Trait("Lane", "InstalledDat")]
public class DatConcurrencyStressTests
{
private const int HammerThreads = 8;

View file

@ -17,6 +17,7 @@ namespace AcDream.Core.Tests.Conformance;
/// LandBlockInfo + EnvCells? Output-only — no assertions.
/// </summary>
[Trait("Purpose", "Diagnostic")]
[Trait("Lane", "InstalledDat")]
public sealed class DungeonLandblockDatProbeTests
{
private readonly ITestOutputHelper _out;

View file

@ -30,6 +30,7 @@ public class FindCellListConformanceTests
}
[Fact]
[Trait("Lane", "InstalledDat")]
public void FindCellList_DeepInsideRoom0171_Returns0171()
{
var datDir = ConformanceDats.ResolveDatDir();
@ -47,6 +48,7 @@ public class FindCellListConformanceTests
}
[Fact]
[Trait("Lane", "InstalledDat")]
public void FindCellList_DeepInsideVestibule0170_Returns0170()
{
var datDir = ConformanceDats.ResolveDatDir();
@ -70,6 +72,7 @@ public class FindCellListConformanceTests
/// property P1 must preserve.
/// </summary>
[Fact]
[Trait("Lane", "InstalledDat")]
public void FindCellList_InVestibule_SeededFromRoom_Returns0170()
{
var datDir = ConformanceDats.ResolveDatDir();

View file

@ -21,6 +21,7 @@ namespace AcDream.Core.Tests.Conformance;
/// separately in the decomp). Output-only — no assertions; read the log.
/// </summary>
[Trait("Purpose", "Diagnostic")]
[Trait("Lane", "InstalledDat")]
public sealed class HoltburgTorchFalloffProbeTests
{
private readonly ITestOutputHelper _out;

View file

@ -27,6 +27,7 @@ namespace AcDream.Core.Tests.Conformance;
/// find_visible_child_cell also cannot recover a cross-building claim and
/// falls to seen_outside → adjust_to_outside, acclient :280037).
/// </summary>
[Trait("Lane", "InstalledDat")]
public sealed class Issue107SpawnDiagnosticTests
{
private readonly ITestOutputHelper _out;

View file

@ -19,6 +19,7 @@ namespace AcDream.Core.Tests.Conformance;
/// (pc:308788-308825). These tests pin the replacement semantics against the
/// real dats.
/// </summary>
[Trait("Lane", "InstalledDat")]
public sealed class Issue112MembershipTests
{
private readonly ITestOutputHelper _out;

View file

@ -21,6 +21,7 @@ namespace AcDream.Core.Tests.Conformance;
/// carry polygon references in properties the walk missed (portal-type
/// nodes / leaf subclasses)? Pure diagnostic — no production code.
/// </summary>
[Trait("Lane", "InstalledDat")]
public sealed class Issue113DoorVanishDiagnosticTests
{
private readonly ITestOutputHelper _out;

View file

@ -24,6 +24,7 @@ namespace AcDream.Core.Tests.Conformance;
/// interior cell's Position + world AABB + SeenOutside flag + stair signature
/// (distinct horizontal-face heights), and containment of the two key points.
/// </summary>
[Trait("Lane", "InstalledDat")]
public sealed class Issue113PhantomStairsDumpTests
{
private readonly ITestOutputHelper _out;

View file

@ -24,6 +24,7 @@ namespace AcDream.Core.Tests.Conformance;
/// static object (id + position) — the barrel candidate and the stair
/// owners read directly off the output.
/// </summary>
[Trait("Lane", "InstalledDat")]
public sealed class Issue119TowerDumpTests
{
private readonly ITestOutputHelper _out;

View file

@ -23,6 +23,7 @@ namespace AcDream.Core.Tests.Conformance;
/// ObjectMeshManager in MP1a)
/// so the zeroing gate reads directly off the output.
/// </summary>
[Trait("Lane", "InstalledDat")]
public sealed class Issue119UpNullGfxObjDumpTests
{
private readonly ITestOutputHelper _out;

View file

@ -30,6 +30,7 @@ namespace AcDream.Core.Tests.Conformance;
/// Violations of (b) on PLAIN OBJECT GfxObjs are allowed — retail's bypass
/// draws solid batches for non-building/non-cell meshes, and so do we.
/// </summary>
[Trait("Lane", "InstalledDat")]
public sealed class StipplingSurfaceEquivalenceTests
{
private readonly ITestOutputHelper _out;

View file

@ -14,6 +14,7 @@ namespace AcDream.Core.Tests.Conformance;
/// (real pick-criterion divergence vs a test/sphere artifact).
/// </summary>
[Trait("Purpose", "Diagnostic")]
[Trait("Lane", "InstalledDat")]
public class ThresholdDivergenceDiagnosticTests
{
private readonly ITestOutputHelper _out;

View file

@ -27,6 +27,7 @@ namespace AcDream.Core.Tests.Conformance;
/// building-cell cache. The outdoor-involving segments (0031↔0170) need the landcell +
/// building portal and are a follow-up.
/// </summary>
[Trait("Lane", "InstalledDat")]
public class ThresholdPortalCrossingReplayTests
{
private readonly ITestOutputHelper _out;