Skip to main content

✅ Valac call snake deploys snake

CategoryAbility
StatusPassing
Testtests/test_abilities_actions.py::test_valac_call_snake_deploys_snake

Valac plays Call Snake — deploys Snake A (036_1) to target lane.

Preconditions

  • P1 Main Phase, P1 has 3 AP

  • Lane 0: P1's Valac (#036) — READIED

  • P1's familiar_deck contains 036_1, 036_2, 036_3, 036_4

Action

  • Execute Valac's Call Snake (ability idx=0, 1 AP, ready, 1x) targeting lane 2
state.players[Side.PLAYER_1].familiar_deck = ["036_1", "036_2", "036_3", "036_4"]
state_after = execute_ability(state, valac_on_field, ability_idx=0, targets=None, choices={"lane": 2})
snake_on_field = [d for d in state_after.demons if d.unit_id == "036_1"]

Expected Postconditions

  • Snake A (036_1) is on field in lane 2

  • P1 familiar_deck: 036_2, 036_3, 036_4

  • P1 AP: 2 (spent 1)

  • Valac: READIED (ready cost, not exhausted)

Assertions

assert len(snake_on_field) == 1
assert snake_on_field[0].lane == 2
assert "036_1" not in remaining