Tests
The automation tests that ship with the plugin, how to run them, and what they protect.
Blendable ships 299 automation tests. Run them from the Session Frontend under the Blendable filter, or from the command line:
UnrealEditor-Cmd.exe YourProject.uproject -ExecCmds="Automation RunTests Blendable" -unattended -nullrhi -nopauseWhat they cover#
- Claims: priority order, asking again replaces, ties, and claims that disappear with their owner
- Blending: every setting in every settings struct actually blends, and every switch flips at the midpoint, except Pitch Response, Keep In Frame and Keep The Same Distance, which stay on and fade what they do instead
- Changes: every change the shipped presets make arrives as one move, from aiming and swapping shoulders to zooming, changing preset and every part of a lock: no part changes speed with a jolt half way, nothing is still moving once it has landed, and neither the framing nor the player's place on screen goes out and back
- Composition: shifts ramp, add up and cap; results blend across Rigs; pushed shifts apply and release; follow lag and its catch-up; the 1.0 to 1.1 conversion
- Collision: the camera arriving, gap centring, and the shot never being shown outside what collision approved
- Shakes: distance falloff, concurrency caps, sensible defaults, settings that blend
- Sequencer: everything expires by itself, and Release All leaves nothing behind
- Presets and tools: the claim order check, exposure staying opt-in, Asset Compare
- Shakes as layers: every kind of layer and driver, the mixer and its ducking, the path to the screen end to end, the bridge to Unreal's shakes, every shipped shake and the shake panel opened in full
- Lock-on: the two-shot's solve and fit, the presets and their ladder, groups and giants, the stick, markers, effects, hooks and the Sequencer track, with the shot diagrams held to the camera frame for frame
- Held angles: top-down, isometric and side-on cameras, both ways of turning them, and locks on them
- Content and panels: every shipped asset passes its own checks, points at nothing outside the plugin, copies as text and still loads by its 1.1 name, and every setting is on its panel once
Go deeperWhy the blending tests matter most
Blending two Rigs is written by hand, one line per setting, across structs with well over a hundred of them. Leaving a setting out doesn't fail loudly: the blend starts from a copy of the old Rig, so a missing line holds the old value for the whole blend and then pops to the new one on the last frame. You'd see a jolt at the end of an otherwise smooth transition, with nothing in the blend code to point at.
The tests fill two structs with different numbers, blend at exactly half, and report anything that didn't land in the middle, then do the same for switches. The first time they ran, they found fifteen missing lines, including both smoothing settings. Add a setting and forget its blend line, and they tell you which one.