Skip to main content

✅ Snake bind reminder passive registered for all variants

CategoryAbility
StatusPassing
Testtests/test_abilities_familiars.py::test_snake_bind_reminder_passive_registered_for_all_variants

Engine behavior test.

Preconditions

No preconditions specified in docstring.

Action

  • Call get_passive_modifiers for Snake A/B/C/D at ability index 1.
from engine.abilities import get_passive_modifiers

state = make_game_state()

snake_ids = ("036_1", "036_2", "036_3", "036_4")
for snake_id in snake_ids:
snake = DemonInstance(
instance_id=hash(snake_id) & 0xFFFF,
unit_id=snake_id,
owner=Side.PLAYER_1,
lane=0,
current_hp=3,
damage=0,
state=DemonState.READIED,
fused_bottom=None,
is_fused=False,
fatally_wounded=False,
abilities_used_this_turn={},
familiar_of=None,
is_familiar=True,
)
# The no-op should return 0 for any queried stat
pwr_mod = get_passive_modifiers(state, snake, "pwr")

Expected Postconditions

  • For each Snake variant (036_1 through 036_4), get_passive_modifiers

  • returns 0 for any stat key (the no-op returns an empty dict).

Assertions

assert pwr_mod == 0, (
f"{snake_id} ability[1] reminder no-op should return 0 for 'pwr'. "
f"Got {pwr_mod}."
)
def_mod = get_passive_modifiers(state, snake, "def")
assert def_mod == 0, (
f"{snake_id} ability[1] reminder no-op should return 0 for 'def'. "
f"Got {def_mod}."
)