diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 48c13a1b..65c3a8e8 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -1,4 +1,4 @@ -name: Deploy site to Pages +name: Build and test on: # Runs on pushes targeting the default branch @@ -6,6 +6,11 @@ on: branches: - master - main + pull_request: + branches: + - master + - main + workflow_dispatch: # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages @@ -46,8 +51,9 @@ jobs: - name: WPT hosts run: "./test/wpt/wpt make-hosts-file | sudo tee -a /etc/hosts" - name: WPT tests - continue-on-error: true run: "npm run test:wpt" + - name: Expected results + run: "npm run test:compare" - name: Clean build files run: "rm -rf node_modules test/wpt" - name: Upload artifact @@ -62,6 +68,7 @@ jobs: url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest needs: build + if: github.event_name == 'push' steps: - name: Deploy to GitHub Pages id: deployment diff --git a/package.json b/package.json index 26dbe83d..4c940da3 100644 --- a/package.json +++ b/package.json @@ -9,8 +9,9 @@ "dev": "run-all \"serve\" \" microbundle watch -f iife \"", "deploy": "npm run build", "test-setup": "node test/setup/checkout-wpt.mjs", - "test:wpt": "npm run test-setup && cd test && cd wpt && python wpt run --headless -y --log-wptreport ../report/data.json --log-wptscreenshot=../report/screenshots.txt --log-html=../report/index.html --inject-script ../../dist/scroll-timeline.js firefox scroll-animations", - "test:simple": "npm run test-setup && cd test && cd wpt && python wpt serve --inject-script ../../dist/scroll-timeline.js" + "test:wpt": "npm run test-setup && cd test && cd wpt && (python wpt run --headless -y --log-wptreport ../report/data.json --log-wptscreenshot=../report/screenshots.txt --log-html=../report/index.html --inject-script ../../dist/scroll-timeline.js firefox scroll-animations || true)", + "test:simple": "npm run test-setup && cd test && cd wpt && python wpt serve --inject-script ../../dist/scroll-timeline.js", + "test:compare": "node test/summarize-json.mjs test/report/data.json > test/report/summary.txt && echo 'Comparing test results. If different and expected, patch the following diff to test/expected.txt:' && diff test/expected.txt test/report/summary.txt" }, "repository": { "type": "git", diff --git a/test/expected.txt b/test/expected.txt new file mode 100644 index 00000000..ee21004b --- /dev/null +++ b/test/expected.txt @@ -0,0 +1,960 @@ +FAIL /scroll-animations/css/animation-duration-auto.tentative.html A value of auto can be specified for animation-duration +FAIL /scroll-animations/css/animation-duration-auto.tentative.html e.style['animation-duration'] = "auto" should set the property value +FAIL /scroll-animations/css/animation-duration-auto.tentative.html Property animation-duration value 'auto' +FAIL /scroll-animations/css/animation-duration-auto.tentative.html e.style['animation'] = "auto cubic-bezier(0, -2, 1, 3) -3s 4 reverse both paused anim" should set the property value +FAIL /scroll-animations/css/animation-duration-auto.tentative.html Property animation value 'auto cubic-bezier(0, -2, 1, 3) -3s 4 reverse both paused anim' +FAIL /scroll-animations/css/animation-events.html View timelime generates animationstart and animationend events +FAIL /scroll-animations/css/animation-range-ignored.html Animation API call rangeStart overrides animation-range-start +FAIL /scroll-animations/css/animation-range-ignored.html Animation API call rangeEnd overrides animation-range-end +FAIL /scroll-animations/css/animation-range-normal-matches-cover.html Changing the animation range updates the play state +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim" should set the property value +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim initial" should not set the property value +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim 2000" should not set the property value +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim scroll()" should not set the property value +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim view()" should not set the property value +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim timeline" should not set the property value +PASS /scroll-animations/css/animation-shorthand.html Property animation value '1s linear 1s 2 reverse forwards paused anim' +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should set animation-delay +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should set animation-direction +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should set animation-duration +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should set animation-fill-mode +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should set animation-iteration-count +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should set animation-name +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should set animation-play-state +FAIL /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should set animation-range-end +FAIL /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should set animation-range-start +FAIL /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should set animation-timeline +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should set animation-timing-function +PASS /scroll-animations/css/animation-shorthand.html e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1,\n 1s linear 1s 2 reverse forwards paused anim2,\n 1s linear 1s 2 reverse forwards paused anim3" should not set unrelated longhands +FAIL /scroll-animations/css/animation-shorthand.html Animation shorthand can not represent non-initial timelines (specified) +FAIL /scroll-animations/css/animation-shorthand.html Animation shorthand can not represent non-initial timelines (computed) +FAIL /scroll-animations/css/animation-shorthand.html Animation shorthand can not represent non-initial animation-delay-end (specified) +FAIL /scroll-animations/css/animation-shorthand.html Animation shorthand can not represent non-initial animation-delay-end (computed) +FAIL /scroll-animations/css/animation-shorthand.html Animation shorthand can not represent non-initial animation-range-start (specified) +FAIL /scroll-animations/css/animation-shorthand.html Animation shorthand can not represent non-initial animation-range-start (computed) +FAIL /scroll-animations/css/animation-shorthand.html Animation shorthand can not represent non-initial animation-range-end (specified) +FAIL /scroll-animations/css/animation-shorthand.html Animation shorthand can not represent non-initial animation-range-end (computed) +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'initial' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'inherit' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'unset' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'revert' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'auto' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'none' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'auto, auto' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'none, none' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'auto, none' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'none, auto' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value '--test' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value '--test1, --test2' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value '--test1, --test2, none, --test3, auto' +FAIL /scroll-animations/css/animation-timeline-computed.html The animation-timeline property shows up in CSSStyleDeclaration enumeration +FAIL /scroll-animations/css/animation-timeline-computed.html The animation-timeline property shows up in CSSStyleDeclaration.cssText +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll()' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(block)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(inline)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(x)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(y)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(root)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(nearest)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(self)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(self), scroll(nearest)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(inline nearest)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(nearest inline)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(block self)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(self block)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'scroll(y root)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view()' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view(block)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view(inline)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view(x)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view(y)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view(y 1px)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view(1px auto)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view(auto 1px)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view(y 1px auto)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view(1px y)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view(y auto)' +FAIL /scroll-animations/css/animation-timeline-computed.html Property animation-timeline value 'view(y auto auto)' +FAIL /scroll-animations/css/animation-timeline-deferred.html Animation.timeline returns attached timeline +FAIL /scroll-animations/css/animation-timeline-deferred.html Animation.timeline returns null for inactive deferred timeline +FAIL /scroll-animations/css/animation-timeline-deferred.html Animation.timeline returns null for inactive (overattached) deferred timeline +FAIL /scroll-animations/css/animation-timeline-ignored.tentative.html Changing animation-timeline changes the timeline (sanity check) +FAIL /scroll-animations/css/animation-timeline-ignored.tentative.html animation-timeline ignored after setting timeline with JS (ScrollTimeline from JS) +FAIL /scroll-animations/css/animation-timeline-ignored.tentative.html animation-timeline ignored after setting timeline with JS (ScrollTimeline from CSS) +PASS /scroll-animations/css/animation-timeline-ignored.tentative.html animation-timeline ignored after setting timeline with JS (document timeline) +PASS /scroll-animations/css/animation-timeline-ignored.tentative.html animation-timeline ignored after setting timeline with JS (null) +FAIL /scroll-animations/css/animation-timeline-in-keyframe.html The animation-timeline property may not be used in keyframes +PASS /scroll-animations/css/animation-timeline-multiple.html animation-timeline works with multiple timelines +FAIL /scroll-animations/css/animation-timeline-none.html Animation with animation-timeline:none holds current time at zero +FAIL /scroll-animations/css/animation-timeline-none.html Animation with unknown timeline name holds current time at zero +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "initial" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "inherit" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "unset" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "revert" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "auto" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "none" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "auto, auto" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "none, none" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "auto, none" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "none, auto" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "--test" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "--test1, --test2" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "--test1, --test2, none, --test3, auto" should set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "test1" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "10px" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "auto auto" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "none none" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "foo bar" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "\"foo\" \"bar\"" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "rgb(1, 2, 3)" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "#fefefe" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "\"test\"" should not set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll()" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = " scroll() " should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(block)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(inline)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(x)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(y)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(root)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(nearest)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(self)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(inline nearest)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(nearest inline)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(block self)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(self block)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(y root)" should set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(abc root)" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(abc)" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(y abc)" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "scroll(\"string\")" should not set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view()" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = " view() " should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(block)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(inline)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(x)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(y)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(y 1px 2px)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(y 1px)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(y auto)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(y auto auto)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(y auto 1px)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(1px 2px y)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(1px y)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(auto x)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(1px 2px)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(1px)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(1px 1px)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(1px auto)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(auto calc(1% + 1px))" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(auto)" should set the property value +FAIL /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(auto auto)" should set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(y 1px 2px 3px)" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(1px y 3px)" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(1px 2px 3px)" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(abc block)" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(abc)" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(y abc)" should not set the property value +PASS /scroll-animations/css/animation-timeline-parsing.html e.style['animation-timeline'] = "view(\"string\")" should not set the property value +FAIL /scroll-animations/css/merge-timeline-offset-keyframes.html Keyframes with same easing and timeline offset are merged. +FAIL /scroll-animations/css/merge-timeline-offset-keyframes.html Keyframes with same timeline offset but different easing function are not merged. +PASS /scroll-animations/css/progress-based-animation-timeline.html progress based animation timeline works +PASS /scroll-animations/css/pseudo-on-scroller.html scroll nearest on pseudo-element attaches to parent scroll container +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'initial' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'inherit' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'unset' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'revert' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'block' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'inline' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'y' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'x' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'block, inline' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'inline, block' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'block, y, x, inline' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html Property scroll-timeline-axis value 'inline, inline, inline, inline' +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html The scroll-timeline-axis property shows up in CSSStyleDeclaration enumeration +FAIL /scroll-animations/css/scroll-timeline-axis-computed.html The scroll-timeline-axis property shows up in CSSStyleDeclaration.cssText +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "initial" should set the property value +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "inherit" should set the property value +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "unset" should set the property value +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "revert" should set the property value +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "block" should set the property value +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "inline" should set the property value +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "y" should set the property value +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "x" should set the property value +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "block, inline" should set the property value +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "inline, block" should set the property value +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "block, y, x, inline" should set the property value +FAIL /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "inline, inline, inline, inline" should set the property value +PASS /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "abc" should not set the property value +PASS /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "10px" should not set the property value +PASS /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "auto" should not set the property value +PASS /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "none" should not set the property value +PASS /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "block inline" should not set the property value +PASS /scroll-animations/css/scroll-timeline-axis-parsing.html e.style['scroll-timeline-axis'] = "block / inline" should not set the property value +PASS /scroll-animations/css/scroll-timeline-axis-writing-mode.html Initial axis +PASS /scroll-animations/css/scroll-timeline-axis-writing-mode.html Vertical axis +PASS /scroll-animations/css/scroll-timeline-axis-writing-mode.html Horizontal axis +PASS /scroll-animations/css/scroll-timeline-axis-writing-mode.html Block axis in horizontal writing-mode +PASS /scroll-animations/css/scroll-timeline-axis-writing-mode.html Inline axis in horizontal writing-mode +PASS /scroll-animations/css/scroll-timeline-axis-writing-mode.html Block axis in vertical writing-mode +PASS /scroll-animations/css/scroll-timeline-axis-writing-mode.html Inline axis in vertical writing-mode +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Switching between document and scroll timelines [immediate] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Switching between document and scroll timelines [scroll] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Switching pending animation from document to scroll timelines [immediate] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Switching pending animation from document to scroll timelines [scroll] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Changing computed value of animation-timeline changes effective timeline [immediate] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Changing computed value of animation-timeline changes effective timeline [scroll] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Changing to/from animation-timeline:none [immediate] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Changing to/from animation-timeline:none [scroll] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Reverse animation direction [immediate] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Reverse animation direction [scroll] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Change to timeline attachment while paused [immediate] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Change to timeline attachment while paused [scroll] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Switching timelines and pausing at the same time [immediate] +FAIL /scroll-animations/css/scroll-timeline-dynamic.tentative.html Switching timelines and pausing at the same time [scroll] +FAIL /scroll-animations/css/scroll-timeline-inactive.html Animation does not apply when the timeline is inactive because there is not scroll range +FAIL /scroll-animations/css/scroll-timeline-inactive.html Animation does not apply when timeline is initially inactive +FAIL /scroll-animations/css/scroll-timeline-name-computed.html Property scroll-timeline-name value 'initial' +FAIL /scroll-animations/css/scroll-timeline-name-computed.html Property scroll-timeline-name value 'inherit' +FAIL /scroll-animations/css/scroll-timeline-name-computed.html Property scroll-timeline-name value 'unset' +FAIL /scroll-animations/css/scroll-timeline-name-computed.html Property scroll-timeline-name value 'revert' +FAIL /scroll-animations/css/scroll-timeline-name-computed.html Property scroll-timeline-name value 'none' +FAIL /scroll-animations/css/scroll-timeline-name-computed.html Property scroll-timeline-name value '--foo' +FAIL /scroll-animations/css/scroll-timeline-name-computed.html Property scroll-timeline-name value '--foo, --bar' +FAIL /scroll-animations/css/scroll-timeline-name-computed.html Property scroll-timeline-name value '--bar, --foo' +FAIL /scroll-animations/css/scroll-timeline-name-computed.html Property scroll-timeline-name value '--a, --b, --c, --D, --e' +FAIL /scroll-animations/css/scroll-timeline-name-computed.html Property scroll-timeline-name value 'none, none' +FAIL /scroll-animations/css/scroll-timeline-name-computed.html Property scroll-timeline-name value '--a, --b, --c, none, --d, --e' +FAIL /scroll-animations/css/scroll-timeline-name-computed.html The scroll-timeline-name property shows up in CSSStyleDeclaration enumeration +FAIL /scroll-animations/css/scroll-timeline-name-computed.html The scroll-timeline-name property shows up in CSSStyleDeclaration.cssText +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "initial" should set the property value +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "inherit" should set the property value +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "unset" should set the property value +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "revert" should set the property value +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "none" should set the property value +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "--abc" should set the property value +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = " --abc" should set the property value +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "--aBc" should set the property value +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "--foo, --bar" should set the property value +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "--bar, --foo" should set the property value +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "none, none" should set the property value +FAIL /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "--a, none, --b" should set the property value +PASS /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "auto" should not set the property value +PASS /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "abc" should not set the property value +PASS /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "default" should not set the property value +PASS /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "10px" should not set the property value +PASS /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "foo bar" should not set the property value +PASS /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "\"foo\" \"bar\"" should not set the property value +PASS /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "rgb(1, 2, 3)" should not set the property value +PASS /scroll-animations/css/scroll-timeline-name-parsing.html e.style['scroll-timeline-name'] = "#fefefe" should not set the property value +FAIL /scroll-animations/css/scroll-timeline-name-shadow.html Outer animation can see scroll timeline defined by :host +FAIL /scroll-animations/css/scroll-timeline-name-shadow.html Outer animation can see scroll timeline defined by ::slotted +FAIL /scroll-animations/css/scroll-timeline-name-shadow.html Inner animation can see scroll timeline defined by ::part +FAIL /scroll-animations/css/scroll-timeline-name-shadow.html Slotted element can see scroll timeline within the shadow +PASS /scroll-animations/css/scroll-timeline-sampling.html Scroll position is sampled once per frame +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "none block" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "none inline" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc x" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc inline" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--aBc inline" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--inline inline" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--inline block" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--block block" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--y block" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--x block" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--a, --b, --c" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--a inline, --b block, --c y" should set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--auto" should set the property value +PASS /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "" should not set the property value +PASS /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc --abc" should not set the property value +PASS /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "block none" should not set the property value +PASS /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "inline --abc" should not set the property value +PASS /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "default" should not set the property value +PASS /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "," should not set the property value +PASS /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = ",,block,," should not set the property value +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value 'none block' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value '--abc inline' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value 'none y' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value '--abc x' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value '--y y' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value '--abc' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value '--inline block' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value '--block block' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value '--y block' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value '--x block' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value '--a, --b, --c' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Property scroll-timeline value '--a inline, --b block, --c y' +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc y" should set scroll-timeline-axis +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc y" should set scroll-timeline-name +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc y" should not set unrelated longhands +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--inline x" should set scroll-timeline-axis +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--inline x" should set scroll-timeline-name +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--inline x" should not set unrelated longhands +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc y, --def" should set scroll-timeline-axis +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc y, --def" should set scroll-timeline-name +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc y, --def" should not set unrelated longhands +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc, --def" should set scroll-timeline-axis +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc, --def" should set scroll-timeline-name +FAIL /scroll-animations/css/scroll-timeline-shorthand.html e.style['scroll-timeline'] = "--abc, --def" should not set unrelated longhands +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Shorthand contraction of scroll-timeline-name:--abc:undefined;scroll-timeline-axis:inline:undefined +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Shorthand contraction of scroll-timeline-name:--a, --b:undefined;scroll-timeline-axis:inline, block:undefined +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Shorthand contraction of scroll-timeline-name:none, none:undefined;scroll-timeline-axis:block, block:undefined +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Shorthand contraction of scroll-timeline-name:--a, --b, --c:undefined;scroll-timeline-axis:inline, inline:undefined +FAIL /scroll-animations/css/scroll-timeline-shorthand.html Shorthand contraction of scroll-timeline-name:--a, --b:undefined;scroll-timeline-axis:inline, inline, inline:undefined +FAIL /scroll-animations/css/scroll-timeline-with-percent-delay.tentative.html ScrollTimeline with animation delays as percentages +FAIL /scroll-animations/css/timeline-offset-in-keyframe-change-timeline.tentative.html getKeyframes with timeline-offsets +FAIL /scroll-animations/css/timeline-offset-keyframes-hidden-subject.html Keyframes with timeline-offsets ignored when timeline is inactive +FAIL /scroll-animations/css/timeline-offset-keyframes-with-document-timeline.html Keyframes with timeline-offsets reported but not reachable when using a document timeline +FAIL /scroll-animations/css/timeline-scope-computed.tentative.html Property timeline-scope value 'initial' +FAIL /scroll-animations/css/timeline-scope-computed.tentative.html Property timeline-scope value 'inherit' +FAIL /scroll-animations/css/timeline-scope-computed.tentative.html Property timeline-scope value 'unset' +FAIL /scroll-animations/css/timeline-scope-computed.tentative.html Property timeline-scope value 'revert' +FAIL /scroll-animations/css/timeline-scope-computed.tentative.html Property timeline-scope value 'none' +FAIL /scroll-animations/css/timeline-scope-computed.tentative.html Property timeline-scope value 'test' +FAIL /scroll-animations/css/timeline-scope-computed.tentative.html Property timeline-scope value 'foo, bar' +FAIL /scroll-animations/css/timeline-scope-computed.tentative.html Property timeline-scope value 'bar, foo' +FAIL /scroll-animations/css/timeline-scope-computed.tentative.html Property timeline-scope value 'a, b, c, D, e' +FAIL /scroll-animations/css/timeline-scope-computed.tentative.html The timeline-scope property shows up in CSSStyleDeclaration enumeration +FAIL /scroll-animations/css/timeline-scope-computed.tentative.html The timeline-scope property shows up in CSSStyleDeclaration.cssText +FAIL /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "initial" should set the property value +FAIL /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "inherit" should set the property value +FAIL /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "unset" should set the property value +FAIL /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "revert" should set the property value +FAIL /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "none" should set the property value +FAIL /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "abc" should set the property value +FAIL /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = " abc" should set the property value +FAIL /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "aBc" should set the property value +FAIL /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "foo, bar" should set the property value +FAIL /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "bar, foo" should set the property value +FAIL /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "auto" should set the property value +PASS /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "none, abc" should not set the property value +PASS /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "10px" should not set the property value +PASS /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "foo bar" should not set the property value +PASS /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "\"foo\" \"bar\"" should not set the property value +PASS /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "rgb(1, 2, 3)" should not set the property value +PASS /scroll-animations/css/timeline-scope-parsing.tentative.html e.style['timeline-scope'] = "#fefefe" should not set the property value +FAIL /scroll-animations/css/timeline-scope.html Descendant can attach to deferred timeline +PASS /scroll-animations/css/timeline-scope.html Deferred timeline with no attachments +FAIL /scroll-animations/css/timeline-scope.html Inner timeline does not interfere with outer timeline +PASS /scroll-animations/css/timeline-scope.html Deferred timeline with two attachments +FAIL /scroll-animations/css/timeline-scope.html Dynamically re-attaching +FAIL /scroll-animations/css/timeline-scope.html Dynamically detaching +FAIL /scroll-animations/css/timeline-scope.html Removing/inserting element with attaching timeline +FAIL /scroll-animations/css/timeline-scope.html Ancestor attached element becoming display:none/block +FAIL /scroll-animations/css/timeline-scope.html A deferred timeline appearing dynamically in the ancestor chain +FAIL /scroll-animations/css/timeline-scope.html Animations prefer non-deferred timelines +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'initial' +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'inherit' +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'unset' +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'revert' +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'block' +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'inline' +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'y' +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'x' +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'block, inline' +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'inline, block' +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'block, y, x, inline' +FAIL /scroll-animations/css/view-timeline-axis-computed.html Property view-timeline-axis value 'inline, inline, inline, inline' +FAIL /scroll-animations/css/view-timeline-axis-computed.html The view-timeline-axis property shows up in CSSStyleDeclaration enumeration +FAIL /scroll-animations/css/view-timeline-axis-computed.html The view-timeline-axis property shows up in CSSStyleDeclaration.cssText +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "initial" should set the property value +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "inherit" should set the property value +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "unset" should set the property value +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "revert" should set the property value +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "block" should set the property value +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "inline" should set the property value +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "y" should set the property value +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "x" should set the property value +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "block, inline" should set the property value +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "inline, block" should set the property value +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "block, y, x, inline" should set the property value +FAIL /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "inline, inline, inline, inline" should set the property value +PASS /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "abc" should not set the property value +PASS /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "10px" should not set the property value +PASS /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "auto" should not set the property value +PASS /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "none" should not set the property value +PASS /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "block inline" should not set the property value +PASS /scroll-animations/css/view-timeline-axis-parsing.html e.style['view-timeline-axis'] = "block / inline" should not set the property value +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value 'initial' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value 'inherit' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value 'unset' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value 'revert' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value '1px' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value '1%' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value 'calc(1% + 1px)' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value '1px 2px' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value '1px 2em' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value 'calc(1px + 1em) 2px' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value '1px 2px, 3px 4px' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value '1px auto, auto 4px' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value '1px, 2px, 3px' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value '1px 1px, 2px 3px' +FAIL /scroll-animations/css/view-timeline-inset-computed.html Property view-timeline-inset value 'auto auto, auto auto' +FAIL /scroll-animations/css/view-timeline-inset-computed.html The view-timeline-inset property shows up in CSSStyleDeclaration enumeration +FAIL /scroll-animations/css/view-timeline-inset-computed.html The view-timeline-inset property shows up in CSSStyleDeclaration.cssText +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "initial" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "inherit" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "unset" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "revert" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "1px" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "1px 2px" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "1px 2em" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "calc(1em + 1px) 2px" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "1px 2px, 3px 4px" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "1px auto, auto 4px" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "1px, 2px, 3px" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "1px 1px, 2px 3px" should set the property value +FAIL /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "auto auto, auto auto" should set the property value +PASS /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "none" should not set the property value +PASS /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "foo bar" should not set the property value +PASS /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "\"foo\" \"bar\"" should not set the property value +PASS /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "rgb(1, 2, 3)" should not set the property value +PASS /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "#fefefe" should not set the property value +PASS /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "1px 2px 3px" should not set the property value +PASS /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "1px 2px auto" should not set the property value +PASS /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "auto 2px 3px" should not set the property value +PASS /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "auto auto auto" should not set the property value +PASS /scroll-animations/css/view-timeline-inset-parsing.html e.style['view-timeline-inset'] = "1px / 2px" should not set the property value +FAIL /scroll-animations/css/view-timeline-keyframe-boundary-interpolation.html ViewTimeline with timeline offset keyframes outside [0,1] +PASS /scroll-animations/css/view-timeline-lookup.html view-timeline on self +PASS /scroll-animations/css/view-timeline-lookup.html timeline-scope on preceding sibling +PASS /scroll-animations/css/view-timeline-lookup.html view-timeline on ancestor +PASS /scroll-animations/css/view-timeline-lookup.html timeline-scope on ancestor sibling +FAIL /scroll-animations/css/view-timeline-lookup.html timeline-scope on ancestor sibling, conflict remains unresolved +FAIL /scroll-animations/css/view-timeline-lookup.html timeline-scope on ancestor sibling, closer timeline wins +PASS /scroll-animations/css/view-timeline-lookup.html view-timeline on ancestor sibling, scroll-timeline wins on same element +FAIL /scroll-animations/css/view-timeline-name-computed.html Property view-timeline-name value 'initial' +FAIL /scroll-animations/css/view-timeline-name-computed.html Property view-timeline-name value 'inherit' +FAIL /scroll-animations/css/view-timeline-name-computed.html Property view-timeline-name value 'unset' +FAIL /scroll-animations/css/view-timeline-name-computed.html Property view-timeline-name value 'revert' +FAIL /scroll-animations/css/view-timeline-name-computed.html Property view-timeline-name value 'none' +FAIL /scroll-animations/css/view-timeline-name-computed.html Property view-timeline-name value '--foo' +FAIL /scroll-animations/css/view-timeline-name-computed.html Property view-timeline-name value '--foo, --bar' +FAIL /scroll-animations/css/view-timeline-name-computed.html Property view-timeline-name value '--bar, --foo' +FAIL /scroll-animations/css/view-timeline-name-computed.html Property view-timeline-name value '--a, --b, --c, --D, --e' +FAIL /scroll-animations/css/view-timeline-name-computed.html Property view-timeline-name value 'none, none' +FAIL /scroll-animations/css/view-timeline-name-computed.html Property view-timeline-name value '--a, --b, --c, none, --d, --e' +FAIL /scroll-animations/css/view-timeline-name-computed.html The view-timeline-name property shows up in CSSStyleDeclaration enumeration +FAIL /scroll-animations/css/view-timeline-name-computed.html The view-timeline-name property shows up in CSSStyleDeclaration.cssText +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "initial" should set the property value +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "inherit" should set the property value +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "unset" should set the property value +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "revert" should set the property value +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "none" should set the property value +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "--abc" should set the property value +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = " --abc" should set the property value +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "--aBc" should set the property value +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "--foo, --bar" should set the property value +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "--bar, --foo" should set the property value +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "none, none" should set the property value +FAIL /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "--a, none, --b" should set the property value +PASS /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "auto" should not set the property value +PASS /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "abc" should not set the property value +PASS /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "default" should not set the property value +PASS /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "10px" should not set the property value +PASS /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "foo bar" should not set the property value +PASS /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "\"foo\" \"bar\"" should not set the property value +PASS /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "rgb(1, 2, 3)" should not set the property value +PASS /scroll-animations/css/view-timeline-name-parsing.html e.style['view-timeline-name'] = "#fefefe" should not set the property value +FAIL /scroll-animations/css/view-timeline-name-shadow.html Outer animation can see view timeline defined by :host +FAIL /scroll-animations/css/view-timeline-name-shadow.html Outer animation can see view timeline defined by ::slotted +FAIL /scroll-animations/css/view-timeline-name-shadow.html Inner animation can see view timeline defined by ::part +FAIL /scroll-animations/css/view-timeline-name-shadow.html Slotted element can see view timeline within the shadow +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abcd" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "none block" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "none inline" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--inline block" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--block block" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--y block" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--x block" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--a, --b, --c" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--a inline, --b block, --c y" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--auto" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abcd block auto" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abcd block auto auto" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abcd block 1px 2px" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abcd inline 1px 2px" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abcd 1px 2px inline" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abcd 1px 2px block" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abcd auto auto block" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abcd auto block" should set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abcd block 1px 1px" should set the property value +PASS /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc --abc" should not set the property value +PASS /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "block none" should not set the property value +PASS /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "none none" should not set the property value +PASS /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "default" should not set the property value +PASS /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "," should not set the property value +PASS /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = ",,--block,," should not set the property value +PASS /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "auto" should not set the property value +PASS /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "auto auto" should not set the property value +PASS /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 500kg" should not set the property value +PASS /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc #ff0000" should not set the property value +PASS /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc red red" should not set the property value +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--abcd' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value 'none block' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value 'none inline' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--inline block' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--block block' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--y block' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--x block' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--a, --b, --c' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--a inline, --b block, --c y' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--abcd block auto' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--abcd block auto auto' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--abcd block 1px 2px' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--abcd inline 1px 2px' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--abcd 1px 2px inline' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--abcd 1px 2px block' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--abcd auto auto block' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--abcd auto block' +FAIL /scroll-animations/css/view-timeline-shorthand.html Property view-timeline value '--abcd block 1px 1px' +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc y" should set view-timeline-axis +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc y" should set view-timeline-inset +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc y" should set view-timeline-name +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc y" should not set unrelated longhands +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc y, --def" should set view-timeline-axis +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc y, --def" should set view-timeline-inset +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc y, --def" should set view-timeline-name +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc y, --def" should not set unrelated longhands +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc, --def" should set view-timeline-axis +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc, --def" should set view-timeline-inset +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc, --def" should set view-timeline-name +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc, --def" should not set unrelated longhands +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--inline x" should set view-timeline-axis +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--inline x" should set view-timeline-inset +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--inline x" should set view-timeline-name +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--inline x" should not set unrelated longhands +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px 2px" should set view-timeline-axis +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px 2px" should set view-timeline-inset +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px 2px" should set view-timeline-name +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px 2px" should not set unrelated longhands +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px" should set view-timeline-axis +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px" should set view-timeline-inset +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px" should set view-timeline-name +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px" should not set unrelated longhands +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px inline" should set view-timeline-axis +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px inline" should set view-timeline-inset +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px inline" should set view-timeline-name +FAIL /scroll-animations/css/view-timeline-shorthand.html e.style['view-timeline'] = "--abc 1px inline" should not set unrelated longhands +FAIL /scroll-animations/css/view-timeline-shorthand.html Shorthand contraction of view-timeline-name:--abc:undefined;view-timeline-axis:inline:undefined;view-timeline-inset:auto:undefined +FAIL /scroll-animations/css/view-timeline-shorthand.html Shorthand contraction of view-timeline-name:--a, --b:undefined;view-timeline-axis:inline, block:undefined;view-timeline-inset:auto, auto:undefined +FAIL /scroll-animations/css/view-timeline-shorthand.html Shorthand contraction of view-timeline-name:--a, --b:undefined;view-timeline-axis:inline, block:undefined;view-timeline-inset:1px 2px, 3px 3px:undefined +FAIL /scroll-animations/css/view-timeline-shorthand.html Shorthand contraction of view-timeline-name:none, none:undefined;view-timeline-axis:block, block:undefined;view-timeline-inset:auto auto, auto:undefined +FAIL /scroll-animations/css/view-timeline-shorthand.html Shorthand contraction of view-timeline-name:--a, --b, --c:undefined;view-timeline-axis:inline, inline:undefined;view-timeline-inset:auto, auto:undefined +FAIL /scroll-animations/css/view-timeline-shorthand.html Shorthand contraction of view-timeline-name:--a, --b:undefined;view-timeline-axis:inline, inline, inline:undefined;view-timeline-inset:auto, auto, auto:undefined +FAIL /scroll-animations/css/view-timeline-shorthand.html Shorthand contraction of view-timeline-name:--a, --b:undefined;view-timeline-axis:inline, inline:undefined;view-timeline-inset:auto, auto, auto:undefined +FAIL /scroll-animations/css/view-timeline-with-delay-and-range.tentative.html ViewTimeline with animation delays and range +FAIL /scroll-animations/css/view-timeline-with-transform-on-subject.html ViewTimeline use untransformed box for range calculations +PASS /scroll-animations/scroll-timelines/cancel-animation.html Canceling an animation should cause its start time and hold time to be unresolved +PASS /scroll-animations/scroll-timelines/cancel-animation.html A play-pending ready promise should be rejected when the animation is canceled +PASS /scroll-animations/scroll-timelines/cancel-animation.html A pause-pending ready promise should be rejected when the animation is canceled +PASS /scroll-animations/scroll-timelines/cancel-animation.html When an animation is canceled, it should create a resolved Promise +PASS /scroll-animations/scroll-timelines/cancel-animation.html The ready promise should be replaced when the animation is canceled +PASS /scroll-animations/scroll-timelines/cancel-animation.html The finished promise should NOT be rejected if the animation is already idle +PASS /scroll-animations/scroll-timelines/cancel-animation.html The cancel event should NOT be fired if the animation is already idle +PASS /scroll-animations/scroll-timelines/cancel-animation.html Canceling an animation should fire cancel event on orphaned element +PASS /scroll-animations/scroll-timelines/cancel-animation.html Canceling an animation with inactive timeline should cause its start time and hold time to be unresolved +FAIL /scroll-animations/scroll-timelines/cancel-animation.html oncancel event is fired when the timeline is inactive. +PASS /scroll-animations/scroll-timelines/constructor-no-document.html The source can be null if the document.scrollingElement does not exist +PASS /scroll-animations/scroll-timelines/constructor.html A ScrollTimeline can be created with a source +PASS /scroll-animations/scroll-timelines/constructor.html A ScrollTimeline can be created with a non-scrolling source +PASS /scroll-animations/scroll-timelines/constructor.html A ScrollTimeline created with a null source should have no source +PASS /scroll-animations/scroll-timelines/constructor.html A ScrollTimeline created without a source should use the document.scrollingElement +PASS /scroll-animations/scroll-timelines/constructor.html A ScrollTimeline created with the default axis should default to 'block' +PASS /scroll-animations/scroll-timelines/constructor.html 'block' is a valid axis value +PASS /scroll-animations/scroll-timelines/constructor.html 'inline' is a valid axis value +PASS /scroll-animations/scroll-timelines/constructor.html 'x' is a valid axis value +PASS /scroll-animations/scroll-timelines/constructor.html 'y' is a valid axis value +PASS /scroll-animations/scroll-timelines/constructor.html Creating a ScrollTimeline with an invalid axis value should throw +PASS /scroll-animations/scroll-timelines/current-time-nan.html currentTime should be null for a display: inline source +PASS /scroll-animations/scroll-timelines/current-time-nan.html currentTime should be null for a display: none source +FAIL /scroll-animations/scroll-timelines/current-time-nan.html currentTime should be null for an unattached source +PASS /scroll-animations/scroll-timelines/current-time-nan.html currentTime should be null when the source is not a scroller +PASS /scroll-animations/scroll-timelines/current-time-root-scroller.html currentTime calculates the correct time for a document.scrollingElement source +PASS /scroll-animations/scroll-timelines/current-time-writing-modes.html currentTime handles direction: rtl correctly +PASS /scroll-animations/scroll-timelines/current-time-writing-modes.html currentTime handles writing-mode: vertical-rl correctly +PASS /scroll-animations/scroll-timelines/current-time-writing-modes.html currentTime handles writing-mode: vertical-lr correctly +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the delay to a positive number +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the delay to a negative number +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the delay of an animation in progress: positive delay that causes the animation to be no longer in-effect +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the delay of an animation in progress: negative delay that seeks into the active interval +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the delay of an animation in progress: large negative delay that causes the animation to be finished +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid delay value: NaN +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid delay value: Infinity +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid delay value: -Infinity +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the endDelay to a positive number +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the endDelay to a negative number +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting the endDelay to infinity +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting the endDelay to negative infinity +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the fill to 'none' +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the fill to 'forwards' +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the fill to 'backwards' +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the fill to 'both' +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the iterationStart of an animation in progress: backwards-filling +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the iterationStart of an animation in progress: active phase +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the iterationStart of an animation in progress: forwards-filling +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid iterationStart value: -1 +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid iterationStart value: NaN +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid iterationStart value: Infinity +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid iterationStart value: -Infinity +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting iterations to a double value +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting iterations to Infinity +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the iterations of an animation in progress +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the iterations of an animation in progress with duration "auto" +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the duration to 123.45 +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the duration to auto +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid duration: -1 +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid duration: NaN +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid duration: Infinity +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid duration: -Infinity +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid duration: "abc" +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Throws when setting invalid duration: "100" +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the duration of an animation in progress +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the duration of an animation in progress such that the the start and current time do not change +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the direction to each of the possible keywords +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the direction of an animation in progress from 'normal' to 'reverse' +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the direction of an animation in progress from 'normal' to 'reverse' while at start of active interval +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the direction of an animation in progress from 'normal' to 'reverse' while filling backwards +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the direction of an animation in progress from 'normal' to 'alternate' +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the direction of an animation in progress from 'alternate' to 'alternate-reverse' +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a step-start function +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a steps(1, start) function +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a steps(2, start) function +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a step-end function +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a steps(1) function +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a steps(1, end) function +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a steps(2, end) function +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a linear function +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a ease function +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a ease-in function +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a ease-in-out function +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a ease-out function +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a easing function which produces values greater than 1 +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing to a easing function which produces values less than 1 +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Updates the specified value when setting the easing to 'ease' +PASS /scroll-animations/scroll-timelines/effect-updateTiming.html Updates the specified value when setting the easing to 'linear' +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Updates the specified value when setting the easing to 'ease-in' +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Updates the specified value when setting the easing to 'ease-out' +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Updates the specified value when setting the easing to 'ease-in-out' +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Updates the specified value when setting the easing to 'cubic-bezier(0.1, 5, 0.23, 0)' +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Updates the specified value when setting the easing to 'steps(3, start)' +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Updates the specified value when setting the easing to 'steps(3)' +FAIL /scroll-animations/scroll-timelines/effect-updateTiming.html Allows setting the easing of an animation in progress +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing an animation with a zero playback rate throws +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing an animation seeks to the end time +FAIL /scroll-animations/scroll-timelines/finish-animation.html Finishing an animation with a current time past the effect end jumps back to the end +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing a reversed animation jumps to zero time +FAIL /scroll-animations/scroll-timelines/finish-animation.html Finishing a reversed animation with a current time less than zero makes it jump back to zero +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing an animation while play-pending resolves the pending task immediately +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing an animation attached to inactive timeline while play-pending doesn't resolves the pending task +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing an animation resolves the finished promise synchronously +PASS /scroll-animations/scroll-timelines/finish-animation.html A pending ready promise is resolved and not replaced when the animation is finished +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing an animation fires finish event on orphaned element +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing a canceled animation sets the current and start times +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing idle animation produces correct state and fires finish event. +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing idle animation attached to inactive timeline pauses the animation. +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing running animation produces correct state and fires finish event. +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing running animation attached to inactive timeline pauses the animation. +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing a paused animation resolves the start time +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing a pause-pending animation resolves the pending task immediately and update the start time +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing a pause-pending animation with negative playback rate resolves the pending task immediately +PASS /scroll-animations/scroll-timelines/finish-animation.html Finishing an animation during an aborted pause makes it finished immediately +PASS /scroll-animations/scroll-timelines/finish-animation.html A pending playback rate should be applied immediately when an animation is finished +PASS /scroll-animations/scroll-timelines/finish-animation.html An exception should be thrown if the effective playback rate is zero +PASS /scroll-animations/scroll-timelines/idlharness.window.html idl_test setup +PASS /scroll-animations/scroll-timelines/idlharness.window.html idl_test validation +PASS /scroll-animations/scroll-timelines/idlharness.window.html Partial interface Element: member names are unique +PASS /scroll-animations/scroll-timelines/idlharness.window.html Element includes Animatable: member names are unique +PASS /scroll-animations/scroll-timelines/idlharness.window.html Element includes ParentNode: member names are unique +PASS /scroll-animations/scroll-timelines/idlharness.window.html Element includes NonDocumentTypeChildNode: member names are unique +PASS /scroll-animations/scroll-timelines/idlharness.window.html Element includes ChildNode: member names are unique +PASS /scroll-animations/scroll-timelines/idlharness.window.html Element includes Slottable: member names are unique +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ScrollTimeline interface: existence and properties of interface object +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ScrollTimeline interface object length +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ScrollTimeline interface object name +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ScrollTimeline interface: existence and properties of interface prototype object +PASS /scroll-animations/scroll-timelines/idlharness.window.html ScrollTimeline interface: existence and properties of interface prototype object's "constructor" property +PASS /scroll-animations/scroll-timelines/idlharness.window.html ScrollTimeline interface: existence and properties of interface prototype object's @@unscopables property +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ScrollTimeline interface: attribute source +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ScrollTimeline interface: attribute axis +PASS /scroll-animations/scroll-timelines/idlharness.window.html ScrollTimeline must be primary interface of new ScrollTimeline() +FAIL /scroll-animations/scroll-timelines/idlharness.window.html Stringification of new ScrollTimeline() +PASS /scroll-animations/scroll-timelines/idlharness.window.html ScrollTimeline interface: new ScrollTimeline() must inherit property "source" with the proper type +PASS /scroll-animations/scroll-timelines/idlharness.window.html ScrollTimeline interface: new ScrollTimeline() must inherit property "axis" with the proper type +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ViewTimeline interface: existence and properties of interface object +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ViewTimeline interface object length +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ViewTimeline interface object name +PASS /scroll-animations/scroll-timelines/idlharness.window.html ViewTimeline interface: existence and properties of interface prototype object +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ViewTimeline interface: existence and properties of interface prototype object's "constructor" property +PASS /scroll-animations/scroll-timelines/idlharness.window.html ViewTimeline interface: existence and properties of interface prototype object's @@unscopables property +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ViewTimeline interface: attribute subject +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ViewTimeline interface: attribute startOffset +FAIL /scroll-animations/scroll-timelines/idlharness.window.html ViewTimeline interface: attribute endOffset +PASS /scroll-animations/scroll-timelines/intrinsic-iteration-duration.tentative.html Computed duration in percent even when specified in ms +FAIL /scroll-animations/scroll-timelines/intrinsic-iteration-duration.tentative.html Time-based duration normalized to fill animation range. +PASS /scroll-animations/scroll-timelines/intrinsic-iteration-duration.tentative.html Time-based duration normalized to preserve proportional delays. +PASS /scroll-animations/scroll-timelines/intrinsic-iteration-duration.tentative.html Intrinsic iteration duration fills timeline. +FAIL /scroll-animations/scroll-timelines/intrinsic-iteration-duration.tentative.html Intrinsic iteration duration accounts for animation range. +PASS /scroll-animations/scroll-timelines/intrinsic-iteration-duration.tentative.html Intrinsic iteration duration accounts for number of iterations +PASS /scroll-animations/scroll-timelines/pause-animation.html Pausing clears the start time +PASS /scroll-animations/scroll-timelines/pause-animation.html A pending ready promise should be resolved and not replaced when the animation is paused +FAIL /scroll-animations/scroll-timelines/pause-animation.html A pause-pending animation maintains the current time when applying a pending playback rate +PASS /scroll-animations/scroll-timelines/pause-animation.html The animation's current time remains fixed after pausing +PASS /scroll-animations/scroll-timelines/pause-animation.html Pausing a canceled animation sets the current time +FAIL /scroll-animations/scroll-timelines/pause-animation.html Pause pending task doesn't run when the timeline is inactive. +PASS /scroll-animations/scroll-timelines/pause-animation.html Animation start and current times are correct if scroll timeline is activated after animation.pause call. +FAIL /scroll-animations/scroll-timelines/play-animation.html Playing an animations aligns the start time with the start of the active range +PASS /scroll-animations/scroll-timelines/play-animation.html Playing an animations with a negative playback rate aligns the start time with the end of the active range +FAIL /scroll-animations/scroll-timelines/play-animation.html Start time set while play pending is preserved. +FAIL /scroll-animations/scroll-timelines/play-animation.html Current time set while play pending is preserved. +FAIL /scroll-animations/scroll-timelines/play-animation.html Playing a running animation resets a sticky start time +PASS /scroll-animations/scroll-timelines/play-animation.html Playing a finished animation restarts the animation aligned at the start +FAIL /scroll-animations/scroll-timelines/play-animation.html Playing a finished and reversed animation restarts the animation aligned at the end +PASS /scroll-animations/scroll-timelines/play-animation.html Playing a pause-pending but previously finished animation realigns with the scroll position +FAIL /scroll-animations/scroll-timelines/play-animation.html Playing a finished animation clears the start time +PASS /scroll-animations/scroll-timelines/play-animation.html The ready promise should be replaced if the animation is not already pending +PASS /scroll-animations/scroll-timelines/play-animation.html A pending ready promise should be resolved and not replaced when the animation enters the running state +FAIL /scroll-animations/scroll-timelines/play-animation.html Resuming an animation from paused realigns with scroll position. +PASS /scroll-animations/scroll-timelines/play-animation.html If a pause operation is interrupted, the ready promise is reused +FAIL /scroll-animations/scroll-timelines/play-animation.html A pending playback rate is used when determining timeline range alignment +PASS /scroll-animations/scroll-timelines/play-animation.html Playing a canceled animation sets the start time +PASS /scroll-animations/scroll-timelines/play-animation.html Playing a canceled animation backwards sets the start time +FAIL /scroll-animations/scroll-timelines/reverse-animation.html Setting current time while reverse-pending preserves currentTime +FAIL /scroll-animations/scroll-timelines/reverse-animation.html Reversing an animation inverts the playback rate +FAIL /scroll-animations/scroll-timelines/reverse-animation.html Reversing an animation resets a sticky start time. +PASS /scroll-animations/scroll-timelines/reverse-animation.html Reversing an animation does not cause it to leave the pending state +PASS /scroll-animations/scroll-timelines/reverse-animation.html Reversing an animation does not cause it to resolve the ready promise +PASS /scroll-animations/scroll-timelines/reverse-animation.html Reversing an animation with a negative playback rate should cause the animation to play in a forward direction +FAIL /scroll-animations/scroll-timelines/reverse-animation.html Reversing when when playbackRate == 0 should preserve the playback rate +PASS /scroll-animations/scroll-timelines/reverse-animation.html Reversing an idle animation aligns startTime with the rangeEnd boundary +PASS /scroll-animations/scroll-timelines/reverse-animation.html Reversing an animation without an active timeline throws an InvalidStateError +FAIL /scroll-animations/scroll-timelines/reverse-animation.html Reversing an animation plays a pausing animation +PASS /scroll-animations/scroll-timelines/reverse-animation.html Reversing should use the negative pending playback rate +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Scroll based animation effect fill mode should return 'auto' for getTiming() and should return 'none' for getComputedTiming(). +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value before start delay with fill: none +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at start delay with fill: none +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at midpoint with fill: none +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at effect end with fill: none +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value after effect end with fill: none +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value before start delay with fill: backwards +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at start delay with fill: backwards +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at midpoint with fill: backwards +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at effect end with fill: backwards +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value after effect end with fill: backwards +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value before timeline start with fill: forwards +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at timeline start with fill: forwards +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value in timeline range with fill: forwards +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at timeline end with fill: forwards +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value after timeline end with fill: forwards +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value before timeline start with fill: both +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at timeline start with fill: both +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value in timeline range with fill: both +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at timeline end with fill: both +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value after timeline end with fill: both +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value before timeline start with fill: auto +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at timeline start with fill: auto +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value in timeline range with fill: auto +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value at timeline end with fill: auto +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-fill-modes.tentative.html Applied effect value after timeline end with fill: auto +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at start when delay = 0 and endDelay = 0 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase in active range when delay = 0 and endDelay = 0 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at effect end time when delay = 0 and endDelay = 0 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at timeline start when delay = 500 and endDelay = 0 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase before start delay when delay = 500 and endDelay = 0 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at start delay when delay = 500 and endDelay = 0 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase in active range when delay = 500 and endDelay = 0 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at effect end time when delay = 500 and endDelay = 0 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at timeline start when delay = 0 and endDelay = 500 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase in active range when delay = 0 and endDelay = 500 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at effect end time when delay = 0 and endDelay = 500 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase after effect end time when delay = 0 and endDelay = 500 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at timeline boundary when delay = 0 and endDelay = 500 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at timeline start when delay = 250 and endDelay = 250 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase before start delay when delay = 250 and endDelay = 250 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at start delay when delay = 250 and endDelay = 250 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase in active range when delay = 250 and endDelay = 250 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at effect end time when delay = 250 and endDelay = 250 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase after effect end time when delay = 250 and endDelay = 250 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at timeline boundary when delay = 250 and endDelay = 250 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at timeline start when delay = -125 and endDelay = -125 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase in active range when delay = -125 and endDelay = -125 | +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Current times and effect phase at timeline end when delay = -125 and endDelay = -125 | +FAIL /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Playback rate affects whether active phase boundary is inclusive. +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Verify that (play -> pause -> play) doesn't change phase/progress. +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Pause in before phase, scroll timeline into active phase, animation should remain in the before phase +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Pause in before phase, set animation current time to be in active range, animation should become active. Scrolling should have no effect. +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Make scroller inactive, then set current time to an in range time +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Animation effect is still applied after pausing and making timeline inactive. +PASS /scroll-animations/scroll-timelines/scroll-animation-effect-phases.tentative.html Make timeline inactive, force style update then pause the animation. No crashing indicates test success. +FAIL /scroll-animations/scroll-timelines/scroll-animation-inactive-timeline.html Play pending task doesn't run when the timeline is inactive. +PASS /scroll-animations/scroll-timelines/scroll-animation-inactive-timeline.html Animation start and current times are correct if scroll timeline is activated after animation.play call. +FAIL /scroll-animations/scroll-timelines/scroll-animation-inactive-timeline.html Animation start and current times are correct if scroll timeline is activated after setting start time. +FAIL /scroll-animations/scroll-timelines/scroll-animation-inactive-timeline.html Animation current time is correct when the timeline becomes newly inactive and then active again. +FAIL /scroll-animations/scroll-timelines/scroll-animation.html Animation start and current times are correct for each animation state. +FAIL /scroll-animations/scroll-timelines/scroll-animation.html Animation start and current times are correct for each animation state when the animation starts playing with advanced scroller. +PASS /scroll-animations/scroll-timelines/scroll-animation.html Finished animation plays on reverse scrolling. +FAIL /scroll-animations/scroll-timelines/scroll-animation.html Sending animation finished events by finished animation on reverse scrolling. +FAIL /scroll-animations/scroll-timelines/scroll-timeline-invalidation.html Animation current time and effect local time are updated after scroller content size changes. +PASS /scroll-animations/scroll-timelines/scroll-timeline-invalidation.html Animation current time and effect local time are updated after scroller size changes. +FAIL /scroll-animations/scroll-timelines/scroll-timeline-invalidation.html If scroll animation resizes its scroll timeline scroller, layout reruns once per frame. +FAIL /scroll-animations/scroll-timelines/scroll-timeline-range.html Scroll timeline with percentage range [JavaScript API] +FAIL /scroll-animations/scroll-timelines/scroll-timeline-range.html Scroll timeline with px range [JavaScript API] +FAIL /scroll-animations/scroll-timelines/scroll-timeline-range.html Scroll timeline with calculated range [JavaScript API] +FAIL /scroll-animations/scroll-timelines/scroll-timeline-range.html Scroll timeline with EM range [JavaScript API] +FAIL /scroll-animations/scroll-timelines/scroll-timeline-range.html Scroll timeline with percentage range [CSS] +FAIL /scroll-animations/scroll-timelines/scroll-timeline-range.html Scroll timeline with px range [CSS] +FAIL /scroll-animations/scroll-timelines/scroll-timeline-range.html Scroll timeline with calculated range [CSS] +FAIL /scroll-animations/scroll-timelines/scroll-timeline-range.html Scroll timeline with EM range [CSS] +PASS /scroll-animations/scroll-timelines/scroll-timeline-snapshotting.html ScrollTimeline current time is updated after programmatic animated scroll. +PASS /scroll-animations/scroll-timelines/setting-current-time.html Setting animation current time to null throws TypeError. +FAIL /scroll-animations/scroll-timelines/setting-current-time.html Setting the current time to an absolute time value throws exception +FAIL /scroll-animations/scroll-timelines/setting-current-time.html Set animation current time to a valid value without playing. +FAIL /scroll-animations/scroll-timelines/setting-current-time.html Set animation current time to a valid value while playing. +FAIL /scroll-animations/scroll-timelines/setting-current-time.html Set animation current time to a value beyond effect end. +FAIL /scroll-animations/scroll-timelines/setting-current-time.html Set animation current time to a negative value. +FAIL /scroll-animations/scroll-timelines/setting-current-time.html Setting current time while play pending overrides the current time +FAIL /scroll-animations/scroll-timelines/setting-current-time.html Setting animation.currentTime then restarting the animation should reset the current time. +FAIL /scroll-animations/scroll-timelines/setting-current-time.html Set Animation current time then scroll. +FAIL /scroll-animations/scroll-timelines/setting-current-time.html Animation current time and play state are correct when current time is set while the timeline is inactive. +FAIL /scroll-animations/scroll-timelines/setting-current-time.html Animation current time set while the timeline is inactive holds when the timeline becomes active again. +PASS /scroll-animations/scroll-timelines/setting-playback-rate.html Zero current time is not affected by playbackRate set while the animation is in idle state. +PASS /scroll-animations/scroll-timelines/setting-playback-rate.html Zero current time is not affected by playbackRate set while the animation is in play-pending state. +PASS /scroll-animations/scroll-timelines/setting-playback-rate.html Initial current time is scaled by playbackRate set while scroll-linked animation is in running state. +FAIL /scroll-animations/scroll-timelines/setting-playback-rate.html The current time is scaled by playbackRate set while the scroll-linked animation is in play state. +PASS /scroll-animations/scroll-timelines/setting-playback-rate.html The playback rate set before scroll-linked animation started playing affects the rate of progress of the current time +PASS /scroll-animations/scroll-timelines/setting-playback-rate.html The playback rate affects the rate of progress of the current time when scrolling +FAIL /scroll-animations/scroll-timelines/setting-playback-rate.html Setting the playback rate while play-pending does not scale current time. +FAIL /scroll-animations/scroll-timelines/setting-playback-rate.html Setting the playback rate while playing scales current time. +FAIL /scroll-animations/scroll-timelines/setting-playback-rate.html Setting the playback rate while playing scales the set current time. +PASS /scroll-animations/scroll-timelines/setting-playback-rate.html Negative initial playback rate should correctly modify initial current time. +PASS /scroll-animations/scroll-timelines/setting-playback-rate.html Reversing the playback rate while playing correctly impacts current time during future scrolls +PASS /scroll-animations/scroll-timelines/setting-playback-rate.html Zero initial playback rate should correctly modify initial current time. +FAIL /scroll-animations/scroll-timelines/setting-playback-rate.html Setting a zero playback rate while running preserves the start time +FAIL /scroll-animations/scroll-timelines/setting-playback-rate.html Reversing an animation with non-boundary aligned start time symmetrically adjusts the start time +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting the start time to an absolute time value throws exception +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting the start time clears the hold time +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting the start time clears the hold time when the timeline is inactive +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting an unresolved start time sets the hold time +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting an unresolved start time sets the hold time to unresolved when the timeline is inactive +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting the start time resolves a pending ready promise +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting the start time resolves a pending ready promise when the timelineis inactive +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting an unresolved start time on a play-pending animation makes it idle +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting the start time updates the finished state +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting the start time on a running animation updates the play state +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting the start time on a reverse running animation updates the play state +PASS /scroll-animations/scroll-timelines/setting-start-time.html Setting the start time resolves a pending pause task +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting the start time of a play-pending animation applies a pending playback rate +FAIL /scroll-animations/scroll-timelines/setting-start-time.html Setting the start time of a playing animation applies a pending playback rate +PASS /scroll-animations/scroll-timelines/setting-timeline.tentative.html Setting a scroll timeline on a play-pending animation synchronizes currentTime of the animation with the scroll position. +PASS /scroll-animations/scroll-timelines/setting-timeline.tentative.html Setting a scroll timeline on a pause-pending animation fixes the currentTime of the animation based on the scroll position once resumed +PASS /scroll-animations/scroll-timelines/setting-timeline.tentative.html Setting a scroll timeline on a reversed play-pending animation synchronizes the currentTime of the animation with the scroll position. +FAIL /scroll-animations/scroll-timelines/setting-timeline.tentative.html Setting a scroll timeline on a running animation synchronizes the currentTime of the animation with the scroll position. +PASS /scroll-animations/scroll-timelines/setting-timeline.tentative.html Setting a scroll timeline on a paused animation fixes the currentTime of the animation based on the scroll position when resumed +PASS /scroll-animations/scroll-timelines/setting-timeline.tentative.html Setting a scroll timeline on a reversed paused animation fixes the currentTime of the animation based on the scroll position when resumed +PASS /scroll-animations/scroll-timelines/setting-timeline.tentative.html Transitioning from a scroll timeline to a document timeline on a running animation preserves currentTime +PASS /scroll-animations/scroll-timelines/setting-timeline.tentative.html Transitioning from a scroll timeline to a document timeline on a pause-pending animation preserves currentTime +PASS /scroll-animations/scroll-timelines/setting-timeline.tentative.html Transition from a scroll timeline to a document timeline on a reversed paused animation maintains correct currentTime +FAIL /scroll-animations/scroll-timelines/setting-timeline.tentative.html Transitioning from a scroll timeline to a null timeline on a running animation preserves current progress. +PASS /scroll-animations/scroll-timelines/setting-timeline.tentative.html Switching from a null timeline to a scroll timeline on an animation with a resolved start time preserved the play state +PASS /scroll-animations/scroll-timelines/setting-timeline.tentative.html Switching from one scroll timeline to another updates currentTime +FAIL /scroll-animations/scroll-timelines/setting-timeline.tentative.html Switching from a document timeline to a scroll timeline updates currentTime when unpaused via CSS. +PASS /scroll-animations/scroll-timelines/setting-timeline.tentative.html Switching from a document timeline to a scroll timeline and updating currentTime preserves the progress while paused. +FAIL /scroll-animations/scroll-timelines/setting-timeline.tentative.html Switching from a document timeline to a scroll timeline on an infinite duration animation. +FAIL /scroll-animations/scroll-timelines/setting-timeline.tentative.html Changing from a scroll-timeline to a view-timeline updates start time. +PASS /scroll-animations/scroll-timelines/source-quirks-mode.html Style of is reflected in source attribute in quirks mode +FAIL /scroll-animations/scroll-timelines/update-playback-rate.html Updating the playback rate maintains the current time +PASS /scroll-animations/scroll-timelines/update-playback-rate.html Updating the playback rate while running makes the animation pending +FAIL /scroll-animations/scroll-timelines/update-playback-rate.html Updating the playback rate on a play-pending animation maintains the current time +FAIL /scroll-animations/scroll-timelines/update-playback-rate.html Updating the playback rate on a pause-pending animation maintains the current time +PASS /scroll-animations/scroll-timelines/update-playback-rate.html If a pending playback rate is set multiple times, the latest wins +PASS /scroll-animations/scroll-timelines/update-playback-rate.html In the idle state, the playback rate is applied immediately +PASS /scroll-animations/scroll-timelines/update-playback-rate.html In the paused state, the playback rate is applied immediately +PASS /scroll-animations/scroll-timelines/update-playback-rate.html Updating the playback rate on a finished animation maintains the current time +PASS /scroll-animations/scroll-timelines/update-playback-rate.html Updating the playback rate to zero on a finished animation maintains the current time +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when seeking past end +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when playing exactly to end +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when seeking exactly to end +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when playing in reverse past zero +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when seeking a reversed animation past zero +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when playing a reversed animation exactly to zero +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when seeking a reversed animation exactly to zero +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when seeking before end +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when seeking a reversed animation before end +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when playback rate is zero and the current time is less than zero +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when playback rate is zero and the current time is less than end +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when playback rate is zero and the currenttime is greater than end +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when current time is unresolved +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Updating the finished state when start time is unresolved and did seek = true +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Finish notification steps don't run when the animation seeks to finish and then seeks back again +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Finish notification steps run when the animation completes normally +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Finish notification steps run when an animation without a target effect completes normally +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Finish notification steps run when the animation seeks past finish +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Finish notification steps run when the animation completes with .finish(), even if we then seek away +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Animation finished promise is replaced after seeking back to start +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Animation finished promise is replaced after replaying from start +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Animation finish event is fired again after seeking back to start +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html Animation finish event is fired again after replaying from start +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html finish event is not fired at the end of the active interval when the endDelay has not expired +PASS /scroll-animations/scroll-timelines/updating-the-finished-state.html finish event is fired after the endDelay has expired +FAIL /scroll-animations/view-timelines/animation-events.html View timeline generates and resolves finish promises and events +FAIL /scroll-animations/view-timelines/block-view-timeline-current-time-vertical-rl.tentative.html View timeline with container having vertical-rl layout +FAIL /scroll-animations/view-timelines/block-view-timeline-current-time.tentative.html View timeline with start and end scroll offsets that do not align with the scroll boundaries +FAIL /scroll-animations/view-timelines/block-view-timeline-current-time.tentative.html View timeline does not clamp starting scroll offset at 0 +PASS /scroll-animations/view-timelines/block-view-timeline-current-time.tentative.html View timeline does not clamp end scroll offset at max scroll +FAIL /scroll-animations/view-timelines/block-view-timeline-nested-subject.tentative.html View timeline with subject that is not a direct descendant of the scroll container +FAIL /scroll-animations/view-timelines/change-animation-range-updates-play-state.html Changing the animation range updates the play state +FAIL /scroll-animations/view-timelines/contain-alignment.html Stability of animated elements aligned to the bounds of a contain region +FAIL /scroll-animations/view-timelines/get-keyframes-with-timeline-offset.html Report specified timeline offsets +FAIL /scroll-animations/view-timelines/get-keyframes-with-timeline-offset.html Computed offsets can be outside [0,1] for keyframes with timeline offsets +FAIL /scroll-animations/view-timelines/get-keyframes-with-timeline-offset.html Retain specified ordering of keyframes with timeline offsets +FAIL /scroll-animations/view-timelines/get-keyframes-with-timeline-offset.html Include unreachable keyframes +FAIL /scroll-animations/view-timelines/get-keyframes-with-timeline-offset.html Mix of computed and timeline offsets. +FAIL /scroll-animations/view-timelines/inline-subject.html View timeline attached to SVG graphics element +FAIL /scroll-animations/view-timelines/inline-view-timeline-current-time.tentative.html View timeline with start and end scroll offsets that do not align with the scroll boundaries +FAIL /scroll-animations/view-timelines/inline-view-timeline-current-time.tentative.html View timeline does not clamp starting scroll offset at 0 +PASS /scroll-animations/view-timelines/inline-view-timeline-current-time.tentative.html View timeline does not clamp end scroll offset at max scroll +FAIL /scroll-animations/view-timelines/inline-view-timeline-current-time.tentative.html View timeline with container having RTL layout +FAIL /scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-1.html View timeline top-sticky during entry. +FAIL /scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-2.html View timeline bottom-sticky during entry and top-sticky during exit. +FAIL /scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-3.html View timeline top-sticky and bottom-sticky during entry. +FAIL /scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-4.html View timeline top-sticky before entry. +FAIL /scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-5.html View timeline bottom-sticky before entry and top-sticky after exit. +FAIL /scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-6.html View timeline target > viewport, bottom-sticky during entry and top-sticky during exit. +FAIL /scroll-animations/view-timelines/sticky/view-timeline-sticky-offscreen-7.html View timeline target > viewport, bottom-sticky and top-sticky during contain. +FAIL /scroll-animations/view-timelines/svg-graphics-element-001.html View timeline attached to SVG graphics element +FAIL /scroll-animations/view-timelines/svg-graphics-element-002.html View timeline attached to SVG graphics element +FAIL /scroll-animations/view-timelines/svg-graphics-element-003.html View timeline attached to SVG graphics element +FAIL /scroll-animations/view-timelines/timeline-offset-in-keyframe.html Timeline offsets in programmatic keyframes +FAIL /scroll-animations/view-timelines/timeline-offset-in-keyframe.html String offsets in programmatic keyframes +PASS /scroll-animations/view-timelines/timeline-offset-in-keyframe.html Invalid timeline offset in programmatic keyframe throws +FAIL /scroll-animations/view-timelines/timeline-offset-in-keyframe.html Timeline offsets in programmatic keyframes adjust for change in timeline +FAIL /scroll-animations/view-timelines/timeline-offset-in-keyframe.html Timeline offsets in programmatic keyframes resolved when updating the animation effect +FAIL /scroll-animations/view-timelines/unattached-subject-inset.html Creating a view timeline with a subject that is not attached to the document works as expected +FAIL /scroll-animations/view-timelines/view-timeline-get-current-time-range-name.html View timeline current time for named range +FAIL /scroll-animations/view-timelines/view-timeline-get-set-range.html Getting and setting the animation range +FAIL /scroll-animations/view-timelines/view-timeline-inset.html View timeline with px based inset. +FAIL /scroll-animations/view-timelines/view-timeline-inset.html View timeline with percent based inset. +FAIL /scroll-animations/view-timelines/view-timeline-inset.html view timeline with inset auto. +FAIL /scroll-animations/view-timelines/view-timeline-inset.html view timeline with font relative inset. +FAIL /scroll-animations/view-timelines/view-timeline-inset.html view timeline with viewport relative insets. +FAIL /scroll-animations/view-timelines/view-timeline-inset.html view timeline inset as string +FAIL /scroll-animations/view-timelines/view-timeline-inset.html view timeline with invalid inset +PASS /scroll-animations/view-timelines/view-timeline-missing-subject.html ViewTimeline with missing subject +PASS /scroll-animations/view-timelines/view-timeline-on-display-none-element.html element with display: none should have inactive viewtimeline +FAIL /scroll-animations/view-timelines/view-timeline-range-large-subject.html View timeline with range set via delays. +FAIL /scroll-animations/view-timelines/view-timeline-range.html View timeline with range as pair. +FAIL /scroll-animations/view-timelines/view-timeline-range.html View timeline with range and inferred name or offset. +FAIL /scroll-animations/view-timelines/view-timeline-range.html View timeline with range as pair. +FAIL /scroll-animations/view-timelines/view-timeline-range.html View timeline with range as pair. +FAIL /scroll-animations/view-timelines/view-timeline-range.html View timeline with range as strings. +PASS /scroll-animations/view-timelines/view-timeline-root-source.html Test view-timeline with document scrolling element. +PASS /scroll-animations/view-timelines/view-timeline-snapport.html Default ViewTimeline is not affected by scroll-padding +PASS /scroll-animations/view-timelines/view-timeline-source.tentative.html Default source for a View timeline is the nearest scroll ancestor to the subject +PASS /scroll-animations/view-timelines/view-timeline-source.tentative.html View timeline ignores explicitly set source +PASS /scroll-animations/view-timelines/view-timeline-source.tentative.html View timeline source is null when display:none +FAIL /scroll-animations/view-timelines/view-timeline-sticky-block.html View timeline with sticky target, block axis. +FAIL /scroll-animations/view-timelines/view-timeline-sticky-inline.html View timeline with sticky target, block axis. +FAIL /scroll-animations/view-timelines/view-timeline-subject-size-changes.html View timeline with subject size change after the creation of the animation +FAIL /scroll-animations/view-timelines/zero-intrinsic-iteration-duration.tentative.html Intrinsic iteration duration is non-negative +Passed 356 of 959 tests. diff --git a/test/summarize-json.mjs b/test/summarize-json.mjs new file mode 100755 index 00000000..6ad2436f --- /dev/null +++ b/test/summarize-json.mjs @@ -0,0 +1,20 @@ +#!/usr/bin/env node + +import { readFileSync } from 'fs'; + +let data = JSON.parse(readFileSync(process.argv[2])); +const results = data.results.sort((r1, r2) => { + return r1.test.localeCompare(r2.test); +}); +let passes = 0, fails = 0; +for (let result of results) { + for (let subtest of result.subtests) { + console.log(`${subtest.status}\t${result.test}\t${subtest.name}`); + if (subtest.status == "PASS") { + passes++; + } else { + fails++; + } + } +} +console.log(`Passed ${passes} of ${fails + passes} tests.`);