Skip to main content

✅ Dionysus hangover moves to random lane

CategoryAbility
StatusPassing
Testtests/test_abilities_actions.py::test_dionysus_hangover_moves_to_random_lane

Dionysus Hangover moves Dionysus to a random lane.

Preconditions

  • P1 Main Phase, P1 has 5 AP

  • Lane 0: P1's Dionysus (#038) — READIED

  • RNG mocked to return lane 2

Action

  • Execute Dionysus's Hangover (ability[0], Quick, 0 AP, ready, 1x)
result = execute_ability(state, dionysus_on_field, ability_idx=0, targets=None, rng=rng)
dionysus_after = next(d for d in result.demons if d.unit_id == "038")

Expected Postconditions

  • Dionysus: now in lane 2 (moved from lane 0)

  • Dionysus: still READIED

  • P1 AP: 5 (0 AP cost)

Assertions

assert dionysus_after.lane == 2
assert dionysus_after.state == DemonState.READIED
assert result.players[Side.PLAYER_1].ap == 5