Skip to main content

✅ Stolas noxious gas applies def debuff to all demons

CategoryRegression
StatusPassing
Testtests/test_abilities_actions.py::test_stolas_noxious_gas_applies_def_debuff_to_all_demons

Stolas uses Noxious Gas, applying -2 DEF to ALL demons on the field.

Preconditions

  • P1 Main Phase, P1 has 5 AP

  • Lane 0: P1's Stolas (#022) — READIED

  • Lane 0: P1's Sabnock (#003) — READIED (ALLY)

  • Lane 1: P2's Duban (#001) — READIED (ENEMY)

  • No status effects active

Action

  • Execute Stolas's Noxious Gas (ability[1], Quick, 4 AP, exhaust)
result = execute_ability(state, stolas_on_field, ability_idx=1, targets=None)

Expected Postconditions

  • Stolas: EXHAUSTED, has -2 DEF status

  • Sabnock (ally): has -2 DEF status

  • Duban (enemy): has -2 DEF status

  • P1 AP: 1 (was 5, spent 4)

Assertions

# All 3 demons have -2 DEF status
for d_on_field in [stolas_on_field, sabnock_on_field, duban_on_field]:
def_effects = [e for e in result.status_effects
if e.target_instance_id == d_on_field.instance_id and e.stat == "def"]
assert len(def_effects) == 1
assert def_effects[0].value == -2
assert result.players[Side.PLAYER_1].ap == 1