✅ Focus applies plus 3 pwr status
| Category | Ability |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestFocalorFocus::test_focus_applies_plus_3_pwr_status |
Focus applies a +3 PWR status to Focalor that affects the next action.
Preconditions
-
P1 Main Phase, P1 has 3 AP
-
Lane 0: P1's Focalor (#069, PWR=2, 0 damage, READIED)
Action
- Focalor activates Focus (ability_idx=1) — handler applies +3 PWR status
result = handler(state, focalor_p, [], {}, None)
focalor_after = next(d for d in result.demons if d.unit_id == "069")
pwr_mod = get_stat_modifier(result, focalor_after, "pwr")
def_mod = get_stat_modifier(result, focalor_after, "def")
Expected Postconditions
-
Focalor has a +3 PWR status effect (expires end of current main phase)
-
Focalor's effective PWR: 2 (base) + 3 (status) = 5
-
No -3 DEF status (that was the OLD text)
-
No phase-end bonus action granted (that was the OLD text)
Assertions
assert pwr_mod == 3, f"Focus must apply +3 PWR. Got {pwr_mod}."
assert def_mod == 0, f"NEW Focus applies NO -3 DEF (OLD text). Got {def_mod}."
assert get_effective_pwr(result, focalor_after) == 5, (
f"Focalor effective PWR = base 2 + status 3 = 5. Got {get_effective_pwr(result, focalor_after)}."
)
# No phase-end bonus-action marker set (old Focus set one; new Focus does not).
assert result.pending_bonus_actions in (None, []), (
"NEW Focus does NOT grant a phase-end bonus action (OLD behavior)."
)