test(engine-ambient): tighten MultiInstanceEngineTests post-setup assertions

Replace trivially-true Pp>=0 with concrete post-Setup pins (LeaderLife=20,
Pp=0, HandCount=3). Drop the unused seed parameter from SampleDeck - every
call already returned the same vanilla deck, and the StressN test name 'Random
Decks' overpromised. The cross-contamination property the test pins (parallel
LeaderLife[] equals sequential LeaderLife[]) holds with identical decks +
distinct masterSeeds, which is what's actually being verified.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
gamer147
2026-06-07 23:28:21 -04:00
parent c789d836f1
commit ab4545b274
2 changed files with 23 additions and 20 deletions

View File

@@ -221,14 +221,13 @@ namespace SVSim.BattleEngine.Tests
.SetValue(null, "headless-udid");
}
// Simple deterministic 40-card deck seed for multi-instance tests. The seed is unused for now
// (every slot is the same vanilla FollowerId), but takes a seed parameter so callers can vary
// it without API churn if/when we want a heterogeneous deck. Card 100011010 is loaded as part
// of EnsureProcessGlobals' HeadlessCardMaster.Load batch so SessionBattleEngine.Setup resolves
// each entry without re-loading.
public static long[] SampleDeck(int seed)
// Simple deterministic 40-card deck for multi-instance tests: every slot is the same vanilla
// FollowerId. Card 100011010 is loaded as part of EnsureProcessGlobals' HeadlessCardMaster.Load
// batch so SessionBattleEngine.Setup resolves each entry without re-loading. Kept a single
// shape — the multi-instance property being verified (per-session ambient isolation across
// parallel battles) is driven by distinct masterSeeds on the engines, not by deck variation.
public static long[] SampleDeck()
{
var rng = new System.Random(seed);
var deck = new long[40];
for (int i = 0; i < 40; i++) deck[i] = FollowerId;
return deck;