diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
commit | 26a029d407be480d791972afb5975cf62c9360a6 (patch) | |
tree | f435a8308119effd964b339f76abb83a57c29483 /devtools/client/inspector/animation/test/browser_animation_infinity-duration_current-time-scrubber.js | |
parent | Initial commit. (diff) | |
download | firefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz firefox-26a029d407be480d791972afb5975cf62c9360a6.zip |
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | devtools/client/inspector/animation/test/browser_animation_infinity-duration_current-time-scrubber.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/devtools/client/inspector/animation/test/browser_animation_infinity-duration_current-time-scrubber.js b/devtools/client/inspector/animation/test/browser_animation_infinity-duration_current-time-scrubber.js new file mode 100644 index 0000000000..b4f82a950e --- /dev/null +++ b/devtools/client/inspector/animation/test/browser_animation_infinity-duration_current-time-scrubber.js @@ -0,0 +1,40 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +// Test whether the scrubber was working for even the animation of infinity duration. + +add_task(async function () { + await addTab(URL_ROOT + "doc_infinity_duration.html"); + await removeAnimatedElementsExcept([".infinity-delay-iteration-start"]); + const { animationInspector, panel } = await openAnimationInspector(); + + info("Set initial state"); + clickOnCurrentTimeScrubberController(animationInspector, panel, 0); + await waitUntilAnimationsPlayState(animationInspector, "paused"); + const initialCurrentTime = + animationInspector.state.animations[0].state.currentTime; + + info("Check whether the animation currentTime was increased"); + clickOnCurrentTimeScrubberController(animationInspector, panel, 1); + await waitUntil( + () => + initialCurrentTime < + animationInspector.state.animations[0].state.currentTime + ); + ok(true, "currentTime should be increased"); + + info("Check whether the progress bar was moved"); + const areaEl = panel.querySelector(".keyframes-progress-bar-area"); + const barEl = areaEl.querySelector(".keyframes-progress-bar"); + const controllerBounds = areaEl.getBoundingClientRect(); + const barBounds = barEl.getBoundingClientRect(); + const barX = barBounds.x + barBounds.width / 2 - controllerBounds.x; + const expectedBarX = controllerBounds.width * 0.5; + Assert.less( + Math.abs(barX - expectedBarX), + 1, + "Progress bar should indicate at progress of 0.5" + ); +}); |