Skip to main content

✅ Focus status expires end of main phase

CategoryRegression
StatusPassing
Testtests/test_abilities_complex.py::TestFocalorFocus::test_focus_status_expires_end_of_main_phase

Regression: Confusion #9 — status effects are temporary, expire end of main phase.

Preconditions

  • P1 Main Phase, Focalor has +3 PWR status from Focus

Action

  • Advance phase_counter and call expire_status_effects
state = handler(state, focalor_p, [], {}, None)

# Advance and expire
state.phase_counter += 1
state = expire_status_effects(state)

focalor_after = next(d for d in state.demons if d.unit_id == "069")

Expected Postconditions

  • No active +3 PWR status remains on Focalor

  • Focalor effective PWR returns to base 2

Assertions

assert get_effective_pwr(state, focalor_after) == 2, (
f"Focalor PWR must return to base 2 after status expires. Got {get_effective_pwr(state, focalor_after)}."
)