Skip to main content

✅ Waddle moves stolas one lane

CategoryAbility
StatusPassing
Testtests/test_abilities_complex.py::TestStolas::test_waddle_moves_stolas_one_lane

Stolas uses Waddle to move 1 lane.

Preconditions

  • P1 Main Phase (Start of Turn window), P1 has 3 AP

  • Lane 0: P1's Stolas (#022, HP=15), READIED

Action

  • Stolas uses Waddle (Start of Turn, 0 AP, ready, 1x)
from engine.abilities import execute_ability
result = execute_ability(
state, stolas_p, ability_idx=1, choices={"lane": 1}
)

stolas_after = next(d for d in result.demons if d.unit_id == "022")

Expected Postconditions

  • Stolas: lane=1, READIED (ready_required — does NOT exhaust)

  • P1 AP: 3 (0 AP cost — unchanged)

Assertions

assert stolas_after.lane == 1, (
f"Stolas should move to lane 1. Got lane {stolas_after.lane}."
)
assert stolas_after.state == DemonState.READIED, (
"Stolas should stay READIED — (ready) cost does NOT exhaust."
)
assert result.players[Side.PLAYER_1].ap == 3, (
"Waddle costs 0 AP — P1 AP unchanged."
)