✅ Megaera survives fatal wound
| Category | Ability |
| Status | Passing |
| Test | tests/test_abilities_familiars.py::test_megaera_survives_fatal_wound |
Megaera (026_2) triggers survival passive like Alecto.
Preconditions
-
Lane 0: P1's Megaera (026_2) — 7 HP, 7 damage (Fatally Wounded).
-
P1 CP: 0.
Action
- Fire FATALLY_WOUNDED event targeting Megaera.
new_state = fire_event(
state,
GameEvent(
event_type=EventType.FATALLY_WOUNDED,
source=None,
target=megaera,
value=0,
side=Side.PLAYER_1,
lane=0,
),
)
megaera_after = next((d for d in new_state.demons if d.unit_id == "026_2"), None)
Expected Postconditions
-
Megaera still on field, EXHAUSTED, damage=0.
-
P1 CP = 2 (Megaera's CP).
Assertions
assert megaera_after is not None, "Megaera should still be on field."
assert megaera_after.state == DemonState.EXHAUSTED
assert megaera_after.damage == 0
assert new_state.players[Side.PLAYER_1].cp == FAMILIARS["026_2"].cp