✅ Andrealphus toggles at end of opponent phase
| Category | Interaction |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestAndrealphusToggle::test_andrealphus_toggles_at_end_of_opponent_phase |
P2's main phase ends — Andrealphus toggles ALL other local demons.
Preconditions
-
Lane 0: P1's Andrealphus (#080), READIED
-
Lane 0: P1's ally Duban (#001), READIED
-
Lane 0: P1's ally Murmur (#002), EXHAUSTED
-
End of P2's main phase (MAIN_PHASE_END event with side=P2)
Action
- Fire MAIN_PHASE_END event (side=P2)
Expected Postconditions
-
Duban (was READIED) -> EXHAUSTED
-
Murmur (was EXHAUSTED) -> READIED
-
Andrealphus: READIED (unchanged — "Other" means self excluded)
Assertions
assert duban_after.state == DemonState.EXHAUSTED, (
f"Duban (was READIED) must be EXHAUSTED after toggle. Got {duban_after.state}."
)
assert murmur_after.state == DemonState.READIED, (
f"Murmur (was EXHAUSTED) must be READIED after toggle. Got {murmur_after.state}."
)
assert andrealphus_after.state == DemonState.READIED, (
"Andrealphus must remain READIED — 'Other' excludes self."
)