Skip to main content

✅ Gomita heals highest damaged ally on time token gain

CategoryInteraction
StatusPassing
Testtests/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}."
)