✅ Gomita heals highest damaged ally on time token gain
| Category | Interaction |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestGomitaTimeTokenHeal::test_gomita_heals_highest_damaged_ally_on_time_token_gain |
P1 gains Time Token while Gomita is on field — heal fires.
Preconditions
-
Lane 0: P1's Gomita (#035, PWR=3, 0 damage)
-
Lane 1: P1's Murmur (#002, 5 damage) — highest-damage ally
-
Lane 2: P1's Sabnock (#003, 2 damage)
Action
- Call apply_gomita_time_token_heal(state, Side.PLAYER_1)
result = apply_gomita_time_token_heal(state, Side.PLAYER_1)
murmur_after = next(d for d in result.demons if d.unit_id == "002")
sabnock_after = next(d for d in result.demons if d.unit_id == "003")
Expected Postconditions
-
Murmur: 5 - 3 = 2 damage (healed by Gomita's PWR=3)
-
Sabnock: 2 damage unchanged (only one target)
-
Gomita: 0 damage unchanged
Assertions
assert murmur_after.damage == 2, (
f"Murmur (highest-damaged ally) healed by PWR=3. Got {murmur_after.damage}."
)
assert sabnock_after.damage == 2, (
f"Sabnock unchanged (only one target healed). Got {sabnock_after.damage}."
)