Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

/* Any copyright is dedicated to the Public Domain.
"use strict";
// Test whether the most left position means negative current time.
add_task(async function () {
await addTab(URL_ROOT + "doc_multi_timings.html");
await removeAnimatedElementsExcept([
".cssanimation-normal",
".delay-negative",
]);
const { animationInspector, panel, inspector } =
await openAnimationInspector();
info("Checking scrubber controller existence");
const controllerEl = panel.querySelector(".current-time-scrubber-area");
ok(controllerEl, "scrubber controller should exist");
info("Checking the current time of most left scrubber position");
const timeScale = animationInspector.state.timeScale;
clickOnCurrentTimeScrubberController(animationInspector, panel, 0);
await waitUntilAnimationsPlayState(animationInspector, "paused");
await waitUntilCurrentTimeChangedAt(
animationInspector,
-1 * timeScale.zeroPositionTime
);
ok(true, "Current time is correct");
info("Select negative current time animation");
await selectNode(".cssanimation-normal", inspector);
await waitUntilCurrentTimeChangedAt(
animationInspector,
-1 * timeScale.zeroPositionTime
);
ok(true, "Current time is correct");
info("Back to 'body' and rewind the animation");
await selectNode("body", inspector);
await waitUntil(
() =>
panel.querySelectorAll(".animation-item").length ===
animationInspector.state.animations.length
);
clickOnRewindButton(animationInspector, panel);
await waitUntilCurrentTimeChangedAt(animationInspector, 0);
});