Class SkillAssetTests
- Namespace
- GrindFest
- Assembly
- GrindFest.dll
Every asset a skill asks for by address must actually resolve, whether or not any test happens to use that skill.
Why this exists: on 2026-09-16 the Brew animation had never played. Alchemy asked a model file for
"Villager@Cooking01 - Start" and got null, because Addressables exposes exactly ONE AnimationClip per
model file and it was not that one - so WaitForAnimation(null) logged a warning, brewing ran
without an animation, and every test stayed green. The same held for Shield@Block01_Hold/_Hit,
Praying Start (the clip is named "mixamo.com" in that file) and any other address whose asset is
not the one a model file happens to expose. Nothing failed, because a null clip is not an exception and
no test asserted on an animation.
This test does not try to use the skills - that needs a station, reagents, a target or a level per skill, and it is what the per-family tests are for. It asks the cheaper question that would have caught all five: does every address the skill code names resolve? It reads the call sites out of the source, so a NEW skill's addresses are covered the moment it is written, with no list to keep in step.
Editor-only, because the call sites are read from Assets/ source files.
public class SkillAssetTests : DevTest
- Inheritance
-
objectSkillAssetTests
- Inherited Members