✅ Black serpent upkeep at main phase start
| Category | Ability |
| Status | Passing |
| Test | tests/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}"
)