Commit 78ca012b authored by Anders Hartvoll Ruud's avatar Anders Hartvoll Ruud Committed by Commit Bot

[scroll-animations] Enable CSSScrollTimeline for experimental

Bug: 1074052
Change-Id: I180f5c8822803ea14ec4b37850165322ab3082d2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2502340Reviewed-by: default avatarRobert Flack <flackr@chromium.org>
Commit-Queue: Anders Hartvoll Ruud <andruud@chromium.org>
Cr-Commit-Position: refs/heads/master@{#821654}
parent 228f6142
......@@ -602,7 +602,8 @@
// https://drafts.csswg.org/scroll-animations-1/#animation-timeline
// https://drafts.csswg.org/scroll-animations-1/#scroll-timeline-at-rule
{
name: "CSSScrollTimeline"
name: "CSSScrollTimeline",
status: "experimental",
},
{
name: "CSSSnapSize",
......
......@@ -608,11 +608,6 @@
"bases": ["external/wpt/html/semantics/scripting-1/the-script-element/css-module"],
"args": ["--enable-blink-features=CSSModules"]
},
{
"prefix": "css-scroll-timeline",
"bases": ["external/wpt/scroll-animations/css"],
"args": ["--enable-blink-features=CSSScrollTimeline"]
},
{
"prefix": "import-maps-disabled",
"bases": ["external/wpt/import-maps/core/not-as-classic-script.html"],
......
......@@ -230,13 +230,13 @@ test(() => {
test(() => {
style.animation = "";
style.animation = "solid red";
style.animation = "solid red green";
assert_equals(style.animation, '');
assert_equals(computedStyle.animation, 'none 0s ease 0s 1 normal none running');
assert_equals(style.webkitAnimation, '');
assert_equals(computedStyle.webkitAnimation, 'none 0s ease 0s 1 normal none running');
style.animation = "all 30s width ease-in";
style.animation = "all 30s width height ease-in";
assert_equals(style.animation, '');
assert_equals(computedStyle.animation, 'none 0s ease 0s 1 normal none running');
assert_equals(style.webkitAnimation, '');
......@@ -254,13 +254,13 @@ test(() => {
assert_equals(style.webkitAnimation, '');
assert_equals(computedStyle.webkitAnimation, 'none 0s ease 0s 1 normal none running');
style.animation = "ease-in opacity 20s 10s myAnim, none";
style.animation = "ease-in opacity top 20s 10s myAnim, none";
assert_equals(style.animation, '');
assert_equals(computedStyle.animation, 'none 0s ease 0s 1 normal none running');
assert_equals(style.webkitAnimation, '');
assert_equals(computedStyle.webkitAnimation, 'none 0s ease 0s 1 normal none running');
style.animation = "none, ease-in opacity 20s 10s myAnim";
style.animation = "none, ease-in opacity top 20s 10s myAnim";
assert_equals(style.animation, '');
assert_equals(computedStyle.animation, 'none 0s ease 0s 1 normal none running');
assert_equals(style.webkitAnimation, '');
......
......@@ -18,13 +18,13 @@ test_invalid_value("animation", "steps(1) steps(2)");
test_invalid_value("animation", "1 2");
test_invalid_value("animation", "reverse alternate anim");
test_invalid_value("animation", "reverse alternate alternate-reverse anim");
test_invalid_value("animation", "both backwards anim");
test_invalid_value("animation", "both backwards forwards anim");
test_invalid_value("animation", "paused running anim");
test_invalid_value("animation", "paused running paused anim");
test_invalid_value("animation", "anim1 anim2");
test_invalid_value("animation", "anim1 timeline1 anim2");
</script>
</body>
</html>
......@@ -19,7 +19,8 @@ test_shorthand_value('animation', 'anim paused both reverse 4 1s -3s cubic-bezie
'animation-direction': 'reverse',
'animation-fill-mode': 'both',
'animation-play-state': 'paused',
'animation-name': 'anim'
'animation-name': 'anim',
'animation-timeline': 'auto'
});
test_shorthand_value('animation', 'anim paused both reverse, 4 1s -3s cubic-bezier(0, -2, 1, 3)', {
......@@ -30,7 +31,8 @@ test_shorthand_value('animation', 'anim paused both reverse, 4 1s -3s cubic-bezi
'animation-direction': 'reverse, normal',
'animation-fill-mode': 'both, none',
'animation-play-state': 'paused, running',
'animation-name': 'anim, none'
'animation-name': 'anim, none',
'animation-timeline': 'auto, auto'
});
test_shorthand_value('animation', '4 1s -3s cubic-bezier(0, -2, 1, 3), anim paused both reverse', {
......@@ -41,7 +43,8 @@ test_shorthand_value('animation', '4 1s -3s cubic-bezier(0, -2, 1, 3), anim paus
'animation-direction': 'normal, reverse',
'animation-fill-mode': 'none, both',
'animation-play-state': 'running, paused',
'animation-name': 'none, anim'
'animation-name': 'none, anim',
'animation-timeline': 'auto, auto'
});
</script>
</body>
......
This is a testharness.js-based test.
FAIL Custom properties are included in computed style assert_equals: Should show up in .length expected 337 but got 336
FAIL Custom properties are included in computed style assert_equals: Should show up in .length expected 338 but got 337
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS getComputedStyle returns no style for detached element
FAIL getComputedStyle returns no style for element in non-rendered iframe (display: none) assert_equals: expected 0 but got 336
FAIL getComputedStyle returns no style for element in non-rendered iframe (display: none) from iframe's window assert_equals: expected 0 but got 336
FAIL getComputedStyle returns no style for element outside the flat tree assert_equals: expected 0 but got 336
FAIL getComputedStyle returns no style for descendant outside the flat tree assert_equals: expected 0 but got 336
FAIL getComputedStyle returns no style for element in non-rendered iframe (display: none) assert_equals: expected 0 but got 337
FAIL getComputedStyle returns no style for element in non-rendered iframe (display: none) from iframe's window assert_equals: expected 0 but got 337
FAIL getComputedStyle returns no style for element outside the flat tree assert_equals: expected 0 but got 337
FAIL getComputedStyle returns no style for descendant outside the flat tree assert_equals: expected 0 but got 337
PASS getComputedStyle returns no style for shadow tree outside of flattened tree
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim" should set the property value
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim timeline" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim none" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim \"initial\"" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim auto" should set the property value assert_not_equals: property should be set got disallowed value ""
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim initial" should not set the property value
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim 2000" should not set the property value
PASS Property animation value '1s linear 1s 2 reverse forwards paused anim'
FAIL Property animation value '1s linear 1s 2 reverse forwards paused anim timeline' assert_true: '1s linear 1s 2 reverse forwards paused anim timeline' is a supported value for animation. expected true got false
FAIL Property animation value '1s linear 1s 2 reverse forwards paused anim none' assert_true: '1s linear 1s 2 reverse forwards paused anim none' is a supported value for animation. expected true got false
FAIL Property animation value '1s linear 1s 2 reverse forwards paused anim auto' assert_true: '1s linear 1s 2 reverse forwards paused anim auto' is a supported value for animation. expected true got false
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-delay assert_equals: animation-delay should be canonical expected "1s, 1s, 1s" but got ""
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-direction assert_equals: animation-direction should be canonical expected "reverse, reverse, reverse" but got ""
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-duration assert_equals: animation-duration should be canonical expected "1s, 1s, 1s" but got ""
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-fill-mode assert_equals: animation-fill-mode should be canonical expected "forwards, forwards, forwards" but got ""
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-iteration-count assert_equals: animation-iteration-count should be canonical expected "2, 2, 2" but got ""
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-name assert_equals: animation-name should be canonical expected "anim1, anim2, anim3" but got ""
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-play-state assert_equals: animation-play-state should be canonical expected "paused, paused, paused" but got ""
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-timeline assert_equals: animation-timeline should be canonical expected (string) "timeline, none, auto" but got (undefined) undefined
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-timing-function assert_equals: animation-timing-function should be canonical expected "linear, linear, linear" but got ""
FAIL e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should not set unrelated longhands assert_true: expected true got false
Harness: the test ran to completion.
This is a testharness.js-based test.
FAIL Property animation-timeline value 'initial' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'inherit' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'unset' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'revert' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'auto' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'none' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'auto, auto' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'none, none' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'auto, none' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'none, auto' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value '"test"' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value '"none"' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value '"auto"' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value '"initial"' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value '"inherit"' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value '"unset"' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value '"revert"' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'test' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'test1, test2' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL Property animation-timeline value 'test1, "test2", none, test3, auto' assert_true: animation-timeline doesn't seem to be supported in the computed style expected true got false
FAIL The animation-timeline property shows up in CSSStyleDeclaration enumeration assert_not_equals: got disallowed value -1
FAIL The animation-timeline property shows up in CSSStyleDeclaration.cssText assert_not_equals: got disallowed value -1
Harness: the test ran to completion.
This is a testharness.js-based test.
FAIL The animation-timeline property may not be used in keyframes assert_equals: expected (string) "auto" but got (undefined) undefined
Harness: the test ran to completion.
This is a testharness.js-based test.
FAIL Animation with animation-timeline:none has no effect value assert_equals: expected "0px" but got "100px"
FAIL Animation with unknown timeline name has no effect value assert_equals: expected "0px" but got "100px"
Harness: the test ran to completion.
This is a testharness.js-based test.
FAIL e.style['animation-timeline'] = "initial" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "inherit" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "unset" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "revert" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "auto" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "none" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "auto, auto" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "none, none" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "auto, none" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "none, auto" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "\"test\"" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "\"none\"" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "\"auto\"" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "\"initial\"" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "\"inherit\"" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "\"unset\"" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "\"revert\"" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "test" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "test1, test2" should set the property value assert_not_equals: property should be set got disallowed value ""
FAIL e.style['animation-timeline'] = "test1, \"test2\", none, test3, auto" should set the property value assert_not_equals: property should be set got disallowed value ""
PASS e.style['animation-timeline'] = "10px" should not set the property value
PASS e.style['animation-timeline'] = "auto auto" should not set the property value
PASS e.style['animation-timeline'] = "none none" should not set the property value
PASS e.style['animation-timeline'] = "foo bar" should not set the property value
PASS e.style['animation-timeline'] = "\"foo\" \"bar\"" should not set the property value
PASS e.style['animation-timeline'] = "rgb(1, 2, 3)" should not set the property value
PASS e.style['animation-timeline'] = "#fefefe" should not set the property value
Harness: the test ran to completion.
This is a testharness.js-based test.
FAIL Animation does not apply when timeline phase is before assert_equals: expected "0px" but got "100px"
Harness: the test ran to completion.
This is a testharness.js-based test.
FAIL Latest @scroll-timeline rule wins assert_equals: expected "105px" but got "100px"
Harness: the test ran to completion.
This is a testharness.js-based test.
Found 54 tests; 7 PASS, 47 FAIL, 0 TIMEOUT, 0 NOTRUN.
FAIL Scroll at offset 0 updates animation correctly [element_start_start] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 199 updates animation correctly [element_start_start] assert_equals: expected "0px" but got "100px"
PASS Scroll at offset 200 updates animation correctly [element_start_start]
FAIL Scroll at offset 300 updates animation correctly [element_start_start] assert_equals: expected "150px" but got "100px"
FAIL Scroll at offset 398 updates animation correctly [element_start_start] assert_equals: expected "199px" but got "100px"
FAIL Scroll at offset 400 updates animation correctly [element_start_start] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 0 updates animation correctly [element_end_end] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 49 updates animation correctly [element_end_end] assert_equals: expected "0px" but got "100px"
PASS Scroll at offset 50 updates animation correctly [element_end_end]
FAIL Scroll at offset 150 updates animation correctly [element_end_end] assert_equals: expected "150px" but got "100px"
FAIL Scroll at offset 248 updates animation correctly [element_end_end] assert_equals: expected "199px" but got "100px"
FAIL Scroll at offset 250 updates animation correctly [element_end_end] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 0 updates animation correctly [element_end_start] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 49 updates animation correctly [element_end_start] assert_equals: expected "0px" but got "100px"
PASS Scroll at offset 50 updates animation correctly [element_end_start]
FAIL Scroll at offset 225 updates animation correctly [element_end_start] assert_equals: expected "150px" but got "100px"
FAIL Scroll at offset 393 updates animation correctly [element_end_start] assert_equals: expected "198px" but got "100px"
FAIL Scroll at offset 400 updates animation correctly [element_end_start] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 0 updates animation correctly [element_end_1_end] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 99 updates animation correctly [element_end_1_end] assert_equals: expected "0px" but got "100px"
PASS Scroll at offset 100 updates animation correctly [element_end_1_end]
FAIL Scroll at offset 175 updates animation correctly [element_end_1_end] assert_equals: expected "150px" but got "100px"
FAIL Scroll at offset 247 updates animation correctly [element_end_1_end] assert_equals: expected "198px" but got "100px"
FAIL Scroll at offset 250 updates animation correctly [element_end_1_end] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 0 updates animation correctly [element_end_start_05] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 49 updates animation correctly [element_end_start_05] assert_equals: expected "0px" but got "100px"
PASS Scroll at offset 50 updates animation correctly [element_end_start_05]
FAIL Scroll at offset 206 updates animation correctly [element_end_start_05] assert_equals: expected "148px" but got "100px"
FAIL Scroll at offset 362 updates animation correctly [element_end_start_05] assert_equals: expected "196px" but got "100px"
FAIL Scroll at offset 375 updates animation correctly [element_end_start_05] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 0 updates animation correctly [element_start_400px] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 199 updates animation correctly [element_start_400px] assert_equals: expected "0px" but got "100px"
PASS Scroll at offset 200 updates animation correctly [element_start_400px]
FAIL Scroll at offset 300 updates animation correctly [element_start_400px] assert_equals: expected "150px" but got "100px"
FAIL Scroll at offset 398 updates animation correctly [element_start_400px] assert_equals: expected "199px" but got "100px"
FAIL Scroll at offset 400 updates animation correctly [element_start_400px] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 0 updates animation correctly [element_50px_end] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 49 updates animation correctly [element_50px_end] assert_equals: expected "0px" but got "100px"
PASS Scroll at offset 50 updates animation correctly [element_50px_end]
FAIL Scroll at offset 150 updates animation correctly [element_50px_end] assert_equals: expected "150px" but got "100px"
FAIL Scroll at offset 248 updates animation correctly [element_50px_end] assert_equals: expected "199px" but got "100px"
FAIL Scroll at offset 250 updates animation correctly [element_50px_end] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 0 updates animation correctly [element_outside] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 100 updates animation correctly [element_outside] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 200 updates animation correctly [element_outside] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 300 updates animation correctly [element_outside] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 400 updates animation correctly [element_outside] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 450 updates animation correctly [element_outside] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 0 updates animation correctly [element_display_none] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 100 updates animation correctly [element_display_none] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 200 updates animation correctly [element_display_none] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 300 updates animation correctly [element_display_none] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 400 updates animation correctly [element_display_none] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 450 updates animation correctly [element_display_none] assert_equals: expected "0px" but got "100px"
Harness: the test ran to completion.
This is a testharness.js-based test.
FAIL Animation does not apply when timeline is initially inactive assert_equals: expected "0px" but got "100px"
Harness: the test ran to completion.
This is a testharness.js-based test.
FAIL Orientation auto behaves as expected assert_equals: expected "175px" but got "100px"
FAIL Orientation vertical behaves as expected assert_equals: expected "175px" but got "100px"
FAIL Orientation horizontal behaves as expected assert_equals: expected "125px" but got "100px"
FAIL Orientation block behaves as expected in horizontal writing-mode assert_equals: expected "175px" but got "100px"
FAIL Orientation inline behaves as expected in horizontal writing-mode assert_equals: expected "125px" but got "100px"
FAIL Orientation block behaves as expected in vertical writing-mode assert_equals: expected "125px" but got "100px"
FAIL Orientation inline behaves as expected in vertical writing-mode assert_equals: expected "175px" but got "100px"
PASS Orientation auto behaves as expected
PASS Orientation vertical behaves as expected
PASS Orientation horizontal behaves as expected
PASS Orientation block behaves as expected in horizontal writing-mode
PASS Orientation inline behaves as expected in horizontal writing-mode
FAIL Orientation block behaves as expected in vertical writing-mode assert_equals: expected "125px" but got "175px"
FAIL Orientation inline behaves as expected in vertical writing-mode assert_equals: expected "175px" but got "125px"
Harness: the test ran to completion.
This is a testharness.js-based test.
FAIL Scroll position is sampled once per frame assert_equals: expected "0px" but got "100px"
Harness: the test ran to completion.
This is a testharness.js-based test.
FAIL Source none causes inactive timeline assert_equals: expected "0px" but got "100px"
FAIL Source auto selects scrollingElement of the document assert_equals: expected "125px" but got "100px"
FAIL Unspecified source behaves like auto assert_equals: expected "125px" but got "100px"
FAIL Source selector(<id-selector>) selects an element assert_equals: expected "175px" but got "100px"
FAIL Unknown source causes inactive timeline assert_equals: expected "0px" but got "100px"
FAIL Source with no layout box causes inactive timeline assert_equals: expected "0px" but got "100px"
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Scroll at offset 0 updates animation correctly [element_0px_100px]
FAIL Scroll at offset 1 updates animation correctly [element_0px_100px] assert_equals: expected "101px" but got "100px"
FAIL Scroll at offset 50 updates animation correctly [element_0px_100px] assert_equals: expected "150px" but got "100px"
FAIL Scroll at offset 99 updates animation correctly [element_0px_100px] assert_equals: expected "199px" but got "100px"
FAIL Scroll at offset 100 updates animation correctly [element_0px_100px] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 101 updates animation correctly [element_0px_100px] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 0 updates animation correctly [element_50px_100px] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 1 updates animation correctly [element_50px_100px] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 49 updates animation correctly [element_50px_100px] assert_equals: expected "0px" but got "100px"
PASS Scroll at offset 50 updates animation correctly [element_50px_100px]
FAIL Scroll at offset 51 updates animation correctly [element_50px_100px] assert_equals: expected "102px" but got "100px"
FAIL Scroll at offset 99 updates animation correctly [element_50px_100px] assert_equals: expected "198px" but got "100px"
FAIL Scroll at offset 100 updates animation correctly [element_50px_100px] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 101 updates animation correctly [element_50px_100px] assert_equals: expected "0px" but got "100px"
PASS Scroll at offset 0 updates animation correctly [element_auto_auto]
FAIL Scroll at offset 21 updates animation correctly [element_auto_auto] assert_approx_equals: expected 110 +/- 5 but got 100
FAIL Scroll at offset 107 updates animation correctly [element_auto_auto] assert_approx_equals: expected 150 +/- 5 but got 100
FAIL Scroll at offset 193 updates animation correctly [element_auto_auto] assert_approx_equals: expected 190 +/- 5 but got 100
FAIL Scroll at offset 215 updates animation correctly [element_auto_auto] assert_approx_equals: expected 0 +/- 5 but got 100
FAIL Scroll at offset 0 updates animation correctly [element_50px_auto] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 49 updates animation correctly [element_50px_auto] assert_equals: expected "0px" but got "100px"
PASS Scroll at offset 50 updates animation correctly [element_50px_auto]
FAIL Scroll at offset 132 updates animation correctly [element_50px_auto] assert_approx_equals: expected 150 +/- 5 but got 100
FAIL Scroll at offset 198 updates animation correctly [element_50px_auto] assert_approx_equals: expected 190 +/- 5 but got 100
FAIL Scroll at offset 215 updates animation correctly [element_50px_auto] assert_approx_equals: expected 0 +/- 5 but got 100
PASS Scroll at offset 0 updates animation correctly [element_auto_100px]
FAIL Scroll at offset 1 updates animation correctly [element_auto_100px] assert_equals: expected "101px" but got "100px"
FAIL Scroll at offset 50 updates animation correctly [element_auto_100px] assert_equals: expected "150px" but got "100px"
FAIL Scroll at offset 99 updates animation correctly [element_auto_100px] assert_equals: expected "199px" but got "100px"
FAIL Scroll at offset 100 updates animation correctly [element_auto_100px] assert_equals: expected "0px" but got "100px"
FAIL Scroll at offset 0 updates animation correctly [element_25p_75p] assert_approx_equals: expected 0 +/- 5 but got 100
FAIL Scroll at offset 21 updates animation correctly [element_25p_75p] assert_approx_equals: expected 0 +/- 5 but got 100
FAIL Scroll at offset 43 updates animation correctly [element_25p_75p] assert_approx_equals: expected 0 +/- 5 but got 100
FAIL Scroll at offset 75 updates animation correctly [element_25p_75p] assert_approx_equals: expected 120 +/- 5 but got 100
FAIL Scroll at offset 118 updates animation correctly [element_25p_75p] assert_approx_equals: expected 160 +/- 5 but got 100
FAIL Scroll at offset 172 updates animation correctly [element_25p_75p] assert_approx_equals: expected 0 +/- 5 but got 100
FAIL Scroll at offset 215 updates animation correctly [element_25p_75p] assert_approx_equals: expected 0 +/- 5 but got 100
FAIL Scroll at offset 63 updates animation correctly [element_calc_calc] assert_approx_equals: expected 0 +/- 5 but got 100
FAIL Scroll at offset 117 updates animation correctly [element_calc_calc] assert_approx_equals: expected 150 +/- 5 but got 100
FAIL Scroll at offset 182 updates animation correctly [element_calc_calc] assert_approx_equals: expected 0 +/- 5 but got 100
Harness: the test ran to completion.
This is a testharness.js-based test.
FAIL Timerange mapped correctly (10s) assert_equals: expected "150px" but got "100px"
FAIL Timerange mapped correctly (1s) assert_equals: expected "105px" but got "100px"
FAIL Timerange mapped correctly (1000ms) assert_equals: expected "105px" but got "100px"
Harness: the test ran to completion.
This is a testharness.js-based test.
Found 107 tests; 13 PASS, 94 FAIL, 0 TIMEOUT, 0 NOTRUN.
FAIL Empty block assert_equals: expected 1 but got 0
FAIL EOF ends block assert_equals: expected 1 but got 0
FAIL Timeline name can be a <string> assert_equals: expected 1 but got 0
PASS Missing prelude
PASS Missing block
PASS Missing timeline name
PASS Timeline name must be an identifier
PASS Timeline name must match <custom-ident>
PASS Timeline name must match <custom-ident> (caps)
PASS Timeline name must match <custom-ident> (mixed)
PASS Timeline name may not be initial
PASS Timeline name may not be inherit
PASS Timeline name may not be unset
PASS Timeline name may not be revert
PASS Timeline name may not be default
PASS Extra timeline name
FAIL CSSRule.type returns 0 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.name foo assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.name Foo assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.name f___123 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.name a\9 b assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.name "foo" assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.name "none" assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source selector(#foo) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source selector( #foo ) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source selector(#foo) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source none assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source none assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source selector(#a\9 b) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source auto assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source #foo assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source element(#foo) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source selector(#foo more) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source selector(html) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source selector(foo) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source selector(:before) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source selector(*) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source selector(.a) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.source selector(.a, .b) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.orientation auto assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.orientation block assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.orientation inline assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.orientation horizontal assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.orientation vertical assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.orientation vertical assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.orientation assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.orientation foo assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.orientation 10px assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.orientation red assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start auto assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end auto assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start auto assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end auto assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start 10px assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end 10px assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start 10px assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end 10px assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start 10em assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end 10em assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start 10% assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end 10% assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start calc(1px + 1%) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end calc(1px + 1%) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start red assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end red assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start #fff assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end #fff assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start unset assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end unset assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start unknown(#foo) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end unknown(#foo) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start start assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end start assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start end assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end end assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start 3 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end 3 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start selector(#foo) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end selector(#foo) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start selector(#foo) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end selector(#foo) assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start selector(#foo) start assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end selector(#foo) start assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start selector(#foo) start 3 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end selector(#foo) start 3 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start selector(#foo) 3 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end selector(#foo) 3 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start selector(#foo) 3.5 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end selector(#foo) 3.5 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start selector(#foo) end assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end selector(#foo) end assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start selector(#foo) end 3 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end selector(#foo) end 3 assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.start selector(#foo) 3 end assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.end selector(#foo) 3 end assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.timeRange auto assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.timeRange auto assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.timeRange 1s assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.timeRange 1s assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.timeRange 1000ms assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.timeRange assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.timeRange red assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.timeRange #fff assert_equals: expected 1 but got 0
FAIL CSSScrollTimelineRule.timeRange unset assert_equals: expected 1 but got 0
Harness: the test ran to completion.
......@@ -61,6 +61,7 @@ animation-fill-mode: none
animation-iteration-count: 1
animation-name: none
animation-play-state: running
animation-timeline: auto
animation-timing-function: ease
appearance: none
backdrop-filter: none
......
......@@ -61,6 +61,7 @@ animation-fill-mode: none
animation-iteration-count: 1
animation-name: none
animation-play-state: running
animation-timeline: auto
animation-timing-function: ease
appearance: none
backdrop-filter: none
......
......@@ -15,6 +15,7 @@ element.style { ()
animation-fill-mode: inherit;
animation-play-state: inherit;
animation-name: inherit;
animation-timeline: inherit;
[expanded]
div { (user agent stylesheet)
......@@ -44,6 +45,7 @@ element.style { ()
animation-fill-mode: none;
animation-play-state: running;
animation-name: animName;
animation-timeline: auto;
display: none;
[expanded]
......
......@@ -15,6 +15,7 @@ element.style { ()
animation-fill-mode: none, none, none, none;
animation-play-state: running, running, running, running;
animation-name: animName, mediaAnim, doesNotExist, styleSheetAnim;
animation-timeline: auto, auto, auto, auto;
[expanded]
div { (user agent stylesheet)
......@@ -67,6 +68,7 @@ element.style { ()
animation-fill-mode: none, none, none, none;
animation-play-state: running, running, running, running;
animation-name: animName, mediaAnim, doesNotExist, styleSheetAnim;
animation-timeline: auto, auto, auto, auto;
[expanded]
div { (user agent stylesheet)
......@@ -119,6 +121,7 @@ element.style { ()
animation-fill-mode: none, none, none, none;
animation-play-state: running, running, running, running;
animation-name: animName, mediaAnim, doesNotExist, styleSheetAnim;
animation-timeline: auto, auto, auto, auto;
[expanded]
div { (user agent stylesheet)
......@@ -171,6 +174,7 @@ element.style { ()
animation-fill-mode: none, none, none, none;
animation-play-state: running, running, running, running;
animation-name: animName, mediaAnim, doesNotExist, styleSheetAnim;
animation-timeline: auto, auto, auto, auto;
[expanded]
div { (user agent stylesheet)
......@@ -223,6 +227,7 @@ element.style { ()
animation-fill-mode: none, none, none, none;
animation-play-state: running, running, running, running;
animation-name: animName, mediaAnim, doesNotExist, styleSheetAnim;
animation-timeline: auto, auto, auto, auto;
[expanded]
div { (user agent stylesheet)
......
......@@ -61,6 +61,7 @@ animation-fill-mode: none
animation-iteration-count: 1
animation-name: none
animation-play-state: running
animation-timeline: auto
animation-timing-function: ease
appearance: none
backdrop-filter: none
......
Virtual test suite for feature CSSScrollTimeline, which enables support for the @scroll-timeline rule and the animation-timeline property.
https://drafts.csswg.org/scroll-animations-1/#animation-timeline
https://drafts.csswg.org/scroll-animations-1/#scroll-timeline-at-rule
This is a testharness.js-based test.
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim" should set the property value
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim timeline" should set the property value
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim none" should set the property value
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim \"initial\"" should set the property value
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim auto" should set the property value
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim initial" should not set the property value
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim 2000" should not set the property value
PASS Property animation value '1s linear 1s 2 reverse forwards paused anim'
PASS Property animation value '1s linear 1s 2 reverse forwards paused anim timeline'
PASS Property animation value '1s linear 1s 2 reverse forwards paused anim none'
PASS Property animation value '1s linear 1s 2 reverse forwards paused anim auto'
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-delay
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-direction
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-duration
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-fill-mode
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-iteration-count
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-name
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-play-state
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-timeline
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should set animation-timing-function
PASS e.style['animation'] = "1s linear 1s 2 reverse forwards paused anim1 timeline,\n 1s linear 1s 2 reverse forwards paused anim2 none,\n 1s linear 1s 2 reverse forwards paused anim3 auto" should not set unrelated longhands
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Property animation-timeline value 'initial'
PASS Property animation-timeline value 'inherit'
PASS Property animation-timeline value 'unset'
PASS Property animation-timeline value 'revert'
PASS Property animation-timeline value 'auto'
PASS Property animation-timeline value 'none'
PASS Property animation-timeline value 'auto, auto'
PASS Property animation-timeline value 'none, none'
PASS Property animation-timeline value 'auto, none'
PASS Property animation-timeline value 'none, auto'
PASS Property animation-timeline value '"test"'
PASS Property animation-timeline value '"none"'
PASS Property animation-timeline value '"auto"'
PASS Property animation-timeline value '"initial"'
PASS Property animation-timeline value '"inherit"'
PASS Property animation-timeline value '"unset"'
PASS Property animation-timeline value '"revert"'
PASS Property animation-timeline value 'test'
PASS Property animation-timeline value 'test1, test2'
PASS Property animation-timeline value 'test1, "test2", none, test3, auto'
PASS The animation-timeline property shows up in CSSStyleDeclaration enumeration
PASS The animation-timeline property shows up in CSSStyleDeclaration.cssText
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS The animation-timeline property may not be used in keyframes
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Animation with animation-timeline:none has no effect value
PASS Animation with unknown timeline name has no effect value
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS e.style['animation-timeline'] = "initial" should set the property value
PASS e.style['animation-timeline'] = "inherit" should set the property value
PASS e.style['animation-timeline'] = "unset" should set the property value
PASS e.style['animation-timeline'] = "revert" should set the property value
PASS e.style['animation-timeline'] = "auto" should set the property value
PASS e.style['animation-timeline'] = "none" should set the property value
PASS e.style['animation-timeline'] = "auto, auto" should set the property value
PASS e.style['animation-timeline'] = "none, none" should set the property value
PASS e.style['animation-timeline'] = "auto, none" should set the property value
PASS e.style['animation-timeline'] = "none, auto" should set the property value
PASS e.style['animation-timeline'] = "\"test\"" should set the property value
PASS e.style['animation-timeline'] = "\"none\"" should set the property value
PASS e.style['animation-timeline'] = "\"auto\"" should set the property value
PASS e.style['animation-timeline'] = "\"initial\"" should set the property value
PASS e.style['animation-timeline'] = "\"inherit\"" should set the property value
PASS e.style['animation-timeline'] = "\"unset\"" should set the property value
PASS e.style['animation-timeline'] = "\"revert\"" should set the property value
PASS e.style['animation-timeline'] = "test" should set the property value
PASS e.style['animation-timeline'] = "test1, test2" should set the property value
PASS e.style['animation-timeline'] = "test1, \"test2\", none, test3, auto" should set the property value
PASS e.style['animation-timeline'] = "10px" should not set the property value
PASS e.style['animation-timeline'] = "auto auto" should not set the property value
PASS e.style['animation-timeline'] = "none none" should not set the property value
PASS e.style['animation-timeline'] = "foo bar" should not set the property value
PASS e.style['animation-timeline'] = "\"foo\" \"bar\"" should not set the property value
PASS e.style['animation-timeline'] = "rgb(1, 2, 3)" should not set the property value
PASS e.style['animation-timeline'] = "#fefefe" should not set the property value
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Animation does not apply when timeline phase is before
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Latest @scroll-timeline rule wins
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Scroll at offset 0 updates animation correctly [element_start_start]
PASS Scroll at offset 199 updates animation correctly [element_start_start]
PASS Scroll at offset 200 updates animation correctly [element_start_start]
PASS Scroll at offset 300 updates animation correctly [element_start_start]
PASS Scroll at offset 398 updates animation correctly [element_start_start]
PASS Scroll at offset 400 updates animation correctly [element_start_start]
PASS Scroll at offset 0 updates animation correctly [element_end_end]
PASS Scroll at offset 49 updates animation correctly [element_end_end]
PASS Scroll at offset 50 updates animation correctly [element_end_end]
PASS Scroll at offset 150 updates animation correctly [element_end_end]
PASS Scroll at offset 248 updates animation correctly [element_end_end]
PASS Scroll at offset 250 updates animation correctly [element_end_end]
PASS Scroll at offset 0 updates animation correctly [element_end_start]
PASS Scroll at offset 49 updates animation correctly [element_end_start]
PASS Scroll at offset 50 updates animation correctly [element_end_start]
PASS Scroll at offset 225 updates animation correctly [element_end_start]
PASS Scroll at offset 393 updates animation correctly [element_end_start]
PASS Scroll at offset 400 updates animation correctly [element_end_start]
PASS Scroll at offset 0 updates animation correctly [element_end_1_end]
PASS Scroll at offset 99 updates animation correctly [element_end_1_end]
PASS Scroll at offset 100 updates animation correctly [element_end_1_end]
PASS Scroll at offset 175 updates animation correctly [element_end_1_end]
PASS Scroll at offset 247 updates animation correctly [element_end_1_end]
PASS Scroll at offset 250 updates animation correctly [element_end_1_end]
PASS Scroll at offset 0 updates animation correctly [element_end_start_05]
PASS Scroll at offset 49 updates animation correctly [element_end_start_05]
PASS Scroll at offset 50 updates animation correctly [element_end_start_05]
PASS Scroll at offset 206 updates animation correctly [element_end_start_05]
PASS Scroll at offset 362 updates animation correctly [element_end_start_05]
PASS Scroll at offset 375 updates animation correctly [element_end_start_05]
PASS Scroll at offset 0 updates animation correctly [element_start_400px]
PASS Scroll at offset 199 updates animation correctly [element_start_400px]
PASS Scroll at offset 200 updates animation correctly [element_start_400px]
PASS Scroll at offset 300 updates animation correctly [element_start_400px]
PASS Scroll at offset 398 updates animation correctly [element_start_400px]
PASS Scroll at offset 400 updates animation correctly [element_start_400px]
PASS Scroll at offset 0 updates animation correctly [element_50px_end]
PASS Scroll at offset 49 updates animation correctly [element_50px_end]
PASS Scroll at offset 50 updates animation correctly [element_50px_end]
PASS Scroll at offset 150 updates animation correctly [element_50px_end]
PASS Scroll at offset 248 updates animation correctly [element_50px_end]
PASS Scroll at offset 250 updates animation correctly [element_50px_end]
PASS Scroll at offset 0 updates animation correctly [element_outside]
PASS Scroll at offset 100 updates animation correctly [element_outside]
PASS Scroll at offset 200 updates animation correctly [element_outside]
PASS Scroll at offset 300 updates animation correctly [element_outside]
PASS Scroll at offset 400 updates animation correctly [element_outside]
PASS Scroll at offset 450 updates animation correctly [element_outside]
PASS Scroll at offset 0 updates animation correctly [element_display_none]
PASS Scroll at offset 100 updates animation correctly [element_display_none]
PASS Scroll at offset 200 updates animation correctly [element_display_none]
PASS Scroll at offset 300 updates animation correctly [element_display_none]
PASS Scroll at offset 400 updates animation correctly [element_display_none]
PASS Scroll at offset 450 updates animation correctly [element_display_none]
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Animation does not apply when timeline is initially inactive
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Orientation auto behaves as expected
PASS Orientation vertical behaves as expected
PASS Orientation horizontal behaves as expected
PASS Orientation block behaves as expected in horizontal writing-mode
PASS Orientation inline behaves as expected in horizontal writing-mode
FAIL Orientation block behaves as expected in vertical writing-mode assert_equals: expected "125px" but got "175px"
FAIL Orientation inline behaves as expected in vertical writing-mode assert_equals: expected "175px" but got "125px"
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Scroll position is sampled once per frame
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Source none causes inactive timeline
PASS Source auto selects scrollingElement of the document
PASS Unspecified source behaves like auto
PASS Source selector(<id-selector>) selects an element
PASS Unknown source causes inactive timeline
PASS Source with no layout box causes inactive timeline
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Scroll at offset 0 updates animation correctly [element_0px_100px]
PASS Scroll at offset 1 updates animation correctly [element_0px_100px]
PASS Scroll at offset 50 updates animation correctly [element_0px_100px]
PASS Scroll at offset 99 updates animation correctly [element_0px_100px]
PASS Scroll at offset 100 updates animation correctly [element_0px_100px]
PASS Scroll at offset 101 updates animation correctly [element_0px_100px]
PASS Scroll at offset 0 updates animation correctly [element_50px_100px]
PASS Scroll at offset 1 updates animation correctly [element_50px_100px]
PASS Scroll at offset 49 updates animation correctly [element_50px_100px]
PASS Scroll at offset 50 updates animation correctly [element_50px_100px]
PASS Scroll at offset 51 updates animation correctly [element_50px_100px]
PASS Scroll at offset 99 updates animation correctly [element_50px_100px]
PASS Scroll at offset 100 updates animation correctly [element_50px_100px]
PASS Scroll at offset 101 updates animation correctly [element_50px_100px]
PASS Scroll at offset 0 updates animation correctly [element_auto_auto]
PASS Scroll at offset 21 updates animation correctly [element_auto_auto]
PASS Scroll at offset 107 updates animation correctly [element_auto_auto]
PASS Scroll at offset 193 updates animation correctly [element_auto_auto]
PASS Scroll at offset 215 updates animation correctly [element_auto_auto]
PASS Scroll at offset 0 updates animation correctly [element_50px_auto]
PASS Scroll at offset 49 updates animation correctly [element_50px_auto]
PASS Scroll at offset 50 updates animation correctly [element_50px_auto]
PASS Scroll at offset 132 updates animation correctly [element_50px_auto]
PASS Scroll at offset 198 updates animation correctly [element_50px_auto]
PASS Scroll at offset 215 updates animation correctly [element_50px_auto]
PASS Scroll at offset 0 updates animation correctly [element_auto_100px]
PASS Scroll at offset 1 updates animation correctly [element_auto_100px]
PASS Scroll at offset 50 updates animation correctly [element_auto_100px]
PASS Scroll at offset 99 updates animation correctly [element_auto_100px]
PASS Scroll at offset 100 updates animation correctly [element_auto_100px]
PASS Scroll at offset 0 updates animation correctly [element_25p_75p]
PASS Scroll at offset 21 updates animation correctly [element_25p_75p]
PASS Scroll at offset 43 updates animation correctly [element_25p_75p]
PASS Scroll at offset 75 updates animation correctly [element_25p_75p]
PASS Scroll at offset 118 updates animation correctly [element_25p_75p]
PASS Scroll at offset 172 updates animation correctly [element_25p_75p]
PASS Scroll at offset 215 updates animation correctly [element_25p_75p]
PASS Scroll at offset 63 updates animation correctly [element_calc_calc]
PASS Scroll at offset 117 updates animation correctly [element_calc_calc]
PASS Scroll at offset 182 updates animation correctly [element_calc_calc]
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Timerange mapped correctly (10s)
PASS Timerange mapped correctly (1s)
PASS Timerange mapped correctly (1000ms)
Harness: the test ran to completion.
This is a testharness.js-based test.
PASS Empty block
PASS EOF ends block
PASS Timeline name can be a <string>
PASS Missing prelude
PASS Missing block
PASS Missing timeline name
PASS Timeline name must be an identifier
PASS Timeline name must match <custom-ident>
PASS Timeline name must match <custom-ident> (caps)
PASS Timeline name must match <custom-ident> (mixed)
PASS Timeline name may not be initial
PASS Timeline name may not be inherit
PASS Timeline name may not be unset
PASS Timeline name may not be revert
PASS Timeline name may not be default
PASS Extra timeline name
PASS CSSRule.type returns 0
PASS CSSScrollTimelineRule.name foo
PASS CSSScrollTimelineRule.name Foo
PASS CSSScrollTimelineRule.name f___123
PASS CSSScrollTimelineRule.name a\9 b
PASS CSSScrollTimelineRule.name "foo"
PASS CSSScrollTimelineRule.name "none"
PASS CSSScrollTimelineRule.source selector(#foo)
PASS CSSScrollTimelineRule.source selector( #foo )
PASS CSSScrollTimelineRule.source selector(#foo)
PASS CSSScrollTimelineRule.source none
PASS CSSScrollTimelineRule.source none
PASS CSSScrollTimelineRule.source selector(#a\9 b)
PASS CSSScrollTimelineRule.source auto
PASS CSSScrollTimelineRule.source #foo
PASS CSSScrollTimelineRule.source
PASS CSSScrollTimelineRule.source element(#foo)
PASS CSSScrollTimelineRule.source selector(#foo more)
PASS CSSScrollTimelineRule.source selector(html)
PASS CSSScrollTimelineRule.source selector(foo)
PASS CSSScrollTimelineRule.source selector(:before)
PASS CSSScrollTimelineRule.source selector(*)
PASS CSSScrollTimelineRule.source selector(.a)
PASS CSSScrollTimelineRule.source selector(.a, .b)
PASS CSSScrollTimelineRule.orientation auto
PASS CSSScrollTimelineRule.orientation block
PASS CSSScrollTimelineRule.orientation inline
PASS CSSScrollTimelineRule.orientation horizontal
PASS CSSScrollTimelineRule.orientation vertical
PASS CSSScrollTimelineRule.orientation vertical
PASS CSSScrollTimelineRule.orientation
PASS CSSScrollTimelineRule.orientation foo
PASS CSSScrollTimelineRule.orientation 10px
PASS CSSScrollTimelineRule.orientation red
PASS CSSScrollTimelineRule.start auto
PASS CSSScrollTimelineRule.end auto
PASS CSSScrollTimelineRule.start auto
PASS CSSScrollTimelineRule.end auto
PASS CSSScrollTimelineRule.start 10px
PASS CSSScrollTimelineRule.end 10px
PASS CSSScrollTimelineRule.start 10px
PASS CSSScrollTimelineRule.end 10px
PASS CSSScrollTimelineRule.start 10em
PASS CSSScrollTimelineRule.end 10em
PASS CSSScrollTimelineRule.start 10%
PASS CSSScrollTimelineRule.end 10%
PASS CSSScrollTimelineRule.start calc(1px + 1%)
PASS CSSScrollTimelineRule.end calc(1px + 1%)
PASS CSSScrollTimelineRule.start
PASS CSSScrollTimelineRule.end
PASS CSSScrollTimelineRule.start red
PASS CSSScrollTimelineRule.end red
PASS CSSScrollTimelineRule.start #fff
PASS CSSScrollTimelineRule.end #fff
PASS CSSScrollTimelineRule.start unset
PASS CSSScrollTimelineRule.end unset
PASS CSSScrollTimelineRule.start unknown(#foo)
PASS CSSScrollTimelineRule.end unknown(#foo)
PASS CSSScrollTimelineRule.start start
PASS CSSScrollTimelineRule.end start
PASS CSSScrollTimelineRule.start end
PASS CSSScrollTimelineRule.end end
PASS CSSScrollTimelineRule.start 3
PASS CSSScrollTimelineRule.end 3
PASS CSSScrollTimelineRule.start selector(#foo)
PASS CSSScrollTimelineRule.end selector(#foo)
PASS CSSScrollTimelineRule.start selector(#foo)
PASS CSSScrollTimelineRule.end selector(#foo)
PASS CSSScrollTimelineRule.start selector(#foo) start
PASS CSSScrollTimelineRule.end selector(#foo) start
PASS CSSScrollTimelineRule.start selector(#foo) start 3
PASS CSSScrollTimelineRule.end selector(#foo) start 3
PASS CSSScrollTimelineRule.start selector(#foo) 3
PASS CSSScrollTimelineRule.end selector(#foo) 3
PASS CSSScrollTimelineRule.start selector(#foo) 3.5
PASS CSSScrollTimelineRule.end selector(#foo) 3.5
PASS CSSScrollTimelineRule.start selector(#foo) end
PASS CSSScrollTimelineRule.end selector(#foo) end
PASS CSSScrollTimelineRule.start selector(#foo) end 3
PASS CSSScrollTimelineRule.end selector(#foo) end 3
PASS CSSScrollTimelineRule.start selector(#foo) 3 end
PASS CSSScrollTimelineRule.end selector(#foo) 3 end
PASS CSSScrollTimelineRule.timeRange auto
PASS CSSScrollTimelineRule.timeRange auto
PASS CSSScrollTimelineRule.timeRange 1s
PASS CSSScrollTimelineRule.timeRange 1s
PASS CSSScrollTimelineRule.timeRange 1000ms
PASS CSSScrollTimelineRule.timeRange
PASS CSSScrollTimelineRule.timeRange red
PASS CSSScrollTimelineRule.timeRange #fff
PASS CSSScrollTimelineRule.timeRange unset
Harness: the test ran to completion.
......@@ -16,6 +16,7 @@ animationFillMode
animationIterationCount
animationName
animationPlayState
animationTimeline
animationTimingFunction
appearance
ascentOverride
......@@ -141,6 +142,7 @@ direction
display
dominantBaseline
emptyCells
end
fill
fillOpacity
fillRule
......@@ -355,8 +357,10 @@ shapeMargin
shapeOutside
shapeRendering
size
source
speak
src
start
stopColor
stopOpacity
stroke
......@@ -390,6 +394,7 @@ textSizeAdjust
textTransform
textUnderlineOffset
textUnderlinePosition
timeRange
top
touchAction
transform
......
......@@ -68,6 +68,7 @@ All changes to this list should go through Blink's feature review process: http:
animation-iteration-count
animation-name
animation-play-state
animation-timeline
animation-timing-function
appearance
aspect-ratio
......@@ -423,6 +424,7 @@ All changes to this list should go through Blink's feature review process: http:
animation-iteration-count
animation-name
animation-play-state
animation-timeline
animation-timing-function
background
background-attachment
......
......@@ -820,6 +820,15 @@ interface CSSScale : CSSTransformComponent
setter x
setter y
setter z
interface CSSScrollTimelineRule : CSSRule
attribute @@toStringTag
getter end
getter name
getter orientation
getter source
getter start
getter timeRange
method constructor
interface CSSSkew : CSSTransformComponent
attribute @@toStringTag
getter ax
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment