test: make prerequisite lanes fail honestly

This commit is contained in:
Erik 2026-08-18 12:09:41 +02:00
parent dfc841b779
commit 6faeb4a103
113 changed files with 424 additions and 336 deletions

View file

@ -372,7 +372,7 @@ public class HouseExitWalkReplayTests
public void ExitWalk_PlayerStaysConeVisible_EveryStep()
{
var steps = RunExitWalk();
if (steps is null) return;
if (steps is null) Assert.Fail("Lane=InstalledDat requires an installed retail DAT directory; see docs/release-gate.md.");
var failures = steps.FindAll(s => !s.ConeVisible);
if (failures.Count > 0)
@ -394,7 +394,7 @@ public class HouseExitWalkReplayTests
public void ExitWalk_PlayerSurvivesSealDepth_WhenConeVisible()
{
var steps = RunExitWalk();
if (steps is null) return;
if (steps is null) Assert.Fail("Lane=InstalledDat requires an installed retail DAT directory; see docs/release-gate.md.");
var applicable = steps.FindAll(s => s.DepthCheckApplies);
_out.WriteLine($"depth check applies on {applicable.Count}/{steps.Count} steps");
@ -420,7 +420,7 @@ public class HouseExitWalkReplayTests
public void ExitWalk_StraddlingPlayerDrawsInOutsideStage()
{
var steps = RunExitWalk();
if (steps is null) return;
if (steps is null) Assert.Fail("Lane=InstalledDat requires an installed retail DAT directory; see docs/release-gate.md.");
var straddling = steps.FindAll(s =>
s.RootCellId != 0u && MathF.Abs(s.CenterS) < PlayerSphereRadius);
@ -440,7 +440,7 @@ public class HouseExitWalkReplayTests
public void Diagnostic_ExitWalk_PerStepTable()
{
var steps = RunExitWalk();
if (steps is null) return;
if (steps is null) Assert.Fail("Lane=InstalledDat requires an installed retail DAT directory; see docs/release-gate.md.");
DumpSteps(steps);
// transition summary
int firstOutPlayer = steps.FindIndex(s => s.CenterS > 0f);
@ -460,7 +460,7 @@ public class HouseExitWalkReplayTests
public void Diagnostic_StaleRootWindow_EyeJustOutside()
{
var datDir = CornerFloodReplayTests.ResolveDatDir();
if (datDir is null) { _out.WriteLine("SKIP: dats unavailable"); return; }
if (datDir is null) { _out.WriteLine("SKIP: dats unavailable"); Assert.Fail("Lane=InstalledDat requires an installed retail DAT directory; see docs/release-gate.md."); }
using var dats = new DatCollection(datDir, DatAccessType.Read);
var cells = CornerFloodReplayTests.LoadBuilding(dats);