Skip to main content

✅ Get ability timing

CategoryAbility
StatusPassing
Testtests/test_action_timing.py::test_get_ability_timing

PRECONDITIONS:

Preconditions

  • Known ability timings from game data

Action

  • get_ability_timing for several known units

Expected Postconditions

  • "001" (Duban) ability[0] — type=Passive → AbilityTiming.PASSIVE

  • "003" (Sabnock) ability[0] — timing=quick → AbilityTiming.QUICK

  • "061" (Malthus) ability[0] — timing=None, type=Action → AbilityTiming.ACTION

  • "061" (Malthus) ability[1] — timing=allied → AbilityTiming.ALLIED

  • "013" (Flauros) ability[0] — timing=universal → AbilityTiming.UNIVERSAL

Assertions

assert get_ability_timing("001", 0) == AbilityTiming.PASSIVE
assert get_ability_timing("003", 0) == AbilityTiming.QUICK
assert get_ability_timing("061", 0) == AbilityTiming.ACTION
assert get_ability_timing("061", 1) == AbilityTiming.ALLIED
assert get_ability_timing("013", 0) == AbilityTiming.UNIVERSAL