Harness status: OK

Found 32 tests

24 Pass
8 Fail
Pass	Idle -> Active
Fail	Idle -> After
Pass	Before -> Active
Pass	Before -> After
Pass	Active -> Idle, display: none
Pass	After -> Idle, display: none
Fail	Active -> Idle, setting Animation.timeline = null
Fail	Active -> Idle, calling Animation.cancel()
Pass	Active -> Before
Pass	Active -> After
Pass	After -> Before
Pass	After -> Active
Pass	Active -> Active (forwards)
Pass	Active -> Active (backwards)
Pass	Active -> Idle -> Active: animationstart is fired by restarting animation
Pass	Negative playbackRate sanity test(Before -> Active -> Before)
Pass	Redundant change, before -> active, then back
Pass	Redundant change, before -> after, then back
Pass	Redundant change, active -> before, then back
Pass	Redundant change, active -> after, then back
Pass	Redundant change, after -> before, then back
Pass	Redundant change, after -> active, then back
Pass	Call Animation.cancel after canceling animation.
Fail	Restart animation after canceling animation immediately.
Pass	Call Animation.cancel after restarting animation immediately.
Pass	Set timeline and play transition after clearing the timeline.
Pass	Set null target effect after canceling the animation.
Fail	Cancel the animation after clearing the target effect.
Pass	Replacing a running animation should get animationcancel earlier than animationstart
Fail	The cancel event should be fired before the new start event if both have the same position in the animation list
Fail	The cancel event with an earlier position in animation list should be fired earlier
Fail	The order of the cancel events follows the relative positions in the animation list at the point when they were cancelled