Skip to main content

✅ Black serpent no upkeep on opponent phase

CategoryAbility
StatusPassing
Testtests/test_abilities_familiars.py::test_black_serpent_no_upkeep_on_opponent_phase

Black Serpent does NOT take upkeep damage at opponent's main phase start.

Preconditions

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

Action

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

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

Expected Postconditions

  • Black Serpent damage = 0 (upkeep only fires on owner's phase).

Assertions

assert serpent_after.damage == 0, "Black Serpent should not take damage on opponent's main phase start."