Support selected Nexus decks with leader skills
Verify and publish checkpoint container / container (push) Successful in 11m54s

This commit is contained in:
Quintine committed 2026-10-29 20:26:46 +11:00
1 parent 91d45d1dec
commit 00e01a7cd2
13 files changed
+314 -23

No files matched your search

@@ -113,9 +113,24 @@ for (const advanced of [false, true]) {
sameSkillCustody(f.game, returned);
for (const kind of ['emperor-revival', 'fremen-revival'] as const) {
const short = createClassicNexusSkillsPaymentsFixture({ advanced, kind, tanks: 2 });
rejected(short.game, short.actor, short.paymentAction);
assert.equal(classicNexusSkillsPaymentsPlayer(short.game, short.actor).tanks, 2);
classicNexusSkillsPaymentsInventory(short.game);
const before = classicNexusSkillsPaymentsPlayer(short.game, short.actor);
if (kind === 'fremen-revival') {
// Atreides already revives both remaining counters for free, so the
// Fremen quota cannot improve this particular two-counter position.
rejected(short.game, short.actor, short.paymentAction);
assert.equal(before.tanks, 2);
classicNexusSkillsPaymentsInventory(short.game);
continue;
}
let granted = applyAction(short.game, short.actor, short.paymentAction);
granted = finishClassicNexusSkillsPaymentsFixture(short, granted);
const after = classicNexusSkillsPaymentsPlayer(granted, short.actor);
assert.equal(after.tanks, 0);
assert.equal(after.reserves, before.reserves + 2);
assert.equal(after.spice, before.spice);
assert.equal(after.revived, before.revived);
assert.equal(after.freeForcesRevived ?? 0, before.freeForcesRevived ?? 0);
classicNexusSkillsPaymentsInventory(granted);
}
const extra = createClassicNexusSkillsPaymentsFixture({ advanced, kind: 'emperor-revival' });
let ordinary = finishClassicNexusSkillsPaymentsFixture(extra,