✅ Belphegor exhausts after fusion as top
| Category | Ability |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestBelphegorTriggers::test_belphegor_exhausts_after_fusion_as_top |
When Belphegor is the TOP card in a fusion, the result must be EXHAUSTED.
Preconditions
-
Belphegor (#051) is the top card, now fused (is_fused=True), currently READIED
-
(fusion normally readies the demon, but Belphegor's passive overrides this)
Action
- Fire FUSION_PERFORMED event with source = fused Belphegor
result = fire_event(state, event)
belphegor_after = next(d for d in result.demons if d.unit_id == "051")
Expected Postconditions
- Fused Belphegor: EXHAUSTED
Assertions
assert belphegor_after.state == DemonState.EXHAUSTED, (
f"Belphegor (top of fusion) must be EXHAUSTED. Got {belphegor_after.state}."
)