Skip to main content

✅ Noxious gas applies minus2 def to all demons

CategoryInteraction
StatusPassing
Testtests/test_abilities_complex.py::TestStolas::test_noxious_gas_applies_minus2_def_to_all_demons

Stolas's Noxious Gas applies -2 DEF to ALL demons on the field, including allies.

Action

  • Stolas uses Noxious Gas (Quick, 4 AP, exhaust)
result = execute_ability(state, stolas_p, ability_idx=1)
stolas_after = next(d for d in result.demons if d.unit_id == "022")
murmur_after = next(d for d in result.demons if d.unit_id == "002")
duban_after = next(d for d in result.demons if d.unit_id == "001")

Expected Postconditions

  • Stolas: -2 DEF status, EXHAUSTED

  • Murmur (ally): -2 DEF status

  • Duban (enemy): -2 DEF status

Assertions

for demon_after, name in [(stolas_after, "Stolas"), (murmur_after, "Murmur"), (duban_after, "Duban")]:
effects = get_active_effects_on(result, demon_after)
def_total = sum(e.value for e in effects if e.stat == "def")
assert def_total == -2, f"{name} must have -2 DEF. Got {def_total}."