Skip to main content

✅ Black serpent upkeep at main phase start

CategoryAbility
StatusPassing
Testtests/test_abilities_familiars.py::test_black_serpent_upkeep_at_main_phase_start

Black Serpent takes 2 Fixed Damage at start of owner's main phase.

Preconditions

  • Lane 0: P1's Black Serpent (098_1) — READIED, 0 damage.

Action

  • Fire MAIN_PHASE_START event for P1.
new_state = fire_event(
state,
GameEvent(
event_type=EventType.MAIN_PHASE_START,
source=None,
target=None,
value=None,
side=Side.PLAYER_1,
lane=None,
),
)

serpent_after = next(d for d in new_state.demons if d.unit_id == "098_1")

Expected Postconditions

  • Black Serpent damage = 2.

Assertions

assert serpent_after.damage == 2, (
f"Black Serpent should have 2 damage from upkeep, got {serpent_after.damage}"
)