Closed Bug 1720367 Opened 1 year ago Closed 11 months ago

[wpt-sync] Sync PR 29650 - Refactored scroll timeline tests to defaults to progress based testing.

Categories

(Testing :: web-platform-tests, task, P4)

task

Tracking

(firefox92 fixed)

RESOLVED FIXED
92 Branch
Tracking Status
firefox92 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Attachments

(1 file)

Sync web-platform-tests PR 29650 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/29650
Details from upstream follow.

b'Jordan Taylor <jortaylo@microsoft.com>' wrote:

Refactored scroll timeline tests to defaults to progress based testing.

Converted a few tests to be progress based and fixed a conversion bug in
animation.cc

Bug: 1216655
Change-Id: I0882800677a4af0863883d59970594ea27cfb582
Reviewed-on: https://chromium-review.googlesource.com/3025004
WPT-Export-Revision: 38c27e26773b326113294d4759703893740aeaed

Attached file Notable wpt changes
# CI Results

Ran 13 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 35 tests and 29 subtests

## Status Summary

### Firefox
OK     : 26
FAIL   : 340
TIMEOUT: 9

### Chrome
OK     : 25
PASS   : 346
FAIL   : 2
TIMEOUT: 2

### Safari
OK     : 26
FAIL   : 340
TIMEOUT: 9

## Links
[Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=aa60d9d92ef8ed9b1c063684cc9dbec5a38fd1b9)
[GitHub PR Head](https://wpt.fyi/results/?sha=730af049964fe121af50d690a38610ebfa506cd2&label=pr_head)
[GitHub PR Base](https://wpt.fyi/results/?sha=730af049964fe121af50d690a38610ebfa506cd2&label=pr_base)

## Details

### New Tests That Don't Pass
/scroll-animations/animation-with-animatable-interface.html: SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-32-qr-opt`, `Gecko-windows10-64-qr-debug`, `Gecko-windows10-64-qr-opt`], TIMEOUT [`GitHub`] (Chrome: PASS, Safari: TIMEOUT)
/scroll-animations/animation-with-display-none.html: SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-32-qr-opt`, `Gecko-windows10-64-qr-debug`, `Gecko-windows10-64-qr-opt`], TIMEOUT [`GitHub`] (Chrome: PASS, Safari: TIMEOUT)
/scroll-animations/animation-with-overflow-hidden.html: SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-32-qr-opt`, `Gecko-windows10-64-qr-debug`, `Gecko-windows10-64-qr-opt`], TIMEOUT [`GitHub`] (Chrome: PASS, Safari: TIMEOUT)
/scroll-animations/animation-with-root-scroller.html: SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-32-qr-opt`, `Gecko-windows10-64-qr-debug`, `Gecko-windows10-64-qr-opt`], TIMEOUT [`GitHub`] (Chrome: PASS, Safari: TIMEOUT)
/scroll-animations/animation-with-transform.html: SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-32-qr-opt`, `Gecko-windows10-64-qr-debug`, `Gecko-windows10-64-qr-opt`], TIMEOUT [`GitHub`] (Chrome: PASS, Safari: TIMEOUT)
/scroll-animations/layout-changes-on-percentage-based-timeline.html: SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-32-qr-opt`, `Gecko-windows10-64-qr-debug`, `Gecko-windows10-64-qr-opt`], TIMEOUT [`GitHub`] (Chrome: PASS, Safari: TIMEOUT)
/scroll-animations/set-current-time-before-play.html: SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-32-qr-opt`, `Gecko-windows10-64-qr-debug`, `Gecko-windows10-64-qr-opt`], TIMEOUT [`GitHub`] (Chrome: PASS, Safari: TIMEOUT)
/scroll-animations/two-animations-attach-to-same-scroll-timeline-cancel-one.html: SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-32-qr-opt`, `Gecko-windows10-64-qr-debug`, `Gecko-windows10-64-qr-opt`], TIMEOUT [`GitHub`] (Chrome: PASS, Safari: TIMEOUT)
/scroll-animations/two-animations-attach-to-same-scroll-timeline.html: SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-qr-opt`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-32-qr-opt`, `Gecko-windows10-64-qr-debug`, `Gecko-windows10-64-qr-opt`], TIMEOUT [`GitHub`] (Chrome: PASS, Safari: TIMEOUT)
/scroll-animations/cancel-animation.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Canceling an animation should cause its start time and hold time to be unresolved: FAIL (Chrome: PASS, Safari: FAIL)
  A play-pending ready promise should be rejected when the animation is canceled: FAIL (Chrome: PASS, Safari: FAIL)
  A pause-pending ready promise should be rejected when the animation is canceled: FAIL (Chrome: PASS, Safari: FAIL)
  When an animation is canceled, it should create a resolved Promise: FAIL (Chrome: PASS, Safari: FAIL)
  The ready promise should be replaced when the animation is canceled: FAIL (Chrome: PASS, Safari: FAIL)
  The finished promise should NOT be rejected if the animation is already idle: FAIL (Chrome: PASS, Safari: FAIL)
  The cancel event should NOT be fired if the animation is already idle: FAIL (Chrome: PASS, Safari: FAIL)
  Canceling an animation should fire cancel event on orphaned element: FAIL (Chrome: PASS, Safari: FAIL)
  Canceling an animation with inactive timeline should cause its start time and hold time to be unresolved: FAIL (Chrome: PASS, Safari: FAIL)
  oncancel event is fired when the timeline is inactive.: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/current-time-root-scroller.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  currentTime calculates the correct time for a document.scrollingElement scrollSource: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/current-time-writing-modes.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  currentTime handles direction: rtl correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles writing-mode: vertical-rl correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles writing-mode: vertical-lr correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles startScrollOffset with direction: rtl correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles endScrollOffset with direction: rtl correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles endScrollOffset (inclusive case) with direction: rtl correctly: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/current-time.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Scroll timeline correctly returns duration as 100%: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime calculates the correct time based on scroll progress: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles startScrollOffset correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles endScrollOffset correctly (inclusive cases): FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles endScrollOffset correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles startScrollOffset and endScrollOffset together correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles startScrollOffset == endScrollOffset correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles startScrollOffset > endScrollOffset correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime calculations when multiple scroll offsets are specified: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/effect-updateTiming.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Allows setting the delay to a positive number: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the delay to a negative number: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the delay of an animation in progress: positive delay that causes the animation to be no longer in-effect: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the delay of an animation in progress: negative delay that seeks into the active interval: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the delay of an animation in progress: large negative delay that causes the animation to be finished: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid delay value: NaN: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid delay value: Infinity: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid delay value: -Infinity: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the endDelay to a positive number: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the endDelay to a negative number: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting the endDelay to infinity: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting the endDelay to negative infinity: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the fill to 'none': FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the fill to 'forwards': FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the fill to 'backwards': FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the fill to 'both': FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the iterationStart of an animation in progress: backwards-filling: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the iterationStart of an animation in progress: active phase: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the iterationStart of an animation in progress: forwards-filling: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid iterationStart value: -1: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid iterationStart value: NaN: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid iterationStart value: Infinity: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid iterationStart value: -Infinity: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting iterations to a double value: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting iterations to Infinity: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the iterations of an animation in progress: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the iterations of an animation in progress with duration "auto": FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the duration to 123.45: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the duration to auto: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid duration: -1: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid duration: NaN: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid duration: Infinity: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid duration: -Infinity: FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid duration: "abc": FAIL (Chrome: PASS, Safari: FAIL)
  Throws when setting invalid duration: "100": FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the duration of an animation in progress: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the duration of an animation in progress such that the the start and current time do not change: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the direction to each of the possible keywords: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the direction of an animation in progress from 'normal' to 'reverse': FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the direction of an animation in progress from 'normal' to 'reverse' while at start of active interval: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the direction of an animation in progress from 'normal' to 'reverse' while filling backwards: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the direction of an animation in progress from 'normal' to 'alternate': FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the direction of an animation in progress from 'alternate' to 'alternate-reverse': FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a step-start function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a steps(1, start) function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a steps(2, start) function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a step-end function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a steps(1) function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a steps(1, end) function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a steps(2, end) function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a linear function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a ease function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a ease-in function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a ease-in-out function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a ease-out function: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a easing function which produces values greater than 1: FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing to a easing function which produces values less than 1: FAIL (Chrome: PASS, Safari: FAIL)
  Updates the specified value when setting the easing to 'ease': FAIL (Chrome: PASS, Safari: FAIL)
  Updates the specified value when setting the easing to 'linear': FAIL (Chrome: PASS, Safari: FAIL)
  Updates the specified value when setting the easing to 'ease-in': FAIL (Chrome: PASS, Safari: FAIL)
  Updates the specified value when setting the easing to 'ease-out': FAIL (Chrome: PASS, Safari: FAIL)
  Updates the specified value when setting the easing to 'ease-in-out': FAIL (Chrome: PASS, Safari: FAIL)
  Updates the specified value when setting the easing to 'cubic-bezier(0.1, 5, 0.23, 0)': FAIL (Chrome: PASS, Safari: FAIL)
  Updates the specified value when setting the easing to 'steps(3, start)': FAIL (Chrome: PASS, Safari: FAIL)
  Updates the specified value when setting the easing to 'steps(3)': FAIL (Chrome: PASS, Safari: FAIL)
  Allows setting the easing of an animation in progress: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/element-based-offset-clamp.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and no clamping is expected.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and start is visible at zero offset and should get clamped.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and end is not reachable and should be clamped.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and both start and end are clamped.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and no clamping is expected.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and start is visible at zero offset and should get clamped.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and end is not reachable and should be clamped.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and both start and end are clamped.: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/element-based-offset-unresolved.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  A valid element-based offset's target should be a descendant of timeline's source: FAIL (Chrome: PASS, Safari: FAIL)
  A valid element-based offset's target should have a layout box: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/element-based-offset.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and at start.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and after start.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and at middle.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and at end.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and after end.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and with threshold 0.5.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and with threshold 1.0.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and with end edge.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation vertical and with end edge and threshold 1.0.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and at start.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and after start.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and at middle.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and at end.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and after end.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and with threshold 0.5.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and with threshold 1.0.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and with end edge.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct given
          element-based offsets for orienation horizontal and with end edge and threshold 1.0.: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/finish-animation.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Finishing an animation with a zero playback rate throws: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing an animation seeks to the end time: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing an animation with a current time past the effect end jumps back to the end: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing a reversed animation jumps to zero time: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing a reversed animation with a current time less than zero makes it jump back to zero: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing an animation while play-pending resolves the pending task immediately: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing an animation attached to inactive timeline while play-pending doesn't resolves the pending task: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing an animation resolves the finished promise synchronously: FAIL (Chrome: PASS, Safari: FAIL)
  A pending ready promise is resolved and not replaced when the animation is finished: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing an animation fires finish event on orphaned element: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing a canceled animation sets the current and start times: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing idle animation produces correct state and fires finish event.: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing idle animation attached to inactive timeline pauses the animation.: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing running animation produces correct state and fires finish event.: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing running animation attached to inactive timeline pauses the animation.: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing a paused animation resolves the start time: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing a pause-pending animation resolves the pending task immediately and update the start time: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing a pause-pending animation with negative playback rate resolves the pending task immediately: FAIL (Chrome: PASS, Safari: FAIL)
  Finishing an animation during an aborted pause makes it finished immediately: FAIL (Chrome: PASS, Safari: FAIL)
  A pending playback rate should be applied immediately when an animation is finished: FAIL (Chrome: PASS, Safari: FAIL)
  An exception should be thrown if the effective playback rate is zero: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/multiple-scroll-offsets.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  currentTime calculations when multiple scroll offsets are specified: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime calculations when overlapping scroll offsets are specified: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/pause-animation.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Pausing clears the start time: FAIL (Chrome: PASS, Safari: FAIL)
  Aborting a pause preserves the start time: FAIL (Chrome: PASS, Safari: FAIL)
  A pending ready promise should be resolved and not replaced when the animation is paused: FAIL (Chrome: PASS, Safari: FAIL)
  A pause-pending animation maintains the current time when applying a pending playback rate: FAIL (Chrome: PASS, Safari: FAIL)
  The animation's current time remains fixed after pausing: FAIL (Chrome: PASS, Safari: FAIL)
  Pausing a canceled animation sets the current time: FAIL (Chrome: PASS, Safari: FAIL)
  Pause pending task doesn't run when the timeline is inactive.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct if scroll timeline is activated after animation.pause call.: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/play-animation.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Playing a running animation leaves the current time unchanged: FAIL (Chrome: PASS, Safari: FAIL)
  Playing a finished animation seeks back to the start: FAIL (Chrome: PASS, Safari: FAIL)
  Playing a finished and reversed animation seeks to end: FAIL (Chrome: PASS, Safari: FAIL)
  Playing a pause-pending but previously finished animation seeks back to to the start: FAIL (Chrome: PASS, Safari: FAIL)
  Playing a finished animation clears the start time: FAIL (Chrome: PASS, Safari: FAIL)
  The ready promise should be replaced if the animation is not already pending: FAIL (Chrome: PASS, Safari: FAIL)
  A pending ready promise should be resolved and not replaced when the animation enters the running state: FAIL (Chrome: PASS, Safari: FAIL)
  Resuming an animation from paused calculates start time from hold time: FAIL (Chrome: PASS, Safari: FAIL)
  If a pause operation is interrupted, the ready promise is reused: FAIL (Chrome: PASS, Safari: FAIL)
  A pending playback rate is used when determining auto-rewind behavior: FAIL (Chrome: PASS, Safari: FAIL)
  Playing a canceled animation sets the start time: FAIL (Chrome: PASS, Safari: FAIL)
  Playing a canceled animation backwards sets the start time: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/progress-based-current-time.tentative.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Scroll timeline correctly returns duration as 100%: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime calculates the correct time based on scroll progress: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles startScrollOffset correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles endScrollOffset correctly (inclusive cases): FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles endScrollOffset correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles startScrollOffset and endScrollOffset together correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles startScrollOffset == endScrollOffset correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime handles startScrollOffset > endScrollOffset correctly: FAIL (Chrome: PASS, Safari: FAIL)
  currentTime calculations when multiple scroll offsets are specified: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/reverse-animation.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Reversing an animation inverts the playback rate: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an animation maintains the same current time: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an animation does not cause it to leave the pending state: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an animation does not cause it to resolve the ready promise: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an animation when playbackRate > 0 and currentTime > effect end should make it play from the end: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an animation when playbackRate > 0 and currentTime < 0 should make it play from the end: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an animation when playbackRate < 0 and currentTime < 0 should make it play from the start: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an animation when playbackRate < 0 and currentTime > effect end should make it play from the start: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an animation when playbackRate > 0 and currentTime < 0 and the target effect end is positive infinity should throw an exception: FAIL (Chrome: PASS, Safari: FAIL)
  When reversing throws an exception, the playback rate remains unchanged: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing animation when playbackRate = 0 and currentTime < 0 and the target effect end is positive infinity should NOT throw an exception: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an animation when playbackRate < 0 and currentTime < 0 and the target effect end is positive infinity should make it play from the start: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing when when playbackRate == 0 should preserve the current time and playback rate: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an idle animation from starts playing the animation: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an animation without an active timeline throws an InvalidStateError: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing an animation plays a pausing animation: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing should use the negative pending playback rate: FAIL (Chrome: PASS, Safari: FAIL)
  When reversing fails, it should restore any previous pending playback rate: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/scroll-animation-effect-phases.tentative.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Current times and effect phase before timeline start when delay = 0 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase at timeline start when delay = 0 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase in timeline range when delay = 0 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase before timeline start when delay = 100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase at timeline start when delay = 100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase before effect delay when delay = 100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase at effect start when delay = 100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase in timeline range when delay = 100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase at effect end when delay = 100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase after effect end when delay = 100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase at timeline end when delay = 100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase after timeline end when delay = 100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase before timeline start when delay = -100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase at timeline start when delay = -100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase in timeline range when delay = -100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase at effect end when delay = -100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase after effect end when delay = -100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase at timeline end when delay = -100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase after timeline end when delay = -100 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase before timeline start when delay = 500 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase at timeline start when delay = 500 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase before effect delay when delay = 500 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase at effect start when delay = 500 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase in timeline range when delay = 500 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase at timeline end when delay = 500 |: FAIL (Chrome: PASS, Safari: FAIL)
  Current times and effect phase after timeline end when delay = 500 |: FAIL (Chrome: PASS, Safari: FAIL)
  Verify that (play -> pause -> play) doesn't change phase/progress.: FAIL (Chrome: PASS, Safari: FAIL)
  Pause in before phase, scroll timeline into active phase, animation should remain in the before phase: FAIL (Chrome: PASS, Safari: FAIL)
  Make scroller inactive, then set current time to an in range time: FAIL (Chrome: PASS, Safari: FAIL)
  Animation effect is still applied after pausing and making timeline inactive.: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/scroll-animation-inactive-timeline.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Play pending task doesn't run when the timeline is inactive.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct if scroll timeline is activated after animation.play call.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct if scroll timeline is activated after setting start time.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation current time is correct when the timeline becomes newly inactive and then active again.: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/scroll-animation.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Animation start and current times are correct for each animation state.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct for each animation state when the animation starts playing with advanced scroller.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation start and current times are correct when multiple animations are attached to the same timeline.: FAIL (Chrome: PASS, Safari: FAIL)
  Finished animation plays on reverse scrolling.: FAIL (Chrome: PASS, Safari: FAIL)
  Sending animation finished events by finished animation on reverse scrolling.: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/scroll-timeline-invalidation.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Animation current time and effect local time are updated after scroller content size changes.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation current time and effect local time are updated after scroller size changes.: FAIL (Chrome: PASS, Safari: FAIL)
  If scroll animation resizes its scroll timeline scroller, layout runs only once to reflect the initial update.: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/scroll-timeline-phases.tentative.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Setting scroll timeline phase (which is readonly) throws TypeError.: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while scroll offset is before start: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while scroll offset is at start: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while scroll offset is in range: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while scroll offset is at end: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while scroll offset is after end: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while start offset is greater than end offset and scroll offset is before end: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while start offset is greater than end offset and scroll offset is at end: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while start offset is greater than end offset and scroll offset is before start: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while start offset is greater than end offset and scroll offset is at start: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while start offset is greater than end offset and scroll offset is after start: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while start offset is equal to end offset and scroll offset is before start: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while start offset is equal to end offset and scroll offset is at both: FAIL (Chrome: PASS, Safari: FAIL)
  Timeline phase while start offset is equal to end offset and scroll offset is after end: FAIL (Chrome: PASS, Safari: FAIL)
  Scroll timeline phase should be active when at scroll maximum and endScrollOffset is equal to maximum scroll offset.: FAIL (Chrome: PASS, Safari: FAIL)
  Scroll timeline starts inactive, can transition to active, and then back to inactive.: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/scroll-timeline-snapshotting.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: TIMEOUT, Safari: OK)
  ScrollTimeline current time is updated after programmatic animated scroll.: FAIL (Chrome: TIMEOUT, Safari: FAIL)
/scroll-animations/setting-current-time.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Setting animation current time to null throws TypeError.: FAIL (Chrome: PASS, Safari: FAIL)
  Set animation current time to a valid value without playing.: FAIL (Chrome: PASS, Safari: FAIL)
  Set animation current time to a valid value while playing.: FAIL (Chrome: PASS, Safari: FAIL)
  Set animation current time to a value beyond effect end.: FAIL (Chrome: PASS, Safari: FAIL)
  Set animation current time to a negative value.: FAIL (Chrome: PASS, Safari: FAIL)
  Setting current time while play pending overrides the current time: FAIL (Chrome: PASS, Safari: FAIL)
  Setting animation.currentTime then restarting the animation should reset the current time.: FAIL (Chrome: PASS, Safari: FAIL)
  Set Animation current time then scroll.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation current time and play state are correct when current time is set while the timeline is inactive.: FAIL (Chrome: PASS, Safari: FAIL)
  Animation current time set while the timeline is inactive holds when the timeline becomes active again.: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/setting-playback-rate.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Zero current time is not affected by playbackRate set while the animation is in idle state.: FAIL (Chrome: PASS, Safari: FAIL)
  Zero current time is not affected by playbackRate set while the animation is in play-pending state.: FAIL (Chrome: PASS, Safari: FAIL)
  Initial current time is scaled by playbackRate set while scroll-linked animation is in running state.: FAIL (Chrome: PASS, Safari: FAIL)
  The current time is not affected by playbackRate set while the scroll-linked animation is in play state.: FAIL (Chrome: PASS, Safari: FAIL)
  The playback rate set before scroll-linked animation started playing affects the rate of progress of the current time: FAIL (Chrome: PASS, Safari: FAIL)
  The playback rate affects the rate of progress of the current time when scrolling: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the playback rate while play-pending preserves the current time from scrollTimeline.: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the playback rate while play-pending preserves the set current time.: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the playback rate while playing preserves the current time from scrollTimeline.: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the playback rate while playing preserves the set current time.: FAIL (Chrome: PASS, Safari: FAIL)
  Negative initial playback rate should correctly modify initial current time.: FAIL (Chrome: PASS, Safari: FAIL)
  Reversing the playback rate while playing correctly impacts current time during future scrolls: FAIL (Chrome: PASS, Safari: FAIL)
  Zero initial playback rate should correctly modify initial current time.: FAIL (Chrome: PASS, Safari: FAIL)
  Setting a zero playback rate while running preserves the current time: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/setting-start-time.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Setting the start time clears the hold time: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the start time clears the hold time when the timeline is inactive: FAIL (Chrome: PASS, Safari: FAIL)
  Setting an unresolved start time sets the hold time: FAIL (Chrome: PASS, Safari: FAIL)
  Setting an unresolved start time sets the hold time to unresolved when the timeline is inactive: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the start time resolves a pending ready promise: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the start time resolves a pending ready promise when the timelineis inactive: FAIL (Chrome: PASS, Safari: FAIL)
  Setting an unresolved start time on a play-pending animation makes it paused: FAIL (Chrome: PASS, Safari: FAIL)
  Setting an unresolved start time on a play-pending animation makes it idle when the timeline is inactive: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the start time updates the finished state: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the start time on a running animation updates the play state: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the start time on a reverse running animation updates the play state: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the start time resolves a pending pause task: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the start time of a play-pending animation applies a pending playback rate: FAIL (Chrome: PASS, Safari: FAIL)
  Setting the start time of a playing animation applies a pending playback rate: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/setting-timeline.tentative.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Setting a scroll timeline on a play-pending animation synchronizes currentTime of the animation with the scroll position.: FAIL (Chrome: PASS, Safari: FAIL)
  Setting a scroll timeline on a pause-pending animation fixes the currentTime of the animation based on the scroll position once resumed: FAIL (Chrome: PASS, Safari: FAIL)
  Setting a scroll timeline on a reversed play-pending animation synchronizes the currentTime of the animation with the scroll position.: FAIL (Chrome: PASS, Safari: FAIL)
  Setting a scroll timeline on a running animation synchronizes the currentTime of the animation with the scroll position.: FAIL (Chrome: PASS, Safari: FAIL)
  Setting a scroll timeline on a paused animation fixes the currentTime of the animation based on the scroll position when resumed: FAIL (Chrome: PASS, Safari: FAIL)
  Setting a scroll timeline on a reversed paused animation fixes the currentTime of the animation based on the scroll position when resumed: FAIL (Chrome: FAIL, Safari: FAIL)
  Transitioning from a scroll timeline to a document timeline on a running animation preserves currentTime: FAIL (Chrome: PASS, Safari: FAIL)
  Transitioning from a scroll timeline to a document timeline on a pause-pending animation preserves currentTime: FAIL (Chrome: PASS, Safari: FAIL)
  Transition from a scroll timeline to a document timeline on a reversed paused animation maintains correct currentTime: FAIL (Chrome: FAIL, Safari: FAIL)
  Transitioning from a scroll timeline to a null timeline on a running animation preserves the play state: FAIL (Chrome: PASS, Safari: FAIL)
  Switching from a null timeline to a scroll timeline on an animation with a resolved start time preserved the play state: FAIL (Chrome: PASS, Safari: FAIL)
  Switching from one scroll timeline to another updates currentTime: FAIL (Chrome: PASS, Safari: FAIL)
  Switching from a document timeline to a scroll timeline updates currentTime when unpaused via CSS.: FAIL (Chrome: PASS, Safari: FAIL)
  Switching from a document timeline to a scroll timeline and updating currentTime preserves the new value when unpaused.: FAIL (Chrome: PASS, Safari: FAIL)
  Switching from a document timeline to a scroll timeline and updating startTime preserves the new value when play is called.: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/update-playback-rate.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Updating the playback rate maintains the current time: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the playback rate while running makes the animation pending: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the playback rate on a play-pending animation maintains the current time: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the playback rate on a pause-pending animation maintains the current time: FAIL (Chrome: PASS, Safari: FAIL)
  If a pending playback rate is set multiple times, the latest wins: FAIL (Chrome: PASS, Safari: FAIL)
  In the idle state, the playback rate is applied immediately: FAIL (Chrome: PASS, Safari: FAIL)
  In the paused state, the playback rate is applied immediately: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the playback rate on a finished animation maintains the current time: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the playback rate to zero on a finished animation maintains the current time: FAIL (Chrome: PASS, Safari: FAIL)
/scroll-animations/updating-the-finished-state.html: OK [`GitHub`], SKIP [`Gecko-android-em-7.0-x86_64-debug-geckoview`, `Gecko-android-em-7.0-x86_64-opt-geckoview`, `Gecko-android-em-7.0-x86_64-qr-debug-geckoview`, `Gecko-android-em-7.0-x86_64-qr-opt-geckoview`, `Gecko-linux1804-64-debug`, `Gecko-linux1804-64-opt`, `Gecko-linux1804-64-qr-debug`, `Gecko-linux1804-64-tsan-opt`, `Gecko-windows10-32-qr-debug`, `Gecko-windows10-64-qr-debug`] (Chrome: OK, Safari: OK)
  Updating the finished state when playing past end: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when seeking past end: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when playing exactly to end: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when seeking exactly to end: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when playing in reverse past zero: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when seeking a reversed animation past zero: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when playing  a reversed animation exactly to zero: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when seeking a reversed animation exactly to zero: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when playing before end: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when seeking before end: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when seeking a reversed animation before end: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when playback rate is zero and the current time is less than zero: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when playback rate is zero and the current time is less than end: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when playback rate is zero and the current time is greater than end: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when current time is unresolved: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when there is a pending task: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when start time is unresolved and did seek = false: FAIL (Chrome: PASS, Safari: FAIL)
  Updating the finished state when start time is unresolved and did seek = true: FAIL (Chrome: PASS, Safari: FAIL)
  Finish notification steps don't run when the animation seeks to finish and then seeks back again: FAIL (Chrome: PASS, Safari: FAIL)
  Finish notification steps run when the animation completes normally: FAIL (Chrome: PASS, Safari: FAIL)
  Finish notification steps run when an animation without a target effect completes normally: FAIL (Chrome: PASS, Safari: FAIL)
  Finish notification steps run when the animation seeks past finish: FAIL (Chrome: PASS, Safari: FAIL)
  Finish notification steps run when the animation completes with .finish(), even if we then seek away: FAIL (Chrome: PASS, Safari: FAIL)
  Animation finished promise is replaced after seeking back to start: FAIL (Chrome: PASS, Safari: FAIL)
  Animation finished promise is replaced after replaying from start: FAIL (Chrome: PASS, Safari: FAIL)
  Animation finish event is fired again after seeking back to start: FAIL (Chrome: PASS, Safari: FAIL)
  Animation finish event is fired again after replaying from start: FAIL (Chrome: PASS, Safari: FAIL)
  finish event is not fired at the end of the active interval when the endDelay has not expired: FAIL (Chrome: PASS, Safari: FAIL)
  finish event is fired after the endDelay has expired: FAIL (Chrome: PASS, Safari: FAIL)

(See attachment for full changes)
Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/2649351328e7
[wpt PR 29650] - Refactored scroll timeline tests to defaults to progress based testing., a=testonly
Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/8768422cd249
[wpt PR 29650] - Refactored scroll timeline tests to defaults to progress based testing., a=testonly
Status: NEW → RESOLVED
Closed: 11 months ago
Resolution: --- → FIXED
Target Milestone: --- → 92 Branch
You need to log in before you can comment on or make changes to this bug.