This test performs an animation of the left property with four different fill modes. It animates over 0.1 second with a 0.1 second delay. At the end of the animations, we remove the animation name which should cause the value to jump back to the unanimated style.
None
Backwards
Forwards
Both
PASS - id: a expected: 100 actual: 100
PASS - id: b expected: 100 actual: 100
PASS - id: c expected: 100 actual: 100
PASS - id: d expected: 100 actual: 100

