Skip to main content

✅ Sword of wrath invulnerable while aamon in play

CategoryAbility
StatusPassing
Testtests/test_abilities_familiars.py::test_sword_of_wrath_invulnerable_while_aamon_in_play

Sword of Wrath cannot take damage while Aamon is in play.

Preconditions

  • Lane 0: P1's Aamon (096) — READIED.

  • Lane 0: P1's Sword of Wrath (096_1) — READIED, damage=0.

Action

  • Apply 5 Fixed Damage to Sword of Wrath, then fire DAMAGE_RECEIVED event.
state_with_dmg = deal_fixed_damage(state, sword, 5)

# Fire DAMAGE_RECEIVED — should cancel the damage
new_state = fire_event(
state_with_dmg,
GameEvent(
event_type=EventType.DAMAGE_RECEIVED,
source=None,
target=sword,
value=5,
side=Side.PLAYER_2,
lane=0,
),
)

sword_after = next(d for d in new_state.demons if d.unit_id == "096_1")

Expected Postconditions

  • Sword of Wrath damage = 0 (damage cancelled while Aamon is in play).

Assertions

assert sword_after.damage == 0, (
f"Sword of Wrath should have 0 damage while Aamon is in play, got {sword_after.damage}"
)