✅ Enemy in different lane unaffected
| Category | Ability |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestVapulaLocalEnemyApCostAura::test_enemy_in_different_lane_unaffected |
Enemy in a different lane — aura does not apply (Local only).
Preconditions
-
Lane 0: P1's Vapula
-
Lane 1: P2's Duban (enemy, different lane)
Action
- Query ap_cost on Duban
from engine.abilities import get_passive_modifiers, clear_registries
import importlib
import engine.abilities_passive
clear_registries()
importlib.reload(engine.abilities_passive)
import engine.abilities_complex
importlib.reload(engine.abilities_complex)
vapula = make_demon("100", lane=0, owner=Side.PLAYER_1)
duban = make_demon("001", lane=1, owner=Side.PLAYER_2)
state, placed = _make_state_with_demons(vapula, duban)
duban_p = placed[1]
mod = get_passive_modifiers(state, duban_p, "ap_cost")
Expected Postconditions
- Duban has 0 ap_cost modifier from Vapula (out of range).
Assertions
assert mod == 0, (
f"Enemy in different lane should NOT be affected by Vapula's Local aura. Got {mod}."
)