aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2019-11-30 09:25:34 -0500
committerGitHub <noreply@github.com>2019-11-30 09:25:34 -0500
commit92bd7637a1b7efb5b3fdfb7b3eaa3be344d54a44 (patch)
tree2633bb9700be5a7b584313a76bcc515a705b39da
parent3db473714bc87c1c692ebf300620aa382bd9cd1b (diff)
parentdc71e058599ea530737ce069f2b8779af0633829 (diff)
downloadservo-92bd7637a1b7efb5b3fdfb7b3eaa3be344d54a44.tar.gz
servo-92bd7637a1b7efb5b3fdfb7b3eaa3be344d54a44.zip
Auto merge of #24979 - servo-wpt-sync:wpt_update_30-11-2019, r=servo-wpt-sync
Sync WPT with upstream (30-11-2019) Automated downstream sync of changes from upstream as of 30-11-2019. [no-wpt-sync] r? @servo-wpt-sync
-rw-r--r--tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini4
-rw-r--r--tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini3
-rw-r--r--tests/wpt/metadata/MANIFEST.json2352
-rw-r--r--tests/wpt/metadata/css/CSS2/floats/floats-in-table-caption-001.html.ini2
-rw-r--r--tests/wpt/metadata/css/CSS2/linebox/animations/line-height-interpolation.html.ini841
-rw-r--r--tests/wpt/metadata/css/CSS2/visufx/animation/visibility-interpolation.html.ini244
-rw-r--r--tests/wpt/metadata/css/css-align/animation/column-gap-interpolation.html.ini469
-rw-r--r--tests/wpt/metadata/css/css-align/animation/row-gap-interpolation.html.ini469
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/background-color-interpolation.html.ini397
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/background-image-interpolation.html.ini556
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/background-position-interpolation.html.ini148
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/background-position-origin-interpolation.html.ini211
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/background-position-x-interpolation.html.ini286
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/background-position-y-interpolation.html.ini286
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/background-size-interpolation.html.ini733
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/border-color-interpolation.html.ini346
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/border-image-outset-interpolation.html.ini394
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/border-image-slice-interpolation-stability.html.ini4
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/border-image-slice-interpolation.html.ini778
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/border-image-source-interpolation.html.ini547
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/border-image-width-interpolation.html.ini949
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/border-radius-interpolation.html.ini487
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/border-width-interpolation.html.ini643
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/animations/box-shadow-interpolation.html.ini634
-rw-r--r--tests/wpt/metadata/css/css-color/animation/color-interpolation.html.ini265
-rw-r--r--tests/wpt/metadata/css/css-color/animation/opacity-interpolation.html.ini280
-rw-r--r--tests/wpt/metadata/css/css-flexbox/animation/flex-basis-interpolation.html.ini310
-rw-r--r--tests/wpt/metadata/css/css-flexbox/animation/flex-grow-interpolation.html.ini352
-rw-r--r--tests/wpt/metadata/css/css-flexbox/animation/flex-shrink-interpolation.html.ini364
-rw-r--r--tests/wpt/metadata/css/css-flexbox/animation/order-interpolation.html.ini427
-rw-r--r--tests/wpt/metadata/css/css-fonts/animations/font-size-adjust-interpolation.html.ini589
-rw-r--r--tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-001.html.ini355
-rw-r--r--tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-002.html.ini70
-rw-r--r--tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-003.html.ini70
-rw-r--r--tests/wpt/metadata/css/css-fonts/animations/font-variation-settings-interpolation.html.ini865
-rw-r--r--tests/wpt/metadata/css/css-fonts/standard-font-family-19.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-fonts/standard-font-family-20.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-images/animations/object-position-interpolation.html.ini637
-rw-r--r--tests/wpt/metadata/css/css-text/animations/letter-spacing-interpolation.html.ini355
-rw-r--r--tests/wpt/metadata/css/css-text/animations/text-indent-interpolation.html.ini610
-rw-r--r--tests/wpt/metadata/css/css-text/animations/word-spacing-interpolation.html.ini355
-rw-r--r--tests/wpt/metadata/css/css-text/line-break/line-break-normal-018.xht.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/line-break/line-break-strict-018.xht.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/trailing-ideographic-space-004.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/list-interpolation.html.ini220
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/matrix-interpolation.html.ini13
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/perspective-interpolation.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/perspective-origin-interpolation.html.ini322
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/rotate-interpolation.html.ini886
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/scale-interpolation.html.ini952
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-001.html.ini1081
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-002.html.ini553
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-003.html.ini439
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-004.html.ini781
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-005.html.ini901
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-006.html.ini235
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/transform-origin-interpolation.html.ini466
-rw-r--r--tests/wpt/metadata/css/css-transforms/animation/translate-interpolation.html.ini1048
-rw-r--r--tests/wpt/metadata/css/css-transitions/animations/text-shadow-interpolation.html.ini352
-rw-r--r--tests/wpt/metadata/css/css-transitions/animations/vertical-align-interpolation.html.ini349
-rw-r--r--tests/wpt/metadata/css/css-transitions/animations/z-index-interpolation.html.ini421
-rw-r--r--tests/wpt/metadata/css/css-ui/animation/caret-color-interpolation.html.ini529
-rw-r--r--tests/wpt/metadata/css/css-ui/animation/outline-color-interpolation.html.ini265
-rw-r--r--tests/wpt/metadata/css/css-ui/animation/outline-offset-interpolation.html.ini295
-rw-r--r--tests/wpt/metadata/css/css-ui/animation/outline-width-interpolation.html.ini361
-rw-r--r--tests/wpt/metadata/css/css-values/animations/calc-interpolation.html.ini298
-rw-r--r--tests/wpt/metadata/css/cssom-view/matchMedia-display-none-iframe.html.ini2
-rw-r--r--tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-001.html.ini781
-rw-r--r--tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-002.html.ini205
-rw-r--r--tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-003.html.ini565
-rw-r--r--tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-004.html.ini601
-rw-r--r--tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-001.html.ini358
-rw-r--r--tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-002.html.ini355
-rw-r--r--tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-003.html.ini655
-rw-r--r--tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-004.html.ini445
-rw-r--r--tests/wpt/metadata/fetch/api/cors/cors-preflight-redirect.any.js.ini60
-rw-r--r--tests/wpt/metadata/fetch/content-type/response.window.js.ini14
-rw-r--r--tests/wpt/metadata/fetch/content-type/script.window.js.ini3
-rw-r--r--tests/wpt/metadata/fetch/metadata/navigation.https.sub.html.ini2
-rw-r--r--tests/wpt/metadata/fetch/metadata/navigation.tentative.https.sub.html.ini2
-rw-r--r--tests/wpt/metadata/fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html.ini5
-rw-r--r--tests/wpt/metadata/fetch/metadata/redirect/redirect-http-upgrade-prefetch.optional.tentative.sub.html.ini5
-rw-r--r--tests/wpt/metadata/fetch/metadata/redirect/redirect-https-downgrade-prefetch.optional.tentative.sub.html.ini5
-rw-r--r--tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini3
-rw-r--r--tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini4
-rw-r--r--tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_4.html.ini4
-rw-r--r--tests/wpt/metadata/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html.ini3
-rw-r--r--tests/wpt/metadata/html/browsers/windows/embedded-opener-remove-frame.html.ini1
-rw-r--r--tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html.ini3
-rw-r--r--tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html.ini3
-rw-r--r--tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html.ini3
-rw-r--r--tests/wpt/metadata/html/semantics/embedded-content/the-img-element/non-active-document.html.ini4
-rw-r--r--tests/wpt/metadata/html/semantics/forms/constraints/infinite_backtracking.html.ini4
-rw-r--r--tests/wpt/metadata/html/semantics/forms/form-submission-0/form-double-submit-3.html.ini2
-rw-r--r--tests/wpt/metadata/html/semantics/forms/form-submission-0/form-double-submit.html.ini2
-rw-r--r--tests/wpt/metadata/html/syntax/parsing/DOMContentLoaded-defer.html.ini4
-rw-r--r--tests/wpt/metadata/offscreen-canvas/the-offscreen-canvas/size.large.html.ini2
-rw-r--r--tests/wpt/metadata/webmessaging/with-ports/017.html.ini5
-rw-r--r--tests/wpt/metadata/webmessaging/without-ports/017.html.ini5
-rw-r--r--tests/wpt/metadata/webmessaging/without-ports/018.html.ini5
-rw-r--r--tests/wpt/metadata/workers/constructors/Worker/Worker-constructor.html.ini2
-rw-r--r--tests/wpt/web-platform-tests/.azure-pipelines.yml9
-rw-r--r--tests/wpt/web-platform-tests/.github/workflows/manifest.yml2
-rw-r--r--tests/wpt/web-platform-tests/.taskcluster.yml411
-rw-r--r--tests/wpt/web-platform-tests/client-hints/accept_ch.tentative.https.html22
-rw-r--r--tests/wpt/web-platform-tests/client-hints/http_equiv_accept_ch.tentative.https.html17
-rw-r--r--tests/wpt/web-platform-tests/compression/decompression-corrupt-input.tentative.any.js (renamed from tests/wpt/web-platform-tests/compression/decompression-corrupt-input.any.js)0
-rw-r--r--tests/wpt/web-platform-tests/conformance-checkers/messages.json2
-rw-r--r--tests/wpt/web-platform-tests/content-dpr/image-pseudo-element-content-dpr-ref.html12
-rw-r--r--tests/wpt/web-platform-tests/content-dpr/image-pseudo-element-content-dpr.html17
-rw-r--r--tests/wpt/web-platform-tests/content-dpr/image-with-content-dpr-and-explicit-dimensions-ref.html10
-rw-r--r--tests/wpt/web-platform-tests/content-dpr/image-with-content-dpr-and-explicit-dimensions.html12
-rw-r--r--tests/wpt/web-platform-tests/content-dpr/image-with-dpr-header.html (renamed from tests/wpt/web-platform-tests/client-hints/image-with-dpr-header.html)0
-rw-r--r--tests/wpt/web-platform-tests/content-dpr/resources/background.pngbin0 -> 86 bytes
-rw-r--r--tests/wpt/web-platform-tests/content-dpr/resources/dpr.py (renamed from tests/wpt/web-platform-tests/client-hints/resources/dpr.py)0
-rw-r--r--tests/wpt/web-platform-tests/content-dpr/resources/square.pngbin0 -> 18299 bytes
-rw-r--r--tests/wpt/web-platform-tests/content-dpr/tiled-background-image-with-content-dpr-ref.html29
-rw-r--r--tests/wpt/web-platform-tests/content-dpr/tiled-background-image-with-content-dpr.html27
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/cookieStore_subscriptions_empty.tentative.https.window.js13
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/resources/always_changing_sw.sub.js6
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions.js65
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_basic.js45
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_empty.js16
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_eventhandler_attribute.js20
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_mismatch.js20
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_reset.sub.js24
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_reset.tentative.https.html42
-rw-r--r--tests/wpt/web-platform-tests/css/CSS2/linebox/inline-negative-margin-minmax-crash-001.html19
-rw-r--r--tests/wpt/web-platform-tests/css/css-backgrounds/animations/background-image-interpolation.html99
-rw-r--r--tests/wpt/web-platform-tests/css/css-backgrounds/animations/border-image-slice-interpolation-stability.html24
-rw-r--r--tests/wpt/web-platform-tests/css/css-break/fieldset-001-ref.html55
-rw-r--r--tests/wpt/web-platform-tests/css/css-break/fieldset-001.html46
-rw-r--r--tests/wpt/web-platform-tests/css/css-break/tall-break-inside-avoid-at-start.html10
-rw-r--r--tests/wpt/web-platform-tests/css/css-display/animations/display-interpolation.html47
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-17-notref.html11
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-17.html14
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-18-notref.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-18.html20
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-19-notref.html11
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-19.html14
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-2-ref.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-2.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-20-notref.html11
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-20.html20
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-6-ref.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-6.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-7-ref.html10
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-7.html10
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-ref.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/standard-font-family.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-lists/animations/list-style-image-interpolation.html147
-rw-r--r--tests/wpt/web-platform-tests/css/css-lists/resources/blue-20.pngbin0 -> 126 bytes
-rw-r--r--tests/wpt/web-platform-tests/css/css-lists/resources/green-20.pngbin0 -> 137 bytes
-rw-r--r--tests/wpt/web-platform-tests/css/css-lists/resources/stripes-20.pngbin0 -> 156 bytes
-rw-r--r--tests/wpt/web-platform-tests/css/css-masking/animations/mask-image-interpolation.html180
-rw-r--r--tests/wpt/web-platform-tests/css/css-masking/resources/blue-20.pngbin0 -> 126 bytes
-rw-r--r--tests/wpt/web-platform-tests/css/css-masking/resources/green-20.pngbin0 -> 137 bytes
-rw-r--r--tests/wpt/web-platform-tests/css/css-masking/resources/stripes-20.pngbin0 -> 156 bytes
-rw-r--r--tests/wpt/web-platform-tests/css/css-multicol/equal-gap-and-rule.html8
-rw-r--r--tests/wpt/web-platform-tests/css/css-pseudo/first-line-and-marker-ref.html28
-rw-r--r--tests/wpt/web-platform-tests/css/css-pseudo/first-line-and-marker.html32
-rw-r--r--tests/wpt/web-platform-tests/css/css-pseudo/parsing/marker-supported-properties.html2
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/scroll-snap-stop-change.html21
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/direction-rtl.html49
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/snap-after-initial-layout-ref.html20
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-horizontal-tb.html50
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-lr.html50
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-rl.html53
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/adding-only-snap-area.html55
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/adding-snap-area-while-snapped.html66
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/move-current-target.html118
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/remove-current-target.html65
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/snap-to-different-targets.html92
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-area-capturing-add-scroll-container.html (renamed from tests/wpt/web-platform-tests/css/css-scroll-snap/snap-area-caputring-add-scroll-container.html)12
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/snap-area-capturing-remove-scroll-container.html12
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-001-ref.html14
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-001.html16
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-002-ref.html21
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-002.html22
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-003-ref.html15
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-003.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-004-ref.html15
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-004.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-005-ref.html15
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-005.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-006-ref.html16
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-006.html16
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-007-ref.html27
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-007.html26
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-008-ref.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-008.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-009-ref.html23
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-009.html23
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-010-ref.html39
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-010.html40
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-011-ref.html39
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-011.html40
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-012-ref.html14
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-012.html15
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-013-ref.html18
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-013.html32
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-014-ref.html18
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-014.html19
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-015-ref.html16
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-015.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-016-ref.html39
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-016.html41
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-017-ref.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-017.html20
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-018-ref.html15
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-018.html18
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-019-ref.html15
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-019.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-020-ref.html14
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-020.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-021-ref.html41
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-021.html39
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-022-ref.html30
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-022.html31
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-023-ref.html29
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-023.html30
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-024-ref.html30
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-024.html31
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-025-ref.html56
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-025.html57
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-026-ref.html53
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-026.html61
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001-ref.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001.html34
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002-ref.html30
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002.html34
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003-ref.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003.html32
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001-ref.html15
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002-ref.html41
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002.html39
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003-ref.html20
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003.html20
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004-ref.html25
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004.html22
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005-ref.html36
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005.html44
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006-ref.html35
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006.html43
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007-ref.html35
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007.html43
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008-ref.html80
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008.html87
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-computed.html30
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-invalid.html21
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-valid.html22
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-computed.html30
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-invalid.html21
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-valid.html22
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-computed.html30
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-invalid.html21
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-valid.html22
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-computed.html38
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-invalid.html24
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-sets-computed-dimensions.html61
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-valid.html26
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-computed.html30
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-invalid.html21
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-valid.html22
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/resources/dice.pngbin58618 -> 0 bytes
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/percentage-resolution-001-ref.html16
-rw-r--r--tests/wpt/web-platform-tests/css/css-sizing/percentage-resolution-001.html26
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-overflow-001.html4
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-overflow-001-ref.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-values/animations/calc-interpolation.html97
-rw-r--r--tests/wpt/web-platform-tests/css/support/interpolation-testcommon.js10
-rw-r--r--tests/wpt/web-platform-tests/docs/writing-tests/reftests.md35
-rw-r--r--tests/wpt/web-platform-tests/document-policy/echo-policy-nested.html32
-rw-r--r--tests/wpt/web-platform-tests/document-policy/echo-policy-nested.html.headers1
-rw-r--r--tests/wpt/web-platform-tests/document-policy/echo-policy.py28
-rw-r--r--tests/wpt/web-platform-tests/document-policy/required-policy/document-policy.html54
-rw-r--r--tests/wpt/web-platform-tests/document-policy/required-policy/document-policy.html.headers1
-rw-r--r--tests/wpt/web-platform-tests/document-policy/required-policy/no-document-policy.html44
-rw-r--r--tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy-nested.html65
-rw-r--r--tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy.html65
-rw-r--r--tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy.html.headers1
-rw-r--r--tests/wpt/web-platform-tests/dom/events/Event-dispatch-redispatch.html140
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/cors/cors-preflight-redirect.any.js2
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/idlharness.any.js1
-rw-r--r--tests/wpt/web-platform-tests/fetch/metadata/appcache.tentative.https.sub.html35
-rw-r--r--tests/wpt/web-platform-tests/fetch/metadata/navigation.tentative.https.sub.html (renamed from tests/wpt/web-platform-tests/fetch/metadata/navigation.https.sub.html)0
-rw-r--r--tests/wpt/web-platform-tests/fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html15
-rw-r--r--tests/wpt/web-platform-tests/fetch/metadata/redirect/redirect-http-upgrade-prefetch.optional.tentative.sub.html15
-rw-r--r--tests/wpt/web-platform-tests/fetch/metadata/redirect/redirect-https-downgrade-prefetch.optional.tentative.sub.html15
-rw-r--r--tests/wpt/web-platform-tests/fetch/metadata/resources/helper.js4
-rw-r--r--tests/wpt/web-platform-tests/fetch/metadata/resources/record-header.py15
-rw-r--r--tests/wpt/web-platform-tests/fetch/metadata/resources/redirectTestHelper.sub.js49
-rw-r--r--tests/wpt/web-platform-tests/fetch/stale-while-revalidate/fetch.html2
-rw-r--r--tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-closed.html2
-rw-r--r--tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-multiple.html2
-rw-r--r--tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-noopener.html2
-rw-r--r--tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-noreferrer.html2
-rw-r--r--tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-setter.html2
-rw-r--r--tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener.html2
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/embedded-content/the-video-element/resize-during-playback.html39
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/forms/constraints/infinite_backtracking.html12
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPoints.html.ini2
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_wait_TestRendered.html14
-rw-r--r--tests/wpt/web-platform-tests/interfaces/cookie-store.idl26
-rw-r--r--tests/wpt/web-platform-tests/interfaces/resize-observer.idl2
-rw-r--r--tests/wpt/web-platform-tests/interfaces/wasm-js-api.idl15
-rw-r--r--tests/wpt/web-platform-tests/interfaces/web-nfc.idl4
-rw-r--r--tests/wpt/web-platform-tests/layout-instability/pointerdown-becomes-scroll.html62
-rw-r--r--tests/wpt/web-platform-tests/layout-instability/pointerdown-becomes-tap.html60
-rw-r--r--tests/wpt/web-platform-tests/layout-instability/resources/util.js3
-rw-r--r--tests/wpt/web-platform-tests/lint.whitelist1
-rw-r--r--tests/wpt/web-platform-tests/media/400x300-red-resize-200x150-green.mp4bin0 -> 17425 bytes
-rw-r--r--tests/wpt/web-platform-tests/media/400x300-red-resize-200x150-green.webmbin0 -> 11901 bytes
-rw-r--r--tests/wpt/web-platform-tests/portals/portals-adopt-predecessor.html10
-rw-r--r--tests/wpt/web-platform-tests/portals/resources/portals-adopt-predecessor-portal.html9
-rw-r--r--tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html225
-rw-r--r--tests/wpt/web-platform-tests/service-workers/service-worker/resources/fetch-event-worker-timing.js39
-rw-r--r--tests/wpt/web-platform-tests/storage-access-api/META.yml3
-rw-r--r--tests/wpt/web-platform-tests/svg/META.yml1
-rw-r--r--tests/wpt/web-platform-tests/svg/painting/marker-009-ref.svg19
-rw-r--r--tests/wpt/web-platform-tests/svg/painting/marker-009.svg23
-rw-r--r--tests/wpt/web-platform-tests/svg/painting/marker-orient-001-ref.svg31
-rw-r--r--tests/wpt/web-platform-tests/svg/painting/marker-orient-001.svg16
-rw-r--r--tests/wpt/web-platform-tests/svg/render/foreignObject-in-non-rendered-getComputedStyle.html20
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/azure/install_safari.yml2
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/azure/safari-technology-preview.rb33
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/commands.json24
-rwxr-xr-xtests/wpt/web-platform-tests/tools/ci/run_tc.py109
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/README.md235
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/__init__.py (renamed from tests/wpt/web-platform-tests/tools/taskcluster/__init__.py)0
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/decision.py323
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/download.py (renamed from tests/wpt/web-platform-tests/tools/ci/tcdownload.py)1
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/taskgraph.py170
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml370
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/testdata/master_push_event.json (renamed from tests/wpt/web-platform-tests/tools/taskcluster/testdata/master_push_event.json)0
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/testdata/pr_event.json (renamed from tests/wpt/web-platform-tests/tools/taskcluster/testdata/pr_event.json)0
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/testdata/pr_event_tests_affected.json505
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/tests/test_decision.py54
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/tests/test_taskgraph.py146
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py152
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tests/test_run_tc.py33
-rw-r--r--tests/wpt/web-platform-tests/tools/docker/frontend.py2
-rw-r--r--tests/wpt/web-platform-tests/tools/docker/seccomp.json798
-rw-r--r--tests/wpt/web-platform-tests/tools/lint/lint.py12
-rw-r--r--tests/wpt/web-platform-tests/tools/lint/tests/test_lint.py30
-rw-r--r--tests/wpt/web-platform-tests/tools/taskcluster/commands.json4
-rw-r--r--tests/wpt/web-platform-tests/tools/taskcluster/verify.py37
-rw-r--r--tests/wpt/web-platform-tests/tools/tox.ini5
-rw-r--r--tests/wpt/web-platform-tests/tools/wpt/browser.py107
-rw-r--r--tests/wpt/web-platform-tests/tools/wpt/install.py17
-rw-r--r--tests/wpt/web-platform-tests/tools/wpt/paths1
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/docs/expectation.rst2
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/requirements_firefox.txt2
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/base.py66
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executormarionette.py65
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorselenium.py44
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py1
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservodriver.py57
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py59
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/reftest-wait_marionette.js19
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/reftest-wait_webdriver.js48
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testrunner.py18
-rw-r--r--tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation-ref.html17
-rw-r--r--tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation.html41
-rw-r--r--tests/wpt/web-platform-tests/web-animations/timing-model/animations/sync-start-times-ref.html20
-rw-r--r--tests/wpt/web-platform-tests/web-animations/timing-model/animations/sync-start-times.html68
-rw-r--r--tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-fast-ref.html20
-rw-r--r--tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-fast.html62
-rw-r--r--tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-slow-ref.html18
-rw-r--r--tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-slow.html62
-rw-r--r--tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-zero-ref.html17
-rw-r--r--tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-zero.html61
-rw-r--r--tests/wpt/web-platform-tests/web-nfc/NDEFReader_scan_filter.https.html (renamed from tests/wpt/web-platform-tests/web-nfc/NDEFReader_options.https.html)62
-rw-r--r--tests/wpt/web-platform-tests/web-nfc/NDEFReadingEvent_constructor.https.html20
-rw-r--r--tests/wpt/web-platform-tests/web-nfc/resources/nfc-helpers.js5
-rw-r--r--tests/wpt/web-platform-tests/webdriver/tests/find_element_from_element/find.py1
-rw-r--r--tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-rollback.html38
-rw-r--r--tests/wpt/web-platform-tests/xhr/idlharness.any.js1
379 files changed, 37919 insertions, 5116 deletions
diff --git a/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini b/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini
index 76b398963ae..dd4ffcf4345 100644
--- a/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini
+++ b/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini
@@ -1,5 +1,4 @@
[url-in-tags-revoke.window.html]
- expected: TIMEOUT
[Fetching a blob URL immediately before revoking it works in an iframe.]
expected: FAIL
@@ -15,6 +14,3 @@
[Opening a blob URL in a new window by clicking an <a> tag works immediately before revoking the URL.]
expected: FAIL
- [Fetching a blob URL immediately before revoking it works in <script> tags.]
- expected: TIMEOUT
-
diff --git a/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini b/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini
index 0bf3b469372..f28a19f1250 100644
--- a/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini
+++ b/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini
@@ -2,6 +2,9 @@
[Revoke blob URL after creating Request, will fetch]
expected: FAIL
+ [Revoke blob URL after calling fetch, fetch should succeed]
+ expected: FAIL
+
[url-with-fetch.any.html]
[Revoke blob URL after creating Request, will fetch]
diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json
index 714f683129b..3cf06c2c694 100644
--- a/tests/wpt/metadata/MANIFEST.json
+++ b/tests/wpt/metadata/MANIFEST.json
@@ -20301,6 +20301,42 @@
{}
]
],
+ "content-dpr/image-pseudo-element-content-dpr.html": [
+ [
+ "content-dpr/image-pseudo-element-content-dpr.html",
+ [
+ [
+ "/content-dpr/image-pseudo-element-content-dpr-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "content-dpr/image-with-content-dpr-and-explicit-dimensions.html": [
+ [
+ "content-dpr/image-with-content-dpr-and-explicit-dimensions.html",
+ [
+ [
+ "/content-dpr/image-with-content-dpr-and-explicit-dimensions-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "content-dpr/tiled-background-image-with-content-dpr.html": [
+ [
+ "content-dpr/tiled-background-image-with-content-dpr.html",
+ [
+ [
+ "/content-dpr/tiled-background-image-with-content-dpr-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/CSS2/abspos/abspos-containing-block-initial-001.xht": [
[
"css/CSS2/abspos/abspos-containing-block-initial-001.xht",
@@ -110229,6 +110265,18 @@
{}
]
],
+ "css/css-break/fieldset-001.html": [
+ [
+ "css/css-break/fieldset-001.html",
+ [
+ [
+ "/css/css-break/fieldset-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-break/fieldset.html": [
[
"css/css-break/fieldset.html",
@@ -110277,6 +110325,18 @@
{}
]
],
+ "css/css-break/tall-break-inside-avoid-at-start.html": [
+ [
+ "css/css-break/tall-break-inside-avoid-at-start.html",
+ [
+ [
+ "/css/reference/ref-filled-green-100px-square.xht",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-break/widows-orphans-001.html": [
[
"css/css-break/widows-orphans-001.html",
@@ -124255,6 +124315,42 @@
{}
]
],
+ "css/css-fonts/standard-font-family-17.html": [
+ [
+ "css/css-fonts/standard-font-family-17.html",
+ [
+ [
+ "/css/css-fonts/standard-font-family-17-notref.html",
+ "!="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-fonts/standard-font-family-18.html": [
+ [
+ "css/css-fonts/standard-font-family-18.html",
+ [
+ [
+ "/css/css-fonts/standard-font-family-18-notref.html",
+ "!="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-fonts/standard-font-family-19.html": [
+ [
+ "css/css-fonts/standard-font-family-19.html",
+ [
+ [
+ "/css/css-fonts/standard-font-family-19-notref.html",
+ "!="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-fonts/standard-font-family-2.html": [
[
"css/css-fonts/standard-font-family-2.html",
@@ -124267,6 +124363,18 @@
{}
]
],
+ "css/css-fonts/standard-font-family-20.html": [
+ [
+ "css/css-fonts/standard-font-family-20.html",
+ [
+ [
+ "/css/css-fonts/standard-font-family-20-notref.html",
+ "!="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-fonts/standard-font-family-3.html": [
[
"css/css-fonts/standard-font-family-3.html",
@@ -133003,6 +133111,18 @@
{}
]
],
+ "css/css-multicol/equal-gap-and-rule.html": [
+ [
+ "css/css-multicol/equal-gap-and-rule.html",
+ [
+ [
+ "/css/reference/ref-filled-green-100px-square.xht",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-multicol/float-and-block.html": [
[
"css/css-multicol/float-and-block.html",
@@ -138775,6 +138895,18 @@
{}
]
],
+ "css/css-pseudo/first-line-and-marker.html": [
+ [
+ "css/css-pseudo/first-line-and-marker.html",
+ [
+ [
+ "/css/css-pseudo/first-line-and-marker-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-pseudo/first-line-and-placeholder.html": [
[
"css/css-pseudo/first-line-and-placeholder.html",
@@ -142415,6 +142547,54 @@
{}
]
],
+ "css/css-scroll-snap/snap-after-initial-layout/direction-rtl.html": [
+ [
+ "css/css-scroll-snap/snap-after-initial-layout/direction-rtl.html",
+ [
+ [
+ "/css/css-scroll-snap/snap-after-initial-layout/snap-after-initial-layout-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-scroll-snap/snap-after-initial-layout/writing-mode-horizontal-tb.html": [
+ [
+ "css/css-scroll-snap/snap-after-initial-layout/writing-mode-horizontal-tb.html",
+ [
+ [
+ "/css/css-scroll-snap/snap-after-initial-layout/snap-after-initial-layout-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-lr.html": [
+ [
+ "css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-lr.html",
+ [
+ [
+ "/css/css-scroll-snap/snap-after-initial-layout/snap-after-initial-layout-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-rl.html": [
+ [
+ "css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-rl.html",
+ [
+ [
+ "/css/css-scroll-snap/snap-after-initial-layout/snap-after-initial-layout-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-scrollbars/scrollbars-chrome-bug-001.html": [
[
"css/css-scrollbars/scrollbars-chrome-bug-001.html",
@@ -144167,450 +144347,6 @@
{}
]
],
- "css/css-sizing/intrinsic-size/intrinsic-size-001.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-001.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-001-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-002.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-002.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-002-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-003.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-003.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-003-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-004.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-004.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-004-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-005.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-005.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-004-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-006.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-006.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-006-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-007.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-007.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-007-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-008.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-008.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-008-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-009.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-009.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-009-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-010.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-010.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-010-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-011.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-011.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-011-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-012.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-012.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-012-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-013.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-013.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-013-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-014.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-014.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-014-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-015.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-015.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-015-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-016.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-016.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-016-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-017.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-017.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-017-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-018.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-018.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-018-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-019.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-019.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-019-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-020.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-020.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-020-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-021.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-021.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-021-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-022.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-022.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-022-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-023.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-023.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-023-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-024.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-024.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-024-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-025.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-025.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-025-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-026.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-026.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-026-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008.html": [
- [
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008.html",
- [
- [
- "/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
"css/css-sizing/ortho-writing-mode-001.html": [
[
"css/css-sizing/ortho-writing-mode-001.html",
@@ -144635,18 +144371,6 @@
{}
]
],
- "css/css-sizing/percentage-resolution-001.html": [
- [
- "css/css-sizing/percentage-resolution-001.html",
- [
- [
- "/css/css-sizing/percentage-resolution-001-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
"css/css-sizing/range-percent-intrinsic-size-1.html": [
[
"css/css-sizing/range-percent-intrinsic-size-1.html",
@@ -205245,6 +204969,18 @@
{}
]
],
+ "infrastructure/reftest/reftest_wait_TestRendered.html": [
+ [
+ "infrastructure/reftest/reftest_wait_TestRendered.html",
+ [
+ [
+ "/infrastructure/reftest/green.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"infrastructure/reftest/size.html": [
[
"infrastructure/reftest/size.html",
@@ -207549,6 +207285,30 @@
{}
]
],
+ "svg/painting/marker-009.svg": [
+ [
+ "svg/painting/marker-009.svg",
+ [
+ [
+ "/svg/painting/marker-009-ref.svg",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "svg/painting/marker-orient-001.svg": [
+ [
+ "svg/painting/marker-orient-001.svg",
+ [
+ [
+ "/svg/painting/marker-orient-001-ref.svg",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"svg/painting/reftests/markers-orient-001.svg": [
[
"svg/painting/reftests/markers-orient-001.svg",
@@ -208629,6 +208389,66 @@
{}
]
],
+ "web-animations/timing-model/animations/reverse-running-animation.html": [
+ [
+ "web-animations/timing-model/animations/reverse-running-animation.html",
+ [
+ [
+ "/web-animations/timing-model/animations/reverse-running-animation-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "web-animations/timing-model/animations/sync-start-times.html": [
+ [
+ "web-animations/timing-model/animations/sync-start-times.html",
+ [
+ [
+ "/web-animations/timing-model/animations/sync-start-times-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "web-animations/timing-model/animations/update-playback-rate-fast.html": [
+ [
+ "web-animations/timing-model/animations/update-playback-rate-fast.html",
+ [
+ [
+ "/web-animations/timing-model/animations/update-playback-rate-fast-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "web-animations/timing-model/animations/update-playback-rate-slow.html": [
+ [
+ "web-animations/timing-model/animations/update-playback-rate-slow.html",
+ [
+ [
+ "/web-animations/timing-model/animations/update-playback-rate-slow-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "web-animations/timing-model/animations/update-playback-rate-zero.html": [
+ [
+ "web-animations/timing-model/animations/update-playback-rate-zero.html",
+ [
+ [
+ "/web-animations/timing-model/animations/update-playback-rate-zero-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"webvtt/rendering/cues-with-video/processing-model/2_cues_overlapping_completely_move_up.html": [
[
"webvtt/rendering/cues-with-video/processing-model/2_cues_overlapping_completely_move_up.html",
@@ -215670,9 +215490,6 @@
"client-hints/resources/do_not_expect_client_hints_headers.html": [
[]
],
- "client-hints/resources/dpr.py": [
- []
- ],
"client-hints/resources/expect-client-hints-headers-iframe.py": [
[]
],
@@ -229137,6 +228954,24 @@
"contacts/resources/non-main-frame-select.html": [
[]
],
+ "content-dpr/image-pseudo-element-content-dpr-ref.html": [
+ []
+ ],
+ "content-dpr/image-with-content-dpr-and-explicit-dimensions-ref.html": [
+ []
+ ],
+ "content-dpr/resources/background.png": [
+ []
+ ],
+ "content-dpr/resources/dpr.py": [
+ []
+ ],
+ "content-dpr/resources/square.png": [
+ []
+ ],
+ "content-dpr/tiled-background-image-with-content-dpr-ref.html": [
+ []
+ ],
"content-security-policy/META.yml": [
[]
],
@@ -229884,6 +229719,9 @@
"cookie-store/README.md": [
[]
],
+ "cookie-store/resources/always_changing_sw.sub.js": [
+ []
+ ],
"cookie-store/resources/cookie-test-helpers.js": [
[]
],
@@ -229917,9 +229755,6 @@
"cookie-store/serviceworker_cookieStore_subscriptions_mismatch.js": [
[]
],
- "cookie-store/serviceworker_cookieStore_subscriptions_reset.sub.js": [
- []
- ],
"cookies/META.yml": [
[]
],
@@ -245607,6 +245442,9 @@
"css/css-break/block-end-aligned-abspos-with-overflow-ref.html": [
[]
],
+ "css/css-break/fieldset-001-ref.html": [
+ []
+ ],
"css/css-break/floats-and-text-narrow-and-short-dynamic-ref.html": [
[]
],
@@ -247674,9 +247512,21 @@
"css/css-fonts/standard-font-family-16-notref.html": [
[]
],
+ "css/css-fonts/standard-font-family-17-notref.html": [
+ []
+ ],
+ "css/css-fonts/standard-font-family-18-notref.html": [
+ []
+ ],
+ "css/css-fonts/standard-font-family-19-notref.html": [
+ []
+ ],
"css/css-fonts/standard-font-family-2-ref.html": [
[]
],
+ "css/css-fonts/standard-font-family-20-notref.html": [
+ []
+ ],
"css/css-fonts/standard-font-family-3-notref.html": [
[]
],
@@ -253191,6 +253041,15 @@
"css/css-lists/ol-change-display-type-ref.html": [
[]
],
+ "css/css-lists/resources/blue-20.png": [
+ []
+ ],
+ "css/css-lists/resources/green-20.png": [
+ []
+ ],
+ "css/css-lists/resources/stripes-20.png": [
+ []
+ ],
"css/css-lists/resources/white.gif": [
[]
],
@@ -253428,6 +253287,15 @@
"css/css-masking/mask-svg-content/reference/mask-text-001-ref.svg": [
[]
],
+ "css/css-masking/resources/blue-20.png": [
+ []
+ ],
+ "css/css-masking/resources/green-20.png": [
+ []
+ ],
+ "css/css-masking/resources/stripes-20.png": [
+ []
+ ],
"css/css-masking/test-mask-ref.html": [
[]
],
@@ -254586,6 +254454,9 @@
"css/css-pseudo/first-letter-width-ref.html": [
[]
],
+ "css/css-pseudo/first-line-and-marker-ref.html": [
+ []
+ ],
"css/css-pseudo/first-line-and-placeholder-ref.html": [
[]
],
@@ -255396,6 +255267,9 @@
"css/css-scroll-snap/scroll-target-001-ref.html": [
[]
],
+ "css/css-scroll-snap/snap-after-initial-layout/snap-after-initial-layout-ref.html": [
+ []
+ ],
"css/css-scroll-snap/support/common.css": [
[]
],
@@ -255780,123 +255654,6 @@
"css/css-sizing/intrinsic-percent-non-replaced-005-ref.html": [
[]
],
- "css/css-sizing/intrinsic-size/intrinsic-size-001-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-002-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-003-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-004-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-005-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-006-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-007-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-008-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-009-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-010-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-011-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-012-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-013-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-014-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-015-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-016-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-017-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-018-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-019-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-020-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-021-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-022-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-023-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-024-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-025-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-026-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008-ref.html": [
- []
- ],
- "css/css-sizing/intrinsic-size/resources/dice.png": [
- []
- ],
- "css/css-sizing/percentage-resolution-001-ref.html": [
- []
- ],
"css/css-sizing/range-percent-intrinsic-size-1-ref.html": [
[]
],
@@ -266337,6 +266094,21 @@
"docs/writing-tests/wdspec.md": [
[]
],
+ "document-policy/echo-policy-nested.html": [
+ []
+ ],
+ "document-policy/echo-policy-nested.html.headers": [
+ []
+ ],
+ "document-policy/echo-policy.py": [
+ []
+ ],
+ "document-policy/required-policy/document-policy.html.headers": [
+ []
+ ],
+ "document-policy/required-policy/required-document-policy.html.headers": [
+ []
+ ],
"dom/META.yml": [
[]
],
@@ -277590,6 +277362,12 @@
"media/2x2-green.ogv": [
[]
],
+ "media/400x300-red-resize-200x150-green.mp4": [
+ []
+ ],
+ "media/400x300-red-resize-200x150-green.webm": [
+ []
+ ],
"media/A4.mp4": [
[]
],
@@ -282885,6 +282663,9 @@
"service-workers/service-worker/resources/fetch-event-within-sw-worker.js": [
[]
],
+ "service-workers/service-worker/resources/fetch-event-worker-timing.js": [
+ []
+ ],
"service-workers/service-worker/resources/fetch-header-visibility-iframe.html": [
[]
],
@@ -284232,6 +284013,12 @@
"svg/painting/marker-008-ref.svg": [
[]
],
+ "svg/painting/marker-009-ref.svg": [
+ []
+ ],
+ "svg/painting/marker-orient-001-ref.svg": [
+ []
+ ],
"svg/painting/reftests/markers-orient-001-ref.svg": [
[]
],
@@ -284571,6 +284358,9 @@
"tools/ci/azure/pip_install.yml": [
[]
],
+ "tools/ci/azure/safari-technology-preview.rb": [
+ []
+ ],
"tools/ci/azure/system_info.yml": [
[]
],
@@ -284622,16 +284412,46 @@
"tools/ci/taskcluster-run.py": [
[]
],
- "tools/ci/tcdownload.py": [
+ "tools/ci/tc/README.md": [
[]
],
- "tools/ci/tests/test_jobs.py": [
+ "tools/ci/tc/__init__.py": [
[]
],
- "tools/ci/tests/test_pr_preview.py": [
+ "tools/ci/tc/decision.py": [
+ []
+ ],
+ "tools/ci/tc/download.py": [
+ []
+ ],
+ "tools/ci/tc/taskgraph.py": [
+ []
+ ],
+ "tools/ci/tc/tasks/test.yml": [
+ []
+ ],
+ "tools/ci/tc/testdata/master_push_event.json": [
[]
],
- "tools/ci/tests/test_run_tc.py": [
+ "tools/ci/tc/testdata/pr_event.json": [
+ []
+ ],
+ "tools/ci/tc/testdata/pr_event_tests_affected.json": [
+ []
+ ],
+ "tools/ci/tc/tests/test_decision.py": [
+ []
+ ],
+ "tools/ci/tc/tests/test_taskgraph.py": [
+ []
+ ],
+ "tools/ci/tc/tests/test_valid.py": [
+ []
+ ],
+ "tools/ci/tests/test_jobs.py": [
+ []
+ ],
+ "tools/ci/tests/test_pr_preview.py": [
[]
],
"tools/ci/website_build.sh": [
@@ -284664,6 +284484,9 @@
"tools/docker/retry.py": [
[]
],
+ "tools/docker/seccomp.json": [
+ []
+ ],
"tools/docker/start.sh": [
[]
],
@@ -285240,21 +285063,6 @@
"tools/serve/test_serve.py": [
[]
],
- "tools/taskcluster/__init__.py": [
- []
- ],
- "tools/taskcluster/commands.json": [
- []
- ],
- "tools/taskcluster/testdata/master_push_event.json": [
- []
- ],
- "tools/taskcluster/testdata/pr_event.json": [
- []
- ],
- "tools/taskcluster/verify.py": [
- []
- ],
"tools/third_party/atomicwrites/.gitignore": [
[]
],
@@ -288567,9 +288375,6 @@
"tools/wptrunner/wptrunner/executors/pytestrunner/runner.py": [
[]
],
- "tools/wptrunner/wptrunner/executors/reftest-wait_marionette.js": [
- []
- ],
"tools/wptrunner/wptrunner/executors/reftest-wait_webdriver.js": [
[]
],
@@ -289698,6 +289503,21 @@
"web-animations/testcommon.js": [
[]
],
+ "web-animations/timing-model/animations/reverse-running-animation-ref.html": [
+ []
+ ],
+ "web-animations/timing-model/animations/sync-start-times-ref.html": [
+ []
+ ],
+ "web-animations/timing-model/animations/update-playback-rate-fast-ref.html": [
+ []
+ ],
+ "web-animations/timing-model/animations/update-playback-rate-slow-ref.html": [
+ []
+ ],
+ "web-animations/timing-model/animations/update-playback-rate-zero-ref.html": [
+ []
+ ],
"web-locks/META.yml": [
[]
],
@@ -312046,12 +311866,6 @@
{}
]
],
- "client-hints/image-with-dpr-header.html": [
- [
- "client-hints/image-with-dpr-header.html",
- {}
- ]
- ],
"client-hints/sec-ch-quotes.https.html": [
[
"client-hints/sec-ch-quotes.https.html",
@@ -312681,13 +312495,13 @@
}
]
],
- "compression/decompression-corrupt-input.any.js": [
+ "compression/decompression-corrupt-input.tentative.any.js": [
[
- "compression/decompression-corrupt-input.any.html",
+ "compression/decompression-corrupt-input.tentative.any.html",
{}
],
[
- "compression/decompression-corrupt-input.any.worker.html",
+ "compression/decompression-corrupt-input.tentative.any.worker.html",
{}
]
],
@@ -312932,6 +312746,12 @@
}
]
],
+ "content-dpr/image-with-dpr-header.html": [
+ [
+ "content-dpr/image-with-dpr-header.html",
+ {}
+ ]
+ ],
"content-security-policy/base-uri/base-uri-allow.sub.html": [
[
"content-security-policy/base-uri/base-uri-allow.sub.html",
@@ -316335,6 +316155,19 @@
}
]
],
+ "cookie-store/cookieStore_subscriptions_empty.tentative.https.window.js": [
+ [
+ "cookie-store/cookieStore_subscriptions_empty.tentative.https.window.html",
+ {
+ "script_metadata": [
+ [
+ "script",
+ "/service-workers/service-worker/resources/test-helpers.sub.js"
+ ]
+ ]
+ }
+ ]
+ ],
"cookie-store/encoding.https.any.js": [
[
"cookie-store/encoding.https.any.html",
@@ -317183,6 +317016,12 @@
{}
]
],
+ "css/CSS2/linebox/inline-negative-margin-minmax-crash-001.html": [
+ [
+ "css/CSS2/linebox/inline-negative-margin-minmax-crash-001.html",
+ {}
+ ]
+ ],
"css/CSS2/linebox/vertical-align-top-bottom-001.html": [
[
"css/CSS2/linebox/vertical-align-top-bottom-001.html",
@@ -318467,6 +318306,12 @@
{}
]
],
+ "css/css-backgrounds/animations/border-image-slice-interpolation-stability.html": [
+ [
+ "css/css-backgrounds/animations/border-image-slice-interpolation-stability.html",
+ {}
+ ]
+ ],
"css/css-backgrounds/animations/border-image-slice-interpolation.html": [
[
"css/css-backgrounds/animations/border-image-slice-interpolation.html",
@@ -319573,6 +319418,12 @@
{}
]
],
+ "css/css-display/animations/display-interpolation.html": [
+ [
+ "css/css-display/animations/display-interpolation.html",
+ {}
+ ]
+ ],
"css/css-display/display-contents-blockify-dynamic.html": [
[
"css/css-display/display-contents-blockify-dynamic.html",
@@ -323603,6 +323454,12 @@
{}
]
],
+ "css/css-lists/animations/list-style-image-interpolation.html": [
+ [
+ "css/css-lists/animations/list-style-image-interpolation.html",
+ {}
+ ]
+ ],
"css/css-lists/inherit-overwrites.html": [
[
"css/css-lists/inherit-overwrites.html",
@@ -324251,6 +324108,12 @@
{}
]
],
+ "css/css-masking/animations/mask-image-interpolation.html": [
+ [
+ "css/css-masking/animations/mask-image-interpolation.html",
+ {}
+ ]
+ ],
"css/css-masking/animations/mask-position-interpolation.html": [
[
"css/css-masking/animations/mask-position-interpolation.html",
@@ -326173,15 +326036,45 @@
{}
]
],
- "css/css-scroll-snap/snap-area-capturing-remove-scroll-container.html": [
+ "css/css-scroll-snap/snap-after-relayout/adding-only-snap-area.html": [
[
- "css/css-scroll-snap/snap-area-capturing-remove-scroll-container.html",
+ "css/css-scroll-snap/snap-after-relayout/adding-only-snap-area.html",
+ {}
+ ]
+ ],
+ "css/css-scroll-snap/snap-after-relayout/adding-snap-area-while-snapped.html": [
+ [
+ "css/css-scroll-snap/snap-after-relayout/adding-snap-area-while-snapped.html",
{}
]
],
- "css/css-scroll-snap/snap-area-caputring-add-scroll-container.html": [
+ "css/css-scroll-snap/snap-after-relayout/move-current-target.html": [
[
- "css/css-scroll-snap/snap-area-caputring-add-scroll-container.html",
+ "css/css-scroll-snap/snap-after-relayout/move-current-target.html",
+ {}
+ ]
+ ],
+ "css/css-scroll-snap/snap-after-relayout/remove-current-target.html": [
+ [
+ "css/css-scroll-snap/snap-after-relayout/remove-current-target.html",
+ {}
+ ]
+ ],
+ "css/css-scroll-snap/snap-after-relayout/snap-to-different-targets.html": [
+ [
+ "css/css-scroll-snap/snap-after-relayout/snap-to-different-targets.html",
+ {}
+ ]
+ ],
+ "css/css-scroll-snap/snap-area-capturing-add-scroll-container.html": [
+ [
+ "css/css-scroll-snap/snap-area-capturing-add-scroll-container.html",
+ {}
+ ]
+ ],
+ "css/css-scroll-snap/snap-area-capturing-remove-scroll-container.html": [
+ [
+ "css/css-scroll-snap/snap-area-capturing-remove-scroll-container.html",
{}
]
],
@@ -327163,102 +327056,6 @@
{}
]
],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-computed.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-computed.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-invalid.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-invalid.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-valid.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-valid.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-height-computed.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-height-computed.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-height-invalid.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-height-invalid.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-height-valid.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-height-valid.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-computed.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-computed.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-invalid.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-invalid.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-valid.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-valid.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-computed.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-computed.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-invalid.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-invalid.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-sets-computed-dimensions.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-sets-computed-dimensions.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-valid.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-valid.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-width-computed.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-width-computed.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-width-invalid.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-width-invalid.html",
- {}
- ]
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-width-valid.html": [
- [
- "css/css-sizing/intrinsic-size/parsing/intrinsic-width-valid.html",
- {}
- ]
- ],
"css/css-sizing/min-max-content-orthogonal-flow-crash-001.html": [
[
"css/css-sizing/min-max-content-orthogonal-flow-crash-001.html",
@@ -333241,6 +333038,12 @@
{}
]
],
+ "css/css-values/animations/calc-interpolation.html": [
+ [
+ "css/css-values/animations/calc-interpolation.html",
+ {}
+ ]
+ ],
"css/css-values/calc-angle-values.html": [
[
"css/css-values/calc-angle-values.html",
@@ -337245,6 +337048,30 @@
{}
]
],
+ "document-policy/required-policy/document-policy.html": [
+ [
+ "document-policy/required-policy/document-policy.html",
+ {}
+ ]
+ ],
+ "document-policy/required-policy/no-document-policy.html": [
+ [
+ "document-policy/required-policy/no-document-policy.html",
+ {}
+ ]
+ ],
+ "document-policy/required-policy/required-document-policy-nested.html": [
+ [
+ "document-policy/required-policy/required-document-policy-nested.html",
+ {}
+ ]
+ ],
+ "document-policy/required-policy/required-document-policy.html": [
+ [
+ "document-policy/required-policy/required-document-policy.html",
+ {}
+ ]
+ ],
"dom/abort/event.any.js": [
[
"dom/abort/event.any.html",
@@ -337447,7 +337274,9 @@
"dom/events/Event-dispatch-redispatch.html": [
[
"dom/events/Event-dispatch-redispatch.html",
- {}
+ {
+ "testdriver": true
+ }
]
],
"dom/events/Event-dispatch-reenter.html": [
@@ -352637,8 +352466,13 @@
[
"script",
"/resources/idlharness.js"
+ ],
+ [
+ "timeout",
+ "long"
]
- ]
+ ],
+ "timeout": "long"
}
],
[
@@ -352656,8 +352490,13 @@
[
"script",
"/resources/idlharness.js"
+ ],
+ [
+ "timeout",
+ "long"
]
- ]
+ ],
+ "timeout": "long"
}
],
[
@@ -352675,8 +352514,13 @@
[
"script",
"/resources/idlharness.js"
+ ],
+ [
+ "timeout",
+ "long"
]
- ]
+ ],
+ "timeout": "long"
}
],
[
@@ -352694,8 +352538,13 @@
[
"script",
"/resources/idlharness.js"
+ ],
+ [
+ "timeout",
+ "long"
]
- ]
+ ],
+ "timeout": "long"
}
]
],
@@ -354104,9 +353953,9 @@
{}
]
],
- "fetch/metadata/navigation.https.sub.html": [
+ "fetch/metadata/navigation.tentative.https.sub.html": [
[
- "fetch/metadata/navigation.https.sub.html",
+ "fetch/metadata/navigation.tentative.https.sub.html",
{}
]
],
@@ -354150,6 +353999,12 @@
{}
]
],
+ "fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html": [
+ [
+ "fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html",
+ {}
+ ]
+ ],
"fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade.tentative.sub.html": [
[
"fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade.tentative.sub.html",
@@ -354162,12 +354017,24 @@
{}
]
],
+ "fetch/metadata/redirect/redirect-http-upgrade-prefetch.optional.tentative.sub.html": [
+ [
+ "fetch/metadata/redirect/redirect-http-upgrade-prefetch.optional.tentative.sub.html",
+ {}
+ ]
+ ],
"fetch/metadata/redirect/redirect-http-upgrade.tentative.sub.html": [
[
"fetch/metadata/redirect/redirect-http-upgrade.tentative.sub.html",
{}
]
],
+ "fetch/metadata/redirect/redirect-https-downgrade-prefetch.optional.tentative.sub.html": [
+ [
+ "fetch/metadata/redirect/redirect-https-downgrade-prefetch.optional.tentative.sub.html",
+ {}
+ ]
+ ],
"fetch/metadata/redirect/redirect-https-downgrade.tentative.sub.html": [
[
"fetch/metadata/redirect/redirect-https-downgrade.tentative.sub.html",
@@ -362831,6 +362698,12 @@
{}
]
],
+ "html/semantics/embedded-content/the-video-element/resize-during-playback.html": [
+ [
+ "html/semantics/embedded-content/the-video-element/resize-during-playback.html",
+ {}
+ ]
+ ],
"html/semantics/embedded-content/the-video-element/video-tabindex.html": [
[
"html/semantics/embedded-content/the-video-element/video-tabindex.html",
@@ -362951,6 +362824,12 @@
{}
]
],
+ "html/semantics/forms/constraints/infinite_backtracking.html": [
+ [
+ "html/semantics/forms/constraints/infinite_backtracking.html",
+ {}
+ ]
+ ],
"html/semantics/forms/constraints/inputwillvalidate.html": [
[
"html/semantics/forms/constraints/inputwillvalidate.html",
@@ -371657,6 +371536,22 @@
{}
]
],
+ "layout-instability/pointerdown-becomes-scroll.html": [
+ [
+ "layout-instability/pointerdown-becomes-scroll.html",
+ {
+ "testdriver": true
+ }
+ ]
+ ],
+ "layout-instability/pointerdown-becomes-tap.html": [
+ [
+ "layout-instability/pointerdown-becomes-tap.html",
+ {
+ "testdriver": true
+ }
+ ]
+ ],
"layout-instability/rtl-distance.html": [
[
"layout-instability/rtl-distance.html",
@@ -406497,6 +406392,12 @@
}
]
],
+ "service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html": [
+ [
+ "service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html",
+ {}
+ ]
+ ],
"service-workers/service-worker/fetch-event.https.html": [
[
"service-workers/service-worker/fetch-event.https.html",
@@ -416096,6 +415997,12 @@
{}
]
],
+ "svg/render/foreignObject-in-non-rendered-getComputedStyle.html": [
+ [
+ "svg/render/foreignObject-in-non-rendered-getComputedStyle.html",
+ {}
+ ]
+ ],
"svg/scripted/script-runs-in-shadow-tree.html": [
[
"svg/scripted/script-runs-in-shadow-tree.html",
@@ -425691,15 +425598,15 @@
{}
]
],
- "web-nfc/NDEFReader_options.https.html": [
+ "web-nfc/NDEFReader_scan.https.html": [
[
- "web-nfc/NDEFReader_options.https.html",
+ "web-nfc/NDEFReader_scan.https.html",
{}
]
],
- "web-nfc/NDEFReader_scan.https.html": [
+ "web-nfc/NDEFReader_scan_filter.https.html": [
[
- "web-nfc/NDEFReader_scan.https.html",
+ "web-nfc/NDEFReader_scan_filter.https.html",
{}
]
],
@@ -437990,8 +437897,13 @@
[
"script",
"/resources/idlharness.js"
+ ],
+ [
+ "timeout",
+ "long"
]
- ]
+ ],
+ "timeout": "long"
}
],
[
@@ -438009,8 +437921,13 @@
[
"script",
"/resources/idlharness.js"
+ ],
+ [
+ "timeout",
+ "long"
]
- ]
+ ],
+ "timeout": "long"
}
],
[
@@ -438028,8 +437945,13 @@
[
"script",
"/resources/idlharness.js"
+ ],
+ [
+ "timeout",
+ "long"
]
- ]
+ ],
+ "timeout": "long"
}
]
],
@@ -459312,9 +459234,7 @@
"webdriver/tests/find_element_from_element/find.py": [
[
"webdriver/tests/find_element_from_element/find.py",
- {
- "timeout": "long"
- }
+ {}
]
],
"webdriver/tests/find_element_from_element/user_prompts.py": [
@@ -460023,7 +459943,7 @@
},
"paths": {
".azure-pipelines.yml": [
- "fa0dc670502745aa98ec5d86461f2a17ac8e329f",
+ "a534278337d3af9489b9355f3e8fd5575d0c1f74",
"support"
],
".codecov.yml": [
@@ -460051,7 +459971,7 @@
"support"
],
".github/workflows/manifest.yml": [
- "555b9d6c2903c144539a2ec65168d6e9aa3d7344",
+ "e4708873c0d5e415a171ed2598a0b94f22c272b6",
"support"
],
".gitignore": [
@@ -460067,7 +459987,7 @@
"support"
],
".taskcluster.yml": [
- "6bc9253ec2055645981206620ecdee3d1becb792",
+ "cc07b1d67117e98ca098dc9fc5a33497cd9faaf6",
"support"
],
".well-known/README.md": [
@@ -471039,7 +470959,7 @@
"support"
],
"client-hints/accept_ch.tentative.https.html": [
- "4b46610c58103cf29734842869856df3e1d404df",
+ "0f8b525576e0d67baa2ca23381c620909d12e539",
"testharness"
],
"client-hints/accept_ch.tentative.sub.https.html": [
@@ -471087,7 +471007,7 @@
"testharness"
],
"client-hints/http_equiv_accept_ch.tentative.https.html": [
- "74eea344e90879e24568a76ba8e1197f6e9cede5",
+ "2830cb714fad4be98ddcf0ccf7594b749e77b50d",
"testharness"
],
"client-hints/http_equiv_accept_ch.tentative.sub.https.html": [
@@ -471098,10 +471018,6 @@
"dd516a97c965f4a248fa27ed8ce71dae6251e106",
"testharness"
],
- "client-hints/image-with-dpr-header.html": [
- "6c4e60844763469bbe21990879191eac0f296230",
- "testharness"
- ],
"client-hints/resources/accept-ch-lifetime-test.js": [
"05aaec1aef8a50c9aac835fd523c48c680e998a3",
"support"
@@ -471134,10 +471050,6 @@
"b3cf5df4c27224fe30a6ec3b4507aa30a8fe6a95",
"support"
],
- "client-hints/resources/dpr.py": [
- "14d7d550fe28d49a63105ea966d3cf7cf59901b1",
- "support"
- ],
"client-hints/resources/expect-client-hints-headers-iframe.py": [
"e72d77c47d9aae36c619e8e065e5685f7a9c166b",
"support"
@@ -471734,7 +471646,7 @@
"11d8736cb225d6ce575677dcdb70b0a19dd4f65f",
"testharness"
],
- "compression/decompression-corrupt-input.any.js": [
+ "compression/decompression-corrupt-input.tentative.any.js": [
"95e91b662ee47f545167cd05dc4d06b85cb74b00",
"testharness"
],
@@ -488831,7 +488743,7 @@
"support"
],
"conformance-checkers/messages.json": [
- "94d3bc461f5a0d045ed5b6329dda016e1fe0b188",
+ "2dcd3830d72dc42396e7270557954d107e6abbc0",
"support"
],
"conformance-checkers/tools/build-svg-tests.py": [
@@ -489346,6 +489258,46 @@
"c64ecd067c82d050f989f1cbe005fe0b33bb9e96",
"support"
],
+ "content-dpr/image-pseudo-element-content-dpr-ref.html": [
+ "baa25ac87c8f96ca630d2a6b508d6f3649fb8bb8",
+ "support"
+ ],
+ "content-dpr/image-pseudo-element-content-dpr.html": [
+ "7770df39997206261036029734b2304e6be331b2",
+ "reftest"
+ ],
+ "content-dpr/image-with-content-dpr-and-explicit-dimensions-ref.html": [
+ "27ce1be8b0d9b46f667da882d1c7903136a5aed0",
+ "support"
+ ],
+ "content-dpr/image-with-content-dpr-and-explicit-dimensions.html": [
+ "783fb03a3b06278b7d3284bee80ac123b0d10109",
+ "reftest"
+ ],
+ "content-dpr/image-with-dpr-header.html": [
+ "6c4e60844763469bbe21990879191eac0f296230",
+ "testharness"
+ ],
+ "content-dpr/resources/background.png": [
+ "6db6c6b1b9d851c7a85b93ddc9e5ddf368ac0a7e",
+ "support"
+ ],
+ "content-dpr/resources/dpr.py": [
+ "14d7d550fe28d49a63105ea966d3cf7cf59901b1",
+ "support"
+ ],
+ "content-dpr/resources/square.png": [
+ "01c9666a8de9d5535615aff830810e5df4b2156f",
+ "support"
+ ],
+ "content-dpr/tiled-background-image-with-content-dpr-ref.html": [
+ "58cbeb436fc1181eac3dc2e55fa343b0dd05e8d4",
+ "support"
+ ],
+ "content-dpr/tiled-background-image-with-content-dpr.html": [
+ "94f2f72d40196749faf6092d178f67dfc7067dcb",
+ "reftest"
+ ],
"content-security-policy/META.yml": [
"ee8f1ea7e07b94711ddc65e43a6c32dbc5983612",
"support"
@@ -492326,6 +492278,10 @@
"a4b31178ab0977e96e86e45b550712b862c6d2c7",
"testharness"
],
+ "cookie-store/cookieStore_subscriptions_empty.tentative.https.window.js": [
+ "907a34b4de6632f5e91adbcd606839a92eead320",
+ "testharness"
+ ],
"cookie-store/encoding.https.any.js": [
"41ce747f8145ace74a9986120d5afaa2a6c93d88",
"testharness"
@@ -492338,6 +492294,10 @@
"0c7a5150237910b1af301f91f782f300c713071a",
"testharness"
],
+ "cookie-store/resources/always_changing_sw.sub.js": [
+ "9fdf99848fa50316e275cd6636a5755270a9bb1e",
+ "support"
+ ],
"cookie-store/resources/cookie-test-helpers.js": [
"178947ad6eca72967aa9bbc3a13172a0402bc17d",
"support"
@@ -492367,7 +492327,7 @@
"testharness"
],
"cookie-store/serviceworker_cookieStore_subscriptions.js": [
- "41cbed01a5be61b6eafa739fe65a97464c34c13d",
+ "107bb9576124a63ac9b68a3585acdde973a03f7a",
"support"
],
"cookie-store/serviceworker_cookieStore_subscriptions.tentative.https.html": [
@@ -492375,7 +492335,7 @@
"testharness"
],
"cookie-store/serviceworker_cookieStore_subscriptions_basic.js": [
- "293969e5b8f86fac896b0fa75f632b31504a9a83",
+ "a96eeeb116df3f6571bff5c74d39c4991b7fc31d",
"support"
],
"cookie-store/serviceworker_cookieStore_subscriptions_basic.tentative.https.html": [
@@ -492383,7 +492343,7 @@
"testharness"
],
"cookie-store/serviceworker_cookieStore_subscriptions_empty.js": [
- "b62318699740938134fc51ab4c42670ce8878aca",
+ "7df77730553faf37bb17ff7e9fa42de91e7f6df3",
"support"
],
"cookie-store/serviceworker_cookieStore_subscriptions_empty.tentative.https.html": [
@@ -492391,7 +492351,7 @@
"testharness"
],
"cookie-store/serviceworker_cookieStore_subscriptions_eventhandler_attribute.js": [
- "258441921bf6bf7f72eeaf8602653c55ca991af0",
+ "ed0cdcfcfca7e91109df45628999c51c5cbee236",
"support"
],
"cookie-store/serviceworker_cookieStore_subscriptions_eventhandler_attribute.tentative.https.html": [
@@ -492399,19 +492359,15 @@
"testharness"
],
"cookie-store/serviceworker_cookieStore_subscriptions_mismatch.js": [
- "bd37b9be1eec4aa4a1469502074463acd37f17fc",
+ "5414a664db6771f4c87614af9e3b9f7b597f4664",
"support"
],
"cookie-store/serviceworker_cookieStore_subscriptions_mismatch.tentative.https.html": [
"b8ad46a57101386bd84b391953e76228249eff29",
"testharness"
],
- "cookie-store/serviceworker_cookieStore_subscriptions_reset.sub.js": [
- "7fc8eabc5701e2e7bb0edacb57bbf90783ba10db",
- "support"
- ],
"cookie-store/serviceworker_cookieStore_subscriptions_reset.tentative.https.html": [
- "a0923548c78d5b25aa9efe521aa5f341166fef9c",
+ "4e157840e988edd373a20e8041b90bd086dc83de",
"testharness"
],
"cookies/META.yml": [
@@ -519110,6 +519066,10 @@
"226a3a19ad17b8fb773e00174b1dcd1593e6be61",
"testharness"
],
+ "css/CSS2/linebox/inline-negative-margin-minmax-crash-001.html": [
+ "d6480edd621592928984f2d88684976a0990e734",
+ "testharness"
+ ],
"css/CSS2/linebox/leading-001-ref.xht": [
"2d6e784d2ed2f6b66e4be72d9b6d261d63bc98e7",
"support"
@@ -555975,7 +555935,7 @@
"testharness"
],
"css/css-backgrounds/animations/background-image-interpolation.html": [
- "b442c4e9120f72ecf1e61365e7483ae6c3003ff8",
+ "feda6afebed310fc62aa53c28aceb417e6e81258",
"testharness"
],
"css/css-backgrounds/animations/background-position-interpolation.html": [
@@ -556006,6 +555966,10 @@
"aebadbbafb236a090aa543ecf82e5661bee7de74",
"testharness"
],
+ "css/css-backgrounds/animations/border-image-slice-interpolation-stability.html": [
+ "26431334e4acf13f6c095868a0e9cee6926a9ef1",
+ "testharness"
+ ],
"css/css-backgrounds/animations/border-image-slice-interpolation.html": [
"60301e755bafeb699899b54988f3e3c055b13a4d",
"testharness"
@@ -559906,6 +559870,14 @@
"fb80ec45bceec093481fa54513c606c5952628b1",
"testharness"
],
+ "css/css-break/fieldset-001-ref.html": [
+ "1422086da71c3e62bde10d499a7a0de220737f3f",
+ "support"
+ ],
+ "css/css-break/fieldset-001.html": [
+ "d320fe15bebcfbdd332ee9411b548dab60f8fba6",
+ "reftest"
+ ],
"css/css-break/fieldset.html": [
"fe76988293b8d1d9a6226b23bb9b40e86fcc007a",
"reftest"
@@ -560018,6 +559990,10 @@
"06108ac800c19c68841f2a0e8867fb05e868c1ab",
"support"
],
+ "css/css-break/tall-break-inside-avoid-at-start.html": [
+ "6e9ab8bd9f56502247a6d8c2c2045b8f3af3605d",
+ "reftest"
+ ],
"css/css-break/widows-orphans-001.html": [
"8da27f0b6594fc7ddd90bdb160be8f80a9479038",
"reftest"
@@ -563178,6 +563154,10 @@
"4e70cb46303c01463675abee7b284da616bc355b",
"support"
],
+ "css/css-display/animations/display-interpolation.html": [
+ "d0b1d9573b8c5045785945dc356a601cb0ca170d",
+ "testharness"
+ ],
"css/css-display/display-change-iframe.html": [
"c12c413d5390aaf4ea4c71c689952bbdb62069df",
"reftest"
@@ -569902,12 +569882,44 @@
"0b470bd6407c8ff741c10497650f008b772d8126",
"reftest"
],
+ "css/css-fonts/standard-font-family-17-notref.html": [
+ "3d01985ed6b0582a9a7c27674ef44a5dc34377dd",
+ "support"
+ ],
+ "css/css-fonts/standard-font-family-17.html": [
+ "9ce56ed8fa6ec6cc1ea7b7ddc8f4a7221730dfff",
+ "reftest"
+ ],
+ "css/css-fonts/standard-font-family-18-notref.html": [
+ "7829a0c5e19e6bd90ed7edaa0ee9045add3d3b4a",
+ "support"
+ ],
+ "css/css-fonts/standard-font-family-18.html": [
+ "69e5cabd6ec261a5f3f63f0dcce2d738851c1b10",
+ "reftest"
+ ],
+ "css/css-fonts/standard-font-family-19-notref.html": [
+ "7e876ced31324f0cd7badb15641e9c0625bbe5e4",
+ "support"
+ ],
+ "css/css-fonts/standard-font-family-19.html": [
+ "43dc24b16750566f9e7d8d2d69bcdfc8bebef265",
+ "reftest"
+ ],
"css/css-fonts/standard-font-family-2-ref.html": [
- "e19801ba77086541fa50aba88493f13b3e60be6d",
+ "a2fe8646e13cacd08f30c884025f48a02706e2da",
"support"
],
"css/css-fonts/standard-font-family-2.html": [
- "4fbca52b659329fe00c599cf3677d39f0f86334b",
+ "2827c6c2cb8ff3936000e67e27298771ec1ee729",
+ "reftest"
+ ],
+ "css/css-fonts/standard-font-family-20-notref.html": [
+ "7e876ced31324f0cd7badb15641e9c0625bbe5e4",
+ "support"
+ ],
+ "css/css-fonts/standard-font-family-20.html": [
+ "7d0335e06160ea15af645d73d4537bfe29e1f008",
"reftest"
],
"css/css-fonts/standard-font-family-3-notref.html": [
@@ -569935,19 +569947,19 @@
"reftest"
],
"css/css-fonts/standard-font-family-6-ref.html": [
- "e9e24dfc62cfea8760c39bc7b8fe31e0d3261700",
+ "3c26321fffcca83eee35067410498bc4103eb908",
"support"
],
"css/css-fonts/standard-font-family-6.html": [
- "9a5fd418bda32df3d53098a479f6d4cd6dd33224",
+ "f6a0f158b94619e9937233d0973474df17c3f24a",
"reftest"
],
"css/css-fonts/standard-font-family-7-ref.html": [
- "4dad37fed3d92aecb50b98504f38c2590be6808d",
+ "0e2df68c1e29a4cb0e5a18ae3d25ea65f8200e6e",
"support"
],
"css/css-fonts/standard-font-family-7.html": [
- "68ebe0e04e6a625e3acfe9812a044d21f9bb360e",
+ "11af83fc9e6e36eb0b27131eeaed323272287e94",
"reftest"
],
"css/css-fonts/standard-font-family-8-notref.html": [
@@ -569967,11 +569979,11 @@
"reftest"
],
"css/css-fonts/standard-font-family-ref.html": [
- "e9e24dfc62cfea8760c39bc7b8fe31e0d3261700",
+ "3c26321fffcca83eee35067410498bc4103eb908",
"support"
],
"css/css-fonts/standard-font-family.html": [
- "907a437207c8d406746b6bb9733946a81a354a8d",
+ "b093ad442e1049b6747f115d86ec0220717553d2",
"reftest"
],
"css/css-fonts/support/100x100-lime.png": [
@@ -580862,6 +580874,10 @@
"228604ee357d22027c1691bf2baf27a52729222b",
"reftest"
],
+ "css/css-lists/animations/list-style-image-interpolation.html": [
+ "b953d8c2215dd9e01b9b2a342dd7e4088e50b415",
+ "testharness"
+ ],
"css/css-lists/change-list-style-type-ref.html": [
"033af1333132a2696d1a80ceacfc91f1ebf67a08",
"support"
@@ -581382,6 +581398,18 @@
"6f6c344f305d84d8334fc38f07484ebc95266643",
"testharness"
],
+ "css/css-lists/resources/blue-20.png": [
+ "c464c75eeca3ead65c00e7c26150d97ad58da5c3",
+ "support"
+ ],
+ "css/css-lists/resources/green-20.png": [
+ "738d1db8469e370fece1c7ce553ee0ec43986404",
+ "support"
+ ],
+ "css/css-lists/resources/stripes-20.png": [
+ "de30887ea358ece8e0c1cd593d3d7c66bc744bd4",
+ "support"
+ ],
"css/css-lists/resources/white.gif": [
"3aa2098dc8817f5360d13440f3d6245a030dc31d",
"support"
@@ -581738,6 +581766,10 @@
"e00170ed331bcbca450a4de5ef41c415cc88d2b9",
"testharness"
],
+ "css/css-masking/animations/mask-image-interpolation.html": [
+ "beb9c9eaab0344cfdbb61700f52d9ff1f033e148",
+ "testharness"
+ ],
"css/css-masking/animations/mask-position-interpolation.html": [
"d832048ca37b2693218d1c2891d9cb3fa8ba8609",
"testharness"
@@ -582826,6 +582858,18 @@
"63aed3e33c46bdbf2c1bf8c8b8758daff7ab0bee",
"testharness"
],
+ "css/css-masking/resources/blue-20.png": [
+ "c464c75eeca3ead65c00e7c26150d97ad58da5c3",
+ "support"
+ ],
+ "css/css-masking/resources/green-20.png": [
+ "738d1db8469e370fece1c7ce553ee0ec43986404",
+ "support"
+ ],
+ "css/css-masking/resources/stripes-20.png": [
+ "de30887ea358ece8e0c1cd593d3d7c66bc744bd4",
+ "support"
+ ],
"css/css-masking/test-mask-ref.html": [
"938235acbd36309fb969c55f161239bcd5ab969e",
"support"
@@ -582882,6 +582926,10 @@
"a47ed89a2e0eb11624bfb5c96d547f632f9c27e7",
"reftest"
],
+ "css/css-multicol/equal-gap-and-rule.html": [
+ "bf6d6b9cefa8cf4ccf3be422ffef942ddc595905",
+ "reftest"
+ ],
"css/css-multicol/extremely-tall-multicol-with-extremely-tall-child-crash.html": [
"1f74697489df2d8ed687b40d3681d9918f2ecb0f",
"testharness"
@@ -587110,6 +587158,14 @@
"fedf917c62a1c34c054b7484594ced16960c4c17",
"reftest"
],
+ "css/css-pseudo/first-line-and-marker-ref.html": [
+ "8095d5ca01527e4e1ccacd25887b499e198e80f0",
+ "support"
+ ],
+ "css/css-pseudo/first-line-and-marker.html": [
+ "f0a994438f1f848837b6a7814ceb621aae886fde",
+ "reftest"
+ ],
"css/css-pseudo/first-line-and-placeholder-ref.html": [
"dbadd365c25a9e3214e9920948d2a5c934075e2c",
"support"
@@ -587327,7 +587383,7 @@
"reftest"
],
"css/css-pseudo/parsing/marker-supported-properties.html": [
- "451aac149dbda8eb605dadc377bfa4186a871a50",
+ "a34fd76fea48eb05b080933b63e049a667d33b3c",
"testharness"
],
"css/css-pseudo/parsing/tree-abiding-pseudo-elements.html": [
@@ -590239,7 +590295,7 @@
"testharness"
],
"css/css-scroll-snap/scroll-snap-stop-change.html": [
- "0a73ff1206d98dd6da3c774173cb41e145f1e616",
+ "10e90d3cff4a50cfe975afd52e31fe23d2c94f1c",
"testharness"
],
"css/css-scroll-snap/scroll-snap-stop.html": [
@@ -590314,12 +590370,52 @@
"48bfb51c2d9e838d6ed78fbda636b3657607abc0",
"testharness"
],
- "css/css-scroll-snap/snap-area-capturing-remove-scroll-container.html": [
- "9b8240715992c8c1f69dd8a154f58e47c6b88abf",
+ "css/css-scroll-snap/snap-after-initial-layout/direction-rtl.html": [
+ "d10c013e1ee0d713057c26bd7acd961b4c0a5edc",
+ "reftest"
+ ],
+ "css/css-scroll-snap/snap-after-initial-layout/snap-after-initial-layout-ref.html": [
+ "c8009b626cb63ebcef4a211f8b61249faf36c72f",
+ "support"
+ ],
+ "css/css-scroll-snap/snap-after-initial-layout/writing-mode-horizontal-tb.html": [
+ "aa65dde1810ebabfccfa76716063bd8e83c07bb0",
+ "reftest"
+ ],
+ "css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-lr.html": [
+ "898e64be6197679635290aebd22467c96a509750",
+ "reftest"
+ ],
+ "css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-rl.html": [
+ "b3141f03f3c4b9a0a0108df8b55356e6fde3a759",
+ "reftest"
+ ],
+ "css/css-scroll-snap/snap-after-relayout/adding-only-snap-area.html": [
+ "53141707bb307dd13f13aee6d78ec67dffaa6576",
+ "testharness"
+ ],
+ "css/css-scroll-snap/snap-after-relayout/adding-snap-area-while-snapped.html": [
+ "d26359658f479c61df8d0a559fcb5558f63106a6",
"testharness"
],
- "css/css-scroll-snap/snap-area-caputring-add-scroll-container.html": [
- "d045367639200d99216e3cf498e24d56e1b2bf97",
+ "css/css-scroll-snap/snap-after-relayout/move-current-target.html": [
+ "83c2c478bf5921cedd9cb4d48b5de14533f4bbcd",
+ "testharness"
+ ],
+ "css/css-scroll-snap/snap-after-relayout/remove-current-target.html": [
+ "82bddf8074882e03d9c2dd669815303fbdd2b039",
+ "testharness"
+ ],
+ "css/css-scroll-snap/snap-after-relayout/snap-to-different-targets.html": [
+ "6ceab295e4ce89ff46d8ec3db56c566513098ffa",
+ "testharness"
+ ],
+ "css/css-scroll-snap/snap-area-capturing-add-scroll-container.html": [
+ "15f44ed8b7bdbcf8a2810523a0ee8b793edadd49",
+ "testharness"
+ ],
+ "css/css-scroll-snap/snap-area-capturing-remove-scroll-container.html": [
+ "d3750abdd7e867a3208edea16ceca3b24e2885c7",
"testharness"
],
"css/css-scroll-snap/snap-at-user-scroll-end-manual.html": [
@@ -592078,370 +592174,6 @@
"bce0a18be6f66e57cad2e2e90694a6f53dab71c7",
"reftest"
],
- "css/css-sizing/intrinsic-size/intrinsic-size-001-ref.html": [
- "d4f0281ae48cd9ab43403fcbfc0c50d8c96e1381",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-001.html": [
- "4d17602a95f91af86ef16825203e903d841e68cc",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-002-ref.html": [
- "ab847fc36e56155a0b3638a24f9ca90077c76b23",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-002.html": [
- "55f209494125e08900b60bc566b5c85d0d123d54",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-003-ref.html": [
- "6a2d05149894c0e7ecfc5471bab6055bc51f072d",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-003.html": [
- "3dd41ba1d2c001bcaaec7ea8338bcb3cce41d52e",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-004-ref.html": [
- "6e710943de9957bcda6ac83985615e35f2154d1e",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-004.html": [
- "9cce7ae25fc8f343e9a693e1ee6ef92847e71ece",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-005-ref.html": [
- "950f7190cac250124ba5cda419a71126e157d2e0",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-005.html": [
- "92b777d22e054bef9d675f00b7d67845f17081df",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-006-ref.html": [
- "d545093e2db58163637e466b233cd15da40d0f7b",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-006.html": [
- "82c6e8eef8536cb95f291828107a53a97a1d1428",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-007-ref.html": [
- "6b3f63685ac07bb0e5f95570744a7b87c56158f6",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-007.html": [
- "85fcae6cd91ba8a2f9404497992ba5b7d6411ad9",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-008-ref.html": [
- "5c6186fd48cf0dfd2ee83fd6ed2819fa6dbb0989",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-008.html": [
- "f3b344f6b0a79464090434127309f724ab4ba64e",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-009-ref.html": [
- "223e0c8a33a6832e37dc4b78de4c27b5a3abcc11",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-009.html": [
- "06a02fe78bd08602c14f890ae4bb374076807789",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-010-ref.html": [
- "eaaa0977f139938e2657814fd78d543f2bc5e0db",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-010.html": [
- "eea76ffb07325ac9268581f9b2db348f8301e4df",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-011-ref.html": [
- "29d1f4e2d1a108dd53c5905e45d9c7923ca9a2ba",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-011.html": [
- "c7888f906f8b7ec92648a7cb5b4b18df2bbeaad5",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-012-ref.html": [
- "ed9857aa2565762f514fe5fb73173b6a5da6494f",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-012.html": [
- "889b07ace922271e335054992d6731264a291c9f",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-013-ref.html": [
- "9f8334c03d508bc1d91d0163674a28c89c77e034",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-013.html": [
- "1082100012fd890d466cbea1aafe8c1101ebc945",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-014-ref.html": [
- "66c10824893089e0c78dd5f6f68e167eac7438b6",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-014.html": [
- "4dd45a2da409449d225c6768d2e19564f0b567d6",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-015-ref.html": [
- "ae65a3b5ca547b19e8bdc7b38099c8206edfa6c4",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-015.html": [
- "5ca5e49992e1d537499bc8ea314229bdfdc5bfc7",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-016-ref.html": [
- "f80510f630624b7bce27483fe9847cd182114fe0",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-016.html": [
- "ce6ac5c56e4a101fda21a46dc37d81ebee4b1dd5",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-017-ref.html": [
- "553451a7075559dad575be17e2ce08b62cb67832",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-017.html": [
- "5e2122f34ecf8e74e54c8b101772de0f9be0cdb6",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-018-ref.html": [
- "17261caa8af2b65f80ed331fb38bb5c2e37d5b10",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-018.html": [
- "68931834d630410e1ca9906db8a97317b26ee062",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-019-ref.html": [
- "8e55d7b02f9d1d7352ebdeeca1ee48a1009b49f4",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-019.html": [
- "cae8e0739fe823e82369fa5661a7f70b4dd30e0f",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-020-ref.html": [
- "1ee5ba8376ddc7e6bb74d765755fbe89b9e33b6b",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-020.html": [
- "a7286ce1054cae30cb8023cae074d9be8781fa33",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-021-ref.html": [
- "35db43fcf44a3668ae19f0d97ea7a872223fcc9c",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-021.html": [
- "04591924f659615dc22851102f5d59b4d83e5e18",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-022-ref.html": [
- "b0df199283470db4a7ecba4011a3429e8065bb7e",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-022.html": [
- "3593b9cce38f158bf96164ba1e8110c09eedbc01",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-023-ref.html": [
- "800e4ae706447004c3c8ff5bf8a530216cba1dea",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-023.html": [
- "c64ef66a03fd18b57e34ade82bd538e33578f129",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-024-ref.html": [
- "02ec85a0084910bb09de2e7871b7ddd7d8a68265",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-024.html": [
- "b11317d96b015282e9bcc043efcdbba799851bc6",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-025-ref.html": [
- "60d5cc9cd9aadb99620773ea11eaf9e2081b771b",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-025.html": [
- "ab9c56fc528ed848a200a890e0df3cc018618529",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-026-ref.html": [
- "2e456b43422c014a10c62fe93c776c43ad59581a",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-026.html": [
- "100f542b783794dbf5c07ac146f1e0ee5f481db7",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001-ref.html": [
- "99e86d0c38fd2b76745b6cbd05224dc5aa0537d6",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001.html": [
- "9c2dac07da2b012a4e927916cd18f980a15d9e68",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002-ref.html": [
- "70a245469b702bb5b2348ca7698c71ac1ca99671",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002.html": [
- "5b3902455bdccd8d16f8e9795e3821f5ab73799a",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003-ref.html": [
- "246a5bad51ed6155177a7f1fb11705c4ca7dd944",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003.html": [
- "07ec0326787f96e08654f9643e7032309c62bfaa",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001-ref.html": [
- "39c6abdcf8eba74a04c1255388ca551cf8988ed5",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001.html": [
- "df662e5c7f17342a0facdf2c614689833b4a424b",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002-ref.html": [
- "535915a7a7bed54142f731a21eb20a97379650a1",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002.html": [
- "66d008ce6cef7cfe93d097a362e6cfba57b57a7a",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003-ref.html": [
- "eb6394fe28464f74106c99830d67af1efa58aba4",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003.html": [
- "90e4f53bf64fe4d9eb9c19036abdccea98a582bf",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004-ref.html": [
- "d5e7c9ff9bb9c4f155955065161e14f1fcbc954e",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004.html": [
- "dfeed45d73b91e620a8d3aefe8461af2c21c3e86",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005-ref.html": [
- "c23984f5f1a4d07c2121088987718781d00fc85c",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005.html": [
- "baf9bef3aca6ae9d9c6026d993dda9e4584e78e3",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006-ref.html": [
- "9b9e25d3c8da8693f82bfa7d49e87a320bb3f141",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006.html": [
- "41ef1fddc19d6ba3ec3ee6c6adfce4d51d078929",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007-ref.html": [
- "6894b4643ad616d4acf3a631c991718c76cdae27",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007.html": [
- "df2c57b5d8a7f884a31934a15cc1e1037d3a6c8e",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008-ref.html": [
- "5cce190275940e70c3e3451a47ed9432025dab46",
- "support"
- ],
- "css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008.html": [
- "45b8fbdd24484d6d2637d440edad3dc3e959cadf",
- "reftest"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-computed.html": [
- "e9a073ca2aacd9dd9fce6a1b0d33493498b33bac",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-invalid.html": [
- "1b6cba20f88d78f8e29d385676a261d6d78c8e67",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-valid.html": [
- "b34c73b230f50d00371811ec063180bfc249fad7",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-height-computed.html": [
- "6f95274c637a54bd88b1bf5e732b8a6aaa291e32",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-height-invalid.html": [
- "1f801124a2b5f2fe3cf96c76b9b64fe33d9f50da",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-height-valid.html": [
- "e461476211879b903e451e662ad393162a94afdd",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-computed.html": [
- "c53a77e5631068101f4d58a9a67d6db8b9c8c2a3",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-invalid.html": [
- "6ad224d11d3831ba227fc41ab90bf0c3b748be46",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-valid.html": [
- "ad5aef95dca952785a8263a7b6447ef4e4b83e03",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-computed.html": [
- "29be33d4a3d9a33ec30cfe150f9c9f80d5fd796d",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-invalid.html": [
- "b4cb2dbffd2004762d028f092e82e5f9297655ec",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-sets-computed-dimensions.html": [
- "e70c3179223eaf220edd3993069848b8e0294dea",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-size-valid.html": [
- "7ab13c7d7986151f22e01711f34a9184effca082",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-width-computed.html": [
- "08602e5347f3de0827446875b15a29c8b6789b27",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-width-invalid.html": [
- "b89f6567ae27595ac752ece8bfe66784d16146de",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/parsing/intrinsic-width-valid.html": [
- "e2d23eabe5da207ce82519e9f57adcbd4cf5d70c",
- "testharness"
- ],
- "css/css-sizing/intrinsic-size/resources/dice.png": [
- "c82d01517cd056fe1b63266b00fb9a96ce6251a2",
- "support"
- ],
"css/css-sizing/min-max-content-orthogonal-flow-crash-001.html": [
"d2617f8aa2d1c966e394abb1d1617c012ea4648e",
"testharness"
@@ -592542,14 +592274,6 @@
"11c34eafc32812da1b4da1552afe08c231cd69db",
"testharness"
],
- "css/css-sizing/percentage-resolution-001-ref.html": [
- "a4e7f1ece4675bd415ed29ed0801b4890a31c9c4",
- "support"
- ],
- "css/css-sizing/percentage-resolution-001.html": [
- "b2cc727ca7a94f4c4f27a3d4c515f8665b769f34",
- "reftest"
- ],
"css/css-sizing/range-percent-intrinsic-size-1-ref.html": [
"9a68590b6389eb9c1fefc2dc37f42b2a60b3b41a",
"support"
@@ -594927,7 +594651,7 @@
"reftest"
],
"css/css-text/hyphens/hyphens-overflow-001.html": [
- "4154e5e1181b47f39b238abb40537262fe4906dc",
+ "948b728254a3a097964e3a341f8475c0c93b4340",
"reftest"
],
"css/css-text/hyphens/hyphens-shaping-001.html": [
@@ -594955,7 +594679,7 @@
"support"
],
"css/css-text/hyphens/reference/hyphens-overflow-001-ref.html": [
- "db002ce45d84a89ba9692e8e6d3c97a5227fc64f",
+ "08d521d33960ea5d495de39ce9bb2be5fc5c29a0",
"support"
],
"css/css-text/hyphens/reference/hyphens-shaping-001-ref.html": [
@@ -611090,6 +610814,10 @@
"625952abb9b3a0abd390fecc850940952eea022e",
"reftest"
],
+ "css/css-values/animations/calc-interpolation.html": [
+ "de76386e0dadc292cc66dec1170e57b19f2cdc69",
+ "testharness"
+ ],
"css/css-values/attr-color-invalid-cast.html": [
"d538eebdd9979bfda2398e46de72748dc0099810",
"reftest"
@@ -624507,7 +624235,7 @@
"support"
],
"css/support/interpolation-testcommon.js": [
- "3c9754c694128010aee095422cea127f10b6f355",
+ "d1cb7cfbeb07fb16439c2245f12c5fbc174c77b4",
"support"
],
"css/support/parsing-testcommon.js": [
@@ -634735,7 +634463,7 @@
"support"
],
"docs/writing-tests/reftests.md": [
- "845d6f8dc4fcff2b12e6c06b320684d6b7cba70d",
+ "6dbe3a1aa9d0cf3912729b18d8662fd637046589",
"support"
],
"docs/writing-tests/rendering.md": [
@@ -634790,6 +634518,42 @@
"16bdb9365f002c471d0c7c90147ed284624a9556",
"support"
],
+ "document-policy/echo-policy-nested.html": [
+ "d572dcb0465843c3d694d808c8bc883cd54fbf89",
+ "support"
+ ],
+ "document-policy/echo-policy-nested.html.headers": [
+ "fe839ef5bb6dfa3cc9460e6175b345a2249fd79c",
+ "support"
+ ],
+ "document-policy/echo-policy.py": [
+ "52a2bf97124f0e6f3ff05fcc693c751f1cd0fca0",
+ "support"
+ ],
+ "document-policy/required-policy/document-policy.html": [
+ "d6bf3e9a6d490ad5462267ae913002b696b96a80",
+ "testharness"
+ ],
+ "document-policy/required-policy/document-policy.html.headers": [
+ "d321c265d1502c364a8d1caa5ab24710e853983e",
+ "support"
+ ],
+ "document-policy/required-policy/no-document-policy.html": [
+ "9af2e51c2acd9657861e00824c2a74631a370b00",
+ "testharness"
+ ],
+ "document-policy/required-policy/required-document-policy-nested.html": [
+ "39e2a92f77379319c1c9cd6619c02c9724c2a6dd",
+ "testharness"
+ ],
+ "document-policy/required-policy/required-document-policy.html": [
+ "12cebdd292a2311f951a78dd1f8aab1ecd8c60e0",
+ "testharness"
+ ],
+ "document-policy/required-policy/required-document-policy.html.headers": [
+ "066c0f8339ea21c1102c78d82d07d060252a9980",
+ "support"
+ ],
"dom/META.yml": [
"6fd5b12664da091fd9ee773b821ad72ee704ee8f",
"support"
@@ -634931,7 +634695,7 @@
"testharness"
],
"dom/events/Event-dispatch-redispatch.html": [
- "4027587bff482b82ccbaafed80bf8adba1553fb9",
+ "dc180c61567b723bb2f3dd9e29bc20f3f8f3a921",
"testharness"
],
"dom/events/Event-dispatch-reenter.html": [
@@ -640983,7 +640747,7 @@
"testharness"
],
"fetch/api/cors/cors-preflight-redirect.any.js": [
- "5d4de7ebaad1d45775cdb00bf0233aca1a34f612",
+ "ade38e9ac7b090dc69979da99d37480ddf9c76f7",
"testharness"
],
"fetch/api/cors/cors-preflight-referrer.any.js": [
@@ -641079,7 +640843,7 @@
"testharness"
],
"fetch/api/idlharness.any.js": [
- "ccd4d2c0b46234c40f2ff452c8ead112e32539de",
+ "7b3c694e16ac3ec2776398067cf6ddbef949c969",
"testharness"
],
"fetch/api/policies/csp-blocked-worker.html": [
@@ -642055,7 +641819,7 @@
"support"
],
"fetch/metadata/appcache.tentative.https.sub.html": [
- "8912548ab1c96f99df1af712bbccf79bfbf2968d",
+ "5e35472fcfdce6972191160b57fa7cce559f96a0",
"testharness"
],
"fetch/metadata/embed.tentative.https.sub.html": [
@@ -642102,7 +641866,7 @@
"93acffef11ae23cf72088f9962da24e27911d11f",
"testharness"
],
- "fetch/metadata/navigation.https.sub.html": [
+ "fetch/metadata/navigation.tentative.https.sub.html": [
"32c9cf77f90ee9c0710da5f623e8b175aaae7f3d",
"testharness"
],
@@ -642130,6 +641894,10 @@
"fc986aaf4fdcff900980824dc41f7ff3dacd4e70",
"testharness"
],
+ "fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html": [
+ "e2715a658545a3090d47dfd49a7ce8f595b3e81e",
+ "testharness"
+ ],
"fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade.tentative.sub.html": [
"37b2415168068d33f38e44c9930ede3608d202d6",
"testharness"
@@ -642138,10 +641906,18 @@
"f5483ac3fa2f3f838525a4fcb26605ddb7e0c2b2",
"testharness"
],
+ "fetch/metadata/redirect/redirect-http-upgrade-prefetch.optional.tentative.sub.html": [
+ "45fd4efaace01a735f888a8dea29fcf5e59d6723",
+ "testharness"
+ ],
"fetch/metadata/redirect/redirect-http-upgrade.tentative.sub.html": [
"c47190651e5c929741060add0f0b40dab1e4461c",
"testharness"
],
+ "fetch/metadata/redirect/redirect-https-downgrade-prefetch.optional.tentative.sub.html": [
+ "a446cbad84051564b6a39da82ccac946ca70561c",
+ "testharness"
+ ],
"fetch/metadata/redirect/redirect-https-downgrade.tentative.sub.html": [
"9eb04822b683bfb28f83e0ad3a78713a14c4b897",
"testharness"
@@ -642195,7 +641971,7 @@
"support"
],
"fetch/metadata/resources/helper.js": [
- "a344c94106a11cb66d7c8cc00d5588e9d5879f38",
+ "608a5297881b914a2cf3602f6b79f53a25354f98",
"support"
],
"fetch/metadata/resources/post-to-owner.py": [
@@ -642203,11 +641979,11 @@
"support"
],
"fetch/metadata/resources/record-header.py": [
- "99115475683d50191624795f01625a99fdfd8398",
+ "3bfb1fcdfaab6f166149b5a451f58e82bbc48531",
"support"
],
"fetch/metadata/resources/redirectTestHelper.sub.js": [
- "c40b5a5e17efda570570cb4b030fff3eebb13b99",
+ "e5547e7ac7931f87e4dc4ae947d169caadf66ba3",
"support"
],
"fetch/metadata/resources/sharedWorker.js": [
@@ -642399,7 +642175,7 @@
"testharness"
],
"fetch/stale-while-revalidate/fetch.html": [
- "73390c7ad5948c682b2fbdcb3c95a4c374dbba2d",
+ "41ece6826ed8b5a2e9b2a0df092b75f4c67f4edb",
"testharness"
],
"fetch/stale-while-revalidate/resources/stale-css.py": [
@@ -646411,23 +646187,23 @@
"testharness"
],
"html/browsers/windows/auxiliary-browsing-contexts/opener-closed.html": [
- "7c939bc77466900a6fcd544dd07029503e62537b",
+ "106c3f97cb231aeadc7a09a22f402ba631fe8882",
"testharness"
],
"html/browsers/windows/auxiliary-browsing-contexts/opener-multiple.html": [
- "eb356c5597267eae7bd4c8d937375adf479183d8",
+ "e71d4dc8687b80e5c987349c58d46c8e0c2f3172",
"testharness"
],
"html/browsers/windows/auxiliary-browsing-contexts/opener-noopener.html": [
- "fff10248fedfcf7f10cb9ab64020566cd4fe6f97",
+ "086a96442dd09eb8c87802f0366bf1f3e8ebb01d",
"testharness"
],
"html/browsers/windows/auxiliary-browsing-contexts/opener-noreferrer.html": [
- "f82aa6f0abe0d16a8b132e531d165988af0af99f",
+ "b8226bd2b93bca9fb90dd5f9f68ad9b578a107ee",
"testharness"
],
"html/browsers/windows/auxiliary-browsing-contexts/opener-setter.html": [
- "e6ff4a19d0d7431a7612f2425ab2eaa39639c696",
+ "ac6e47b846b4980c522cb8c3c9ef16b5b53ea9a3",
"testharness"
],
"html/browsers/windows/auxiliary-browsing-contexts/opener-setter.window.js": [
@@ -646435,7 +646211,7 @@
"testharness"
],
"html/browsers/windows/auxiliary-browsing-contexts/opener.html": [
- "5bbaee6a378c7cacca8a9c274da71c34809bf5da",
+ "c43d3bd3bfbc73160ce7bdaac39d47bb04036b97",
"testharness"
],
"html/browsers/windows/auxiliary-browsing-contexts/resources/close-opener.html": [
@@ -657654,6 +657430,10 @@
"7819ee1c1891887aadec9bb600bcb18e6cc562e3",
"testharness"
],
+ "html/semantics/embedded-content/the-video-element/resize-during-playback.html": [
+ "3ade1effc4bd0273a46bc45dd0e5218a3af453c9",
+ "testharness"
+ ],
"html/semantics/embedded-content/the-video-element/video-tabindex.html": [
"30448747892203f3d53ef4b9615a5a50bb62c62f",
"testharness"
@@ -657778,6 +657558,10 @@
"6c66559a09a0168070f2520d672de79f3a1261da",
"testharness"
],
+ "html/semantics/forms/constraints/infinite_backtracking.html": [
+ "52f6e316b1faa3abec3d0680a6be68ab0d2e6b07",
+ "testharness"
+ ],
"html/semantics/forms/constraints/inputwillvalidate.html": [
"909fd889bbb0b41d218cc2d8e8c9ad4cbf102189",
"testharness"
@@ -664883,7 +664667,7 @@
"support"
],
"infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPoints.html.ini": [
- "4a4f5946fad72286df130d96bb701f9744841249",
+ "1d63261c554f96705801a92871a6159b1f0d5ea0",
"support"
],
"infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsWithPause.html.ini": [
@@ -665050,6 +664834,10 @@
"fec62a3cae00655a95f7bc569d2eb1f43eac6062",
"reftest"
],
+ "infrastructure/reftest/reftest_wait_TestRendered.html": [
+ "4316d338b5c7e846cc281a1d84d9ffb4a5e99e14",
+ "reftest"
+ ],
"infrastructure/reftest/size-ref.html": [
"bb792a3feb21cc0c03d0734e97f119dcce3dd10a",
"support"
@@ -665307,7 +665095,7 @@
"support"
],
"interfaces/cookie-store.idl": [
- "3e1a90ab63f5fc4afa36db8dda9fa1174236e26b",
+ "f6a413e54a20fc5611a3e428a17578a25cd9e483",
"support"
],
"interfaces/cors-rfc1918.idl": [
@@ -665635,7 +665423,7 @@
"support"
],
"interfaces/resize-observer.idl": [
- "9ac157a6328c3cdb6d50a241f1841365ef2ff709",
+ "d53e9da55ee33faef05aeb10e50ba31f27cf88c8",
"support"
],
"interfaces/resource-timing.idl": [
@@ -665715,7 +665503,7 @@
"support"
],
"interfaces/wasm-js-api.idl": [
- "828729071e4b5e77978bce021a8b5c36c3b9cd85",
+ "cc943610145dec2346e7ec9d6891cf32859f9d59",
"support"
],
"interfaces/wasm-web-api.idl": [
@@ -665731,7 +665519,7 @@
"support"
],
"interfaces/web-nfc.idl": [
- "455720c641e69af2e68b9c9a0eb2cbd740267e26",
+ "de23fac0c118c2a773a5e9627c6b1af99c861838",
"support"
],
"interfaces/web-share.idl": [
@@ -666450,12 +666238,20 @@
"3b18b98dd93312c37b9e2f25918df50266a09243",
"testharness"
],
+ "layout-instability/pointerdown-becomes-scroll.html": [
+ "4fe5c6b7e7c6339e805d26aee10e58b3bb0a3253",
+ "testharness"
+ ],
+ "layout-instability/pointerdown-becomes-tap.html": [
+ "e2e7a911dc043bb21cebfd4a5b625795f3523a14",
+ "testharness"
+ ],
"layout-instability/resources/slow-image.py": [
"ee7988c551f6429eea2b929af083ad30cbd5c73d",
"support"
],
"layout-instability/resources/util.js": [
- "ca430d0a9e2a89e85ed087289de40234f9061bae",
+ "515914e11fadc9c1f5e0b44994c52a9374eca1c6",
"support"
],
"layout-instability/rtl-distance.html": [
@@ -666551,7 +666347,7 @@
"testharness"
],
"lint.whitelist": [
- "48d7e9d6a747b973333912b6e940055449f2f5ce",
+ "4f2ef9c005b6a170f7b980617debe5d1293895fe",
"support"
],
"loading/lazyload/common.js": [
@@ -668590,6 +668386,14 @@
"29903c0a817352ea3d3ad6abf188e5aec7470173",
"support"
],
+ "media/400x300-red-resize-200x150-green.mp4": [
+ "1058c1bf26a0ae080e199886908ea2572c865f00",
+ "support"
+ ],
+ "media/400x300-red-resize-200x150-green.webm": [
+ "53b6517849f8a64536c3f015b956224b5f71dc93",
+ "support"
+ ],
"media/A4.mp4": [
"ef66d43b9eac025855118b2ff39881f4f25f94f9",
"support"
@@ -680499,7 +680303,7 @@
"testharness"
],
"portals/portals-adopt-predecessor.html": [
- "70545458b4609ac6f1993834da09bcebee65c118",
+ "96d0be9a401771759c0d0cc5a9785497f9bf3447",
"testharness"
],
"portals/portals-api.html": [
@@ -680667,7 +680471,7 @@
"support"
],
"portals/resources/portals-adopt-predecessor-portal.html": [
- "b7eb3b96779a561cacf11d6c7e9362ca1049be6c",
+ "48e162b97140e835c7269ce40a859d38665451df",
"support"
],
"portals/resources/portals-adopt-predecessor.html": [
@@ -696710,6 +696514,10 @@
"f5a60c3060961a2b1674c8959c5d4a0af7b5452a",
"testharness"
],
+ "service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html": [
+ "6ca9247619526689db286e6eef740f521ce70ad0",
+ "testharness"
+ ],
"service-workers/service-worker/fetch-event.https.html": [
"169a0b17d6230335fb0c83988039875c815d99e1",
"testharness"
@@ -697546,6 +697354,10 @@
"f3180d776c5b02ed2cf202c298fabfd1e8f8ea11",
"support"
],
+ "service-workers/service-worker/resources/fetch-event-worker-timing.js": [
+ "7f3b201ef7655cc09c4d1aab0051eb42993bce57",
+ "support"
+ ],
"service-workers/service-worker/resources/fetch-header-visibility-iframe.html": [
"0d9ab6ff904583d4ffda08d2432f5321b4b91a86",
"support"
@@ -699899,7 +699711,7 @@
"testharness"
],
"storage-access-api/META.yml": [
- "cb059fe6bb103af62e83abe2e1518011975102e2",
+ "83f078575380df8a1f368eaa09c7e93c7e1a1712",
"support"
],
"storage-access-api/hasStorageAccess.sub.window.js": [
@@ -700459,7 +700271,7 @@
"support"
],
"svg/META.yml": [
- "0836892864f6a7ea61b92fef6082f89376977c09",
+ "ee0fff087c4f9a5723f53cc002e228a713e730da",
"support"
],
"svg/README.md": [
@@ -703934,6 +703746,22 @@
"47f70336a6f6774805c08c99f37e8ee7c32ecc10",
"reftest"
],
+ "svg/painting/marker-009-ref.svg": [
+ "968eba091c513be8997c2f95e4f91e91c335b66d",
+ "support"
+ ],
+ "svg/painting/marker-009.svg": [
+ "9e6fe21d9177741c8f33a588657dd525807d4a22",
+ "reftest"
+ ],
+ "svg/painting/marker-orient-001-ref.svg": [
+ "e328aa05462e96bab7f29b32a49d7af5d276d1dc",
+ "support"
+ ],
+ "svg/painting/marker-orient-001.svg": [
+ "eefb1068391dba9db839e689e0750183373d9b28",
+ "reftest"
+ ],
"svg/painting/parsing/color-interpolation-computed.svg": [
"c437a0a908beed1221eaee6e185c4b3216411cc6",
"testharness"
@@ -704446,6 +704274,10 @@
"22bf513c862bf8d1ccbac358c71560fd834e545a",
"testharness"
],
+ "svg/render/foreignObject-in-non-rendered-getComputedStyle.html": [
+ "409f1044a33372c8e642ba61a2d4f752061eb975",
+ "testharness"
+ ],
"svg/render/reftests/blending-001-ref.svg": [
"dcd39a8a1d5b2c76038a50506e661d3c5513a847",
"support"
@@ -705371,13 +705203,17 @@
"support"
],
"tools/ci/azure/install_safari.yml": [
- "10466e3278f97a143004d62d775ae158167508cc",
+ "a8641465ac8eae70086bd0ced4a80d3a2da35113",
"support"
],
"tools/ci/azure/pip_install.yml": [
"c8795345f6bcf4a943e07a459947e718ad6a0afc",
"support"
],
+ "tools/ci/azure/safari-technology-preview.rb": [
+ "b32739be58a7028d5ff4a2de9b56dfb7ea09982b",
+ "support"
+ ],
"tools/ci/azure/system_info.yml": [
"cc37b35b853c01cdd4f6075d9a14c1fffd6a4c3a",
"support"
@@ -705415,7 +705251,7 @@
"support"
],
"tools/ci/commands.json": [
- "841fd855c8056829afd347e3067e55804ca65139",
+ "c9cd7c458989ec77bacd645cd5145351443ff73c",
"support"
],
"tools/ci/epochs_update.sh": [
@@ -705439,15 +705275,59 @@
"support"
],
"tools/ci/run_tc.py": [
- "be7dbe082a1709493b62316d15668ea10ae93607",
+ "b4cb2b01b9745de1c234c9eeaf414e65b8fe7ae3",
"support"
],
"tools/ci/taskcluster-run.py": [
"8a60012d09b4d5be9845cf4ab74e5f87bf4b58ce",
"support"
],
- "tools/ci/tcdownload.py": [
- "256726da7b568f32115dfeaa6bc1407490c0d076",
+ "tools/ci/tc/README.md": [
+ "11f367f986f97fdbfe40f09b2ae4114f263916f7",
+ "support"
+ ],
+ "tools/ci/tc/__init__.py": [
+ "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
+ "support"
+ ],
+ "tools/ci/tc/decision.py": [
+ "a3c47aa404990253f556a9cf59bd7c6237ffece3",
+ "support"
+ ],
+ "tools/ci/tc/download.py": [
+ "359ec33405048c134ddcfac7a564ea9a17ac1b14",
+ "support"
+ ],
+ "tools/ci/tc/taskgraph.py": [
+ "6a6cb497f2d406862d18bc214d36c1ea2ecd7c3e",
+ "support"
+ ],
+ "tools/ci/tc/tasks/test.yml": [
+ "a64ef3749211bbb2b3580efc2eee3ea5a810ea6f",
+ "support"
+ ],
+ "tools/ci/tc/testdata/master_push_event.json": [
+ "8e79f7537349a79fd70746ab6e371897acc4d5e1",
+ "support"
+ ],
+ "tools/ci/tc/testdata/pr_event.json": [
+ "5acc1a6010291c88d26f8c12573aeeb9d0b33e97",
+ "support"
+ ],
+ "tools/ci/tc/testdata/pr_event_tests_affected.json": [
+ "792ea1bcccebc00e6680e029c768542a6118894f",
+ "support"
+ ],
+ "tools/ci/tc/tests/test_decision.py": [
+ "425b5829edd360b145acebf249f4b1ac3f6d1396",
+ "support"
+ ],
+ "tools/ci/tc/tests/test_taskgraph.py": [
+ "dd8535bb6470ff919251973b073d24489edfff8b",
+ "support"
+ ],
+ "tools/ci/tc/tests/test_valid.py": [
+ "9480178206def8d1a5e4ee46798b123d7eab45be",
"support"
],
"tools/ci/tests/test_jobs.py": [
@@ -705458,10 +705338,6 @@
"63482fb184c7f14db0ebd45c18794e3a9771c90b",
"support"
],
- "tools/ci/tests/test_run_tc.py": [
- "a72dcfe5cfdd516528312488c0d731557fb85492",
- "support"
- ],
"tools/ci/website_build.sh": [
"f6b26310aabce200fc0d77844f5f3ad28de0bb7f",
"support"
@@ -705495,13 +705371,17 @@
"support"
],
"tools/docker/frontend.py": [
- "c4a207345820d534df5cc092c8b46838a5b8ce1f",
+ "976156cf65a00821a11a3351301b47c1078c8416",
"support"
],
"tools/docker/retry.py": [
"6126b781bfadd15e82b8a3a3b9494050939eab6c",
"support"
],
+ "tools/docker/seccomp.json": [
+ "8e8274ce3280e698d2c1a0abeba05a769f4c456d",
+ "support"
+ ],
"tools/docker/start.sh": [
"3427670cc9fa16a0ae23e2da1ecafcfe75789072",
"support"
@@ -705535,7 +705415,7 @@
"support"
],
"tools/lint/lint.py": [
- "7689c359928d6be0f58384dfdc22d8eaa9f0d932",
+ "c7c0197213c4660d05a3d868edd87bd907430f6b",
"support"
],
"tools/lint/rules.py": [
@@ -705683,7 +705563,7 @@
"support"
],
"tools/lint/tests/test_lint.py": [
- "dbd4708cdc969da6824ba377dcf9f33a326b9863",
+ "af2b7d3d4aa19f0c1d72a5575b5013c7897e1dc4",
"support"
],
"tools/lint/tests/test_path_lints.py": [
@@ -706270,26 +706150,6 @@
"d6c082a970357f477e82cd25a1c0952ee744db54",
"support"
],
- "tools/taskcluster/__init__.py": [
- "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
- "support"
- ],
- "tools/taskcluster/commands.json": [
- "dcbd8961fc2efbb800565b927a3e5d9314d6aba6",
- "support"
- ],
- "tools/taskcluster/testdata/master_push_event.json": [
- "8e79f7537349a79fd70746ab6e371897acc4d5e1",
- "support"
- ],
- "tools/taskcluster/testdata/pr_event.json": [
- "5acc1a6010291c88d26f8c12573aeeb9d0b33e97",
- "support"
- ],
- "tools/taskcluster/verify.py": [
- "b37e45ec74cfbccffee84319fc8b94512f170dca",
- "support"
- ],
"tools/third_party/atomicwrites/.gitignore": [
"2b2d3128753e9f6f34895e7183595829d1063a5a",
"support"
@@ -710187,7 +710047,7 @@
"support"
],
"tools/tox.ini": [
- "7a5c1eb648a97aebc718912cb22492385c588439",
+ "e8673db0a69ae4695e7b1fa152c533aa1b0f98d1",
"support"
],
"tools/webdriver/.gitignore": [
@@ -710231,7 +710091,7 @@
"support"
],
"tools/wpt/browser.py": [
- "e7d57d8638c231f9c3c65e932bdc0209ba3cb021",
+ "a94d5509cc8ba1bfcc4cbceafd9f511a4f9804ab",
"support"
],
"tools/wpt/commands.json": [
@@ -710243,7 +710103,7 @@
"support"
],
"tools/wpt/install.py": [
- "8215dfe09161ad49ba3975e1eacc927c61715acf",
+ "24915f0c98d0be3a864a3a515ba0e162dc37da8c",
"support"
],
"tools/wpt/mach-emulator.manifest": [
@@ -710255,7 +710115,7 @@
"support"
],
"tools/wpt/paths": [
- "093a71568920a944b0b8361165f5ea5fa002ee14",
+ "35867c4ccbfe95c4e71a8d71ce90a7b378951fd5",
"support"
],
"tools/wpt/requirements.txt": [
@@ -710343,7 +710203,7 @@
"support"
],
"tools/wptrunner/docs/expectation.rst": [
- "2f7467c09124cdd94e5390d498d487ce4b7ea357",
+ "77938abe03d55ce14571ec1b4c2b43d0ed4a409b",
"support"
],
"tools/wptrunner/docs/internals.rst": [
@@ -710387,7 +710247,7 @@
"support"
],
"tools/wptrunner/requirements_firefox.txt": [
- "f49102b8a89ba7bbbc809c1b4313779c31330fc4",
+ "4cbb7a5ec0293eff1ef198a21ecdc90fecf41411",
"support"
],
"tools/wptrunner/requirements_ie.txt": [
@@ -710639,7 +710499,7 @@
"support"
],
"tools/wptrunner/wptrunner/executors/base.py": [
- "f20f735528c16dbc72fdb41434f3511c2128dbd9",
+ "713d85001135d0cdf23c7a06583bd03d4355d58e",
"support"
],
"tools/wptrunner/wptrunner/executors/executorchrome.py": [
@@ -710659,7 +710519,7 @@
"support"
],
"tools/wptrunner/wptrunner/executors/executormarionette.py": [
- "7a936592f8880553e7594d9a5e5c82a9f1c1642c",
+ "b165e8cd93d534062f303aa3e045cbb9850ed25c",
"support"
],
"tools/wptrunner/wptrunner/executors/executoropera.py": [
@@ -710671,19 +710531,19 @@
"support"
],
"tools/wptrunner/wptrunner/executors/executorselenium.py": [
- "913a5e6d54225b9c1c77f2b5518955fa726c4fce",
+ "d6745018279e74affce1493da3cbb9b01f828fb0",
"support"
],
"tools/wptrunner/wptrunner/executors/executorservo.py": [
- "eaea09816325ebd4dc3e1c715f4712beb2ef2825",
+ "365a1a08653b0175fc4df4050eb9d9aaf8b1d34c",
"support"
],
"tools/wptrunner/wptrunner/executors/executorservodriver.py": [
- "67a433d9a588245138f97fb8028a5a349f308f1d",
+ "bd377d0d5950ca8d469f1320cdc072c8dff10bb2",
"support"
],
"tools/wptrunner/wptrunner/executors/executorwebdriver.py": [
- "344debf8aa69ef0634764cdaf0e994511bbceab6",
+ "39346e805d735000e9fcf28fcaa72ecca8f34f68",
"support"
],
"tools/wptrunner/wptrunner/executors/executorwebkit.py": [
@@ -710706,12 +710566,8 @@
"c1936eb966f78834d839c79409322b0a96af1284",
"support"
],
- "tools/wptrunner/wptrunner/executors/reftest-wait_marionette.js": [
- "194e192c2f4e22021781f633841a33eae9925417",
- "support"
- ],
"tools/wptrunner/wptrunner/executors/reftest-wait_webdriver.js": [
- "a7486b6594d96093ae2267c48ca0b87ab40ef7cc",
+ "f86edacdef25257e4eda9304b209381a01d7f313",
"support"
],
"tools/wptrunner/wptrunner/executors/reftest.js": [
@@ -710815,7 +710671,7 @@
"support"
],
"tools/wptrunner/wptrunner/testrunner.py": [
- "1b02fc622bea57e25140bfcf0322271e7d9643ed",
+ "8dece20a8e93e279204ccfee70f07ce8a8debab3",
"support"
],
"tools/wptrunner/wptrunner/tests/__init__.py": [
@@ -717118,6 +716974,14 @@
"1477261e6bc6227598b4e80475a66aa95fe5d15c",
"testharness"
],
+ "web-animations/timing-model/animations/reverse-running-animation-ref.html": [
+ "0aaa0443649acd9453f5b52534016a92889b157e",
+ "support"
+ ],
+ "web-animations/timing-model/animations/reverse-running-animation.html": [
+ "584aa0029ea2e5aa4926035756b5f49d74fa9f54",
+ "reftest"
+ ],
"web-animations/timing-model/animations/reversing-an-animation.html": [
"75fd9876c0495a8bd0096d2f976a920d3d7e5a05",
"testharness"
@@ -717146,10 +717010,42 @@
"dd8617503951aafd71015d591914a1b54e3907a7",
"testharness"
],
+ "web-animations/timing-model/animations/sync-start-times-ref.html": [
+ "fc843a132f2f3741ce27ed796d1182488deb336b",
+ "support"
+ ],
+ "web-animations/timing-model/animations/sync-start-times.html": [
+ "06dcf0305639f21fbeea35039023fe2102c38451",
+ "reftest"
+ ],
"web-animations/timing-model/animations/the-current-time-of-an-animation.html": [
"77a6b716d22062998529b58382e0205e6f017980",
"testharness"
],
+ "web-animations/timing-model/animations/update-playback-rate-fast-ref.html": [
+ "af69b26100ae02ee711274071df416c45f71d868",
+ "support"
+ ],
+ "web-animations/timing-model/animations/update-playback-rate-fast.html": [
+ "63a76ba84a62736bb7edb05d9cfa79d6dc73c1cf",
+ "reftest"
+ ],
+ "web-animations/timing-model/animations/update-playback-rate-slow-ref.html": [
+ "11b87deecca4bcea480c9bec9221a02cd1c97a9b",
+ "support"
+ ],
+ "web-animations/timing-model/animations/update-playback-rate-slow.html": [
+ "db449f2ca596c274170c94c1bb5dc0c87a1ba120",
+ "reftest"
+ ],
+ "web-animations/timing-model/animations/update-playback-rate-zero-ref.html": [
+ "26293a3aebbb004dbc03742544c86d237081a56b",
+ "support"
+ ],
+ "web-animations/timing-model/animations/update-playback-rate-zero.html": [
+ "bed08d630ca2de7960e49e26c9f40da8e772f5b0",
+ "reftest"
+ ],
"web-animations/timing-model/animations/updating-the-finished-state.html": [
"4d3cc7950b09bdffc826dfa9ffd885e6dea5e9ac",
"testharness"
@@ -717302,20 +717198,20 @@
"9cf42e83bf306b5272fd753461fb78c3c9a4992f",
"manual"
],
- "web-nfc/NDEFReader_options.https.html": [
- "6901e5cdcb25cce0f3f3a02aed842b3524cc7b8a",
- "testharness"
- ],
"web-nfc/NDEFReader_scan.https.html": [
"78160fbcb2ab11a8ebc80c39a6fd935eddc0844b",
"testharness"
],
+ "web-nfc/NDEFReader_scan_filter.https.html": [
+ "4c1e7de44008889386e71431d7b4d0042739fe4e",
+ "testharness"
+ ],
"web-nfc/NDEFReader_scan_iframe.https.html": [
"9bdb07136821211214e7d2d838f92da3f1955bc4",
"testharness"
],
"web-nfc/NDEFReadingEvent_constructor.https.html": [
- "15ef6e466aab05e289cc93bb678fbda02ce253f7",
+ "3d734105e9ce0ed68e86e421f80847fa485779fe",
"testharness"
],
"web-nfc/NDEFRecord_constructor.https.html": [
@@ -717343,7 +717239,7 @@
"testharness"
],
"web-nfc/resources/nfc-helpers.js": [
- "eb3006114c7c505a5737894e8dc7d1d0eeda8fa7",
+ "0fe6fe80cb1cec7ef582bae5d7974bce9d1d8596",
"support"
],
"web-nfc/resources/support-iframe.html": [
@@ -718887,7 +718783,7 @@
"support"
],
"webdriver/tests/find_element_from_element/find.py": [
- "b107a8957e08fa2c83fd47459f1e66d3b7d74134",
+ "56e216bb646131bdcc9a0c3c28ea4142c2982897",
"wdspec"
],
"webdriver/tests/find_element_from_element/user_prompts.py": [
@@ -720747,7 +720643,7 @@
"testharness"
],
"webrtc/RTCPeerConnection-setRemoteDescription-rollback.html": [
- "73a0fe1e5a1349c397d65aa15a89bef909192c43",
+ "342e325dad2af804c659891d7a05f00933b487a7",
"testharness"
],
"webrtc/RTCPeerConnection-setRemoteDescription-tracks.https.html": [
@@ -728587,7 +728483,7 @@
"testharness"
],
"xhr/idlharness.any.js": [
- "f36f0ce02967ec873bc8231669da22177fa39f75",
+ "d45e52e2341b8ce43d3e7e144afe518eba74c173",
"testharness"
],
"xhr/loadstart-and-state.html": [
diff --git a/tests/wpt/metadata/css/CSS2/floats/floats-in-table-caption-001.html.ini b/tests/wpt/metadata/css/CSS2/floats/floats-in-table-caption-001.html.ini
new file mode 100644
index 00000000000..86715ffc9c2
--- /dev/null
+++ b/tests/wpt/metadata/css/CSS2/floats/floats-in-table-caption-001.html.ini
@@ -0,0 +1,2 @@
+[floats-in-table-caption-001.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/CSS2/linebox/animations/line-height-interpolation.html.ini b/tests/wpt/metadata/css/CSS2/linebox/animations/line-height-interpolation.html.ini
index bbc1d4c8664..eb580957227 100644
--- a/tests/wpt/metadata/css/CSS2/linebox/animations/line-height-interpolation.html.ini
+++ b/tests/wpt/metadata/css/CSS2/linebox/animations/line-height-interpolation.html.ini
@@ -1,2 +1,841 @@
[line-height-interpolation.html]
- expected: ERROR
+ [CSS Transitions with transition: all: property <line-height> from [4px\] to [14px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [normal\] at (0.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4q\] to [14q\] at (1.5) should be [19q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14q\] to [normal\] at (0.5) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [4\] at (1) should be [4\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14q\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14\] at (0) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [normal\] at (0.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14px\] at (0.3) should be [4\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4px\] to [14px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4\] to [14\] at (1.5) should be [19\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [14px\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4q\] to [14q\] at (0.6) should be [10q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [4\] at (0.6) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [4\] at (1.5) should be [4\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4q\] to [14q\] at (-1) should be [0q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4px\] to [14px\] at (1) should be [14px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4q\] to [14q\] at (0.6) should be [10q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [initial\] to [20px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14q\] to [normal\] at (0) should be [14q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [normal\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4px\] to [14px\] at (0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [4\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [normal\] at (-0.3) should be [4\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [4\] at (0.5) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4q\] to [14q\] at (1) should be [14q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14px\] at (0) should be [4\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [unset\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14q\] at (1.5) should be [14q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14q\] at (0) should be [4\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14px\] at (1.5) should be [14px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14q\] to [normal\] at (-0.3) should be [14q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14px\] at (0.6) should be [14px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [4\] at (0.3) should be [14px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [14px\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4px\] to [14px\] at (1) should be [14px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [4\] at (-0.3) should be [14px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [inherit\] to [20px\] at (-1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4\] to [14\] at (0.3) should be [7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [normal\] at (0) should be [4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14q\] to [normal\] at (0.3) should be [14q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14\] at (1.5) should be [19\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [normal\] at (-0.3) should be [14px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4px\] to [14px\] at (0.6) should be [10px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [initial\] to [20px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14q\] at (-0.3) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14q\] at (0.3) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [4\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4q\] to [14q\] at (0.3) should be [7q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14q\] to [normal\] at (-0.3) should be [14q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14q\] to [normal\] at (0) should be [14q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [normal\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14px\] at (0.5) should be [14px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4q\] to [14q\] at (0.6) should be [10q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14q\] at (0.5) should be [14q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14q\] at (0.5) should be [14q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [4\] at (0.6) should be [4\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [14px\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4px\] to [14px\] at (0) should be [4px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [normal\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [normal\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14q\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14\] at (1.5) should be [19\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14px\] at (1.5) should be [14px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [14px\] at (1) should be [14px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4q\] to [14q\] at (0.6) should be [10q\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [inherit\] to [20px\] at (-1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [14px\] at (0.6) should be [14px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [4\] at (0.3) should be [14px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14q\] at (0.6) should be [14q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14\] at (0) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4q\] to [14q\] at (0.3) should be [7q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [4\] at (0.6) should be [4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4q\] to [14q\] at (-0.3) should be [1q\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [unset\] to [20px\] at (-1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4px\] to [14px\] at (0) should be [4px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [4\] at (0) should be [14px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4px\] to [14px\] at (1.5) should be [19px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from neutral to [20px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [normal\] at (-0.3) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [14px\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14\] at (0.3) should be [7\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from neutral to [20px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [normal\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4q\] to [14q\] at (-0.3) should be [1q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [inherit\] to [20px\] at (-1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14q\] at (0.6) should be [14q\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4px\] to [14px\] at (0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14\] at (0.6) should be [10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4q\] to [14q\] at (1.5) should be [19q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [4\] at (0.5) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [4\] at (0) should be [14px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14px\] at (-0.3) should be [4\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [4\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4\] to [14\] at (1.5) should be [19\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14\] at (-1) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4px\] to [14px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14q\] at (1) should be [14q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14px\] at (0.3) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4px\] to [14px\] at (0.6) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4\] to [14\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [normal\] at (0.3) should be [14px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [initial\] to [20px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4px\] to [14px\] at (1.5) should be [19px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [4\] at (1.5) should be [4\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [4\] at (0.5) should be [4\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4q\] to [14q\] at (1.5) should be [19q\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4px\] to [14px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [normal\] at (0.3) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [4\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14px\] at (0.6) should be [14px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4px\] to [14px\] at (1.5) should be [19px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14px\] at (1) should be [14px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14q\] at (1.5) should be [14q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4px\] to [14px\] at (0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [14px\] at (1.5) should be [14px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4q\] to [14q\] at (-1) should be [0q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14q\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4\] to [14\] at (0.3) should be [7\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14\] at (-1) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4px\] to [14px\] at (1.5) should be [19px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [4\] at (1.5) should be [4\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4q\] to [14q\] at (-0.3) should be [1q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [initial\] to [20px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14px\] at (0.5) should be [14px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14q\] to [normal\] at (0.3) should be [14q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [14px\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [14px\] at (0.5) should be [14px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4\] to [14\] at (-1) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14\] at (1) should be [14\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [4\] at (1) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4\] to [14\] at (0.6) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [normal\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14q\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4\] to [14\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [normal\] at (-0.3) should be [14px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4px\] to [14px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [unset\] to [20px\] at (-1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4px\] to [14px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4q\] to [14q\] at (0.3) should be [7q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [4\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [inherit\] to [20px\] at (-1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [normal\] at (0) should be [14px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14px\] at (0) should be [4\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4q\] to [14q\] at (1) should be [14q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4q\] to [14q\] at (1.5) should be [19q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [normal\] at (0) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [14px\] at (0.6) should be [14px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [normal\] at (0.5) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14px\] at (-0.3) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [4\] at (1.5) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [normal\] at (0) should be [14px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4px\] to [14px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4q\] to [14q\] at (0.3) should be [7q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [4\] at (-0.3) should be [14px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14q\] at (0.3) should be [4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from neutral to [20px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14q\] to [normal\] at (0.5) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14px\] to [normal\] at (0.3) should be [14px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [14px\] at (1.5) should be [14px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [4\] to [14\] at (-1) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [unset\] to [20px\] at (-1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4px\] to [14px\] at (0.6) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14q\] at (-0.3) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14\] at (0.3) should be [7\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [4\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [normal\] at (0.5) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [14q\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from neutral to [20px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14q\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14q\] at (1) should be [14q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [initial\] to [20px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [4\] at (0.6) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14q\] at (0) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [unset\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4\] to [14\] at (1) should be [14\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from neutral to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [14px\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [4\] to [14\] at (0.6) should be [10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <line-height> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4px\] to [14px\] at (0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [14px\] to [4\] at (1) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [4\] at (0.5) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [4\] at (1) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14px\] at (1) should be [14px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <line-height> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [initial\] to [20px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [normal\] to [14px\] at (1) should be [14px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4q\] to [14q\] at (0) should be [4q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4q\] to [14q\] at (-1) should be [0q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4q\] to [14q\] at (0) should be [4q\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [14\] at (0.6) should be [10\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4q\] to [14q\] at (-1) should be [0q\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [unset\] to [20px\] at (-1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4px\] to [14px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [4\] to [normal\] at (0.3) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <line-height> from [normal\] to [14px\] at (0.5) should be [14px\]]
+ expected: FAIL
+
+ [CSS Animations: property <line-height> from [4q\] to [14q\] at (-0.3) should be [1q\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/CSS2/visufx/animation/visibility-interpolation.html.ini b/tests/wpt/metadata/css/CSS2/visufx/animation/visibility-interpolation.html.ini
index 7f02684f048..56e097738cd 100644
--- a/tests/wpt/metadata/css/CSS2/visufx/animation/visibility-interpolation.html.ini
+++ b/tests/wpt/metadata/css/CSS2/visufx/animation/visibility-interpolation.html.ini
@@ -1,5 +1,247 @@
[visibility-interpolation.html]
- expected: ERROR
[visibility interpolation]
expected: FAIL
+ [CSS Animations: property <visibility> from [collapse\] to [visible\] at (0.9) should be [visible\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [hidden\] at (1) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [visible\] at (0) should be [collapse\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [hidden\] at (-0.3) should be [collapse\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [hidden\] to [visible\] at (1.5) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [visible\] to [hidden\] at (0) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [hidden\] to [visible\] at (0.9) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [visible\] to [hidden\] at (1.5) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [hidden\] to [visible\] at (0) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [hidden\] at (1.5) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [hidden\] at (0.3) should be [hidden\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [visible\] to [visible\] at (0) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [hidden\] at (1) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [hidden\] at (0.3) should be [collapse\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [hidden\] to [visible\] at (0.1) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [hidden\] at (0) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [visible\] at (1.5) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [visible\] at (1) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [visible\] at (0) should be [collapse\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [visible\] at (1.5) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [visible\] to [hidden\] at (1.5) should be [hidden\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [hidden\] to [visible\] at (1) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [hidden\] at (0.5) should be [hidden\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [hidden\] at (0) should be [collapse\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [visible\] at (0.9) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [hidden\] at (0.5) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [hidden\] at (0.5) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [hidden\] to [visible\] at (1.5) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [hidden\] at (0.3) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [visible\] to [hidden\] at (1) should be [hidden\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [visible\] at (0.1) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [visible\] at (1) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [hidden\] at (1.5) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [visible\] at (0.1) should be [visible\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [hidden\] at (0.6) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [visible\] to [hidden\] at (1.5) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [hidden\] at (0.6) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [hidden\] at (0.6) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [visible\] at (0.9) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [visible\] at (-1) should be [collapse\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [visible\] to [visible\] at (1.5) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [hidden\] at (-0.3) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [visible\] at (-1) should be [collapse\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [visible\] to [visible\] at (0.5) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [visible\] at (1) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [hidden\] to [visible\] at (-1) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [visible\] at (-1) should be [collapse\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [visible\] to [hidden\] at (1.5) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [visible\] at (0.9) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [visible\] to [hidden\] at (-1) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [visible\] at (1.5) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [visible\] at (0) should be [collapse\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [hidden\] to [visible\] at (0.1) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [hidden\] at (0.3) should be [collapse\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [hidden\] at (-0.3) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [hidden\] to [visible\] at (0.1) should be [visible\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [hidden\] to [visible\] at (-1) should be [hidden\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [hidden\] to [visible\] at (1.5) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [hidden\] to [visible\] at (0.9) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [visible\] to [hidden\] at (0.1) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [visible\] to [visible\] at (-1) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [visible\] at (-1) should be [collapse\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [visible\] at (1.5) should be [visible\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [hidden\] at (0) should be [collapse\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [visible\] at (0) should be [collapse\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [hidden\] at (0.6) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [visible\] at (0.1) should be [visible\]]
+ expected: FAIL
+
+ [CSS Animations: property <visibility> from [collapse\] to [visible\] at (1) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [visible\] to [hidden\] at (1) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [hidden\] at (1.5) should be [hidden\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [hidden\] to [visible\] at (0) should be [hidden\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [visible\] to [hidden\] at (0.9) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [hidden\] at (0) should be [hidden\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [hidden\] at (1) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [hidden\] at (1) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [hidden\] at (1.5) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <visibility> from [collapse\] to [visible\] at (0.1) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [visible\] to [visible\] at (1) should be [visible\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [collapse\] to [hidden\] at (0.5) should be [hidden\]]
+ expected: FAIL
+
+ [CSS Transitions: property <visibility> from [hidden\] to [visible\] at (0.9) should be [visible\]]
+ expected: FAIL
+
+ [Web Animations: property <visibility> from [collapse\] to [hidden\] at (-0.3) should be [collapse\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-align/animation/column-gap-interpolation.html.ini b/tests/wpt/metadata/css/css-align/animation/column-gap-interpolation.html.ini
index d0c9b229624..4870df475f6 100644
--- a/tests/wpt/metadata/css/css-align/animation/column-gap-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-align/animation/column-gap-interpolation.html.ini
@@ -1,5 +1,472 @@
[column-gap-interpolation.html]
- expected: ERROR
[column-gap interpolation]
expected: FAIL
+ [Web Animations: property <column-gap> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [inherit\] to [20px\] at (-0.3) should be [111px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [normal\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [normal\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [unset\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [normal\] to [20px\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [normal\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [normal\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [inherit\] to [20px\] at (0.6) should be [48px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [unset\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [unset\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [inherit\] to [20px\] at (0.3) should be [69px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [normal\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [normal\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [inherit\] to [20px\] at (0.6) should be [48px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [unset\] to [20px\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [unset\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [normal\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [initial\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [unset\] to [20px\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [0px\] to [100px\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [initial\] to [20px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [normal\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [normal\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [inherit\] to [20px\] at (0.6) should be [48px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [normal\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [normal\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [initial\] to [20px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [normal\] to [20px\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [initial\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [unset\] to [20px\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [unset\] to [20px\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [initial\] to [20px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from neutral to [40px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [normal\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [inherit\] to [20px\] at (0) should be [90px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [normal\] to [20px\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [0px\] to [100px\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [initial\] to [20px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [normal\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [unset\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [normal\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [normal\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [normal\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [unset\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [inherit\] to [20px\] at (-0.3) should be [111px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [0px\] to [100px\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [0px\] to [100px\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [normal\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [initial\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [unset\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [inherit\] to [20px\] at (-0.3) should be [111px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [initial\] to [20px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [inherit\] to [20px\] at (0) should be [90px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from neutral to [40px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [inherit\] to [20px\] at (0.3) should be [69px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from neutral to [40px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [inherit\] to [20px\] at (0.6) should be [48px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [normal\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [initial\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [unset\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [initial\] to [20px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [normal\] to [20px\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [unset\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [unset\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [unset\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [unset\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [unset\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [unset\] to [20px\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [unset\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [unset\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [normal\] to [20px\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [initial\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [inherit\] to [20px\] at (0) should be [90px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [unset\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [0px\] to [100px\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [unset\] to [20px\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [normal\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from neutral to [40px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [inherit\] to [20px\] at (0.3) should be [69px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [normal\] to [20px\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [0px\] to [100px\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [unset\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [inherit\] to [20px\] at (0.3) should be [69px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [normal\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [unset\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [normal\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [initial\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [0px\] to [100px\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <column-gap> from [0px\] to [100px\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [normal\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [inherit\] to [20px\] at (-0.3) should be [111px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <column-gap> from [inherit\] to [20px\] at (0) should be [90px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <column-gap> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <column-gap> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-align/animation/row-gap-interpolation.html.ini b/tests/wpt/metadata/css/css-align/animation/row-gap-interpolation.html.ini
index 0974487f792..c2c9640864a 100644
--- a/tests/wpt/metadata/css/css-align/animation/row-gap-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-align/animation/row-gap-interpolation.html.ini
@@ -1,5 +1,472 @@
[row-gap-interpolation.html]
- expected: ERROR
[row-gap interpolation]
expected: FAIL
+ [CSS Animations: property <row-gap> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from neutral to [40px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [unset\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [normal\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [normal\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [initial\] to [20px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [initial\] to [20px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [initial\] to [20px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [0px\] to [100px\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [normal\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [unset\] to [20px\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [normal\] to [20px\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [initial\] to [20px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [normal\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [unset\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [inherit\] to [20px\] at (0.6) should be [48px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [normal\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [normal\] to [20px\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [unset\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [initial\] to [20px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [unset\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [initial\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [inherit\] to [20px\] at (-0.3) should be [111px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [normal\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from neutral to [40px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [inherit\] to [20px\] at (0.3) should be [69px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [inherit\] to [20px\] at (0.6) should be [48px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [inherit\] to [20px\] at (-0.3) should be [111px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [normal\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [normal\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [normal\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [normal\] to [20px\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [unset\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [0px\] to [100px\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [unset\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [inherit\] to [20px\] at (0) should be [90px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [initial\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [normal\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [unset\] to [20px\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [0px\] to [100px\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [initial\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [unset\] to [20px\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [inherit\] to [20px\] at (0.3) should be [69px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [normal\] to [20px\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [inherit\] to [20px\] at (0.3) should be [69px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [initial\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [inherit\] to [20px\] at (0.3) should be [69px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [inherit\] to [20px\] at (0.6) should be [48px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from neutral to [40px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [unset\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [0px\] to [100px\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [unset\] to [20px\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [normal\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [unset\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [unset\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [normal\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [initial\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [inherit\] to [20px\] at (0) should be [90px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [0px\] to [100px\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [normal\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [initial\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [0px\] to [100px\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [unset\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [normal\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [normal\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [0px\] to [100px\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [0px\] to [100px\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [unset\] to [20px\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [initial\] to [20px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [unset\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [inherit\] to [20px\] at (-0.3) should be [111px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [normal\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [normal\] to [20px\] at (0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [inherit\] to [20px\] at (0) should be [90px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from neutral to [40px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [normal\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [unset\] to [20px\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [normal\] to [20px\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [normal\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [unset\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [unset\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [unset\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [unset\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [unset\] to [20px\] at (-0.3) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [inherit\] to [20px\] at (0) should be [90px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [normal\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [inherit\] to [20px\] at (-0.3) should be [111px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [unset\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [normal\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [inherit\] to [20px\] at (0.6) should be [48px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [normal\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [unset\] to [20px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <row-gap> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <row-gap> from [normal\] to [20px\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <row-gap> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <row-gap> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/background-color-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/background-color-interpolation.html.ini
index 1e54a5f1f23..83217853567 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/background-color-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/background-color-interpolation.html.ini
@@ -1,5 +1,400 @@
[background-color-interpolation.html]
- expected: ERROR
[background-color-interpolation]
expected: FAIL
+ [CSS Transitions with transition: all: property <background-color> from neutral to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (1.5) should be [rgba(0, 255, 0, 0.88)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (1) should be [rgba(0, 255, 0, 0.75)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [transparent\] to [green\] at (0) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [transparent\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [inherit\] to [green\] at (0.6) should be [rgb(95, 172, 95)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (-0.5) should be [rgba(0, 0, 255, 0.38)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.5) should be [rgba(0, 153, 102, 0.63)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from neutral to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.25) should be [rgba(0, 85, 170, 0.56)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [transparent\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [initial\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [white\] to [orange\] at (-0.3) should be [white\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from neutral to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (1.5) should be [rgba(0, 255, 0, 0.88)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [initial\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [inherit\] to [green\] at (-0.3) should be [rgb(255, 255, 255)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [inherit\] to [green\] at (0.3) should be [rgb(167, 205, 167)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [inherit\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from neutral to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 73, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [inherit\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [inherit\] to [green\] at (-0.3) should be [rgb(255, 255, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from neutral to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [unset\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [transparent\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [initial\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [inherit\] to [green\] at (0) should be [rgb(238, 238, 238)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [transparent\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [unset\] to [green\] at (0) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from neutral to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [unset\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [initial\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.5) should be [rgba(0, 153, 102, 0.63)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [transparent\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (1) should be [rgba(0, 255, 0, 0.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [white\] to [orange\] at (0) should be [white\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [white\] to [orange\] at (1) should be [orange\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [inherit\] to [green\] at (0.6) should be [rgb(95, 172, 95)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from neutral to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (-0.5) should be [rgba(0, 0, 255, 0.38)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 73, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [inherit\] to [green\] at (-0.3) should be [rgb(255, 255, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [initial\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [unset\] to [green\] at (-0.3) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.5) should be [rgba(0, 153, 102, 0.63)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [initial\] to [green\] at (0) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [initial\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.75) should be [rgba(0, 208, 47, 0.69)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [white\] to [orange\] at (1) should be [orange\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [inherit\] to [green\] at (0.6) should be [rgb(95, 172, 95)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 73, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [transparent\] to [green\] at (-0.3) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [transparent\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [transparent\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [unset\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [unset\] to [green\] at (0) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [transparent\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [transparent\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [initial\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [initial\] to [green\] at (-0.3) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [transparent\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [unset\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (-0.5) should be [rgba(0, 0, 255, 0.38)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0) should be [rgba(0, 0, 255, 0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [initial\] to [green\] at (-0.3) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from neutral to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0) should be [rgba(0, 0, 255, 0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.75) should be [rgba(0, 208, 47, 0.69)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from neutral to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from neutral to [green\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [transparent\] to [green\] at (-0.3) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [inherit\] to [green\] at (0.3) should be [rgb(167, 205, 167)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [white\] to [orange\] at (-0.3) should be [white\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.25) should be [rgba(0, 85, 170, 0.56)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [inherit\] to [green\] at (0) should be [rgb(238, 238, 238)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 73, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (-0.5) should be [rgba(0, 0, 255, 0.38)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [unset\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [initial\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from neutral to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from neutral to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.75) should be [rgba(0, 208, 47, 0.69)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (1.5) should be [rgba(0, 255, 0, 0.88)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from neutral to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [transparent\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [transparent\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [inherit\] to [green\] at (-0.3) should be [rgb(255, 255, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from neutral to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (1.5) should be [rgba(0, 255, 0, 0.88)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [initial\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.5) should be [rgba(0, 153, 102, 0.63)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [unset\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [unset\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [unset\] to [green\] at (-0.3) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [inherit\] to [green\] at (0.3) should be [rgb(167, 205, 167)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [unset\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.75) should be [rgba(0, 208, 47, 0.69)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [initial\] to [green\] at (0) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [unset\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.25) should be [rgba(0, 85, 170, 0.56)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [transparent\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [inherit\] to [green\] at (0.6) should be [rgb(95, 172, 95)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [transparent\] to [green\] at (0) should be [rgba(0, 0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from neutral to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [initial\] to [green\] at (0.3) should be [rgba(0, 128, 0, 0.3)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [inherit\] to [green\] at (0.3) should be [rgb(167, 205, 167)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from [white\] to [orange\] at (0) should be [white\]]
+ expected: FAIL
+
+ [Web Animations: property <background-color> from neutral to [green\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-color> from [currentcolor\] to [rgba(0, 255, 0, 0.75)\] at (0.25) should be [rgba(0, 85, 170, 0.56)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-color> from [unset\] to [green\] at (0.6) should be [rgba(0, 128, 0, 0.6)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-color> from [transparent\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/background-image-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/background-image-interpolation.html.ini
index 85c15e88106..a55ebda26fd 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/background-image-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/background-image-interpolation.html.ini
@@ -1,2 +1,556 @@
[background-image-interpolation.html]
- expected: ERROR
+ [CSS Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1.5) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (0.6) should be [url(../resources/blue-100.png), url(../resources/stripes-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1.5) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (0) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (0) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from neutral to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (1.5) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (0) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (1) should be [url(../resources/blue-100.png), url(../resources/stripes-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from neutral to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (0.6) should be [url(../resources/blue-100.png), url(../resources/stripes-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from neutral to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from neutral to [url(../resources/green-100.png)\] at (-0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (0.6) should be [url(../resources/blue-100.png), url(../resources/stripes-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from neutral to [url(../resources/green-100.png)\] at (0) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (1) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (-0.3) should be [url(../resources/stripes-100.png), url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from neutral to [url(../resources/green-100.png)\] at (0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (0.6) should be [url(../resources/blue-100.png), url(../resources/stripes-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0.6) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (1) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (-0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0.6) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1.5) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0.6) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (1) should be [url(../resources/blue-100.png), url(../resources/stripes-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (1) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (0) should be [url(../resources/stripes-100.png), url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (-0.3) should be [url(../resources/blue-100.png), none\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from neutral to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1.5) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0.6) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.3) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0) should be [url(../resources/blue-100.png), none\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (-0.3) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from neutral to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0.6) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (-0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (-0.3) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (0) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0.6) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (-0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from neutral to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (1.5) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0.6) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from neutral to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (-0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1.5) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (1.5) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (1) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0.6) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (0.3) should be [url(../resources/stripes-100.png), url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (0.3) should be [url(../resources/stripes-100.png), url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (-0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0.6) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (-0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (1.5) should be [url(../resources/blue-100.png), url(../resources/stripes-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0.6) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (1) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0.3) should be [url(../resources/blue-100.png), none\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (0) should be [url(../resources/stripes-100.png), url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1.5) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0.6) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (1.5) should be [url(../resources/blue-100.png), url(../resources/stripes-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [unset\] to [url(../resources/green-100.png)\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0.3) should be [url(../resources/blue-100.png), none\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0.6) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (-0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from neutral to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from neutral to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0) should be [url(../resources/blue-100.png), none\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (0) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (1) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1.5) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (1.5) should be [url(../resources/stripes-100.png), url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [url(../resources/green-100.png)\] at (0.6) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (1.5) should be [url(../resources/blue-100.png), url(../resources/stripes-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.3) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from neutral to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png), none\] to [url(../resources/stripes-100.png), url(../resources/green-100.png)\] at (-0.3) should be [url(../resources/blue-100.png), none\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (1) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (-0.3) should be [url(../resources/stripes-100.png), url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-image> from [inherit\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (0) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [none\] to [url(../resources/green-100.png)\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-image> from [initial\] to [url(../resources/green-100.png)\] at (1.5) should be [url(../resources/green-100.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (-0.3) should be [url(../resources/blue-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/stripes-100.png), url(../resources/blue-100.png)\] to [url(../resources/blue-100.png), url(../resources/stripes-100.png)\] at (1.5) should be [url(../resources/blue-100.png), url(../resources/stripes-100.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-image> from [url(../resources/blue-100.png)\] to [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\] at (1.5) should be [cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-image> from [url(../resources/blue-100.png)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/background-position-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/background-position-interpolation.html.ini
index 7f0649b1627..991c81c43f3 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/background-position-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/background-position-interpolation.html.ini
@@ -1,5 +1,151 @@
[background-position-interpolation.html]
- expected: ERROR
[background-position-interpolation]
expected: FAIL
+ [Web Animations: property <background-position> from [inherit\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (1.25) should be [85px 85px, 85px 85px, 85px 85px, 85px 85px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.5) should be [calc(0% + 40px) calc(0% + 40px), calc(0% + 40px) calc(0% + 40px), calc(0% + 40px) calc(0% + 40px), calc(0% + 40px) calc(0% + 40px)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.25) should be [ 20px 20px, 20px 20px, 20px 20px, 20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [top 0px left 0px\] to [left 80px top 80px\] at (0) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (-0.25) should be [calc(0% - 20px) calc(0% - 20px), calc(0% - 20px) calc(0% - 20px), calc(0% - 20px) calc(0% - 20px), calc(0% - 20px) calc(0% - 20px)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (-0.25) should be [calc(0% - 20px) calc(0% - 20px), calc(0% - 20px) calc(0% - 20px), calc(0% - 20px) calc(0% - 20px), calc(0% - 20px) calc(0% - 20px)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.25) should be [ 10px 10px, 80px 20px, 0px 20px, 70px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [inherit\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (-0.25) should be [55px 55px, 55px 55px, 55px 55px, 55px 55px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (1) should be [ 40px 40px, 80px 80px, 0px 80px, 40px 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (1.25) should be [calc(0% + 100px) calc(0% + 100px), calc(0% + 100px) calc(0% + 100px), calc(0% + 100px) calc(0% + 100px), calc(0% + 100px) calc(0% + 100px)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [top 0px left 0px\] to [left 80px top 80px\] at (0.5) should be [ 40px 40px, 40px 40px, 40px 40px, 40px 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (1) should be [calc(0% + 80px) calc(0% + 80px), calc(0% + 80px) calc(0% + 80px), calc(0% + 80px) calc(0% + 80px), calc(0% + 80px) calc(0% + 80px)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (1) should be [80px 80px, 80px 80px, 80px 80px, 80px 80px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.5) should be [ 20px 20px, 80px 40px, 0px 40px, 60px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [inherit\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.25) should be [65px 65px, 65px 65px, 65px 65px, 65px 65px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (1.25) should be [calc(0% + 100px) calc(0% + 100px), calc(0% + 100px) calc(0% + 100px), calc(0% + 100px) calc(0% + 100px), calc(0% + 100px) calc(0% + 100px)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [top 0px left 0px\] to [left 80px top 80px\] at (1.25) should be [100px 100px, 100px 100px, 100px 100px, 100px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.5) should be [calc(0% + 40px) calc(0% + 40px), calc(0% + 40px) calc(0% + 40px), calc(0% + 40px) calc(0% + 40px), calc(0% + 40px) calc(0% + 40px)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [inherit\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0) should be [60px 60px, 60px 60px, 60px 60px, 60px 60px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (1.25) should be [ 50px 50px, 80px 100px, 0px 100px, 30px 50px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0) should be [ 0px 0px, 80px 0px, 0px 0px, 80px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [inherit\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.75) should be [75px 75px, 75px 75px, 75px 75px, 75px 75px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0) should be [0% 0%, 0% 0%, 0% 0%, 0% 0%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0) should be [40px 40px, 40px 40px, 40px 40px, 40px 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (1) should be [calc(0% + 80px) calc(0% + 80px), calc(0% + 80px) calc(0% + 80px), calc(0% + 80px) calc(0% + 80px), calc(0% + 80px) calc(0% + 80px)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.25) should be [50px 50px, 50px 50px, 50px 50px, 50px 50px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (1.25) should be [90px 90px, 90px 90px, 90px 90px, 90px 90px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [inherit\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (1) should be [80px 80px, 80px 80px, 80px 80px, 80px 80px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (-0.25) should be [30px 30px, 30px 30px, 30px 30px, 30px 30px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [top 0px left 0px\] to [left 80px top 80px\] at (1) should be [ 80px 80px, 80px 80px, 80px 80px, 80px 80px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.25) should be [calc(0% + 20px) calc(0% + 20px), calc(0% + 20px) calc(0% + 20px), calc(0% + 20px) calc(0% + 20px), calc(0% + 20px) calc(0% + 20px)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (-0.25) should be [-20px -20px, -20px -20px, -20px -20px, -20px -20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.75) should be [calc(0% + 60px) calc(0% + 60px), calc(0% + 60px) calc(0% + 60px), calc(0% + 60px) calc(0% + 60px), calc(0% + 60px) calc(0% + 60px)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.25) should be [calc(0% + 20px) calc(0% + 20px), calc(0% + 20px) calc(0% + 20px), calc(0% + 20px) calc(0% + 20px), calc(0% + 20px) calc(0% + 20px)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.75) should be [ 60px 60px, 60px 60px, 60px 60px, 60px 60px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [top 0px left 0px\] to [left 80px top 80px\] at (0.25) should be [ 20px 20px, 20px 20px, 20px 20px, 20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [inherit\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.5) should be [70px 70px, 70px 70px, 70px 70px, 70px 70px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [top 0px left 0px\] to [left 80px top 80px\] at (0.75) should be [ 60px 60px, 60px 60px, 60px 60px, 60px 60px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0) should be [0% 0%, 0% 0%, 0% 0%, 0% 0%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [top 0px left 0px\] to [left 80px top 80px\] at (-0.25) should be [-20px -20px, -20px -20px, -20px -20px, -20px -20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (1.25) should be [100px 100px, 100px 100px, 100px 100px, 100px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.5) should be [ 40px 40px, 40px 40px, 40px 40px, 40px 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.5) should be [60px 60px, 60px 60px, 60px 60px, 60px 60px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.75) should be [ 30px 30px, 80px 60px, 0px 60px, 50px 30px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.75) should be [70px 70px, 70px 70px, 70px 70px, 70px 70px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (1) should be [ 80px 80px, 80px 80px, 80px 80px, 80px 80px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (-0.25) should be [-10px -10px, 80px -20px, 0px -20px, 90px -10px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [80px 80px, 80px 80px, 80px 80px, 80px 80px\] at (0.75) should be [calc(0% + 60px) calc(0% + 60px), calc(0% + 60px) calc(0% + 60px), calc(0% + 60px) calc(0% + 60px), calc(0% + 60px) calc(0% + 60px)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/background-position-origin-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/background-position-origin-interpolation.html.ini
index 9d9724f8cc8..0b12684b578 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/background-position-origin-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/background-position-origin-interpolation.html.ini
@@ -1,5 +1,214 @@
[background-position-origin-interpolation.html]
- expected: ERROR
[background-position-origin-interpolation]
expected: FAIL
+ [Web Animations: property <background-position> from [center center\] to [left 20px center\] at (0.5) should be [calc(10px + 25%) 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px bottom 20px\] at (0.25) should be [calc(5px + 37.5%) calc(-5px + 62.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center center\] at (1) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px top 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px center\] at (0.25) should be [calc(5px + 37.5%) 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px top 20px\] at (0.5) should be [calc(-10px + 75%) calc(10px + 25%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [left 20px top 20px\] at (0.25) should be [5px 5px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [left 20px top 20px\] at (0.5) should be [15px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center center\] at (0.25) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px top 20px\] at (0.25) should be [calc(-5px + 62.5%) calc(5px + 37.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center center\] at (0.75) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px bottom 20px\] at (0.5) should be [calc(-10px + 75%) calc(-10px + 75%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [inherit\] to [left 20px top 20px\] at (0.75) should be [35px 35px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [left 20px top 20px\] at (0.75) should be [15px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px top 20px\] at (0.5) should be [calc(10px + 25%) calc(10px + 25%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [inherit\] to [left 20px top 20px\] at (0.25) should be [65px 65px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px bottom 20px\] at (1) should be [20px calc(-20px + 100%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center top 20px\] at (1) should be [50% 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px center\] at (1) should be [calc(-20px + 100%) 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px bottom 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [left 20px top 20px\] at (0) should be [10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px top 20px\] at (0.75) should be [calc(-15px + 87.5%) calc(15px + 12.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center bottom 20px\] at (0.25) should be [50% calc(-5px + 62.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center bottom 20px\] at (1) should be [50% calc(-20px + 100%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center center\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [left 20px top 20px\] at (0.5) should be [10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px center\] at (0.25) should be [calc(-5px + 62.5%) 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center top 20px\] at (0.5) should be [50% calc(10px + 25%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [inherit\] to [left 20px top 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px center\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center top 20px\] at (0.75) should be [50% calc(15px + 12.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center\] to [bottom\] at (1) should be [50% 100%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [left 20px top 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px bottom 20px\] at (1) should be [calc(-20px + 100%) calc(-20px + 100%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px bottom 20px\] at (0.75) should be [calc(-15px + 87.5%) calc(-15px + 87.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px top 20px\] at (0.75) should be [calc(15px + 12.5%) calc(15px + 12.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center\] to [bottom\] at (0.75) should be [50% 87.5%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px center\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [left 20px top 20px\] at (0) should be [0% 0%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px bottom 20px\] at (0.25) should be [calc(-5px + 62.5%) calc(-5px + 62.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center\] to [bottom\] at (0.25) should be [50% 62.5%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px center\] at (0.5) should be [calc(-10px + 75%) 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px bottom 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center bottom 20px\] at (0.5) should be [50% calc(-10px + 75%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center top 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center\] to [bottom\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [inherit\] to [left 20px top 20px\] at (0.5) should be [50px 50px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px bottom 20px\] at (0.5) should be [calc(10px + 25%) calc(-10px + 75%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [left 20px top 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [inherit\] to [left 20px top 20px\] at (0) should be [80px 80px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px center\] at (0.75) should be [calc(-15px + 87.5%) 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center top 20px\] at (0.25) should be [50% calc(5px + 37.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px top 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center\] to [bottom\] at (0.5) should be [50% 75%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [left 20px top 20px\] at (0.75) should be [15px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [left 20px top 20px\] at (0.5) should be [10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px bottom 20px\] at (0.75) should be [calc(15px + 12.5%) calc(-15px + 87.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [unset\] to [left 20px top 20px\] at (0.25) should be [5px 5px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px center\] at (1) should be [20px 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center bottom 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [left 20px top 20px\] at (0.25) should be [12.5px 12.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center bottom 20px\] at (0.75) should be [50% calc(-15px + 87.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [initial\] to [left 20px top 20px\] at (0) should be [0% 0%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [center center\] at (0.5) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [right 20px top 20px\] at (1) should be [calc(-20px + 100%) 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px top 20px\] at (0.25) should be [calc(5px + 37.5%) calc(5px + 37.5%)\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px center\] at (0.75) should be [calc(15px + 12.5%) 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [left 20px top 20px\] at (0.75) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from [center center\] to [left 20px top 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position> from neutral to [left 20px top 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/background-position-x-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/background-position-x-interpolation.html.ini
index fb2d744eb50..440ddbdff7e 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/background-position-x-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/background-position-x-interpolation.html.ini
@@ -1,5 +1,289 @@
[background-position-x-interpolation.html]
- expected: ERROR
[background-position-x-interpolation]
expected: FAIL
+ [CSS Transitions: property <background-position-x> from [inherit\] to [80px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from neutral to [80px\] at (0.75) should be [70px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from neutral to [80px\] at (-0.25) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [inherit\] to [80px\] at (-0.25) should be [55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [initial\] to [right\] at (0.5) should be [50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [inherit\] to [80px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [inherit\] to [80px\] at (-0.25) should be [55px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [inherit\] to [80px\] at (-0.25) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [inherit\] to [80px\] at (0.5) should be [70px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from neutral to [80px\] at (0.25) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from neutral to [80px\] at (-0.25) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from neutral to [80px\] at (0.75) should be [70px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from neutral to [80px\] at (1) should be [80px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [initial\] to [right\] at (1) should be [100%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [inherit\] to [80px\] at (1.25) should be [85px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [inherit\] to [80px\] at (1.25) should be [85px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [inherit\] to [80px\] at (-0.25) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [inherit\] to [80px\] at (0.5) should be [70px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from neutral to [80px\] at (0.25) should be [50px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (1) should be [500px, 600px, 700px, 500px, 600px, 700px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [inherit\] to [80px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from neutral to [80px\] at (-0.25) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from neutral to [80px\] at (0.5) should be [60px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [initial\] to [right\] at (0.5) should be [50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from neutral to [80px\] at (0.75) should be [70px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [inherit\] to [80px\] at (0.25) should be [65px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from neutral to [80px\] at (1.25) should be [90px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from neutral to [80px\] at (1) should be [80px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [inherit\] to [80px\] at (1) should be [80px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [inherit\] to [80px\] at (0.5) should be [70px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [initial\] to [right\] at (0.5) should be [50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from neutral to [80px\] at (0) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [initial\] to [right\] at (0.75) should be [75%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from neutral to [80px\] at (0.5) should be [60px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [initial\] to [right\] at (1) should be [100%\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0) should be [300px, 400px, 300px, 400px, 300px, 400px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from neutral to [80px\] at (0.25) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [initial\] to [right\] at (-0.25) should be [-25%\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [inherit\] to [80px\] at (1.25) should be [85px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [initial\] to [right\] at (0.5) should be [50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [initial\] to [right\] at (1.25) should be [125%\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [inherit\] to [80px\] at (1) should be [80px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [initial\] to [right\] at (1.25) should be [125%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [inherit\] to [80px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [initial\] to [right\] at (-0.25) should be [-25%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from neutral to [80px\] at (1.25) should be [90px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [inherit\] to [80px\] at (0.5) should be [70px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [initial\] to [right\] at (1.25) should be [125%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [initial\] to [right\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [initial\] to [right\] at (0.75) should be [75%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [initial\] to [right\] at (-0.25) should be [-25%\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from neutral to [80px\] at (1.25) should be [90px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [initial\] to [right\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [initial\] to [right\] at (1.25) should be [125%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from neutral to [80px\] at (0.5) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [inherit\] to [80px\] at (0) should be [60px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from neutral to [80px\] at (-0.25) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [inherit\] to [80px\] at (0.25) should be [65px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from neutral to [80px\] at (1.25) should be [90px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [initial\] to [right\] at (0.25) should be [25%\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [initial\] to [right\] at (0.25) should be [25%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from neutral to [80px\] at (0.5) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from neutral to [80px\] at (0.25) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (1) should be [500px, 600px, 700px, 500px, 600px, 700px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-x> from [initial\] to [right\] at (0.75) should be [75%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0) should be [300px, 400px, 300px, 400px, 300px, 400px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [inherit\] to [80px\] at (0) should be [60px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-x> from [initial\] to [right\] at (0.25) should be [25%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [inherit\] to [80px\] at (1.25) should be [85px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [300px, 400px\] to [500px, 600px, 700px\] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [initial\] to [right\] at (-0.25) should be [-25%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [initial\] to [right\] at (0.25) should be [25%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [initial\] to [right\] at (0.75) should be [75%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from neutral to [80px\] at (0.75) should be [70px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-x> from [inherit\] to [80px\] at (0.25) should be [65px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-x> from [inherit\] to [80px\] at (0.25) should be [65px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/background-position-y-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/background-position-y-interpolation.html.ini
index a92ca1bf0a1..d6fcfc1556f 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/background-position-y-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/background-position-y-interpolation.html.ini
@@ -1,5 +1,289 @@
[background-position-y-interpolation.html]
- expected: ERROR
[background-position-y-interpolation]
expected: FAIL
+ [CSS Transitions with transition: all: property <background-position-y> from [inherit\] to [80px\] at (0.25) should be [65px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [initial\] to [bottom\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [initial\] to [bottom\] at (-0.25) should be [-25%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [initial\] to [bottom\] at (1) should be [100%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [inherit\] to [80px\] at (0) should be [60px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from neutral to [80px\] at (0.75) should be [70px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from neutral to [80px\] at (0.5) should be [60px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [inherit\] to [80px\] at (1.25) should be [85px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [initial\] to [bottom\] at (1.25) should be [125%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [inherit\] to [80px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from neutral to [80px\] at (1) should be [80px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [inherit\] to [80px\] at (0) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [initial\] to [bottom\] at (0.25) should be [25%\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [inherit\] to [80px\] at (-0.25) should be [55px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [inherit\] to [80px\] at (0.25) should be [65px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from neutral to [80px\] at (1.25) should be [90px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from neutral to [80px\] at (1.25) should be [90px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [initial\] to [bottom\] at (0.75) should be [75%\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from neutral to [80px\] at (0.25) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [inherit\] to [80px\] at (1.25) should be [85px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [initial\] to [bottom\] at (1.25) should be [125%\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from neutral to [80px\] at (0.5) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from neutral to [80px\] at (0.5) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [initial\] to [bottom\] at (1) should be [100%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from neutral to [80px\] at (-0.25) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [initial\] to [bottom\] at (0.5) should be [50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [inherit\] to [80px\] at (-0.25) should be [55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from neutral to [80px\] at (0.75) should be [70px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [inherit\] to [80px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [inherit\] to [80px\] at (0.5) should be [70px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from neutral to [80px\] at (0) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from neutral to [80px\] at (0.5) should be [60px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [initial\] to [bottom\] at (-0.25) should be [-25%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [inherit\] to [80px\] at (1) should be [80px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [initial\] to [bottom\] at (0.75) should be [75%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from neutral to [80px\] at (1.25) should be [90px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from neutral to [80px\] at (0.75) should be [70px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [initial\] to [bottom\] at (0.25) should be [25%\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from neutral to [80px\] at (-0.25) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [initial\] to [bottom\] at (0.75) should be [75%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [inherit\] to [80px\] at (-0.25) should be [55px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [initial\] to [bottom\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [inherit\] to [80px\] at (0.5) should be [70px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [inherit\] to [80px\] at (0.5) should be [70px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0) should be [300px, 400px, 300px, 400px, 300px, 400px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [initial\] to [bottom\] at (0.5) should be [50%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [initial\] to [bottom\] at (1.25) should be [125%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [initial\] to [bottom\] at (1.25) should be [125%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [inherit\] to [80px\] at (0.25) should be [65px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [initial\] to [bottom\] at (0.75) should be [75%\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (1) should be [500px, 600px, 700px, 500px, 600px, 700px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (1) should be [500px, 600px, 700px, 500px, 600px, 700px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [inherit\] to [80px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.5) should be [400px, 500px, 500px, 450px, 450px, 550px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [inherit\] to [80px\] at (0.5) should be [70px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [inherit\] to [80px\] at (1.25) should be [85px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from neutral to [80px\] at (0.75) should be [70px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from neutral to [80px\] at (1) should be [80px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from neutral to [80px\] at (0.25) should be [50px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [initial\] to [bottom\] at (-0.25) should be [-25%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (1.25) should be [550px, 650px, 800px, 525px, 675px, 775px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [inherit\] to [80px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [inherit\] to [80px\] at (1.25) should be [85px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from [initial\] to [bottom\] at (0.25) should be [25%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [initial\] to [bottom\] at (0.5) should be [50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.75) should be [450px, 550px, 600px, 475px, 525px, 625px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from neutral to [80px\] at (0.25) should be [50px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from neutral to [80px\] at (-0.25) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from neutral to [80px\] at (1.25) should be [90px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [initial\] to [bottom\] at (0.25) should be [25%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [initial\] to [bottom\] at (0.5) should be [50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [inherit\] to [80px\] at (0.25) should be [65px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0) should be [300px, 400px, 300px, 400px, 300px, 400px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [initial\] to [bottom\] at (-0.25) should be [-25%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from neutral to [80px\] at (-0.25) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-position-y> from [inherit\] to [80px\] at (-0.25) should be [55px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-position-y> from neutral to [80px\] at (0.25) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (-0.25) should be [250px, 350px, 200px, 375px, 225px, 325px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-position-y> from [300px, 400px\] to [500px, 600px, 700px\] at (0.25) should be [350px, 450px, 400px, 425px, 375px, 475px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-position-y> from [inherit\] to [80px\] at (1) should be [80px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/background-size-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/background-size-interpolation.html.ini
index dd8677a8b26..e48bbf678a1 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/background-size-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/background-size-interpolation.html.ini
@@ -1,5 +1,736 @@
[background-size-interpolation.html]
- expected: ERROR
[background-size-interpolation]
expected: FAIL
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.75) should be [30px 30px, 80px 60px, 0px 60px, 50px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (1) should be [40px 40px, 80px 80px, 0px 80px, 40px 40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.25) should be [12.5px 12.5px, 7.5px 7.5px, 12.5px 12.5px, 7.5px 7.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0) should be [10.0px 10.0px, 10.0px 10.0px, 10.0px 10.0px, 10.0px 10.0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.5) should be [20px 20px, 80px 40px, 0px 40px, 60px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px\] to [80px\] at (0) should be [ 0px, 0px, 0px, 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.75) should be [17.5px 17.5px, 2.5px 2.5px, 17.5px 17.5px, 2.5px 2.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (0.3) should be [0px auto, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0) should be [100px 100px, 100px 100px, 100px 100px, 100px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (1.25) should be [25px 25px, 50px 50px, 75px 75px, 125px 125px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px\] to [80px\] at (0.25) should be [ 20px, 20px, 20px, 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (0.5) should be [auto 40px, 40px 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (-0.25) should be [ 7.5px 7.5px, 12.5px 12.5px, 7.5px 7.5px, 12.5px 12.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (1.5) should be [auto 40px, 40px 40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (0) should be [0px auto, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.5) should be [20px 20px, 80px 40px, 0px 40px, 60px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (-0.25) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px\] to [80px\] at (1.25) should be [100px, 100px, 100px, 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (0.5) should be [40px 40px, 40px 40px, cover, contain\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (0.5) should be [40px 40px, 40px 40px, cover, contain\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px\] to [80px\] at (0) should be [ 0px, 0px, 0px, 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.5) should be [10px 10px, 20px 20px, 30px 30px, 50px 50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px\] to [80px\] at (1.25) should be [100px, 100px, 100px, 100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.75) should be [17.5px 17.5px, 2.5px 2.5px, 17.5px 17.5px, 2.5px 2.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px\] to [80px 80px\] at (-0.25) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.75) should be [15px 15px, 30px 30px, 45px 45px, 75px 75px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (0.5) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px\] to [80px\] at (0.5) should be [ 40px, 40px, 40px, 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.75) should be [ 40px 40px, 25px 25px, 40px 40px, 25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.75) should be [15px 15px, 30px 30px, 45px 45px, 75px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (1) should be [ 20px 20px, 0px 0px, 20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.25) should be [10px auto, 10px 10px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.5) should be [10px 10px, 20px 20px, 30px 30px, 50px 50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0) should be [ 0px auto, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (1) should be [ 80px 80px, 80px 80px, 80px 80px, 80px 80px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px\] to [80px 80px\] at (1) should be [ 80px 80px, 80px 80px, 80px 80px, 80px 80px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px\] to [80px\] at (1) should be [ 80px, 80px, 80px, 80px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px\] to [80px 80px\] at (0) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.75) should be [30px auto, 30px 30px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (1) should be [40px auto, 40px 40px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.5) should be [10px 10px, 20px 20px, 30px 30px, 50px 50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (-0.25) should be [ 0px 0px, 80px 0px, 0px 0px, 90px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (0.6) should be [40px 40px, 40px 40px, cover, contain\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from neutral to [20px 20px, 0px 0px\] at (1.25) should be [22.5px 22.5px, 0.0px 0.0px, 22.5px 22.5px, 0.0px 0.0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px\] to [80px\] at (-0.25) should be [ 0px, 0px, 0px, 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (0.5) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px\] to [80px\] at (0.75) should be [ 60px, 60px, 60px, 60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (0.5) should be [ 40px 40px, 40px 40px, 40px 40px, 40px 40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (-0.25) should be [ 7.5px 7.5px, 12.5px 12.5px, 7.5px 7.5px, 12.5px 12.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px\] to [80px 80px\] at (0.5) should be [ 40px 40px, 40px 40px, 40px 40px, 40px 40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.5) should be [20px 20px, 80px 40px, 0px 40px, 60px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.25) should be [ 5px 5px, 10px 10px, 15px 15px, 25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from neutral to [20px 20px, 0px 0px\] at (-0.25) should be [ 7.5px 7.5px, 12.5px 12.5px, 7.5px 7.5px, 12.5px 12.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.5) should be [15.0px 15.0px, 5.0px 5.0px, 15.0px 15.0px, 5.0px 5.0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0) should be [ 0px auto, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (0.6) should be [auto 40px, 40px 40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (-0.25) should be [120px 120px, 125px 125px, 120px 120px, 125px 125px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (0.6) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.75) should be [15px 15px, 30px 30px, 45px 45px, 75px 75px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (-0.3) should be [0px auto, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from neutral to [20px 20px, 0px 0px\] at (-0.25) should be [ 7.5px 7.5px, 12.5px 12.5px, 7.5px 7.5px, 12.5px 12.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0) should be [ 0px auto, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (1.25) should be [50px auto, 50px 50px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (1.25) should be [50px 50px, 80px 100px, 0px 100px, 30px 50px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (-0.25) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0) should be [100px 100px, 100px 100px, 100px 100px, 100px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.75) should be [30px 30px, 80px 60px, 0px 60px, 50px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px\] to [80px\] at (-0.25) should be [ 0px, 0px, 0px, 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (1.5) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.75) should be [17.5px 17.5px, 2.5px 2.5px, 17.5px 17.5px, 2.5px 2.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.5) should be [ 60px 60px, 50px 50px, 60px 60px, 50px 50px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px\] to [80px\] at (1) should be [ 80px, 80px, 80px, 80px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.25) should be [ 5px 5px, 10px 10px, 15px 15px, 25px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (1) should be [ 20px 20px, 0px 0px, 20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (-0.25) should be [120px 120px, 125px 125px, 120px 120px, 125px 125px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.25) should be [ 80px 80px, 75px 75px, 80px 80px, 75px 75px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (0) should be [0px auto, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (0.25) should be [ 20px 20px, 20px 20px, 20px 20px, 20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (1.25) should be [25px 25px, 50px 50px, 75px 75px, 125px 125px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (1.25) should be [22.5px 22.5px, 0.0px 0.0px, 22.5px 22.5px, 0.0px 0.0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (1) should be [40px 40px, 80px 80px, 0px 80px, 40px 40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0) should be [ 0px 0px, 80px 0px, 0px 0px, 80px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px\] to [80px 80px\] at (1.25) should be [100px 100px, 100px 100px, 100px 100px, 100px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.5) should be [20px auto, 20px 20px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px\] to [80px\] at (0.5) should be [ 40px, 40px, 40px, 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (1) should be [ 20px 20px, 0px 0px, 20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (-0.25) should be [ 0px 0px, 80px 0px, 0px 0px, 90px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.75) should be [30px 30px, 80px 60px, 0px 60px, 50px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px\] to [80px 80px\] at (0.75) should be [ 60px 60px, 60px 60px, 60px 60px, 60px 60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (0) should be [0px 0px, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.5) should be [ 60px 60px, 50px 50px, 60px 60px, 50px 50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (0.75) should be [ 60px 60px, 60px 60px, 60px 60px, 60px 60px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0) should be [10.0px 10.0px, 10.0px 10.0px, 10.0px 10.0px, 10.0px 10.0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.5) should be [20px auto, 20px 20px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (1.25) should be [50px auto, 50px 50px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.75) should be [30px auto, 30px 30px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px\] to [80px\] at (0.5) should be [ 40px, 40px, 40px, 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (0.75) should be [ 60px 60px, 60px 60px, 60px 60px, 60px 60px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.75) should be [ 40px 40px, 25px 25px, 40px 40px, 25px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (1.25) should be [50px 50px, 80px 100px, 0px 100px, 30px 50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0) should be [100px 100px, 100px 100px, 100px 100px, 100px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.75) should be [ 40px 40px, 25px 25px, 40px 40px, 25px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (-0.3) should be [0px auto, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0) should be [100px 100px, 100px 100px, 100px 100px, 100px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (1.5) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (0.6) should be [auto 40px, 40px 40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px\] to [80px 80px\] at (0.75) should be [ 60px 60px, 60px 60px, 60px 60px, 60px 60px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (0.5) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.25) should be [ 5px 5px, 10px 10px, 15px 15px, 25px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (-0.25) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (1.25) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (1) should be [auto 40px, 40px 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.25) should be [ 80px 80px, 75px 75px, 80px 80px, 75px 75px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (1) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0) should be [ 0px 0px, 80px 0px, 0px 0px, 80px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (1.25) should be [50px auto, 50px 50px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px\] to [80px 80px\] at (0.25) should be [ 20px 20px, 20px 20px, 20px 20px, 20px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.25) should be [10px 10px, 80px 20px, 0px 20px, 70px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.75) should be [15px 15px, 30px 30px, 45px 45px, 75px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px\] to [80px\] at (1.25) should be [100px, 100px, 100px, 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (1) should be [ 80px 80px, 80px 80px, 80px 80px, 80px 80px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from neutral to [20px 20px, 0px 0px\] at (1) should be [20.0px 20.0px, 0.0px 0.0px, 20.0px 20.0px, 0.0px 0.0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px\] to [80px\] at (0) should be [ 0px, 0px, 0px, 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (1) should be [20px 20px, 40px 40px, 60px 60px, 100px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.75) should be [17.5px 17.5px, 2.5px 2.5px, 17.5px 17.5px, 2.5px 2.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (0) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (1.25) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (1.25) should be [25px 25px, 50px 50px, 75px 75px, 125px 125px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px\] to [80px\] at (-0.25) should be [ 0px, 0px, 0px, 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (-0.25) should be [ 0px 0px, 80px 0px, 0px 0px, 90px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (-0.3) should be [0px 0px, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.25) should be [12.5px 12.5px, 7.5px 7.5px, 12.5px 12.5px, 7.5px 7.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (0.3) should be [0px 0px, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from neutral to [20px 20px, 0px 0px\] at (1.25) should be [22.5px 22.5px, 0.0px 0.0px, 22.5px 22.5px, 0.0px 0.0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (0.3) should be [0px auto, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (1.25) should be [22.5px 22.5px, 0.0px 0.0px, 22.5px 22.5px, 0.0px 0.0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (-0.3) should be [0px 0px, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.25) should be [12.5px 12.5px, 7.5px 7.5px, 12.5px 12.5px, 7.5px 7.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px\] to [80px\] at (0.25) should be [ 20px, 20px, 20px, 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px\] to [80px 80px\] at (1.25) should be [100px 100px, 100px 100px, 100px 100px, 100px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (-0.25) should be [ 0px auto, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px\] to [80px\] at (1.25) should be [100px, 100px, 100px, 100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px\] to [80px\] at (0.75) should be [ 60px, 60px, 60px, 60px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px\] to [80px\] at (0.75) should be [ 60px, 60px, 60px, 60px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0) should be [10.0px 10.0px, 10.0px 10.0px, 10.0px 10.0px, 10.0px 10.0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.5) should be [15.0px 15.0px, 5.0px 5.0px, 15.0px 15.0px, 5.0px 5.0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px\] to [80px 80px\] at (0.25) should be [ 20px 20px, 20px 20px, 20px 20px, 20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px\] to [80px\] at (0.5) should be [ 40px, 40px, 40px, 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.5) should be [20px 20px, 80px 40px, 0px 40px, 60px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (1.25) should be [25px 25px, 50px 50px, 75px 75px, 125px 125px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.25) should be [10px auto, 10px 10px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (1) should be [20px 20px, 40px 40px, 60px 60px, 100px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (1.25) should be [100px 100px, 100px 100px, 100px 100px, 100px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (0.6) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.5) should be [20px auto, 20px 20px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.75) should be [30px auto, 30px 30px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (-0.25) should be [ 0px auto, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (1.25) should be [50px auto, 50px 50px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.75) should be [30px 30px, 80px 60px, 0px 60px, 50px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.25) should be [10px auto, 10px 10px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0) should be [10.0px 10.0px, 10.0px 10.0px, 10.0px 10.0px, 10.0px 10.0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (1.25) should be [50px 50px, 80px 100px, 0px 100px, 30px 50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (1) should be [40px auto, 40px 40px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (1) should be [40px 40px, 40px 40px, cover, contain\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (-0.25) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (-0.25) should be [ 0px auto, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0) should be [ 0px auto, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (0) should be [0px 0px, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (0.3) should be [0px 0px, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (1) should be [40px 40px, 80px 80px, 0px 80px, 40px 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (1.5) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (0.25) should be [ 20px 20px, 20px 20px, 20px 20px, 20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from neutral to [20px 20px, 0px 0px\] at (1) should be [20.0px 20.0px, 0.0px 0.0px, 20.0px 20.0px, 0.0px 0.0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (1) should be [ 20px 20px, 0px 0px, 20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (-0.25) should be [ 0px auto, 0px 0px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px\] to [80px\] at (0.25) should be [ 20px, 20px, 20px, 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.5) should be [ 60px 60px, 50px 50px, 60px 60px, 50px 50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (1.5) should be [40px 40px, 40px 40px, cover, contain\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (-0.25) should be [120px 120px, 125px 125px, 120px 120px, 125px 125px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px\] to [80px\] at (-0.25) should be [ 0px, 0px, 0px, 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (1) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.5) should be [15.0px 15.0px, 5.0px 5.0px, 15.0px 15.0px, 5.0px 5.0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.25) should be [ 80px 80px, 75px 75px, 80px 80px, 75px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (1.25) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px\] to [80px\] at (0) should be [ 0px, 0px, 0px, 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (1.5) should be [40px 40px, 40px 40px, cover, contain\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.25) should be [ 5px 5px, 10px 10px, 15px 15px, 25px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px\] to [80px\] at (1) should be [ 80px, 80px, 80px, 80px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.5) should be [ 60px 60px, 50px 50px, 60px 60px, 50px 50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.25) should be [10px 10px, 80px 20px, 0px 20px, 70px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (1) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (1.5) should be [auto 40px, 40px 40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px\] to [80px\] at (0.75) should be [ 60px, 60px, 60px, 60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (1) should be [20.0px 20.0px, 0.0px 0.0px, 20.0px 20.0px, 0.0px 0.0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0) should be [ 0px 0px, 80px 0px, 0px 0px, 80px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.25) should be [10px 10px, 80px 20px, 0px 20px, 70px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.5) should be [15.0px 15.0px, 5.0px 5.0px, 15.0px 15.0px, 5.0px 5.0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (0.5) should be [ 40px 40px, 40px 40px, 40px 40px, 40px 40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, 0px 0px, 0px 0px\] to [20px 20px, 40px 40px, 60px 60px, 100px 100px\] at (0.5) should be [10px 10px, 20px 20px, 30px 30px, 50px 50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (1) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (0.5) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px\] to [80px\] at (0.25) should be [ 20px, 20px, 20px, 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (1) should be [40px 40px, 80px 80px, 0px 80px, 40px 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px\] to [80px 80px\] at (0) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (1) should be [40px 40px, 40px 40px, cover, contain\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px\] to [80px 80px\] at (1) should be [ 80px 80px, 80px 80px, 80px 80px, 80px 80px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 0px 0px, contain, cover\] to [40px 40px, 40px 40px, cover, contain\] at (0.6) should be [40px 40px, 40px 40px, cover, contain\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (1) should be [auto 40px, 40px 40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.75) should be [ 40px 40px, 25px 25px, 40px 40px, 25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from neutral to [20px 20px, 0px 0px\] at (0.25) should be [12.5px 12.5px, 7.5px 7.5px, 12.5px 12.5px, 7.5px 7.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (-0.25) should be [ 0px 0px, 80px 0px, 0px 0px, 90px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (1.25) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0) should be [ 0px 0px, 80px 0px, 0px 0px, 80px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (-0.25) should be [120px 120px, 125px 125px, 120px 120px, 125px 125px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px\] to [80px 80px\] at (0.5) should be [ 40px 40px, 40px 40px, 40px 40px, 40px 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from neutral to [20px 20px, 0px 0px\] at (1) should be [20.0px 20.0px, 0.0px 0.0px, 20.0px 20.0px, 0.0px 0.0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (1.25) should be [50px 50px, 80px 100px, 0px 100px, 30px 50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px\] to [80px\] at (1) should be [ 80px, 80px, 80px, 80px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (0.6) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.75) should be [30px auto, 30px 30px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.5) should be [20px auto, 20px 20px, contain, cover\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (1.25) should be [100px 100px, 100px 100px, 100px 100px, 100px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px\] to [80px 80px\] at (0) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [0px 0px\] to [80px 80px\] at (-0.25) should be [ 0px 0px, 0px 0px, 0px 0px, 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [initial\] to [20px 20px, 0px 0px\] at (1.5) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <background-size> from [0px auto, 0px 0px, contain, cover\] to [40px auto, 40px 40px, contain, cover\] at (0.25) should be [10px auto, 10px 10px, contain, cover\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px 0px, 80px 0px\] to [40px 40px, 80px 80px, 0px 80px\] at (0.25) should be [10px 10px, 80px 20px, 0px 20px, 70px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [0px auto, 0px 0px\] to [auto 40px, 40px 40px\] at (0.5) should be [auto 40px, 40px 40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <background-size> from [inherit\] to [20px 20px, 0px 0px\] at (0.25) should be [ 80px 80px, 75px 75px, 80px 80px, 75px 75px\]]
+ expected: FAIL
+
+ [Web Animations: property <background-size> from [unset\] to [20px 20px, 0px 0px\] at (0.6) should be [20px 20px, 0px 0px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/border-color-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/border-color-interpolation.html.ini
index a39ea79eafd..5d0b1e349ff 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/border-color-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/border-color-interpolation.html.ini
@@ -1,5 +1,349 @@
[border-color-interpolation.html]
- expected: ERROR
[border-color interpolation]
expected: FAIL
+ [CSS Animations: property <border-top-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [unset\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (-0.3) should be [rgb(23, 33, 43) rgb(40, 50, 60) rgb(17, 27, 37) rgb(37, 47, 57)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [unset\] to [orange\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [inherit\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [unset\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from neutral to [orange\] at (0.6) should be [rgb(153, 99, 56)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0.3) should be [rgb(17, 27, 37) rgb(40, 50, 60) rgb(23, 33, 43) rgb(43, 53, 63)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [initial\] to [orange\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from neutral to [orange\] at (-0.3) should be [rgb(0, 0, 181)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [inherit\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [white\] to [orange\] at (-0.3) should be [white\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [unset\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [unset\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [inherit\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [initial\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [inherit\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [initial\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [white\] to [orange\] at (1) should be [orange\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from neutral to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [inherit\] to [orange\] at (0) should be [rgb(255, 255, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [inherit\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [unset\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0.6) should be [rgb(14, 24, 34) rgb(40, 50, 60) rgb(26, 36, 46) rgb(46, 56, 66)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from neutral to [orange\] at (0.3) should be [rgb(77, 50, 97)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (1) should be [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [inherit\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [initial\] to [orange\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from neutral to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (1) should be [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [initial\] to [orange\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0) should be [rgb(20, 30, 40) rgb(40, 50, 60)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [initial\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [inherit\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [inherit\] to [orange\] at (-0.3) should be [rgb(255, 255, 255)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (1.5) should be [rgb(5, 15, 25) rgb(40, 50, 60) rgb(35, 45, 55) rgb(55, 65, 75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [white\] to [orange\] at (-0.3) should be [white\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from neutral to [orange\] at (0) should be [rgb(0, 0, 139)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from neutral to [orange\] at (-0.3) should be [rgb(0, 0, 181)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0.6) should be [rgb(14, 24, 34) rgb(40, 50, 60) rgb(26, 36, 46) rgb(46, 56, 66)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [initial\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [unset\] to [orange\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (1.5) should be [rgb(5, 15, 25) rgb(40, 50, 60) rgb(35, 45, 55) rgb(55, 65, 75)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [inherit\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [unset\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [inherit\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [initial\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [unset\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from neutral to [orange\] at (0.3) should be [rgb(77, 50, 97)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [inherit\] to [orange\] at (0) should be [rgb(255, 255, 255)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [inherit\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [unset\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [white\] to [orange\] at (0) should be [white\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [initial\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [unset\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0.3) should be [rgb(17, 27, 37) rgb(40, 50, 60) rgb(23, 33, 43) rgb(43, 53, 63)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [inherit\] to [orange\] at (-0.3) should be [rgb(255, 255, 255)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [unset\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [unset\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0.6) should be [rgb(14, 24, 34) rgb(40, 50, 60) rgb(26, 36, 46) rgb(46, 56, 66)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0) should be [rgb(20, 30, 40) rgb(40, 50, 60)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from neutral to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [initial\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0) should be [rgb(20, 30, 40) rgb(40, 50, 60)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from neutral to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from neutral to [orange\] at (0.3) should be [rgb(77, 50, 97)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [inherit\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [unset\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [initial\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [initial\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [inherit\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [white\] to [orange\] at (0) should be [white\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from neutral to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0) should be [rgb(20, 30, 40) rgb(40, 50, 60)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from neutral to [orange\] at (0.3) should be [rgb(77, 50, 97)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (1.5) should be [rgb(5, 15, 25) rgb(40, 50, 60) rgb(35, 45, 55) rgb(55, 65, 75)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (-0.3) should be [rgb(23, 33, 43) rgb(40, 50, 60) rgb(17, 27, 37) rgb(37, 47, 57)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from neutral to [orange\] at (0.6) should be [rgb(153, 99, 56)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [inherit\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from neutral to [orange\] at (0.6) should be [rgb(153, 99, 56)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from neutral to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [initial\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [initial\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0.6) should be [rgb(14, 24, 34) rgb(40, 50, 60) rgb(26, 36, 46) rgb(46, 56, 66)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [unset\] to [orange\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from neutral to [orange\] at (-0.3) should be [rgb(0, 0, 181)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [initial\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (1) should be [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [unset\] to [orange\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [white\] to [orange\] at (1) should be [orange\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from neutral to [orange\] at (0.6) should be [rgb(153, 99, 56)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (1.5) should be [rgb(5, 15, 25) rgb(40, 50, 60) rgb(35, 45, 55) rgb(55, 65, 75)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [initial\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (1) should be [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0.3) should be [rgb(17, 27, 37) rgb(40, 50, 60) rgb(23, 33, 43) rgb(43, 53, 63)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from [initial\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [unset\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (-0.3) should be [rgb(23, 33, 43) rgb(40, 50, 60) rgb(17, 27, 37) rgb(37, 47, 57)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-color> from [unset\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (0.3) should be [rgb(17, 27, 37) rgb(40, 50, 60) rgb(23, 33, 43) rgb(43, 53, 63)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-color> from neutral to [orange\] at (-0.3) should be [rgb(0, 0, 181)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [initial\] to [orange\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-color> from [rgb(20, 30, 40) rgb(40, 50, 60)\] to [rgb(10, 20, 30) rgb(40, 50, 60) rgb(30, 40, 50) rgb(50, 60, 70)\] at (-0.3) should be [rgb(23, 33, 43) rgb(40, 50, 60) rgb(17, 27, 37) rgb(37, 47, 57)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-color> from [inherit\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/border-image-outset-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/border-image-outset-interpolation.html.ini
index 3847c277f7b..324dea72116 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/border-image-outset-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/border-image-outset-interpolation.html.ini
@@ -1,5 +1,397 @@
[border-image-outset-interpolation.html]
- expected: ERROR
[border-image-outset interpolation]
expected: FAIL
+ [CSS Transitions: property <border-image-outset> from neutral to [2px\] at (1.5) should be [2.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [initial\] to [2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0px\] to [5px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0px\] to [5px\] at (1.5) should be [7.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0\] to [1\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (-0.3) should be [0 0 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (0.3) should be [31 32 33px 34px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [unset\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [initial\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [unset\] to [2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (0.3) should be [31 32 33px 34px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [inherit\] to [2px\] at (0.3) should be [7.6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0\] to [1\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0\] to [1\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0px\] to [5px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [initial\] to [2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [initial\] to [2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (1.5) should be [151 152 153px 154px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [unset\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [0px\] to [5px\] at (1.5) should be [7.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0px\] to [5px\] at (0.3) should be [1.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [initial\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [inherit\] to [2px\] at (0.6) should be [5.2px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from neutral to [2px\] at (0.3) should be [1.3px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [unset\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [initial\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [unset\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0px\] to [5px\] at (0.3) should be [1.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [initial\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [unset\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0\] to [1\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0px\] to [5px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0px\] to [5px\] at (1) should be [5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (0.3) should be [31 32 33px 34px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [inherit\] to [2px\] at (-0.3) should be [12.4px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [initial\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [initial\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [unset\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from neutral to [2px\] at (0.6) should be [1.6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [unset\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [initial\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [inherit\] to [2px\] at (0.3) should be [7.6px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [unset\] to [2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from neutral to [2px\] at (1.5) should be [2.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [inherit\] to [2px\] at (0.6) should be [5.2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from neutral to [2px\] at (0.3) should be [1.3px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [initial\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0px\] to [5px\] at (0.6) should be [3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [inherit\] to [2px\] at (0.3) should be [7.6px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [initial\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (0.6) should be [61 62 63px 64px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from neutral to [2px\] at (1) should be [2px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [unset\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (0) should be [1 2 3px 4px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [inherit\] to [2px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (1) should be [101 102 103px 104px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [unset\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [0px\] to [5px\] at (1.5) should be [7.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (0.6) should be [61 62 63px 64px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from neutral to [2px\] at (0) should be [1px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [unset\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from neutral to [2px\] at (1.5) should be [2.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [inherit\] to [2px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [initial\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [0px\] to [5px\] at (0.6) should be [3px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (-0.3) should be [0 0 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from neutral to [2px\] at (0.3) should be [1.3px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from neutral to [2px\] at (1) should be [2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0\] to [1\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (-0.3) should be [0 0 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [0px\] to [5px\] at (0.3) should be [1.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [initial\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [0\] to [1\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [0px\] to [5px\] at (0.3) should be [1.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [0px\] to [5px\] at (0.6) should be [3px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from neutral to [2px\] at (0.3) should be [1.3px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [inherit\] to [2px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (-0.3) should be [0 0 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [inherit\] to [2px\] at (-0.3) should be [12.4px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [unset\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [inherit\] to [2px\] at (-0.3) should be [12.4px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [inherit\] to [2px\] at (0.3) should be [7.6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [inherit\] to [2px\] at (1) should be [2px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [unset\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [initial\] to [2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [initial\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [inherit\] to [2px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from neutral to [2px\] at (-0.3) should be [0.7px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0px\] to [5px\] at (0.6) should be [3px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from neutral to [2px\] at (-0.3) should be [0.7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from neutral to [2px\] at (1.5) should be [2.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [inherit\] to [2px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (0.6) should be [61 62 63px 64px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from neutral to [2px\] at (-0.3) should be [0.7px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0\] to [1\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [initial\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from neutral to [2px\] at (-0.3) should be [0.7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [inherit\] to [2px\] at (-0.3) should be [12.4px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [unset\] to [2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (1.5) should be [151 152 153px 154px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [unset\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (1.5) should be [151 152 153px 154px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [inherit\] to [2px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from neutral to [2px\] at (0.6) should be [1.6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (0) should be [1 2 3px 4px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (1.5) should be [151 152 153px 154px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [0\] to [1\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (0.6) should be [61 62 63px 64px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [unset\] to [2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from neutral to [2px\] at (0.6) should be [1.6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0px\] to [5px\] at (1.5) should be [7.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [unset\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (1) should be [101 102 103px 104px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [1 2 3px 4px\] to [101 102 103px 104px\] at (0.3) should be [31 32 33px 34px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0px\] to [5px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from neutral to [2px\] at (0.6) should be [1.6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0px\] to [5px\] at (1) should be [5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-outset> from [inherit\] to [2px\] at (0.6) should be [5.2px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [initial\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [inherit\] to [2px\] at (1) should be [2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-outset> from [0\] to [1\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-outset> from [inherit\] to [2px\] at (0.6) should be [5.2px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-outset> from [0\] to [1\] at (-0.3) should be [0\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/border-image-slice-interpolation-stability.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/border-image-slice-interpolation-stability.html.ini
new file mode 100644
index 00000000000..ee608380711
--- /dev/null
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/border-image-slice-interpolation-stability.html.ini
@@ -0,0 +1,4 @@
+[border-image-slice-interpolation-stability.html]
+ [border-image-slice interpolation stability]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/border-image-slice-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/border-image-slice-interpolation.html.ini
index 1cc3b63b10e..656499aef00 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/border-image-slice-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/border-image-slice-interpolation.html.ini
@@ -1,5 +1,781 @@
[border-image-slice-interpolation.html]
- expected: ERROR
[border-image-slice interpolation]
expected: FAIL
+ [CSS Animations: property <border-image-slice> from [50%\] to [100\] at (1.5) should be [100\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (-0.5) should be [0% 0 0% 10 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (1) should be [40% 50% 60% 70%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% fill\] to [50%\] at (1) should be [50%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (0.6) should be [40% 50 60% 70\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (-0.5) should be [0% 0 0% 10 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [initial\] to [10%\] at (0.6) should be [46%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from neutral to [10%\] at (-0.3) should be [23%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [inherit\] to [10%\] at (0.3) should be [38%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [initial\] to [10%\] at (-0.3) should be [127%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [initial\] to [10%\] at (-0.3) should be [127%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [unset\] to [10%\] at (1) should be [10%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.5) should be [20 30 40 50 fill\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [unset\] to [10%\] at (0.6) should be [46%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.6) should be [24 34 44 54 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.3) should be [12 22 32 42 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (1) should be [40% 50% 60% 70%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [inherit\] to [10%\] at (-0.3) should be [62%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (0.5) should be [40 50 60% 70\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (-0.5) should be [0% 0 0% 10 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [initial\] to [10%\] at (-0.3) should be [127%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0%\] to [50%\] at (0.6) should be [30%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0) should be [0% 10% 20% 30%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (0.6) should be [40 50 60% 70\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from neutral to [10%\] at (0.3) should be [17%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (0.6) should be [100 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from neutral to [10%\] at (1.5) should be [5%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0) should be [0 10 20 30 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.5) should be [20% 30 40% 50 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50%\] to [100\] at (0.3) should be [50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50%\] to [100\] at (0.5) should be [100\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [initial\] to [10%\] at (0.3) should be [73%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [unset\] to [10%\] at (0.5) should be [55%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (0.6) should be [40% 50 60% 70\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (1.5) should be [40 50 60% 70\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (1) should be [40 50 60 70 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (-0.3) should be [0% 10 20% 30 fill\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [unset\] to [10%\] at (-0.3) should be [127%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [initial\] to [10%\] at (1) should be [10%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.3) should be [12% 22% 32% 42%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [initial\] to [10%\] at (0.5) should be [55%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from neutral to [10%\] at (0.6) should be [14%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [unset\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [unset\] to [10%\] at (0.6) should be [46%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% fill\] to [50%\] at (1.5) should be [50%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (0.5) should be [100 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.3) should be [12% 22 32% 42 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [unset\] to [10%\] at (-0.3) should be [127%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.5) should be [20 30 40 50 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [inherit\] to [10%\] at (-0.3) should be [62%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [inherit\] to [10%\] at (0.5) should be [30%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [inherit\] to [10%\] at (0.6) should be [26%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (0.5) should be [40% 50 60% 70\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (1) should be [40 50 60% 70\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from neutral to [10%\] at (0.3) should be [17%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from neutral to [10%\] at (0.5) should be [15%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% fill\] to [50%\] at (0.3) should be [0% fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (0.3) should be [0% 10 20% 30 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [inherit\] to [10%\] at (0) should be [50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.5) should be [20% 30 40% 50 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (1.5) should be [100 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [inherit\] to [10%\] at (1) should be [10%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from neutral to [10%\] at (0.5) should be [15%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from neutral to [10%\] at (0.5) should be [15%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0) should be [0 10 20 30 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [inherit\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [initial\] to [10%\] at (0.5) should be [55%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% fill\] to [50%\] at (-0.3) should be [0% fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [unset\] to [10%\] at (0.3) should be [73%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [initial\] to [10%\] at (0) should be [100%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0%\] to [50%\] at (0.5) should be [25%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50%\] to [100\] at (0.3) should be [50%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0%\] to [50%\] at (1.5) should be [75%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (1.5) should be [40% 50 60% 70\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% fill\] to [50%\] at (1) should be [50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50%\] to [100\] at (0.6) should be [100\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [inherit\] to [10%\] at (-0.3) should be [62%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (-0.5) should be [0% 0% 0% 10%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50%\] to [100\] at (0) should be [50%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [unset\] to [10%\] at (0.5) should be [55%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% fill\] to [50%\] at (1.5) should be [50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [unset\] to [10%\] at (0.3) should be [73%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.5) should be [20% 30% 40% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.6) should be [24 34 44 54 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from neutral to [10%\] at (0.5) should be [15%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (1) should be [40% 50 60% 70\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0%\] to [50%\] at (0.5) should be [25%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (1.5) should be [40% 50 60% 70\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (-0.3) should be [0% 10 20% 30 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [inherit\] to [10%\] at (0.5) should be [30%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.6) should be [24% 34 44% 54 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (1.5) should be [60 70 80 90 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (-0.3) should be [50% fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0%\] to [50%\] at (0.3) should be [15%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [inherit\] to [10%\] at (-0.3) should be [62%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0%\] to [50%\] at (1.5) should be [75%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [initial\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [initial\] to [10%\] at (0) should be [100%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% fill\] to [50%\] at (0.5) should be [50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (1.5) should be [60% 70% 80% 90%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% fill\] to [50%\] at (0.6) should be [50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from neutral to [10%\] at (1.5) should be [5%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0%\] to [50%\] at (0.3) should be [15%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50%\] to [100\] at (-0.3) should be [50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (0.3) should be [0% 10 20 30 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (-0.3) should be [50% fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (0) should be [0% 10 20 30 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (1) should be [40 50 60% 70\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [initial\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (1.5) should be [60 70 80 90 fill\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0%\] to [50%\] at (1.5) should be [75%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [unset\] to [10%\] at (-0.3) should be [127%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50%\] to [100\] at (0.5) should be [100\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [inherit\] to [10%\] at (0.3) should be [38%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.6) should be [24% 34 44% 54 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from neutral to [10%\] at (0) should be [20%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (1.5) should be [40 50 60% 70\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0%\] to [50%\] at (-0.3) should be [0%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0%\] to [50%\] at (1.5) should be [75%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (0.3) should be [0% 10 20 30 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% fill\] to [50%\] at (0.3) should be [0% fill\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [inherit\] to [10%\] at (0.3) should be [38%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [inherit\] to [10%\] at (0.6) should be [26%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [unset\] to [10%\] at (0) should be [100%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [unset\] to [10%\] at (0.5) should be [55%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [unset\] to [10%\] at (0.6) should be [46%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (0) should be [0% 10 20% 30 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (1.5) should be [60% 70 80% 90 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (0.3) should be [50% fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (1) should be [40% 50 60% 70\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50%\] to [100\] at (1) should be [100\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (0) should be [50% fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (0.3) should be [50% fill\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [initial\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [inherit\] to [10%\] at (0.6) should be [26%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [inherit\] to [10%\] at (0.3) should be [38%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (0) should be [0% 10 20% 30 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [initial\] to [10%\] at (0.3) should be [73%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.3) should be [12% 22 32% 42 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [initial\] to [10%\] at (0.5) should be [55%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from neutral to [10%\] at (1) should be [10%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0%\] to [50%\] at (0.6) should be [30%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (1) should be [100 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (-0.3) should be [0% 10 20 30 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [unset\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (0.6) should be [40 50 60% 70\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from neutral to [10%\] at (0.6) should be [14%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [inherit\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0%\] to [50%\] at (0.6) should be [30%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.6) should be [24% 34 44% 54 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (1.5) should be [60% 70% 80% 90%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.5) should be [20% 30% 40% 50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [unset\] to [10%\] at (-0.3) should be [127%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from neutral to [10%\] at (0.3) should be [17%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from neutral to [10%\] at (1) should be [10%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.5) should be [20% 30% 40% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.6) should be [24% 34% 44% 54%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [initial\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0%\] to [50%\] at (0.3) should be [15%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (1.5) should be [60% 70% 80% 90%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.5) should be [20 30 40 50 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% fill\] to [50%\] at (-0.3) should be [0% fill\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from neutral to [10%\] at (0.6) should be [14%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (0) should be [0% 10 20 30 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [inherit\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from neutral to [10%\] at (0.3) should be [17%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from neutral to [10%\] at (0.6) should be [14%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.5) should be [20% 30% 40% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.6) should be [24% 34% 44% 54%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [initial\] to [10%\] at (0.6) should be [46%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [unset\] to [10%\] at (0.3) should be [73%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (-0.5) should be [0% 0 0% 10 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from neutral to [10%\] at (-0.3) should be [23%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.3) should be [12 22 32 42 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.3) should be [12% 22 32% 42 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from neutral to [10%\] at (-0.3) should be [23%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (0.5) should be [40 50 60% 70\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (0) should be [50% fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0) should be [0% 10% 20% 30%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.3) should be [12% 22 32% 42 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [initial\] to [10%\] at (0.3) should be [73%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (-0.5) should be [0 0 0 10 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0) should be [0% 10 20% 30 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% fill\] to [50%\] at (0) should be [0% fill\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from neutral to [10%\] at (1.5) should be [5%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% fill\] to [50%\] at (0) should be [0% fill\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.3) should be [12 22 32 42 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0%\] to [50%\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [unset\] to [10%\] at (0.6) should be [46%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (1) should be [40% 50 60% 70 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [initial\] to [10%\] at (0.5) should be [55%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.5) should be [20 30 40 50 fill\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [initial\] to [10%\] at (0.6) should be [46%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0%\] to [50%\] at (0.5) should be [25%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (-0.5) should be [0% 0% 0% 10%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (1) should be [40 50 60 70 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.3) should be [12% 22% 32% 42%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from neutral to [10%\] at (-0.3) should be [23%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (0.5) should be [40% 50 60% 70\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (1.5) should be [60% 70 80% 90 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [initial\] to [10%\] at (0.3) should be [73%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70\] at (0.3) should be [0% 10 20% 30 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [unset\] to [10%\] at (0) should be [100%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [inherit\] to [10%\] at (0.5) should be [30%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [inherit\] to [10%\] at (0.6) should be [26%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [initial\] to [10%\] at (1) should be [10%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from neutral to [10%\] at (1.5) should be [5%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [unset\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.5) should be [20% 30 40% 50 fill\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (-0.5) should be [0% 0% 0% 10%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.6) should be [24% 34% 44% 54%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.6) should be [24% 34 44% 54 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [unset\] to [10%\] at (1) should be [10%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (1.5) should be [60% 70 80% 90 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (1.5) should be [100 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [initial\] to [10%\] at (-0.3) should be [127%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (1.5) should be [60 70 80 90 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [initial\] to [10%\] at (0.6) should be [46%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (1.5) should be [60% 70% 80% 90%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0%\] to [50%\] at (1) should be [50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (0.5) should be [100 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% fill\] to [50%\] at (0.5) should be [50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0%\] to [50%\] at (1) should be [50%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (-0.5) should be [0 0 0 10 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (-0.5) should be [0% 0% 0% 10%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [inherit\] to [10%\] at (0.5) should be [30%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10 20 30 fill\] to [40 50 60% 70\] at (-0.3) should be [0% 10 20 30 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50%\] to [100\] at (0.6) should be [100\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [inherit\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50%\] to [100\] at (1.5) should be [100\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [unset\] to [10%\] at (0.5) should be [55%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [unset\] to [10%\] at (0.3) should be [73%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.3) should be [12% 22% 32% 42%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.6) should be [24% 34% 44% 54%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50%\] to [100\] at (-0.3) should be [50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [50%\] to [100\] at (0) should be [50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0%\] to [50%\] at (0.5) should be [25%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [inherit\] to [10%\] at (1) should be [10%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (0.6) should be [100 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (1) should be [40% 50 60% 70 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0%\] to [50%\] at (0.3) should be [15%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.6) should be [24 34 44 54 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [inherit\] to [10%\] at (0) should be [50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0.5) should be [20% 30 40% 50 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50%\] to [100\] at (1) should be [100\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [50% fill\] to [100 fill\] at (1) should be [100 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0% 10% 20% 30%\] to [40% 50% 60% 70%\] at (0.3) should be [12% 22% 32% 42%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [unset\] to [10%\] at (1.5) should be [0%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (-0.5) should be [0 0 0 10 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.6) should be [24 34 44 54 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (0) should be [0% 10 20% 30 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (1.5) should be [60 70 80 90 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0%\] to [50%\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (0.3) should be [12 22 32 42 fill\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% 10 20% 30 fill\] to [40% 50 60% 70 fill\] at (1.5) should be [60% 70 80% 90 fill\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-slice> from [0%\] to [50%\] at (0.6) should be [30%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-slice> from [0 10 20 30 fill\] to [40 50 60 70 fill\] at (-0.5) should be [0 0 0 10 fill\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-slice> from [0%\] to [50%\] at (-0.3) should be [0%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-slice> from [0% fill\] to [50%\] at (0.6) should be [50%\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/border-image-source-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/border-image-source-interpolation.html.ini
index 246ab3baf12..e06c338651e 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/border-image-source-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/border-image-source-interpolation.html.ini
@@ -1,5 +1,550 @@
[border-image-source-interpolation.html]
- expected: ERROR
[border-image-source interpolation]
expected: FAIL
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (1) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (1) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (-0.3) should be [inherit\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.3) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (1) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (1) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (-0.3) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (-0.3) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.3) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.3) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.3) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (-0.3) should be [inherit\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (1) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0) should be [inherit\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (-0.3) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (1) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (-0.3) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.3) should be [inherit\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.3) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (-0.3) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (-0.3) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (1) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (1) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.3) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (-0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.3) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (1) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0) should be [inherit\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.3) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (1) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (0) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [url(../support/orange_color.png)\] at (0.3) should be [url(../support/aqua_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (1.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (-0.3) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (1.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [initial\] to [url(../support/orange_color.png)\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.6) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [url(../support/aqua_color.png)\] to [linear-gradient(45deg, blue, orange)\] at (1) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (0) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (1) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.3) should be [inherit\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (-0.3) should be [linear-gradient(-45deg, red, yellow)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [none\] to [url(../support/orange_color.png)\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [unset\] to [url(../support/orange_color.png)\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.5) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-source> from [inherit\] to [url(../support/orange_color.png)\] at (0.6) should be [url(../support/orange_color.png)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-source> from [linear-gradient(-45deg, red, yellow)\] to [linear-gradient(45deg, blue, orange)\] at (0.5) should be [linear-gradient(45deg, blue, orange)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/border-image-width-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/border-image-width-interpolation.html.ini
index 66174906c6a..ab26ad61824 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/border-image-width-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/border-image-width-interpolation.html.ini
@@ -1,5 +1,952 @@
[border-image-width-interpolation.html]
- expected: ERROR
[border-image-width interpolation]
expected: FAIL
+ [CSS Transitions: property <border-image-width> from [0\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (1.5) should be [115px 95% 75 55px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (0) should be [10px auto auto 20\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (1.5) should be [110px auto 120 auto\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20%\] at (1) should be [20%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0\] to [20\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [unset\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (0.5) should be [110px auto 120 auto\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20\] at (1.5) should be [20\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [initial\] to [20px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0px\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px\] to [20\] at (0.6) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (0.5) should be [110px auto 120 auto\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20\] at (0.5) should be [20\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20%\] at (0.3) should be [calc(7px + 6%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0px\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (0) should be [ 10px auto auto 20\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0px\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (0.3) should be [ 40px auto auto 50\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [inherit\] to [20px\] at (0.6) should be [52px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20px\] at (0.6) should be [calc(4% + 12px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px\] to [20%\] at (0.6) should be [calc(4px + 12%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (0) should be [10px 20% 30 40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px\] to [20%\] at (-0.3) should be [calc(13px + -6%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10%\] to [20px\] at (0.3) should be [calc(7% + 6px)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0px\] to [20px\] at (5) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (0.6) should be [ 70px auto auto 80\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (0) should be [10px auto auto 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [inherit\] to [20px\] at (0.3) should be [76px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20%\] at (1.5) should be [20%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [inherit\] to [20px\] at (5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px\] to [20\] at (1.5) should be [20\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20px\] at (0) should be [10%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0%\] to [20%\] at (1.5) should be [30%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20px\] at (1.5) should be [calc(-5% + 30px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0\] to [20\] at (10) should be [200\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0px\] to [20px\] at (10) should be [200px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0px\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20%\] at (1.5) should be [20%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from neutral to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0%\] to [20%\] at (1) should be [20%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0px\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0%\] to [20%\] at (0.6) should be [12%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0px\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0%\] to [20%\] at (1.5) should be [30%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (0.3) should be [31px 35% 39 43px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (10) should be [710px 520% 330 140px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0%\] to [20%\] at (-0.3) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20\] at (0.5) should be [20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px\] to [20%\] at (1.5) should be [calc(-5px + 30%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10%\] to [20px\] at (0.3) should be [calc(7% + 6px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (1) should be [80px 70% 60 50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (1.5) should be [115px 95% 75 55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10%\] to [20px\] at (1.5) should be [calc(-5% + 30px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0px\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20\] at (-0.3) should be [10%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px\] to [20%\] at (1.5) should be [calc(-5px + 30%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (-0.3) should be [ 0px auto auto 0\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (0.3) should be [10px auto auto 20\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from neutral to [20px\] at (10) should be [110px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0px\] to [20px\] at (10) should be [200px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20\] at (1.5) should be [20\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (1.5) should be [160px auto auto 170\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [initial\] to [20px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from neutral to [20px\] at (10) should be [110px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (1.5) should be [110px auto 120 auto\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20px\] at (-0.3) should be [10\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (-0.3) should be [0px 5% 21 37px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20%\] at (0.3) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (0.6) should be [ 70px auto auto 80\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20\] at (1.5) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0%\] to [20%\] at (0.3) should be [6%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0%\] to [20%\] at (0.6) should be [12%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [inherit\] to [20px\] at (10) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [unset\] to [20px\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10%\] to [20px\] at (-0.3) should be [calc(13% + -6px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [inherit\] to [20px\] at (10) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0px\] to [20px\] at (10) should be [200px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20%\] at (1) should be [20%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20%\] at (-0.3) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (-0.3) should be [ 0px auto auto 0\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0px\] to [20px\] at (10) should be [200px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (0.3) should be [10px auto auto 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [inherit\] to [20px\] at (0.6) should be [52px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [inherit\] to [20px\] at (0) should be [100px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (0.6) should be [52px 50% 48 46px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [inherit\] to [20px\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [unset\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10%\] to [20px\] at (0.6) should be [calc(4% + 12px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20\] at (-0.3) should be [10%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0%\] to [20%\] at (-0.3) should be [0%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0\] to [20\] at (10) should be [200\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px\] to [20%\] at (1.5) should be [calc(-5px + 30%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0\] to [20\] at (5) should be [100\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [initial\] to [20px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20px\] at (1.5) should be [calc(-5% + 30px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [unset\] to [20px\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [initial\] to [20px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0px\] to [20px\] at (5) should be [100px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [inherit\] to [20px\] at (0.3) should be [76px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [unset\] to [20px\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (1) should be [110px auto 120 auto\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10%\] to [20px\] at (0.6) should be [calc(4% + 12px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px\] to [20%\] at (0.6) should be [calc(4px + 12%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px\] to [20%\] at (-0.3) should be [calc(13px + -6%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0\] to [20\] at (5) should be [100\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (10) should be [710px 520% 330 140px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20px\] at (0.6) should be [calc(4% + 12px)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [inherit\] to [20px\] at (-0.3) should be [124px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20%\] at (0.5) should be [20%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20px\] at (1) should be [calc(0% + 20px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px\] to [20%\] at (0.3) should be [calc(7px + 6%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (1) should be [110px auto auto 120\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [inherit\] to [20px\] at (0.3) should be [76px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0px\] to [20px\] at (5) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0px\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [inherit\] to [20px\] at (-0.3) should be [124px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (0.6) should be [52px 50% 48 46px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [unset\] to [20px\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [initial\] to [20px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10%\] to [20px\] at (1.5) should be [calc(-5% + 30px)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0px\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20px\] at (-0.3) should be [calc(13% + -6px)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20\] at (-0.3) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [unset\] to [20px\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px\] to [20%\] at (0.6) should be [calc(4px + 12%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [inherit\] to [20px\] at (10) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20px\] at (0) should be [10\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20%\] at (0) should be [10\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0%\] to [20%\] at (1.5) should be [30%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0%\] to [20%\] at (1) should be [20%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0%\] to [20%\] at (10) should be [200%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px\] to [20%\] at (1) should be [20%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0px\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0%\] to [20%\] at (1.5) should be [30%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (5) should be [360px 270% 180 90px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (0.6) should be [52px 50% 48 46px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20\] at (0.6) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20px\] at (0) should be [10%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0%\] to [20%\] at (5) should be [100%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0%\] to [20%\] at (0.6) should be [12%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (1) should be [80px 70% 60 50px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0px\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (0.6) should be [110px auto 120 auto\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0\] to [20\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (-0.3) should be [0px 5% 21 37px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0\] to [20\] at (5) should be [100\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0%\] to [20%\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (5) should be [360px 270% 180 90px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0%\] to [20%\] at (10) should be [200%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (0.3) should be [31px 35% 39 43px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20%\] at (0.5) should be [20%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0\] to [20\] at (10) should be [200\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (0.6) should be [ 70px auto auto 80\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [inherit\] to [20px\] at (-0.3) should be [124px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [inherit\] to [20px\] at (0.3) should be [76px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [unset\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20px\] at (0.3) should be [calc(7% + 6px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from neutral to [20px\] at (5) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (0.3) should be [ 40px auto auto 50\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0px\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [inherit\] to [20px\] at (0) should be [100px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0%\] to [20%\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20\] at (0.5) should be [20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0\] to [20\] at (10) should be [200\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from neutral to [20px\] at (5) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (5) should be [360px 270% 180 90px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px\] to [20%\] at (-0.3) should be [calc(13px + -6%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20px\] at (-0.3) should be [calc(13% + -6px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [initial\] to [20px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0\] to [20\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20px\] at (0.3) should be [calc(7% + 6px)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (0.6) should be [110px auto 120 auto\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20\] at (0) should be [10%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (0.3) should be [31px 35% 39 43px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0%\] to [20%\] at (0.3) should be [6%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20\] at (0.6) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20%\] at (0.6) should be [20%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (0.3) should be [ 40px auto auto 50\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20%\] at (0) should be [10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (0.6) should be [52px 50% 48 46px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (1.5) should be [115px 95% 75 55px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from neutral to [20px\] at (10) should be [110px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [inherit\] to [20px\] at (5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [unset\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (-0.3) should be [0px 5% 21 37px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [inherit\] to [20px\] at (-0.3) should be [124px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20%\] at (0) should be [calc(0% + 10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (10) should be [710px 520% 330 140px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from neutral to [20px\] at (10) should be [110px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (1) should be [110px auto 120 auto\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20%\] at (0.6) should be [calc(4px + 12%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (1.5) should be [115px 95% 75 55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (0) should be [ 10px auto auto 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0px\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20\] at (0.3) should be [10%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10%\] to [20px\] at (-0.3) should be [calc(13% + -6px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (1) should be [110px auto auto 120\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [initial\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (1.5) should be [160px auto auto 170\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20%\] at (1.5) should be [calc(-5px + 30%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0px\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [initial\] to [20px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (0.3) should be [ 40px auto auto 50\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (1.5) should be [160px auto auto 170\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0%\] to [20%\] at (0.6) should be [12%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (-0.3) should be [ 0px auto auto 0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0%\] to [20%\] at (0.3) should be [6%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [unset\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (-0.3) should be [0px 5% 21 37px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px\] to [20%\] at (0) should be [calc(0% + 10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (-0.3) should be [10px auto auto 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (5) should be [360px 270% 180 90px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0px\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0%\] to [20%\] at (10) should be [200%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0%\] to [20%\] at (5) should be [100%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from neutral to [20px\] at (5) should be [60px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0%\] to [20%\] at (5) should be [100%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (0.3) should be [31px 35% 39 43px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [inherit\] to [20px\] at (5) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20px\] at (-0.3) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0%\] to [20%\] at (0.3) should be [6%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20px\] at (0.3) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [unset\] to [20px\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20px\] at (1) should be [calc(0% + 20px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0px\] to [20px\] at (5) should be [100px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto 120 auto\] at (-0.3) should be [10px auto auto 20\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from neutral to [20px\] at (5) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [inherit\] to [20px\] at (0.6) should be [52px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20\] at (0) should be [10%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [unset\] to [20px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20%\] at (-0.3) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10\] to [20%\] at (0.3) should be [10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px\] to [20%\] at (0.3) should be [calc(7px + 6%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0%\] to [20%\] at (5) should be [100%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0\] to [20\] at (5) should be [100\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (0) should be [10px 20% 30 40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20px\] at (0.3) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0px\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20%\] at (0.6) should be [20%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px\] to [20\] at (0.5) should be [20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [0px\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (0.6) should be [ 70px auto auto 80\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10%\] to [20\] at (0.6) should be [20\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20%\] at (-0.3) should be [calc(13px + -6%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [inherit\] to [20px\] at (5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [inherit\] to [20px\] at (0.6) should be [52px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (-0.3) should be [ 0px auto auto 0\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [initial\] to [20px\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0\] to [20\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px\] to [20%\] at (0.3) should be [calc(7px + 6%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [0px\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10px auto auto 20\] to [110px auto auto 120\] at (1.5) should be [160px auto auto 170\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [10px 20% 30 40px\] to [80px 70% 60 50px\] at (10) should be [710px 520% 330 140px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10\] to [20px\] at (0) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [inherit\] to [20px\] at (10) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20%\] at (1) should be [20%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-image-width> from [0%\] to [20%\] at (10) should be [200%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [10%\] to [20\] at (0.3) should be [10%\]]
+ expected: FAIL
+
+ [Web Animations: property <border-image-width> from [10px\] to [20\] at (0.3) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-image-width> from [0\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/border-radius-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/border-radius-interpolation.html.ini
index 5572f3b9754..fdf5b5f149a 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/border-radius-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/border-radius-interpolation.html.ini
@@ -1,5 +1,490 @@
[border-radius-interpolation.html]
- expected: ERROR
[border-radius interpolation]
expected: FAIL
+ [Web Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (-0.3) should be [23px 17px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [10px\] to [100%\] at (1) should be [100%\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [10px\] to [50px\] at (0.6) should be [34px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (-0.3) should be [17px 37px 57px 77px / 117px 137px 157px 177px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [10px\] to [50px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [10px\] to [50px\] at (0.3) should be [22px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [10px\] to [50px\] at (0.6) should be [34px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [50px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (1.5) should be [5px 35px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (0) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [unset\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [10px\] to [50px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [unset\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [50px\] at (1) should be [50px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [10px\] to [50px\] at (1.5) should be [70px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0.3) should be [23px 43px 63px 83px / 123px 143px 163px 183px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [10px\] to [100%\] at (0) should be [calc(10px + 0%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0.6) should be [26px 46px 66px 86px / 126px 146px 166px 186px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (1.5) should be [35px 55px 75px 95px / 135px 155px 175px 195px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (-0.3) should be [23px 17px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (-2) should be [40px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [unset\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [10px\] to [100%\] at (0.6) should be [calc(4px + 60%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (1) should be [30px 50px 70px 90px / 130px 150px 170px 190px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [10px\] to [100%\] at (0.6) should be [calc(4px + 60%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [50px\] at (0.6) should be [34px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [10px\] to [50px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [unset\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [unset\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0.6) should be [26px 46px 66px 86px / 126px 146px 166px 186px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [unset\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (-0.3) should be [17px 37px 57px 77px / 117px 137px 157px 177px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [10px\] to [100%\] at (-0.3) should be [calc(13px + -30%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (0.3) should be [17px 23px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [10px\] to [50px\] at (1) should be [50px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (1) should be [30px 50px 70px 90px / 130px 150px 170px 190px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [10px\] to [100%\] at (-0.3) should be [calc(13px + -30%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [50px\] at (1.5) should be [70px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [unset\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (0.6) should be [14px 26px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [10px\] to [50px\] at (0.6) should be [34px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (1) should be [10px 30px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [50px\] at (0.3) should be [22px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [unset\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [initial\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [unset\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [20px\] to [10px 30px\] at (-2) should be [40px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (-0.3) should be [17px 37px 57px 77px / 117px 137px 157px 177px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [unset\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0) should be [20px 40px 60px 80px / 120px 140px 160px 180px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0.3) should be [23px 43px 63px 83px / 123px 143px 163px 183px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [100%\] at (-0.3) should be [calc(13px + -30%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [unset\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from neutral to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [10px\] to [100%\] at (1.5) should be [calc(-5px + 150%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [100%\] at (0) should be [calc(10px + 0%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [initial\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0) should be [20px 40px 60px 80px / 120px 140px 160px 180px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [100%\] at (0.3) should be [calc(7px + 30%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [unset\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0.3) should be [23px 43px 63px 83px / 123px 143px 163px 183px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (1.5) should be [5px 35px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [20px\] to [10px 30px\] at (-2) should be [40px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [initial\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [10px\] to [100%\] at (1.5) should be [calc(-5px + 150%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (1) should be [30px 50px 70px 90px / 130px 150px 170px 190px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [20px\] to [10px 30px\] at (0.3) should be [17px 23px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [20px\] to [10px 30px\] at (1.5) should be [5px 35px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [10px\] to [50px\] at (1.5) should be [70px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [unset\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [10px\] to [100%\] at (0.3) should be [calc(7px + 30%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0.3) should be [23px 43px 63px 83px / 123px 143px 163px 183px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0.6) should be [26px 46px 66px 86px / 126px 146px 166px 186px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (1.5) should be [35px 55px 75px 95px / 135px 155px 175px 195px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (1.5) should be [35px 55px 75px 95px / 135px 155px 175px 195px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [10px\] to [100%\] at (-0.3) should be [calc(13px + -30%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (0.6) should be [14px 26px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0) should be [20px 40px 60px 80px / 120px 140px 160px 180px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (1.5) should be [35px 55px 75px 95px / 135px 155px 175px 195px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (-2) should be [40px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (1) should be [30px 50px 70px 90px / 130px 150px 170px 190px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0) should be [20px 40px 60px 80px / 120px 140px 160px 180px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [50px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (0.6) should be [26px 46px 66px 86px / 126px 146px 166px 186px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [10px\] to [50px\] at (1.5) should be [70px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [100%\] at (1) should be [100%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [10px\] to [50px\] at (0.3) should be [22px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-radius> from [20px 40px 60px 80px / 120px 140px 160px 180px\] to [30px 50px 70px 90px / 130px 150px 170px 190px\] at (-0.3) should be [17px 37px 57px 77px / 117px 137px 157px 177px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [initial\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [20px\] to [10px 30px\] at (0.6) should be [14px 26px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [20px\] to [10px 30px\] at (-0.3) should be [23px 17px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [20px\] to [10px 30px\] at (0.3) should be [17px 23px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [20px\] to [10px 30px\] at (-0.3) should be [23px 17px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [unset\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [10px\] to [50px\] at (0.3) should be [22px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [10px\] to [100%\] at (1.5) should be [calc(-5px + 150%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [unset\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [100%\] at (1.5) should be [calc(-5px + 150%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (1) should be [10px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [10px\] to [100%\] at (0.3) should be [calc(7px + 30%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [20px\] to [10px 30px\] at (1.5) should be [5px 35px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [10px\] to [100%\] at (0.6) should be [calc(4px + 60%)\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [20px\] to [10px 30px\] at (0.3) should be [17px 23px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [10px\] to [100%\] at (0.3) should be [calc(7px + 30%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [20px\] to [10px 30px\] at (0.6) should be [14px 26px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-left-radius> from [unset\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-left-radius> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-left-radius> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-left-radius> from [10px\] to [100%\] at (0.6) should be [calc(4px + 60%)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/border-width-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/border-width-interpolation.html.ini
index ba1236f53f7..1155976c43e 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/border-width-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/border-width-interpolation.html.ini
@@ -1,5 +1,646 @@
[border-width-interpolation.html]
- expected: ERROR
[border-width interpolation]
expected: FAIL
+ [CSS Animations: property <border-left-width> from [medium\] to [13px\] at (1) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-bottom-width> from [thick\] to [15px\] at (1) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-width> from [15px\] to [thick\] at (-0.3) should be [18px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [unset\] to [20px\] at (1.5) should be [28.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [0px\] to [10px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [unset\] to [20px\] at (0.3) should be [8.1px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0.3) should be [23px 43px 63px 83px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-width> from [15px\] to [thick\] at (-2) should be [35px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [medium\] to [13px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-bottom-width> from [thick\] to [15px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [initial\] to [20px\] at (0.6) should be [13.2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-width> from [15px\] to [thick\] at (-2) should be [35px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-width> from [15px\] to [thick\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [initial\] to [20px\] at (0.3) should be [8.1px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-right-width> from [thin\] to [11px\] at (0.6) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [0px\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0.6) should be [26px 46px 66px 86px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-width> from [15px\] to [thick\] at (0.6) should be [9px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-width> from [15px\] to [thick\] at (0.6) should be [9px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [medium\] to [13px\] at (-0.25) should be [0.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-right-width> from [thin\] to [11px\] at (0) should be [1px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-bottom-width> from [thick\] to [15px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [inherit\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [medium\] to [13px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [medium\] to [13px\] at (0.6) should be [9px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-bottom-width> from [thick\] to [15px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-right-width> from [thin\] to [11px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [medium\] to [13px\] at (-0.25) should be [0.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-bottom-width> from [thick\] to [15px\] at (1) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (1) should be [30px 50px 70px 90px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [medium\] to [13px\] at (1) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from neutral to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-right-width> from [thin\] to [11px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [unset\] to [20px\] at (0.3) should be [8.1px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [initial\] to [20px\] at (1.5) should be [28.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [0px\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [0px\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [medium\] to [13px\] at (1.5) should be [18px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-bottom-width> from [thick\] to [15px\] at (0.6) should be [11px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-width> from [15px\] to [thick\] at (-0.3) should be [18px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (1.5) should be [35px 55px 75px 95px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-right-width> from [thin\] to [11px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (1.5) should be [35px 55px 75px 95px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0.3) should be [23px 43px 63px 83px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [inherit\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-width> from [15px\] to [thick\] at (0.3) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-bottom-width> from [thick\] to [15px\] at (0) should be [5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (1) should be [30px 50px 70px 90px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-right-width> from [thin\] to [11px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [0px\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [initial\] to [20px\] at (1.5) should be [28.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-bottom-width> from [thick\] to [15px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [initial\] to [20px\] at (1.5) should be [28.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [0px\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-right-width> from [thin\] to [11px\] at (1.5) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [inherit\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-bottom-width> from [thick\] to [15px\] at (0.6) should be [11px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0.6) should be [26px 46px 66px 86px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0) should be [20px 40px 60px 80px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [unset\] to [20px\] at (1.5) should be [28.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-right-width> from [thin\] to [11px\] at (1.5) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [initial\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-right-width> from [thin\] to [11px\] at (0.3) should be [4px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-width> from [15px\] to [thick\] at (0.3) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-right-width> from [thin\] to [11px\] at (0.3) should be [4px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-right-width> from [thin\] to [11px\] at (0) should be [1px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-bottom-width> from [thick\] to [15px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [medium\] to [13px\] at (-0.25) should be [0.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-bottom-width> from [thick\] to [15px\] at (0) should be [5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-width> from [15px\] to [thick\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [initial\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [unset\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (1.5) should be [35px 55px 75px 95px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [medium\] to [13px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [initial\] to [20px\] at (0.3) should be [8.1px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [medium\] to [13px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [0px\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [medium\] to [13px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [unset\] to [20px\] at (0) should be [3px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0.3) should be [23px 43px 63px 83px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-bottom-width> from [thick\] to [15px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0.3) should be [23px 43px 63px 83px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [inherit\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-width> from [15px\] to [thick\] at (-2) should be [35px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-bottom-width> from [thick\] to [15px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-width> from [15px\] to [thick\] at (0.6) should be [9px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-width> from [15px\] to [thick\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [unset\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-width> from [15px\] to [thick\] at (0.3) should be [12px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-width> from [15px\] to [thick\] at (0) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [inherit\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [unset\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [0px\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [medium\] to [13px\] at (1.5) should be [18px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [medium\] to [13px\] at (1.5) should be [18px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-right-width> from [thin\] to [11px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-bottom-width> from [thick\] to [15px\] at (0.6) should be [11px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-bottom-width> from [thick\] to [15px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [unset\] to [20px\] at (0.6) should be [13.2px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [0px\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-right-width> from [thin\] to [11px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [medium\] to [13px\] at (0) should be [3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (-0.3) should be [17px 37px 57px 77px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-bottom-width> from [thick\] to [15px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [initial\] to [20px\] at (0) should be [3px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [inherit\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-bottom-width> from [thick\] to [15px\] at (-0.3) should be [2px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [unset\] to [20px\] at (1.5) should be [28.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [inherit\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0.6) should be [26px 46px 66px 86px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [unset\] to [20px\] at (0) should be [3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [inherit\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [medium\] to [13px\] at (0.6) should be [9px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [0px\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [initial\] to [20px\] at (0.3) should be [8.1px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (-0.3) should be [17px 37px 57px 77px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [unset\] to [20px\] at (0.6) should be [13.2px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-right-width> from [thin\] to [11px\] at (0.3) should be [4px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [medium\] to [13px\] at (0.6) should be [9px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [initial\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [inherit\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-right-width> from [thin\] to [11px\] at (0.6) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-top-width> from [15px\] to [thick\] at (1.5) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0) should be [20px 40px 60px 80px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-width> from [15px\] to [thick\] at (-2) should be [35px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-bottom-width> from [thick\] to [15px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [unset\] to [20px\] at (0.3) should be [8.1px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-bottom-width> from [thick\] to [15px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0) should be [20px 40px 60px 80px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [initial\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-width> from [15px\] to [thick\] at (0.6) should be [9px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0.6) should be [26px 46px 66px 86px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [initial\] to [20px\] at (0.6) should be [13.2px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (1) should be [30px 50px 70px 90px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (-0.3) should be [17px 37px 57px 77px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [medium\] to [13px\] at (-0.25) should be [0.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [inherit\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-width> from [15px\] to [thick\] at (-0.3) should be [18px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (1) should be [30px 50px 70px 90px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-right-width> from [thin\] to [11px\] at (1) should be [11px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-right-width> from [thin\] to [11px\] at (0.6) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [initial\] to [20px\] at (0) should be [3px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-bottom-width> from [thick\] to [15px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [medium\] to [13px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [inherit\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-bottom-width> from [thick\] to [15px\] at (-0.3) should be [2px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-width> from [15px\] to [thick\] at (0.3) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [initial\] to [20px\] at (0.3) should be [8.1px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [inherit\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [medium\] to [13px\] at (1.5) should be [18px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [0px\] to [10px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [inherit\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (1.5) should be [35px 55px 75px 95px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [unset\] to [20px\] at (0.6) should be [13.2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [initial\] to [20px\] at (1.5) should be [28.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-top-width> from [15px\] to [thick\] at (-0.3) should be [18px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [inherit\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-right-width> from [thin\] to [11px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [0px\] to [10px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [0px\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (0) should be [20px 40px 60px 80px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [medium\] to [13px\] at (0.6) should be [9px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [inherit\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [initial\] to [20px\] at (0.6) should be [13.2px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [medium\] to [13px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [unset\] to [20px\] at (1.5) should be [28.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [0px\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-left-width> from [0px\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-right-width> from [thin\] to [11px\] at (0.3) should be [4px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [inherit\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-width> from [15px\] to [thick\] at (0) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-right-width> from [thin\] to [11px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-right-width> from [thin\] to [11px\] at (0.6) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [initial\] to [20px\] at (0.6) should be [13.2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-bottom-width> from [thick\] to [15px\] at (-0.3) should be [2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-right-width> from [thin\] to [11px\] at (1) should be [11px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-width> from [20px 40px 60px 80px\] to [30px 50px 70px 90px\] at (-0.3) should be [17px 37px 57px 77px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-top-width> from [15px\] to [thick\] at (1) should be [5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [unset\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <border-right-width> from [thin\] to [11px\] at (1.5) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [medium\] to [13px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-bottom-width> from [thick\] to [15px\] at (-0.3) should be [2px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [0px\] to [10px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-top-width> from [15px\] to [thick\] at (1) should be [5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-right-width> from [thin\] to [11px\] at (1.5) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-bottom-width> from [thick\] to [15px\] at (0.6) should be [11px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [medium\] to [13px\] at (0) should be [3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <border-left-width> from [unset\] to [20px\] at (0.6) should be [13.2px\]]
+ expected: FAIL
+
+ [Web Animations: property <border-left-width> from [0px\] to [10px\] at (1) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <border-left-width> from [unset\] to [20px\] at (0.3) should be [8.1px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-backgrounds/animations/box-shadow-interpolation.html.ini b/tests/wpt/metadata/css/css-backgrounds/animations/box-shadow-interpolation.html.ini
index 2b13dd777be..d61b97406d9 100644
--- a/tests/wpt/metadata/css/css-backgrounds/animations/box-shadow-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-backgrounds/animations/box-shadow-interpolation.html.ini
@@ -1,5 +1,637 @@
[box-shadow-interpolation.html]
- expected: ERROR
[box-shadow-interpolation]
expected: FAIL
+ [CSS Transitions with transition: all: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (-0.3) should be [rgb(0, 0, 0) 7px 33px 7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (0.3) should be [rgb(0, 0, 0) 13px 27px 13px 27px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (1.5) should be [rgba(0, 0, 0, 0) -5px -10px 0px 0px, rgba(0, 0, 0, 0) -2.5px -15px 0px 0px inset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 25px 15px 25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 25px 15px 25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (0.3) should be [rgba(255, 255, 0, 0.353) 7px 14px 0px 0px, rgba(0, 128, 0, 0.7) 3.5px 21px 0px 0px inset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 30px 30px 30px 30px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (1) should be [rgb(0, 128, 0) -15px -10px 25px -4px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (1.5) should be [rgb(0, 192, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (0) should be [rgba(0, 0, 0, 0) 0px 0px 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px inset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (0.3) should be [rgb(0, 38, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (0.3) should be [rgba(255, 255, 0, 0.353) 7px 14px 0px 0px, rgba(0, 128, 0, 0.7) 3.5px 21px 0px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (0) should be [rgb(0, 0, 0) 10px 30px 10px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (1.5) should be [rgb(0, 192, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (0.6) should be [rgb(0, 0, 0) 16px 24px 16px 24px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (0.6) should be [rgba(0, 0, 0, 0.6) 12px 12px 12px 12px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px -6px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (0) should be [rgb(0, 0, 0) 15px 10px 5px 6px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (0.6) should be [rgba(0, 0, 0, 0.6) 12px 12px 12px 12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 15px 25px 15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (0.3) should be [rgb(0, 0, 0) 13px 27px 13px 27px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (0.6) should be [rgb(0, 0, 0) 16px 24px 16px 24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (1) should be [rgb(0, 0, 0) 20px 20px 20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (0) should be [rgba(0, 0, 0, 0) 0px 0px 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (0.3) should be [rgb(0, 38, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (0) should be [10px 20px yellow, 5px 10px green\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (-0.3) should be [rgba(255, 255, 0, 0.65) 13px 26px 0px 0px, rgb(0, 166, 0) 6.5px 39px 0px 0px inset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px -6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (0.6) should be [rgba(255, 255, 0, 0.2) 4px 8px 0px 0px, rgba(0, 128, 0, 0.4) 2px 12px 0px 0px inset\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (0) should be [rgb(0, 0, 0) 15px 10px 5px 6px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (0.3) should be [rgba(255, 255, 0, 0.353) 7px 14px 0px 0px, rgba(0, 128, 0, 0.7) 3.5px 21px 0px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (0.6) should be [rgba(255, 255, 0, 0.2) 4px 8px 0px 0px, rgba(0, 128, 0, 0.4) 2px 12px 0px 0px inset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (0) should be [rgba(255, 255, 0, 0.5) 10px 20px 0px 0px, rgb(0, 128, 0) 5px 30px 0px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (0.6) should be [rgba(0, 0, 0, 0.6) 12px 12px 12px 12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (0) should be [rgb(0, 0, 0) 30px 10px 30px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (0.3) should be [rgb(0, 38, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (0.3) should be [10px 20px yellow, 5px 10px green\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (0.3) should be [rgba(0, 0, 0, 0.3) 6px 6px 6px 6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgb(0, 0, 0) 33px 7px 33px 7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (0.6) should be [rgba(0, 0, 0, 0.6) 12px 12px 12px 12px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (1) should be [inset 5px 10px green, 15px 20px blue\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (0.6) should be [rgba(255, 255, 0, 0.2) 4px 8px 0px 0px, rgba(0, 128, 0, 0.4) 2px 12px 0px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px inset\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (0.6) should be [rgba(0, 0, 0, 0.6) 12px 12px 12px 12px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (0.3) should be [rgba(255, 255, 0, 0.353) 7px 14px 0px 0px, rgba(0, 128, 0, 0.7) 3.5px 21px 0px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (1.5) should be [rgba(0, 0, 0, 0) -5px -10px 0px 0px, rgba(0, 0, 0, 0) -2.5px -15px 0px 0px inset\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (-0.3) should be [rgba(255, 255, 0, 0.65) 13px 26px 0px 0px, rgb(0, 166, 0) 6.5px 39px 0px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgb(0, 0, 0) 33px 7px 33px 7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (0) should be [rgb(0, 0, 0) 15px 10px 5px 6px inset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (0) should be [rgb(0, 0, 0) 15px 10px 5px 6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (1) should be [rgb(0, 128, 0) -15px -10px 25px -4px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (0) should be [rgb(0, 0, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 30px 30px 30px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 30px 30px 30px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (1) should be [inset 5px 10px green, 15px 20px blue\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px inset\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (1) should be [rgb(0, 0, 0) 20px 20px 20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (-0.3) should be [rgba(255, 255, 0, 0.65) 13px 26px 0px 0px, rgb(0, 166, 0) 6.5px 39px 0px 0px inset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (0.3) should be [rgba(0, 0, 0, 0.3) 6px 6px 6px 6px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (0.6) should be [rgb(0, 77, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 15px 25px 15px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px inset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (0.6) should be [rgba(0, 0, 0, 0.6) 12px 12px 12px 12px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px -6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (0.6) should be [rgba(255, 255, 0, 0.2) 4px 8px 0px 0px, rgba(0, 128, 0, 0.4) 2px 12px 0px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (1) should be [rgb(0, 0, 0) 20px 20px 20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (1.5) should be [rgb(0, 192, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px inset\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (0) should be [rgb(0, 0, 0) 15px 10px 5px 6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (0.6) should be [inset 5px 10px green, 15px 20px blue\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (1) should be [rgb(0, 0, 0) 20px 20px 20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (0.6) should be [rgba(0, 0, 0, 0.6) 12px 12px 12px 12px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgb(0, 0, 0) 33px 7px 33px 7px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 30px 30px 30px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 30px 30px 30px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (-0.3) should be [rgb(0, 0, 0) 7px 33px 7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgb(0, 0, 0) 33px 7px 33px 7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (1) should be [rgb(255, 165, 0) -15px -10px 25px -4px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (0.6) should be [inset 5px 10px green, 15px 20px blue\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (0.6) should be [rgba(0, 0, 0, 0.6) 12px 12px 12px 12px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (0.6) should be [rgb(0, 77, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (1) should be [rgb(255, 165, 0) -15px -10px 25px -4px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px -6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (1.5) should be [rgb(0, 192, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (0.3) should be [rgb(0, 38, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (1) should be [rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (1) should be [rgb(0, 0, 0) 20px 20px 20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (0.6) should be [rgb(0, 0, 0) 16px 24px 16px 24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (0) should be [10px 20px yellow, 5px 10px green\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (0.6) should be [rgb(0, 77, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (0.6) should be [rgb(0, 77, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (0) should be [rgb(0, 0, 0) 15px 10px 5px 6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (0.3) should be [rgb(0, 0, 0) 27px 13px 27px 13px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (1.5) should be [inset 5px 10px green, 15px 20px blue\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (1.5) should be [rgb(0, 192, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px inset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (0.6) should be [rgb(0, 0, 0) 16px 24px 16px 24px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (1) should be [rgb(0, 128, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (-0.3) should be [10px 20px yellow, 5px 10px green\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (1.5) should be [rgba(0, 0, 0, 0) -5px -10px 0px 0px, rgba(0, 0, 0, 0) -2.5px -15px 0px 0px inset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (0.3) should be [rgba(0, 0, 0, 0.3) 6px 6px 6px 6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 25px 15px 25px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (0.5) should be [inset 5px 10px green, 15px 20px blue\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 15px 25px 15px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (-0.3) should be [rgba(255, 255, 0, 0.65) 13px 26px 0px 0px, rgb(0, 166, 0) 6.5px 39px 0px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px -6px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (1) should be [rgb(0, 0, 0) 20px 20px 20px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (1.5) should be [rgb(0, 192, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (0.3) should be [rgb(0, 0, 0) 27px 13px 27px 13px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (0.3) should be [rgb(0, 0, 0) 27px 13px 27px 13px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (0.6) should be [rgb(0, 0, 0) 24px 16px 24px 16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (-0.3) should be [rgb(0, 0, 0) 7px 33px 7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (0.3) should be [rgb(0, 0, 0) 13px 27px 13px 27px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (0.6) should be [rgb(0, 0, 0) 24px 16px 24px 16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (1) should be [rgb(255, 165, 0) -15px -10px 25px -4px inset\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (1) should be [rgb(0, 0, 0) 20px 20px 20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (0) should be [rgba(0, 0, 0, 0) 0px 0px 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (0) should be [rgb(0, 0, 0) 15px 10px 5px 6px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (0.3) should be [rgba(0, 0, 0, 0.3) 6px 6px 6px 6px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (1) should be [rgb(255, 165, 0) -15px -10px 25px -4px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px -6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px -6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (0) should be [rgb(0, 0, 0) 15px 10px 5px 6px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (-0.3) should be [rgb(0, 0, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 25px 15px 25px 15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 30px 30px 30px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px inset\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (0) should be [rgba(0, 0, 0, 0) 0px 0px 0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (0.3) should be [rgb(0, 38, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (0.3) should be [rgba(0, 0, 0, 0.3) 6px 6px 6px 6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (0.3) should be [rgb(0, 38, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (0.5) should be [inset 5px 10px green, 15px 20px blue\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (-0.3) should be [10px 20px yellow, 5px 10px green\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (0.6) should be [rgb(0, 77, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (0.3) should be [rgb(0, 38, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (0.3) should be [rgba(0, 0, 0, 0.3) 6px 6px 6px 6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px inset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 30px 30px 30px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (0.6) should be [rgb(0, 77, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (1) should be [rgb(255, 165, 0) -15px -10px 25px -4px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px inset\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (0.6) should be [rgb(0, 0, 0) 24px 16px 24px 16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (0) should be [rgb(0, 0, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (1) should be [rgb(0, 128, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (0.6) should be [rgb(0, 77, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px 3px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (1.5) should be [rgb(0, 192, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (1) should be [rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px inset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (0.3) should be [rgba(0, 0, 0, 0.3) 6px 6px 6px 6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 30px 30px 30px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (1.5) should be [rgba(0, 0, 0, 0) -5px -10px 0px 0px, rgba(0, 0, 0, 0) -2.5px -15px 0px 0px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [initial\] to [20px 20px 20px 20px black\] at (1) should be [rgb(0, 0, 0) 20px 20px 20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px rgba(255, 255, 0, 0.5), inset 5px 10em #008000\] to [none\] at (0) should be [rgba(255, 255, 0, 0.5) 10px 20px 0px 0px, rgb(0, 128, 0) 5px 30px 0px 0px inset\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (0.3) should be [rgb(0, 0, 0) 27px 13px 27px 13px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px inset\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px\] at (1.5) should be [rgb(0, 192, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (-0.3) should be [rgb(0, 0, 0) 7px 33px 7px 33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (0.3) should be [rgba(0, 0, 0, 0.3) 6px 6px 6px 6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (-0.3) should be [rgb(0, 0, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [unset\] to [20px 20px 20px 20px black\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px -6px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (1) should be [rgb(255, 165, 0) -15px -10px 25px -4px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px inset\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (0) should be [rgb(0, 0, 0) 30px 10px 30px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (0.3) should be [rgb(0, 38, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from neutral to [20px 20px 20px 20px black\] at (0.3) should be [rgb(0, 0, 0) 13px 27px 13px 27px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (0.6) should be [rgb(0, 0, 0) 24px 16px 24px 16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (1.5) should be [inset 5px 10px green, 15px 20px blue\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [inherit\] to [20px 20px 20px 20px black\] at (1.5) should be [rgb(0, 0, 0) 15px 25px 15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [black 15px 10px 5px 6px\] to [orange -15px -10px 25px -4px\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px -9px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <box-shadow> from [10px 10px 10px 10px black\] to [10px 10px 10px 10px currentColor\] at (0.6) should be [rgb(0, 77, 0) 10px 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <box-shadow> from [15px 10px 5px 6px black inset\] to [-15px -10px 25px -4px orange inset\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px 9px inset\]]
+ expected: FAIL
+
+ [CSS Animations: property <box-shadow> from [10px 20px yellow, 5px 10px green\] to [inset 5px 10px green, 15px 20px blue\] at (0.3) should be [10px 20px yellow, 5px 10px green\]]
+ expected: FAIL
+
+ [Web Animations: property <box-shadow> from [15px 10px 5px 6px black\] to [-15px -10px 25px -4px orange\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px 0px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-color/animation/color-interpolation.html.ini b/tests/wpt/metadata/css/css-color/animation/color-interpolation.html.ini
index 6aebd4bda19..4713c185673 100644
--- a/tests/wpt/metadata/css/css-color/animation/color-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-color/animation/color-interpolation.html.ini
@@ -1,5 +1,268 @@
[color-interpolation.html]
- expected: ERROR
[color interpolation]
expected: FAIL
+ [CSS Transitions with transition: all: property <color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [initial\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [black\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [black\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [black\] to [orange\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [black\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from [black\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [inherit\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [black\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [inherit\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [initial\] to [green\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from [initial\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from [inherit\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from neutral to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [initial\] to [green\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from neutral to [green\] at (-0.3) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [initial\] to [green\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [black\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from neutral to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [initial\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [unset\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [initial\] to [green\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [inherit\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [inherit\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [unset\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [black\] to [orange\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from neutral to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from neutral to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [black\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from neutral to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [inherit\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [inherit\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [black\] to [orange\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from neutral to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [black\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [black\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from neutral to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from neutral to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from [black\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from [inherit\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [initial\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from neutral to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [black\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [inherit\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [initial\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [inherit\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from neutral to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [black\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [inherit\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [inherit\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from [initial\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [black\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [initial\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [unset\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [initial\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from neutral to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from neutral to [green\] at (0) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [unset\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [black\] to [orange\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from [black\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [unset\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from neutral to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from neutral to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [inherit\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [inherit\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [unset\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [initial\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <color> from neutral to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [initial\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-color/animation/opacity-interpolation.html.ini b/tests/wpt/metadata/css/css-color/animation/opacity-interpolation.html.ini
index eb473ba082f..eeca99e7580 100644
--- a/tests/wpt/metadata/css/css-color/animation/opacity-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-color/animation/opacity-interpolation.html.ini
@@ -1,5 +1,283 @@
[opacity-interpolation.html]
- expected: ERROR
[opacity interpolation]
expected: FAIL
+ [Web Animations: property <opacity> from [0\] to [1\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from neutral to [0.2\] at (0.3) should be [0.13\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [inherit\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [unset\] to [0.2\] at (0.3) should be [0.76\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [initial\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [initial\] to [0.2\] at (0.6) should be [0.52\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [inherit\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [unset\] to [0.2\] at (0.3) should be [0.76\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from neutral to [0.2\] at (0.6) should be [0.16\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [inherit\] to [0.2\] at (0.3) should be [0.62\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [0\] to [1\] at (1.5) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [unset\] to [0.2\] at (1) should be [0.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from neutral to [0.2\] at (-0.3) should be [0.07\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [unset\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [unset\] to [0.2\] at (0.6) should be [0.52\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [initial\] to [0.2\] at (0.6) should be [0.52\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from neutral to [0.2\] at (1) should be [0.2\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [unset\] to [0.2\] at (0.3) should be [0.76\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from neutral to [0.2\] at (0.3) should be [0.13\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [initial\] to [0.2\] at (1) should be [0.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [0\] to [1\] at (1.5) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from neutral to [0.2\] at (0.3) should be [0.13\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [inherit\] to [0.2\] at (-0.3) should be [0.98\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [inherit\] to [0.2\] at (-0.3) should be [0.98\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [inherit\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [initial\] to [0.2\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [initial\] to [0.2\] at (0.6) should be [0.52\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [unset\] to [0.2\] at (0.6) should be [0.52\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [initial\] to [0.2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [initial\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [unset\] to [0.2\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from neutral to [0.2\] at (1.5) should be [0.25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [inherit\] to [0.2\] at (0.3) should be [0.62\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from neutral to [0.2\] at (-0.3) should be [0.07\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [unset\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [inherit\] to [0.2\] at (-0.3) should be [0.98\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [initial\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from neutral to [0.2\] at (1) should be [0.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from neutral to [0.2\] at (0.6) should be [0.16\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [inherit\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from neutral to [0.2\] at (0.6) should be [0.16\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [0\] to [1\] at (1.5) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [unset\] to [0.2\] at (1) should be [0.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [0\] to [1\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [unset\] to [0.2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [inherit\] to [0.2\] at (1) should be [0.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [0\] to [1\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from neutral to [0.2\] at (-0.3) should be [0.07\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [inherit\] to [0.2\] at (0.6) should be [0.44\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [initial\] to [0.2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [initial\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [initial\] to [0.2\] at (1) should be [0.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [0\] to [1\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [unset\] to [0.2\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [unset\] to [0.2\] at (0.3) should be [0.76\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [unset\] to [0.2\] at (0.6) should be [0.52\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from neutral to [0.2\] at (0.3) should be [0.13\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [0\] to [1\] at (1) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [unset\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [unset\] to [0.2\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [0\] to [1\] at (1.5) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from neutral to [0.2\] at (1.5) should be [0.25\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [0\] to [1\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [inherit\] to [0.2\] at (1) should be [0.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [unset\] to [0.2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [initial\] to [0.2\] at (0.3) should be [0.76\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [inherit\] to [0.2\] at (0.6) should be [0.44\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [unset\] to [0.2\] at (0.6) should be [0.52\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [inherit\] to [0.2\] at (0.6) should be [0.44\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from neutral to [0.2\] at (1.5) should be [0.25\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from neutral to [0.2\] at (0.6) should be [0.16\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [inherit\] to [0.2\] at (0) should be [0.8\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [inherit\] to [0.2\] at (0) should be [0.8\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from neutral to [0.2\] at (1.5) should be [0.25\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [inherit\] to [0.2\] at (0.3) should be [0.62\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from neutral to [0.2\] at (0) should be [0.1\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from neutral to [0.2\] at (-0.3) should be [0.07\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <opacity> from [inherit\] to [0.2\] at (0.6) should be [0.44\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [initial\] to [0.2\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <opacity> from [initial\] to [0.2\] at (0.3) should be [0.76\]]
+ expected: FAIL
+
+ [CSS Transitions: property <opacity> from [initial\] to [0.2\] at (0.3) should be [0.76\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [initial\] to [0.2\] at (0.3) should be [0.76\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [inherit\] to [0.2\] at (-0.3) should be [0.98\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [initial\] to [0.2\] at (0.6) should be [0.52\]]
+ expected: FAIL
+
+ [CSS Animations: property <opacity> from [inherit\] to [0.2\] at (0.3) should be [0.62\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-flexbox/animation/flex-basis-interpolation.html.ini b/tests/wpt/metadata/css/css-flexbox/animation/flex-basis-interpolation.html.ini
index 152e807d6df..a3311791e91 100644
--- a/tests/wpt/metadata/css/css-flexbox/animation/flex-basis-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-flexbox/animation/flex-basis-interpolation.html.ini
@@ -1,5 +1,313 @@
[flex-basis-interpolation.html]
- expected: ERROR
[flex-basis interpolation]
expected: FAIL
+ [Web Animations: property <flex-basis> from [inherit\] to [2%\] at (1.5) should be [1.5%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [unset\] to [2%\] at (0.6) should be [2%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from neutral to [2%\] at (-0.3) should be [0.7%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [inherit\] to [2%\] at (1) should be [2%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from neutral to [2%\] at (0.3) should be [1.3%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from [0px\] to [100px\] at (0.4) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from [inherit\] to [2%\] at (-0.3) should be [3.3%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from neutral to [2%\] at (0) should be [1%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from neutral to [2%\] at (1) should be [2%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [inherit\] to [2%\] at (0.3) should be [2.7%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [inherit\] to [2%\] at (1.5) should be [1.5%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0%\] to [100%\] at (-0.3) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [initial\] to [2%\] at (1) should be [2%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [inherit\] to [2%\] at (1) should be [2%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [unset\] to [2%\] at (0.5) should be [2%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [unset\] to [2%\] at (1.5) should be [2%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0%\] to [100%\] at (-0.3) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [initial\] to [2%\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from [inherit\] to [2%\] at (0.3) should be [2.7%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from [0%\] to [100%\] at (1.5) should be [150%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [inherit\] to [2%\] at (0) should be [3%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [initial\] to [2%\] at (0.5) should be [2%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from neutral to [2%\] at (0.3) should be [1.3%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from neutral to [2%\] at (-0.3) should be [0.7%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [initial\] to [2%\] at (0.6) should be [2%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [initial\] to [2%\] at (1.5) should be [2%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from neutral to [2%\] at (1.5) should be [2.5%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [initial\] to [2%\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from [inherit\] to [2%\] at (0.6) should be [2.4%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from [0px\] to [100px\] at (0.4) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from neutral to [2%\] at (0.3) should be [1.3%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from [inherit\] to [2%\] at (0.3) should be [2.7%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from neutral to [2%\] at (0.3) should be [1.3%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [unset\] to [2%\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from neutral to [2%\] at (0.6) should be [1.6%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from neutral to [2%\] at (1.5) should be [2.5%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [inherit\] to [2%\] at (-0.3) should be [3.3%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from neutral to [2%\] at (1.5) should be [2.5%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from neutral to [2%\] at (0.6) should be [1.6%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [initial\] to [2%\] at (0.5) should be [2%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [initial\] to [2%\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [initial\] to [2%\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from [inherit\] to [2%\] at (0.6) should be [2.4%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [unset\] to [2%\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from [0%\] to [100%\] at (0.6) should be [60%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from [0%\] to [100%\] at (1.5) should be [150%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [unset\] to [2%\] at (1.5) should be [2%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [unset\] to [2%\] at (0.5) should be [2%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0px\] to [100px\] at (0.4) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [unset\] to [2%\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0%\] to [100%\] at (0.4) should be [40%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [unset\] to [2%\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0%\] to [100%\] at (1) should be [100%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0%\] to [100%\] at (1.5) should be [150%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0%\] to [100%\] at (0.6) should be [60%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0%\] to [100%\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [unset\] to [2%\] at (0.6) should be [2%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0px\] to [100px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from [0%\] to [100%\] at (0.4) should be [40%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [initial\] to [2%\] at (1) should be [2%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from [0%\] to [100%\] at (0.4) should be [40%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0%\] to [100%\] at (0.6) should be [60%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [inherit\] to [2%\] at (0.6) should be [2.4%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [initial\] to [2%\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from [inherit\] to [2%\] at (1.5) should be [1.5%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from neutral to [2%\] at (0.6) should be [1.6%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [initial\] to [2%\] at (1.5) should be [2%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [unset\] to [2%\] at (1) should be [2%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0px\] to [100px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0%\] to [100%\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from neutral to [2%\] at (-0.3) should be [0.7%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from neutral to [2%\] at (1) should be [2%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [unset\] to [2%\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from neutral to [2%\] at (1.5) should be [2.5%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0%\] to [100%\] at (1.5) should be [150%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [inherit\] to [2%\] at (0.3) should be [2.7%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from [0%\] to [100%\] at (0.6) should be [60%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [unset\] to [2%\] at (1) should be [2%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [inherit\] to [2%\] at (0) should be [3%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-basis> from neutral to [2%\] at (0.6) should be [1.6%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0%\] to [100%\] at (0.4) should be [40%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0px\] to [100px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [inherit\] to [2%\] at (-0.3) should be [3.3%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from [inherit\] to [2%\] at (-0.3) should be [3.3%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0px\] to [100px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from neutral to [2%\] at (-0.3) should be [0.7%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [initial\] to [2%\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [unset\] to [2%\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [initial\] to [2%\] at (0.6) should be [2%\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [0px\] to [100px\] at (0.4) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-basis> from [inherit\] to [2%\] at (0.6) should be [2.4%\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-basis> from [0%\] to [100%\] at (1) should be [100%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-basis> from [inherit\] to [2%\] at (1.5) should be [1.5%\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-flexbox/animation/flex-grow-interpolation.html.ini b/tests/wpt/metadata/css/css-flexbox/animation/flex-grow-interpolation.html.ini
index 1e5d4fe74f8..1b531d6b31d 100644
--- a/tests/wpt/metadata/css/css-flexbox/animation/flex-grow-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-flexbox/animation/flex-grow-interpolation.html.ini
@@ -1,5 +1,355 @@
[flex-grow-interpolation.html]
- expected: ERROR
[flex-grow interpolation]
expected: FAIL
+ [CSS Animations: property <flex-grow> from [1\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from neutral to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [1\] to [2\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [unset\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [0\] to [1\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [unset\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [0\] to [1\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [initial\] to [2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from neutral to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [inherit\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [1\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [unset\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [unset\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [1\] to [2\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from neutral to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from neutral to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from neutral to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [1\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from neutral to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [1\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [unset\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [0\] to [1\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [initial\] to [2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [unset\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from neutral to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [1\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [1\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [0\] to [1\] at (1) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [1\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [0\] to [1\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [inherit\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [initial\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [unset\] to [2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [1\] to [2\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from neutral to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from neutral to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from neutral to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [1\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [initial\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [1\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [initial\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [unset\] to [2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from neutral to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [1\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [initial\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from neutral to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from neutral to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [1\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [1\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [initial\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [1\] to [2\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [0\] to [1\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [initial\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [unset\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from neutral to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [0\] to [1\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from neutral to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [initial\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [inherit\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [initial\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from neutral to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [unset\] to [2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [inherit\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [0\] to [1\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [initial\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [inherit\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [initial\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [initial\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [inherit\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [unset\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [unset\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [inherit\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [initial\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [1\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [unset\] to [2\] at (0.3) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [1\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [1\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [unset\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [unset\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [initial\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [unset\] to [2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [1\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [initial\] to [2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [1\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [0\] to [1\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from neutral to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-grow> from [0\] to [1\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [0\] to [1\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from neutral to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [1\] to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [initial\] to [2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [1\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from neutral to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [unset\] to [2\] at (1.5) should be [3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [unset\] to [2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [initial\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-grow> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-grow> from [inherit\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-grow> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-flexbox/animation/flex-shrink-interpolation.html.ini b/tests/wpt/metadata/css/css-flexbox/animation/flex-shrink-interpolation.html.ini
index e25706009be..d901dfb5e8b 100644
--- a/tests/wpt/metadata/css/css-flexbox/animation/flex-shrink-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-flexbox/animation/flex-shrink-interpolation.html.ini
@@ -1,5 +1,367 @@
[flex-shrink-interpolation.html]
- expected: ERROR
[flex-shrink interpolation]
expected: FAIL
+ [Web Animations: property <flex-shrink> from [initial\] to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from neutral to [2\] at (-0.3) should be [1.35\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [unset\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [initial\] to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [unset\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [inherit\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [initial\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from neutral to [2\] at (0.3) should be [1.65\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [1\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [0\] to [1\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [1\] to [2\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [inherit\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from neutral to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from neutral to [2\] at (0.6) should be [1.8\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [unset\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [1\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [unset\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from neutral to [2\] at (1.5) should be [2.25\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [unset\] to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [unset\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [1\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [initial\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [unset\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [unset\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from neutral to [2\] at (1.5) should be [2.25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from neutral to [2\] at (0.3) should be [1.65\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [1\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [inherit\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [1\] to [2\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [initial\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [0\] to [1\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [initial\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [unset\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from neutral to [2\] at (-0.3) should be [1.35\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [1\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [0\] to [1\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from neutral to [2\] at (0.6) should be [1.8\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [0\] to [1\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [1\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [1\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [0\] to [1\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [initial\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [initial\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [unset\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from neutral to [2\] at (-0.3) should be [1.35\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [unset\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [0\] to [1\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [initial\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [0\] to [1\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [1\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [unset\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [1\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [1\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [initial\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [1\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from neutral to [2\] at (0.3) should be [1.65\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [inherit\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [0\] to [1\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [initial\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [unset\] to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [1\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [unset\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [1\] to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from neutral to [2\] at (0.6) should be [1.8\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [initial\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [initial\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [initial\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [1\] to [2\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [1\] to [2\] at (-5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [1\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [initial\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [unset\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [initial\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from neutral to [2\] at (-0.3) should be [1.35\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [inherit\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from neutral to [2\] at (0) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [inherit\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [0\] to [1\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [unset\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [1\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [0\] to [1\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from neutral to [2\] at (1.5) should be [2.25\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [1\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [initial\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [1\] to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [unset\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from neutral to [2\] at (0.6) should be [1.8\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [0\] to [1\] at (0.6) should be [0.6\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [1\] to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from neutral to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [0\] to [1\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [unset\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from neutral to [2\] at (0.3) should be [1.65\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [0\] to [1\] at (0.3) should be [0.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <flex-shrink> from [initial\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [1\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [initial\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [1\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from neutral to [2\] at (1.5) should be [2.25\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [unset\] to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [Web Animations: property <flex-shrink> from [inherit\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [CSS Animations: property <flex-shrink> from [initial\] to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <flex-shrink> from [unset\] to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-flexbox/animation/order-interpolation.html.ini b/tests/wpt/metadata/css/css-flexbox/animation/order-interpolation.html.ini
index a7e52670667..8ddab1a1163 100644
--- a/tests/wpt/metadata/css/css-flexbox/animation/order-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-flexbox/animation/order-interpolation.html.ini
@@ -1,5 +1,430 @@
[order-interpolation.html]
- expected: ERROR
[order interpolation]
expected: FAIL
+ [CSS Transitions: property <order> from neutral to [20\] at (0.6) should be [16\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [initial\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [initial\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [unset\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [initial\] to [20\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [inherit\] to [20\] at (0.6) should be [24\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [2\] to [4\] at (-3) should be [-4\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [initial\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [inherit\] to [20\] at (-0.5) should be [35\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [10\] to [20\] at (0.3) should be [13\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [inherit\] to [20\] at (-3) should be [60\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from neutral to [20\] at (-3) should be [-20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from neutral to [20\] at (1.5) should be [25\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [initial\] to [20\] at (-3) should be [-60\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [2\] to [4\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [2\] to [4\] at (0.6) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [unset\] to [20\] at (-0.5) should be [-10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [10\] to [20\] at (-3) should be [-20\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [10\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [2\] to [4\] at (0.3) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [unset\] to [20\] at (-0.5) should be [-10\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [10\] to [20\] at (-0.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [10\] to [20\] at (1.5) should be [25\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [initial\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [unset\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [inherit\] to [20\] at (0) should be [30\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from neutral to [20\] at (0.3) should be [13\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from neutral to [20\] at (0.6) should be [16\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [unset\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [inherit\] to [20\] at (1.5) should be [15\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from neutral to [20\] at (0.3) should be [13\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from neutral to [20\] at (-0.5) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [unset\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from neutral to [20\] at (0.6) should be [16\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [10\] to [20\] at (0.6) should be [16\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [unset\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [inherit\] to [20\] at (0.6) should be [24\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [initial\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [2\] to [4\] at (1) should be [4\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [10\] to [20\] at (1.5) should be [25\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from neutral to [20\] at (1.5) should be [25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [initial\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [2\] to [4\] at (-0.5) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [10\] to [20\] at (1.5) should be [25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [inherit\] to [20\] at (-3) should be [60\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [10\] to [20\] at (1.5) should be [25\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from neutral to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [2\] to [4\] at (0) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [inherit\] to [20\] at (1.5) should be [15\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [10\] to [20\] at (0.3) should be [13\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [2\] to [4\] at (-0.5) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [unset\] to [20\] at (-3) should be [-60\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [initial\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [inherit\] to [20\] at (0.3) should be [27\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [10\] to [20\] at (0.6) should be [16\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from neutral to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [initial\] to [20\] at (-3) should be [-60\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [initial\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [inherit\] to [20\] at (0.3) should be [27\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [10\] to [20\] at (-3) should be [-20\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [initial\] to [20\] at (-3) should be [-60\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [unset\] to [20\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [initial\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [2\] to [4\] at (-3) should be [-4\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [inherit\] to [20\] at (-3) should be [60\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [2\] to [4\] at (-0.5) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [inherit\] to [20\] at (-0.5) should be [35\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [2\] to [4\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [initial\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [initial\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [2\] to [4\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from neutral to [20\] at (0.3) should be [13\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [unset\] to [20\] at (-0.5) should be [-10\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [10\] to [20\] at (0.3) should be [13\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [unset\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [unset\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [unset\] to [20\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [2\] to [4\] at (-0.5) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [2\] to [4\] at (0.6) should be [3\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [inherit\] to [20\] at (0) should be [30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [initial\] to [20\] at (-0.5) should be [-10\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from neutral to [20\] at (0) should be [10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [2\] to [4\] at (0.3) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [2\] to [4\] at (-3) should be [-4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from neutral to [20\] at (-3) should be [-20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [10\] to [20\] at (-0.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [inherit\] to [20\] at (-0.5) should be [35\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from neutral to [20\] at (0.6) should be [16\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from neutral to [20\] at (-0.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [inherit\] to [20\] at (0.3) should be [27\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from neutral to [20\] at (0.3) should be [13\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [10\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [2\] to [4\] at (0.3) should be [3\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [inherit\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [unset\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [initial\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [unset\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [2\] to [4\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from neutral to [20\] at (-3) should be [-20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [inherit\] to [20\] at (0.6) should be [24\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [10\] to [20\] at (0.3) should be [13\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [inherit\] to [20\] at (0.6) should be [24\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [initial\] to [20\] at (0.6) should be [12\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [10\] to [20\] at (-3) should be [-20\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [2\] to [4\] at (1) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [2\] to [4\] at (0) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [inherit\] to [20\] at (1.5) should be [15\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [10\] to [20\] at (-3) should be [-20\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [initial\] to [20\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [inherit\] to [20\] at (1.5) should be [15\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [2\] to [4\] at (0.6) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [inherit\] to [20\] at (-0.5) should be [35\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [unset\] to [20\] at (-3) should be [-60\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [initial\] to [20\] at (-0.5) should be [-10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from neutral to [20\] at (1.5) should be [25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [initial\] to [20\] at (-0.5) should be [-10\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [inherit\] to [20\] at (0.3) should be [27\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [initial\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from neutral to [20\] at (-3) should be [-20\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [2\] to [4\] at (0.6) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [unset\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [10\] to [20\] at (0.6) should be [16\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [2\] to [4\] at (0.3) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [10\] to [20\] at (-0.5) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from neutral to [20\] at (1.5) should be [25\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [inherit\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [unset\] to [20\] at (-3) should be [-60\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [inherit\] to [20\] at (-3) should be [60\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [2\] to [4\] at (-3) should be [-4\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [initial\] to [20\] at (-0.5) should be [-10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [10\] to [20\] at (0.6) should be [16\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [unset\] to [20\] at (0.3) should be [6\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from neutral to [20\] at (-0.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from neutral to [20\] at (-0.5) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [unset\] to [20\] at (-0.5) should be [-10\]]
+ expected: FAIL
+
+ [CSS Animations: property <order> from [unset\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <order> from [initial\] to [20\] at (-3) should be [-60\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [unset\] to [20\] at (1) should be [20\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [unset\] to [20\] at (1.5) should be [30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <order> from [unset\] to [20\] at (-3) should be [-60\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [10\] to [20\] at (0) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <order> from [10\] to [20\] at (-0.5) should be [5\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-fonts/animations/font-size-adjust-interpolation.html.ini b/tests/wpt/metadata/css/css-fonts/animations/font-size-adjust-interpolation.html.ini
index 123c6e59ade..ceb9684ecda 100644
--- a/tests/wpt/metadata/css/css-fonts/animations/font-size-adjust-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-fonts/animations/font-size-adjust-interpolation.html.ini
@@ -1,5 +1,592 @@
[font-size-adjust-interpolation.html]
- expected: ERROR
[font-size-adjust interpolation]
expected: FAIL
+ [Web Animations: property <font-size-adjust> from [none\] to [1.2\] at (0.5) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0\] to [1.2\] at (0.6) should be [0.72\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [none\] to [1.2\] at (1.5) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0.2\] to [1.2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [initial\] to [2\] at (0.3) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [initial\] to [2\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0\] to [1.2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [unset\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [initial\] to [2\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0.2\] to [1.2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0\] to [1.2\] at (0.3) should be [0.36\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0\] to [1.2\] at (0.3) should be [0.36\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0\] to [1.2\] at (0.6) should be [0.72\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (1.5) should be [1.7\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from neutral to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [none\] to [1.2\] at (-0.3) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [inherit\] to [2\] at (-2) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from neutral to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from neutral to [2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [unset\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [inherit\] to [2\] at (-2) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [none\] to [1.2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [initial\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [unset\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from neutral to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0\] to [1.2\] at (0.6) should be [0.72\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0\] to [1.2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [inherit\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0\] to [1.2\] at (0.3) should be [0.36\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0\] to [1.2\] at (0.3) should be [0.36\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [initial\] to [2\] at (1.5) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0.2\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [initial\] to [2\] at (0.5) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [unset\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [initial\] to [2\] at (0.5) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [none\] to [1.2\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0\] to [1.2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [initial\] to [2\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [none\] to [1.2\] at (0.5) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from neutral to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0.2\] to [1.2\] at (1.5) should be [1.7\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0\] to [1.2\] at (1.5) should be [1.8\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [initial\] to [2\] at (1.5) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [none\] to [1.2\] at (0.5) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [unset\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [unset\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [none\] to [1.2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from neutral to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [inherit\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [inherit\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from neutral to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from neutral to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0\] to [1.2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [none\] to [1.2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [none\] to [1.2\] at (1.5) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [inherit\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [unset\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [unset\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0.2\] to [1.2\] at (0.6) should be [0.8\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [unset\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [initial\] to [2\] at (0) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from neutral to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0\] to [1.2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [initial\] to [2\] at (0.3) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [inherit\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [none\] to [1.2\] at (0.6) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [none\] to [1.2\] at (1.5) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from neutral to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [unset\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [initial\] to [2\] at (-0.3) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [inherit\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [unset\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0.2\] to [1.2\] at (0.6) should be [0.8\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [none\] to [1.2\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from neutral to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [none\] to [1.2\] at (1.5) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0\] to [1.2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0\] to [1.2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [initial\] to [2\] at (0.6) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [initial\] to [2\] at (0.5) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [initial\] to [2\] at (1.5) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [none\] to [1.2\] at (0.3) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from neutral to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [inherit\] to [2\] at (-2) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from neutral to [2\] at (0.3) should be [1.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from neutral to [2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [none\] to [1.2\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [initial\] to [2\] at (1.5) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [none\] to [1.2\] at (-0.3) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0.2\] to [1.2\] at (1.5) should be [1.7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [unset\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [unset\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [unset\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [none\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [none\] to [1.2\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [unset\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [unset\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from neutral to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0\] to [1.2\] at (0.6) should be [0.72\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from neutral to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0\] to [1.2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [initial\] to [2\] at (0.6) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (0.6) should be [0.8\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from neutral to [2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [unset\] to [2\] at (-2) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0.2\] to [1.2\] at (0) should be [0.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [unset\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [none\] to [1.2\] at (0) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (1.5) should be [1.7\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [initial\] to [2\] at (0.5) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0\] to [1.2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from neutral to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (0) should be [0.2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from neutral to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (0.6) should be [0.8\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (0.3) should be [0.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [inherit\] to [2\] at (-2) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0.2\] to [1.2\] at (0.3) should be [0.5\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [initial\] to [2\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0\] to [1.2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0\] to [1.2\] at (1.5) should be [1.8\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [unset\] to [2\] at (-2) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [inherit\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from neutral to [2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [inherit\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0.2\] to [1.2\] at (0) should be [0.2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [unset\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [unset\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [unset\] to [2\] at (0) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [initial\] to [2\] at (0.6) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [unset\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [none\] to [1.2\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0.2\] to [1.2\] at (0.3) should be [0.5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [none\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from neutral to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [none\] to [1.2\] at (0.3) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from neutral to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [0.2\] to [1.2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from neutral to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (0) should be [0.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [unset\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0\] to [1.2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0\] to [1.2\] at (1.5) should be [1.8\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [none\] to [1.2\] at (0) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [none\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [none\] to [1.2\] at (0.5) should be [1.2\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from neutral to [2\] at (-2) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [none\] to [1.2\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [unset\] to [2\] at (0.3) should be [2.7\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [unset\] to [2\] at (-2) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [inherit\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [initial\] to [2\] at (-0.3) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [inherit\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [inherit\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [initial\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [none\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [initial\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [initial\] to [2\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [initial\] to [2\] at (0) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (0.3) should be [0.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from neutral to [2\] at (0.6) should be [1.6\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [inherit\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [initial\] to [2\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [unset\] to [2\] at (-2) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [inherit\] to [2\] at (-0.3) should be [3.3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [inherit\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [initial\] to [2\] at (0.6) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from [initial\] to [2\] at (1) should be [2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from neutral to [2\] at (1.5) should be [2.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from neutral to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0.2\] to [1.2\] at (1) should be [1.2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [0.2\] to [1.2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [unset\] to [2\] at (0.6) should be [2.4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size-adjust> from neutral to [2\] at (-0.3) should be [0.7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size-adjust> from [inherit\] to [2\] at (1.5) should be [1.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0\] to [1.2\] at (1.5) should be [1.8\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size-adjust> from [0\] to [1.2\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size-adjust> from [0.2\] to [1.2\] at (-0.3) should be [0\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-001.html.ini b/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-001.html.ini
index 3cc169ca314..05e643b6fd0 100644
--- a/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-001.html.ini
+++ b/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-001.html.ini
@@ -1,5 +1,358 @@
[font-size-interpolation-001.html]
- expected: ERROR
[font-size interpolation]
expected: FAIL
+ [Web Animations: property <font-size> from [initial\] to [20px\] at (-2) should be [8px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [4px\] to [14px\] at (0.6) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [4px\] to [14px\] at (0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (-2) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [4px\] to [14px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [4px\] to [14px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [4px\] to [14px\] at (1.5) should be [19px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [inherit\] to [20px\] at (-2) should be [50px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from neutral to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [initial\] to [20px\] at (0.3) should be [17.2px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [4px\] to [14px\] at (0) should be [4px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [4px\] to [14px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [4px\] to [14px\] at (0) should be [4px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [4px\] to [14px\] at (0.6) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [4px\] to [14px\] at (0.6) should be [10px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from neutral to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [initial\] to [20px\] at (-0.3) should be [14.8px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [unset\] to [20px\] at (-2) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [initial\] to [20px\] at (-2) should be [8px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [4px\] to [14px\] at (1.5) should be [19px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [initial\] to [20px\] at (0.6) should be [18.4px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [initial\] to [20px\] at (0.3) should be [17.2px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [initial\] to [20px\] at (1.5) should be [22px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [4px\] to [14px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [4px\] to [14px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [initial\] to [20px\] at (0.6) should be [18.4px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from neutral to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [initial\] to [20px\] at (0.6) should be [18.4px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [initial\] to [20px\] at (0.3) should be [17.2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [initial\] to [20px\] at (-0.3) should be [14.8px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [4px\] to [14px\] at (1) should be [14px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [initial\] to [20px\] at (1.5) should be [22px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [initial\] to [20px\] at (1.5) should be [22px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [4px\] to [14px\] at (0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [4px\] to [14px\] at (1.5) should be [19px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [4px\] to [14px\] at (1) should be [14px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [4px\] to [14px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [unset\] to [20px\] at (-2) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [initial\] to [20px\] at (0.6) should be [18.4px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [initial\] to [20px\] at (-2) should be [8px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from neutral to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [initial\] to [20px\] at (-2) should be [8px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [inherit\] to [20px\] at (-2) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [inherit\] to [20px\] at (-2) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [inherit\] to [20px\] at (-2) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [4px\] to [14px\] at (0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [initial\] to [20px\] at (0) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [initial\] to [20px\] at (0.3) should be [17.2px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [4px\] to [14px\] at (0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [initial\] to [20px\] at (-0.3) should be [14.8px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [initial\] to [20px\] at (-0.3) should be [14.8px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from neutral to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [initial\] to [20px\] at (1.5) should be [22px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [initial\] to [20px\] at (0) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [4px\] to [14px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [4px\] to [14px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (-2) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [4px\] to [14px\] at (1.5) should be [19px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-002.html.ini b/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-002.html.ini
index c430b0702af..16058b2082a 100644
--- a/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-002.html.ini
+++ b/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-002.html.ini
@@ -1,5 +1,73 @@
[font-size-interpolation-002.html]
- expected: ERROR
[font-size interpolation]
expected: FAIL
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [unset\] to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [unset\] to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [unset\] to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [unset\] to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [unset\] to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [unset\] to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [unset\] to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [unset\] to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [unset\] to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [unset\] to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [unset\] to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-003.html.ini b/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-003.html.ini
index 41cc7a482cb..65a324053ac 100644
--- a/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-003.html.ini
+++ b/tests/wpt/metadata/css/css-fonts/animations/font-size-interpolation-003.html.ini
@@ -1,5 +1,73 @@
[font-size-interpolation-003.html]
- expected: ERROR
[font-size interpolation with zoom]
expected: FAIL
+ [Web Animations: property <font-size> from [10px\] to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [10px\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [10px\] to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [10px\] to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [10px\] to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [10px\] to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [10px\] to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [10px\] to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [10px\] to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [10px\] to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [10px\] to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [10px\] to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [10px\] to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [10px\] to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [10px\] to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [10px\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [10px\] to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [10px\] to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-size> from [10px\] to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [10px\] to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-size> from [10px\] to [20px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <font-size> from [10px\] to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-size> from [10px\] to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-fonts/animations/font-variation-settings-interpolation.html.ini b/tests/wpt/metadata/css/css-fonts/animations/font-variation-settings-interpolation.html.ini
index e8f6869ab22..5dcbb2558f6 100644
--- a/tests/wpt/metadata/css/css-fonts/animations/font-variation-settings-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-fonts/animations/font-variation-settings-interpolation.html.ini
@@ -1,5 +1,868 @@
[font-variation-settings-interpolation.html]
- expected: ERROR
[font-variation-settings interpolation]
expected: FAIL
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.7) should be ['aaaa' 7, 'bbbb' 17, 'cccc' 27\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.6) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [initial\] to ['test' 50\] at (1) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to [normal\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (-0.5) should be ['aaaa' -15, 'bbbb' 5, 'cccc' 25\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (1) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (1.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [inherit\] to ['test' 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1.5) should be ['aaaa' 15, 'bbbb' 25, 'cccc' 35\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from neutral to ["test" 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [unset\] to ['test' 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from neutral to ["test" 20\] at (0) should be ['test' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1.5) should be ['aaaa' 15, 'bbbb' 25, 'cccc' 35\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.3) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.3) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (-0.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1.5) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from neutral to ["test" 20\] at (-0.5) should be ['test' 5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.5) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.6) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (0.3) should be ['test' 27\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0.3) should be ['test' 27\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (-0.5) should be ['aaaa' -5, 'bbbb' 5, 'cccc' 15\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0.7) should be ['aaaa' 21, 'bbbb' 17, 'cccc' 13\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from neutral to ["test" 20\] at (1.5) should be ['test' 25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.5) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (1.5) should be ['aaaa' 45, 'bbbb' 25, 'cccc' 5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [unset\] to ['test' 20\] at (0.3) should be ['test' 27\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0) should be ['test' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [inherit\] to ['test' 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.3) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1.5) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0.7) should be ['test' 23\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.6) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [initial\] to ['test' 50\] at (1.5) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (-0.3) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (1.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1.5) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.5) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (-0.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.7) should be ['aaaa' 7, 'bbbb' 17, 'cccc' 27\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0.7) should be ['test' 23\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.3) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.6) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (-0.3) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (1) should be ['aaaa' 30, 'bbbb' 20, 'cccc' 10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [initial\] to ['test' 50\] at (0) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [inherit\] to ['test' 20\] at (1.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (1.5) should be ['aaaa' 45, 'bbbb' 25, 'cccc' 5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0.7) should be ['test' 27\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (0) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.6) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (1.5) should be ['aaaa' 45, 'bbbb' 25, 'cccc' 5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [initial\] to ['test' 50\] at (-0.3) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [inherit\] to ['test' 20\] at (1.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (1.5) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (-0.3) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (1) should be ['aaaa' 30, 'bbbb' 20, 'cccc' 10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0.7) should be ['test' 23\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.5) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (1.5) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.5) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.3) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [unset\] to ['test' 20\] at (0.3) should be ['test' 27\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.3) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to [normal\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.5) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from neutral to ["test" 20\] at (-0.5) should be ['test' 5\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from neutral to ["test" 20\] at (-0.5) should be ['test' 5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [unset\] to ['test' 20\] at (1.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (1) should be ['test' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0) should be ['test' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (-0.5) should be ['aaaa' -15, 'bbbb' 5, 'cccc' 25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (1) should be ['test' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0.3) should be ['aaaa' 9, 'bbbb' 13, 'cccc' 17\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [initial\] to ['test' 50\] at (1) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (-0.5) should be ['aaaa' -5, 'bbbb' 5, 'cccc' 15\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (-0.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from neutral to ["test" 20\] at (0.3) should be ['test' 13\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (1) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from neutral to ["test" 20\] at (0.3) should be ['test' 13\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from neutral to ["test" 20\] at (1.5) should be ['test' 25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from neutral to ["test" 20\] at (0.7) should be ['test' 17\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from neutral to ["test" 20\] at (0) should be ['test' 10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from neutral to ["test" 20\] at (0.7) should be ['test' 17\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0.3) should be ['aaaa' 9, 'bbbb' 13, 'cccc' 17\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 30, 'bbbb' 20\] to ['aaaa' 20, 'bbbb' 30\] at (3.40282e+38) should be ['aaaa' -3.40282e+38, 'bbbb' 3.40282e+38\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.3) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.5) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from neutral to ["test" 20\] at (0) should be ['test' 10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from neutral to ["test" 20\] at (0.3) should be ['test' 13\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.6) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (1) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (1) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [unset\] to ['test' 20\] at (-0.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (-0.3) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [initial\] to ['test' 50\] at (1.5) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0) should be ['test' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.3) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.5) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.3) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.5) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from neutral to ["test" 20\] at (0.7) should be ['test' 17\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.5) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (-0.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (1) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (1.5) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (-0.3) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 30, 'bbbb' 20\] to ['aaaa' 20, 'bbbb' 30\] at (3.40282e+38) should be ['aaaa' -3.40282e+38, 'bbbb' 3.40282e+38\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (1.5) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.7) should be ['aaaa' 7, 'bbbb' 17, 'cccc' 27\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from neutral to ["test" 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (-0.3) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0.7) should be ['aaaa' 21, 'bbbb' 17, 'cccc' 13\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from neutral to ["test" 20\] at (1.5) should be ['test' 25\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (1.5) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (1) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.3) should be ['test' 20\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (-0.3) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1.5) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (0.3) should be ['test' 27\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (1) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0) should be ['test' 20\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (1.5) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.6) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from neutral to ["test" 20\] at (0.7) should be ['test' 17\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.6) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [unset\] to ['test' 20\] at (1.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0.7) should be ['test' 27\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0.7) should be ['test' 27\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (-0.5) should be ['aaaa' -15, 'bbbb' 5, 'cccc' 25\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (1.5) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0.7) should be ['test' 23\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0) should be ['test' 20\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (0) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0.3) should be ['test' 23\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (1.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [unset\] to ['test' 20\] at (-0.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from neutral to ["test" 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (1) should be ['aaaa' 30, 'bbbb' 20, 'cccc' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (-0.3) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 30, 'bbbb' 20\] to ['aaaa' 20, 'bbbb' 30\] at (3.40282e+38) should be ['aaaa' -3.40282e+38, 'bbbb' 3.40282e+38\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.3) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.3) should be ['aaaa' 3, 'bbbb' 13, 'cccc' 23\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1.5) should be ['aaaa' 15, 'bbbb' 25, 'cccc' 35\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [initial\] to ['test' 50\] at (0) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [initial\] to ['test' 50\] at (-0.3) should be ['test' 50\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0.3) should be ['test' 23\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [unset\] to ['test' 20\] at (0) should be ['test' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to [normal\] at (-0.3) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (-0.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.5) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0.7) should be ['test' 27\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (0.7) should be ['test' 23\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from neutral to ["test" 20\] at (-0.5) should be ['test' 5\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 30, 'bbbb' 20\] to ['aaaa' 20, 'bbbb' 30\] at (3.40282e+38) should be ['aaaa' -3.40282e+38, 'bbbb' 3.40282e+38\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0.3) should be ['test' 27\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0.3) should be ['test' 27\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (1.5) should be ['aaaa' 45, 'bbbb' 25, 'cccc' 5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0) should be ['test' 20\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (1.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (1) should be ['test' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.5) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (0) should be ['test' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (1.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (1) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.6) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (-0.3) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from neutral to ["test" 20\] at (0.3) should be ['test' 13\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.3) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (-0.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.6) should be ['test' 50\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (1) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0.3) should be ['test' 27\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [unset\] to ['test' 20\] at (0.7) should be ['test' 23\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.5) should be ['test' 50\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (1) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.6) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.6) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.3) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (1.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from neutral to ["test" 20\] at (1.5) should be ['test' 25\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (-0.5) should be ['aaaa' -15, 'bbbb' 5, 'cccc' 25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [inherit\] to ['test' 20\] at (-0.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (-0.5) should be ['aaaa' -5, 'bbbb' 5, 'cccc' 15\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (1.5) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (-0.3) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (-0.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (-0.3) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0.3) should be ['test' 23\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.3) should be ['aaaa' 3, 'bbbb' 13, 'cccc' 23\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [unset\] to ['test' 20\] at (0) should be ['test' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.3) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [inherit\] to ['test' 20\] at (-0.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [inherit\] to ['test' 20\] at (0) should be ['test' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (-0.3) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0.7) should be ['aaaa' 21, 'bbbb' 17, 'cccc' 13\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1.5) should be ['aaaa' 15, 'bbbb' 25, 'cccc' 35\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [unset\] to ['test' 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0.3) should be ['aaaa' 9, 'bbbb' 13, 'cccc' 17\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0.3) should be ['aaaa' 9, 'bbbb' 13, 'cccc' 17\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.3) should be ['aaaa' 3, 'bbbb' 13, 'cccc' 23\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from neutral to ["test" 20\] at (0) should be ['test' 10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.7) should be ['aaaa' 7, 'bbbb' 17, 'cccc' 27\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.5) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (0.3) should be ['test' 23\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0.7) should be ['aaaa' 21, 'bbbb' 17, 'cccc' 13\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.5) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (-0.3) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.6) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.6) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (-0.5) should be ['test' 15\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.3) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.3) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.5) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (0.7) should be ['test' 23\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (0.3) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (1.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (1) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (1) should be ['aaaa' 30, 'bbbb' 20, 'cccc' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from neutral to ["test" 20\] at (1) should be ['test' 20\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['dddd' 10, 'eeee' 20, 'ffff' 30\] at (-0.3) should be ['dddd' 10, 'eeee' 20, 'ffff' 30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.6) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['cccc' 10, 'bbbb' 20, 'aaaa' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0.3) should be ['aaaa' 3, 'bbbb' 13, 'cccc' 23\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from [unset\] to ['test' 20\] at (0.7) should be ['test' 23\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [unset\] to ['test' 20\] at (0) should be ['test' 30\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.6) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from [initial\] to ['test' 50\] at (0.5) should be ['test' 50\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from [initial\] to ['test' 50\] at (1.5) should be ['test' 50\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (1.5) should be ['test' 35\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to [normal\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [CSS Animations: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (-0.5) should be ['aaaa' -5, 'bbbb' 5, 'cccc' 15\]]
+ expected: FAIL
+
+ [Web Animations: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (0.6) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (1) should be ['aaaa' 10, 'bbbb' 20, 'cccc' 30\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] to ['aaaa' 0, 'bbbb' 10\] at (1.5) should be ['aaaa' 0, 'bbbb' 10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to [normal\] at (1.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions: property <font-variation-settings> from ['test' 20\] to [normal\] at (0.5) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['aaaa' 0, 'bbbb' 10, 'cccc' 20\] to ['aaaa' 10, 'bbbb' 20, 'cccc' 30\] at (0) should be ['aaaa' 0, 'bbbb' 10, 'cccc' 20\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <font-variation-settings> from ['test' 20\] to ['test' 30\] at (1) should be ['test' 30\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-fonts/standard-font-family-19.html.ini b/tests/wpt/metadata/css/css-fonts/standard-font-family-19.html.ini
new file mode 100644
index 00000000000..0a8511c11ed
--- /dev/null
+++ b/tests/wpt/metadata/css/css-fonts/standard-font-family-19.html.ini
@@ -0,0 +1,2 @@
+[standard-font-family-19.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-fonts/standard-font-family-20.html.ini b/tests/wpt/metadata/css/css-fonts/standard-font-family-20.html.ini
new file mode 100644
index 00000000000..03ea791f2a8
--- /dev/null
+++ b/tests/wpt/metadata/css/css-fonts/standard-font-family-20.html.ini
@@ -0,0 +1,2 @@
+[standard-font-family-20.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-images/animations/object-position-interpolation.html.ini b/tests/wpt/metadata/css/css-images/animations/object-position-interpolation.html.ini
index c0c7c0bf2f2..21f1c21b7a0 100644
--- a/tests/wpt/metadata/css/css-images/animations/object-position-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-images/animations/object-position-interpolation.html.ini
@@ -1,5 +1,640 @@
[object-position-interpolation.html]
- expected: ERROR
[object-position-interpolation]
expected: FAIL
+ [Web Animations: property <object-position> from [100px 200px\] to [0px 0px\] at (0.5) should be [50px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 100%\] to [50px 100px\] at (0.5) should be [calc(25% + 25px) calc(50% + 50px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (1) should be [100% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [initial\] to [20px 20px\] at (1) should be [calc(20px + 0%) calc(20px + 0%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [unset\] to [20px 20px\] at (0.5) should be [calc(10px + 25%) calc(10px + 25%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [inherit\] to [20px 20px\] at (0) should be [30px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [top right\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [100px 200px\] to [0px 0px\] at (0.5) should be [50px 100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from neutral to [20px 20px\] at (0) should be [10px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 100%\] to [50px 100px\] at (0.5) should be [calc(25% + 25px) calc(50% + 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 50%\] to [100% 100%\] at (-0.3) should be [35% 35%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 50%\] to [100% 100%\] at (1.5) should be [125% 125%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [initial\] to [20px 20px\] at (1) should be [calc(20px + 0%) calc(20px + 0%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (-0.5) should be [25% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 100%\] to [50px 100px\] at (0) should be [50% 100%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [100px 200px\] to [0px 0px\] at (0.5) should be [50px 100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [top right\] at (1) should be [100% 0%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [unset\] to [20px 20px\] at (1) should be [calc(20px + 0%) calc(20px + 0%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 100%\] to [50px 100px\] at (0) should be [50% 100%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 100%\] to [50px 100px\] at (0) should be [50% 100%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 100%\] to [0px 0px\] at (1) should be [0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 100%\] to [0px 0px\] at (-0.3) should be [65% 130%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 100%\] to [50px 100px\] at (-0.3) should be [calc(65% + -15px) calc(130% + -30px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 100%\] to [0px 0px\] at (0.5) should be [25% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.5) should be [75% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [initial\] to [20px 20px\] at (1) should be [calc(20px + 0%) calc(20px + 0%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 100%\] to [0px 0px\] at (0) should be [50% 100%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 50%\] to [100% 100%\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [100px 200px\] to [0px 0px\] at (1.5) should be [-50px -100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [top right\] at (1.5) should be [125% -25%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 50%\] to [100% 100%\] at (0.5) should be [75% 75%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 100%\] to [50px 100px\] at (1.5) should be [calc(-25% + 75px) calc(-50% + 150px)\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.3) should be [65% 50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 100%\] to [0px 0px\] at (1) should be [0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 100%\] to [50px 100px\] at (-0.3) should be [calc(65% + -15px) calc(130% + -30px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [100px 200px\] to [0px 0px\] at (1.5) should be [-50px -100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [100px 200px\] to [0px 0px\] at (-0.3) should be [130px 260px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [initial\] to [20px 20px\] at (1.5) should be [calc(30px + -25%) calc(30px + -25%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 100%\] to [50px 100px\] at (1) should be [calc(0% + 50px) calc(0% + 100px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [initial\] to [20px 20px\] at (0.5) should be [calc(10px + 25%) calc(10px + 25%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 100%\] to [50px 100px\] at (1.5) should be [calc(-25% + 75px) calc(-50% + 150px)\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.9) should be [95% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 100%\] to [0px 0px\] at (1) should be [0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 100%\] to [50px 100px\] at (0) should be [50% 100%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 50%\] to [100% 100%\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from neutral to [20px 20px\] at (0.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 100%\] to [0px 0px\] at (0.5) should be [25% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [inherit\] to [20px 20px\] at (0.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [initial\] to [20px 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [initial\] to [20px 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [inherit\] to [20px 20px\] at (0) should be [30px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [unset\] to [20px 20px\] at (1.5) should be [calc(30px + -25%) calc(30px + -25%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [unset\] to [20px 20px\] at (0.5) should be [calc(10px + 25%) calc(10px + 25%)\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 100%\] to [50px 100px\] at (1) should be [calc(0% + 50px) calc(0% + 100px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [inherit\] to [20px 20px\] at (0.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [100px 200px\] to [0px 0px\] at (1) should be [0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from neutral to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [unset\] to [20px 20px\] at (1.5) should be [calc(30px + -25%) calc(30px + -25%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 50%\] to [100% 100%\] at (1.5) should be [125% 125%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [unset\] to [20px 20px\] at (1) should be [calc(20px + 0%) calc(20px + 0%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [initial\] to [20px 20px\] at (1.5) should be [calc(30px + -25%) calc(30px + -25%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.5) should be [75% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (1.5) should be [125% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [100px 200px\] to [0px 0px\] at (0) should be [100px 200px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 50%\] to [100% 100%\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [right 0% bottom 50%\] at (1) should be [100% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [top right\] at (1.5) should be [125% -25%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [top right\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [unset\] to [20px 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 50%\] to [100% 100%\] at (0.5) should be [75% 75%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from neutral to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (2) should be [150% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (1) should be [100% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [initial\] to [20px 20px\] at (-0.3) should be [calc(-6px + 65%) calc(-6px + 65%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [top right\] at (1) should be [100% 0%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [unset\] to [20px 20px\] at (1) should be [calc(20px + 0%) calc(20px + 0%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [top right\] at (1.5) should be [125% -25%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [top right\] at (0.5) should be [75% 25%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [right 0% bottom 50%\] at (2) should be [150% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [100px 200px\] to [0px 0px\] at (1.5) should be [-50px -100px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [initial\] to [20px 20px\] at (0.5) should be [calc(10px + 25%) calc(10px + 25%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [right 0% bottom 50%\] at (2) should be [150% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 50%\] to [100% 100%\] at (1) should be [100% 100%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.3) should be [65% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [inherit\] to [20px 20px\] at (0.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from neutral to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [100px 200px\] to [0px 0px\] at (1.5) should be [-50px -100px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (0) should be [center\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 50%\] to [100% 100%\] at (-0.3) should be [35% 35%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 100%\] to [0px 0px\] at (0.5) should be [25% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [unset\] to [20px 20px\] at (-0.3) should be [calc(-6px + 65%) calc(-6px + 65%)\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [inherit\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [top right\] at (0.5) should be [75% 25%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from neutral to [20px 20px\] at (0.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 50%\] to [100% 100%\] at (-0.3) should be [35% 35%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 50%\] to [100% 100%\] at (1) should be [100% 100%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [top right\] at (-0.3) should be [35% 65%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [right 0% bottom 50%\] at (-0.5) should be [25% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 100%\] to [0px 0px\] at (-0.3) should be [65% 130%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [unset\] to [20px 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 50%\] to [100% 100%\] at (0.5) should be [75% 75%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (0) should be [center\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [top right\] at (1) should be [100% 0%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [100px 200px\] to [0px 0px\] at (1) should be [0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [top right\] at (-0.3) should be [35% 65%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 50%\] to [100% 100%\] at (1) should be [100% 100%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [initial\] to [20px 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from neutral to [20px 20px\] at (0.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [unset\] to [20px 20px\] at (0.5) should be [calc(10px + 25%) calc(10px + 25%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from neutral to [20px 20px\] at (0) should be [10px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [initial\] to [20px 20px\] at (0.5) should be [calc(10px + 25%) calc(10px + 25%)\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.5) should be [75% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [inherit\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [initial\] to [20px 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [initial\] to [20px 20px\] at (1.5) should be [calc(30px + -25%) calc(30px + -25%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 100%\] to [50px 100px\] at (1.5) should be [calc(-25% + 75px) calc(-50% + 150px)\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 100%\] to [0px 0px\] at (1.5) should be [-25% -50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [top right\] at (-0.3) should be [35% 65%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 100%\] to [50px 100px\] at (-0.3) should be [calc(65% + -15px) calc(130% + -30px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [unset\] to [20px 20px\] at (1) should be [calc(20px + 0%) calc(20px + 0%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [100px 200px\] to [0px 0px\] at (-0.3) should be [130px 260px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 100%\] to [50px 100px\] at (0.5) should be [calc(25% + 25px) calc(50% + 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.9) should be [95% 50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.3) should be [65% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [right 0% bottom 50%\] at (0) should be [center\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.3) should be [65% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 100%\] to [0px 0px\] at (1.5) should be [-25% -50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [unset\] to [20px 20px\] at (0.5) should be [calc(10px + 25%) calc(10px + 25%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 50%\] to [100% 100%\] at (1.5) should be [125% 125%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [100px 200px\] to [0px 0px\] at (-0.3) should be [130px 260px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 100%\] to [50px 100px\] at (0.5) should be [calc(25% + 25px) calc(50% + 50px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.5) should be [75% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [100px 200px\] to [0px 0px\] at (0) should be [100px 200px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [top right\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [initial\] to [20px 20px\] at (0.5) should be [calc(10px + 25%) calc(10px + 25%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 100%\] to [50px 100px\] at (1) should be [calc(0% + 50px) calc(0% + 100px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [100px 200px\] to [0px 0px\] at (0.5) should be [50px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [top right\] at (1) should be [100% 0%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 100%\] to [0px 0px\] at (0) should be [50% 100%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (-0.5) should be [25% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [right 0% bottom 50%\] at (1.5) should be [125% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 50%\] to [100% 100%\] at (1.5) should be [125% 125%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [100px 200px\] to [0px 0px\] at (1) should be [0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (1.5) should be [125% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [100px 200px\] to [0px 0px\] at (1) should be [0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.9) should be [95% 50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [unset\] to [20px 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [right 0% bottom 50%\] at (0.9) should be [95% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 50%\] to [100% 100%\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [top right\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from neutral to [20px 20px\] at (0) should be [10px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [initial\] to [20px 20px\] at (1.5) should be [calc(30px + -25%) calc(30px + -25%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [initial\] to [20px 20px\] at (-0.3) should be [calc(-6px + 65%) calc(-6px + 65%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from neutral to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 50%\] to [100% 100%\] at (1) should be [100% 100%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [initial\] to [20px 20px\] at (-0.3) should be [calc(-6px + 65%) calc(-6px + 65%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 100%\] to [0px 0px\] at (-0.3) should be [65% 130%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 100%\] to [50px 100px\] at (-0.3) should be [calc(65% + -15px) calc(130% + -30px)\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 100%\] to [0px 0px\] at (1) should be [0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [top right\] at (0.5) should be [75% 25%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [right 0% bottom 50%\] at (0) should be [center\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 100%\] to [50px 100px\] at (1.5) should be [calc(-25% + 75px) calc(-50% + 150px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [inherit\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [inherit\] to [20px 20px\] at (0) should be [30px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [inherit\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 100%\] to [0px 0px\] at (0) should be [50% 100%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [initial\] to [20px 20px\] at (-0.3) should be [calc(-6px + 65%) calc(-6px + 65%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 100%\] to [50px 100px\] at (1) should be [calc(0% + 50px) calc(0% + 100px)\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 100%\] to [0px 0px\] at (-0.3) should be [65% 130%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [100px 200px\] to [0px 0px\] at (0) should be [100px 200px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [initial\] to [20px 20px\] at (1) should be [calc(20px + 0%) calc(20px + 0%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [unset\] to [20px 20px\] at (1.5) should be [calc(30px + -25%) calc(30px + -25%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 100%\] to [0px 0px\] at (1.5) should be [-25% -50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [unset\] to [20px 20px\] at (-0.3) should be [calc(-6px + 65%) calc(-6px + 65%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [inherit\] to [20px 20px\] at (0.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [top right\] at (1.5) should be [125% -25%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from neutral to [20px 20px\] at (0) should be [10px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [top right\] at (-0.3) should be [35% 65%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [100px 200px\] to [0px 0px\] at (-0.3) should be [130px 260px\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [right 0% bottom 50%\] at (2) should be [150% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [center\] to [right 0% bottom 50%\] at (-0.5) should be [25% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [unset\] to [20px 20px\] at (0) should be [50% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 50%\] to [100% 100%\] at (-0.3) should be [35% 35%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [50% 100%\] to [0px 0px\] at (1.5) should be [-25% -50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [right 0% bottom 50%\] at (1) should be [100% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from neutral to [20px 20px\] at (0.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [unset\] to [20px 20px\] at (-0.3) should be [calc(-6px + 65%) calc(-6px + 65%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [unset\] to [20px 20px\] at (1.5) should be [calc(30px + -25%) calc(30px + -25%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [50% 50%\] to [100% 100%\] at (0.5) should be [75% 75%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [100px 200px\] to [0px 0px\] at (0) should be [100px 200px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [50% 100%\] to [0px 0px\] at (0.5) should be [25% 50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [50% 100%\] to [0px 0px\] at (0) should be [50% 100%\]]
+ expected: FAIL
+
+ [Web Animations: property <object-position> from [inherit\] to [20px 20px\] at (0) should be [30px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <object-position> from [unset\] to [20px 20px\] at (-0.3) should be [calc(-6px + 65%) calc(-6px + 65%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <object-position> from [center\] to [right 0% bottom 50%\] at (1.5) should be [125% 50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <object-position> from [center\] to [top right\] at (0.5) should be [75% 25%\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-text/animations/letter-spacing-interpolation.html.ini b/tests/wpt/metadata/css/css-text/animations/letter-spacing-interpolation.html.ini
index d36bca23c57..e82b2321053 100644
--- a/tests/wpt/metadata/css/css-text/animations/letter-spacing-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-text/animations/letter-spacing-interpolation.html.ini
@@ -1,5 +1,358 @@
[letter-spacing-interpolation.html]
- expected: ERROR
[letter-spacing-interpolation]
expected: FAIL
+ [Web Animations: property <letter-spacing> from [inherit\] to [20px\] at (0) should be [2px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [unset\] to [20px\] at (0.6) should be [12.8px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [normal\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [unset\] to [20px\] at (-0.3) should be [-3.4px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [inherit\] to [20px\] at (1.5) should be [29px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from neutral to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [unset\] to [20px\] at (0.3) should be [7.4px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [-10px\] to [10px\] at (0.6) should be [2px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from neutral to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from neutral to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [-10px\] to [10px\] at (1) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [unset\] to [20px\] at (0.3) should be [7.4px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [unset\] to [20px\] at (0.6) should be [12.8px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from neutral to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [-10px\] to [10px\] at (0.3) should be [-4px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [unset\] to [20px\] at (-0.3) should be [-3.4px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from neutral to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [normal\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [inherit\] to [20px\] at (0.6) should be [12.8px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [inherit\] to [20px\] at (0.6) should be [12.8px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [normal\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [unset\] to [20px\] at (-0.3) should be [-3.4px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from neutral to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [normal\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [normal\] to [10px\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [inherit\] to [20px\] at (-0.3) should be [-3.4px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [normal\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [-10px\] to [10px\] at (-0.3) should be [-16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [normal\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [normal\] to [10px\] at (-0.3) should be [-3px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [-10px\] to [10px\] at (0.3) should be [-4px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from neutral to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [-10px\] to [10px\] at (1) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [-10px\] to [10px\] at (0.3) should be [-4px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [-10px\] to [10px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [inherit\] to [20px\] at (0.6) should be [12.8px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [-10px\] to [10px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [normal\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [normal\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [inherit\] to [20px\] at (1.5) should be [29px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [unset\] to [20px\] at (-0.3) should be [-3.4px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [inherit\] to [20px\] at (0.3) should be [7.4px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from neutral to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [unset\] to [20px\] at (0) should be [2px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from neutral to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [normal\] to [10px\] at (-0.3) should be [-3px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from neutral to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [-10px\] to [10px\] at (0.6) should be [2px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [normal\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [inherit\] to [20px\] at (-0.3) should be [-3.4px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [normal\] to [10px\] at (-0.3) should be [-3px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [unset\] to [20px\] at (0.6) should be [12.8px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [-10px\] to [10px\] at (0) should be [-10px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [unset\] to [20px\] at (0.3) should be [7.4px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [normal\] to [10px\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from neutral to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [normal\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from neutral to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from neutral to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [-10px\] to [10px\] at (0) should be [-10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [initial\] to [20px\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [normal\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [-10px\] to [10px\] at (-0.3) should be [-16px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [unset\] to [20px\] at (0) should be [2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [unset\] to [20px\] at (1.5) should be [29px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [normal\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [-10px\] to [10px\] at (0.6) should be [2px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [inherit\] to [20px\] at (-0.3) should be [-3.4px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [unset\] to [20px\] at (1.5) should be [29px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [unset\] to [20px\] at (0.6) should be [12.8px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [inherit\] to [20px\] at (0.3) should be [7.4px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [unset\] to [20px\] at (1.5) should be [29px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [-10px\] to [10px\] at (-0.3) should be [-16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from neutral to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [-10px\] to [10px\] at (0.3) should be [-4px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [unset\] to [20px\] at (0.3) should be [7.4px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from neutral to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [-10px\] to [10px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [initial\] to [20px\] at (0) should be [normal\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [inherit\] to [20px\] at (0.3) should be [7.4px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from neutral to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [inherit\] to [20px\] at (1.5) should be [29px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [inherit\] to [20px\] at (0) should be [2px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <letter-spacing> from [-10px\] to [10px\] at (-0.3) should be [-16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [-10px\] to [10px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [inherit\] to [20px\] at (0.3) should be [7.4px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [inherit\] to [20px\] at (-0.3) should be [-3.4px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [inherit\] to [20px\] at (1.5) should be [29px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [normal\] to [10px\] at (1) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [normal\] to [10px\] at (-0.3) should be [-3px\]]
+ expected: FAIL
+
+ [Web Animations: property <letter-spacing> from [unset\] to [20px\] at (1.5) should be [29px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from [-10px\] to [10px\] at (0.6) should be [2px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <letter-spacing> from neutral to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [inherit\] to [20px\] at (0.6) should be [12.8px\]]
+ expected: FAIL
+
+ [CSS Animations: property <letter-spacing> from [normal\] to [10px\] at (1) should be [10px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-text/animations/text-indent-interpolation.html.ini b/tests/wpt/metadata/css/css-text/animations/text-indent-interpolation.html.ini
index a4ea398608e..9839b1edb93 100644
--- a/tests/wpt/metadata/css/css-text/animations/text-indent-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-text/animations/text-indent-interpolation.html.ini
@@ -1,5 +1,613 @@
[text-indent-interpolation.html]
- expected: ERROR
[text-indent-interpolation]
expected: FAIL
+ [CSS Transitions: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0) should be [0 hanging each-line\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [inherit\] to [20px\] at (-0.3) should be [85px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0.3) should be [15px hanging each-line\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (1.5) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [unset\] to [20px\] at (1.5) should be [-5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging\] to [50px hanging\] at (0.3) should be [15px hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0) should be [0 hanging each-line\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.5) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging\] to [50px hanging\] at (0) should be [0 hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [inherit\] to [20px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.5) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (0.6) should be [30px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (0.3) should be [15px hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [inherit\] to [20px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px\] to [50px each-line hanging\] at (1) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.6) should be [50px hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [inherit\] to [20px\] at (0.3) should be [55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.6) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [unset\] to [20px\] at (0) should be [70px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [unset\] to [20px\] at (-0.3) should be [85px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [inherit\] to [20px\] at (1.5) should be [-5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px\] to [50px each-line hanging\] at (0) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px\] to [50px\] at (1.5) should be [75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [unset\] to [20px\] at (-0.3) should be [85px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [inherit\] to [20px\] at (-0.3) should be [85px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (1) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [unset\] to [20px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [inherit\] to [20px\] at (0) should be [70px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (0.3) should be [15px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px\] at (1.5) should be [75px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px\] at (0) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [inherit\] to [20px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [unset\] to [20px\] at (0.3) should be [55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (1.5) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (1) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px hanging\] to [50px hanging\] at (1.5) should be [75px hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [unset\] to [20px\] at (1.5) should be [-5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.3) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [inherit\] to [20px\] at (0) should be [70px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.5) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (1.5) should be [75px hanging each-line\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [inherit\] to [20px\] at (1.5) should be [-5px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging\] to [50px hanging\] at (1.5) should be [75px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from neutral to [40px\] at (-0.3) should be [1px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px\] to [50px\] at (-0.3) should be [-15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [inherit\] to [20px\] at (1.5) should be [-5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [inherit\] to [20px\] at (-0.3) should be [85px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [unset\] to [20px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (0.6) should be [30px hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (-0.3) should be [-15px hanging each-line\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px\] to [50px each-line hanging\] at (1.5) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px\] at (-0.3) should be [-15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (-0.3) should be [-15px hanging each-line\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (0) should be [0px each-line\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0.3) should be [15px hanging each-line\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (1) should be [50px hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.6) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (1.5) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px\] at (-0.3) should be [-15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging\] to [50px hanging\] at (-0.3) should be [-15px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [inherit\] to [20px\] at (0.3) should be [55px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0.6) should be [30px hanging each-line\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px\] at (0.3) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (-0.3) should be [-15px hanging each-line\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px hanging\] to [50px hanging\] at (0) should be [0 hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px\] to [50px each-line hanging\] at (-0.3) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [unset\] to [20px\] at (0) should be [70px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [unset\] to [20px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [unset\] to [20px\] at (-0.3) should be [85px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (1) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [inherit\] to [20px\] at (-0.3) should be [85px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px\] at (1) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.6) should be [50px hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0.6) should be [30px hanging each-line\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px each-line\] to [50px hanging\] at (-0.3) should be [50px hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [unset\] to [20px\] at (1.5) should be [-5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px\] at (0.6) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.5) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (0) should be [0 hanging\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px\] to [50px\] at (0.3) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0) should be [0 hanging each-line\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.6) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (1.5) should be [75px hanging each-line\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [unset\] to [20px\] at (1.5) should be [-5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px\] to [50px each-line hanging\] at (1) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.5) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (1.5) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [unset\] to [20px\] at (0.3) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px hanging\] to [50px hanging\] at (0.3) should be [15px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging\] to [50px hanging\] at (0.6) should be [30px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (-0.3) should be [-15px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px\] to [50px\] at (0.3) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (1) should be [50px hanging each-line\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (1) should be [50px hanging each-line\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.6) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [inherit\] to [20px\] at (0.3) should be [55px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (-0.3) should be [-15px hanging each-line\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.5) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (1) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px hanging\] to [50px hanging\] at (1) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px each-line\] to [50px hanging\] at (0) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging\] to [50px hanging\] at (1) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (1) should be [50px hanging each-line\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from neutral to [40px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (-0.3) should be [0px each-line\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px\] to [50px\] at (-0.3) should be [-15px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (1) should be [50px hanging each-line\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px each-line\] to [50px hanging\] at (0) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px\] to [50px each-line hanging\] at (0) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.3) should be [50px hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (-0.3) should be [-15px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px each-line\] to [50px hanging\] at (-0.3) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.3) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [initial\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px\] at (0.6) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [inherit\] to [20px\] at (1.5) should be [-5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [inherit\] to [20px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px\] at (0.3) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [unset\] to [20px\] at (0.3) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [inherit\] to [20px\] at (0.3) should be [55px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (0) should be [0 hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (0) should be [0px each-line\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px each-line\] to [50px hanging\] at (1) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.6) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (1.5) should be [75px hanging each-line\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px\] to [50px\] at (0.6) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0.6) should be [30px hanging each-line\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (1) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0.3) should be [15px hanging each-line\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.3) should be [0px each-line\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.3) should be [0px each-line\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (1.5) should be [75px hanging each-line\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.6) should be [50px hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (1.5) should be [75px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px\] at (0) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px each-line\] to [50px hanging\] at (1.5) should be [50px hanging\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [unset\] to [20px\] at (-0.3) should be [85px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.5) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [unset\] to [20px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px\] to [50px\] at (1) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px each-line hanging\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0px\] to [50px\] at (1.5) should be [75px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px\] to [50px\] at (1.5) should be [75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px\] to [50px\] at (0.6) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [initial\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging\] to [50px hanging\] at (1.5) should be [75px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px each-line\] to [50px hanging\] at (1) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px each-line\] to [50px hanging\] at (1.5) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [unset\] to [20px\] at (0.3) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px\] to [50px each-line hanging\] at (-0.3) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px\] to [50px each-line hanging\] at (1.5) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0.3) should be [15px hanging each-line\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px hanging\] to [50px hanging\] at (-0.3) should be [-15px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0.6) should be [30px hanging each-line\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px hanging\] to [50px hanging\] at (0.6) should be [30px hanging\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0px each-line\] to [50px hanging\] at (0.3) should be [50px hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px hanging each-line\] to [50px each-line hanging\] at (0) should be [0 hanging each-line\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0px\] to [50px each-line hanging\] at (0.5) should be [50px each-line hanging\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0px each-line\] to [50px hanging\] at (-0.3) should be [0px each-line\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-text/animations/word-spacing-interpolation.html.ini b/tests/wpt/metadata/css/css-text/animations/word-spacing-interpolation.html.ini
index 0725df56802..105a5295d64 100644
--- a/tests/wpt/metadata/css/css-text/animations/word-spacing-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-text/animations/word-spacing-interpolation.html.ini
@@ -1,5 +1,358 @@
[word-spacing-interpolation.html]
- expected: ERROR
[word-spacing-interpolation]
expected: FAIL
+ [CSS Transitions: property <word-spacing> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [normal\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [-10px\] to [40px\] at (-0.3) should be [-25px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [-10px\] to [40px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [-10px\] to [40px\] at (0.3) should be [5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [-10px\] to [40px\] at (1.5) should be [65px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [-10px\] to [40px\] at (0) should be [-10px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [normal\] to [10px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [-10px\] to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [initial\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [normal\] to [10px\] at (-0.3) should be [-3px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [unset\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [-10px\] to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [normal\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [unset\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [-10px\] to [40px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [-10px\] to [40px\] at (1.5) should be [65px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [normal\] to [10px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [normal\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [normal\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [-10px\] to [40px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [normal\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [-10px\] to [40px\] at (0.6) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [-10px\] to [40px\] at (0.3) should be [5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [normal\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [normal\] to [10px\] at (-0.3) should be [-3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from neutral to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [-10px\] to [40px\] at (0) should be [-10px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [normal\] to [10px\] at (-0.3) should be [-3px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [-10px\] to [40px\] at (-0.3) should be [-25px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [initial\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [normal\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [-10px\] to [40px\] at (1.5) should be [65px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [-10px\] to [40px\] at (0.3) should be [5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [normal\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [normal\] to [10px\] at (1) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [normal\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [unset\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [-10px\] to [40px\] at (-0.3) should be [-25px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [normal\] to [10px\] at (-0.3) should be [-3px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [normal\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [-10px\] to [40px\] at (0.3) should be [5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [unset\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <word-spacing> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [-10px\] to [40px\] at (1.5) should be [65px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [normal\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <word-spacing> from [unset\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [normal\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <word-spacing> from [-10px\] to [40px\] at (-0.3) should be [-25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <word-spacing> from [unset\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-text/line-break/line-break-normal-018.xht.ini b/tests/wpt/metadata/css/css-text/line-break/line-break-normal-018.xht.ini
new file mode 100644
index 00000000000..693999d7f9d
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/line-break/line-break-normal-018.xht.ini
@@ -0,0 +1,2 @@
+[line-break-normal-018.xht]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/line-break/line-break-strict-018.xht.ini b/tests/wpt/metadata/css/css-text/line-break/line-break-strict-018.xht.ini
new file mode 100644
index 00000000000..bd79bd226f9
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/line-break/line-break-strict-018.xht.ini
@@ -0,0 +1,2 @@
+[line-break-strict-018.xht]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/trailing-ideographic-space-004.html.ini b/tests/wpt/metadata/css/css-text/white-space/trailing-ideographic-space-004.html.ini
new file mode 100644
index 00000000000..240d1283c3a
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/trailing-ideographic-space-004.html.ini
@@ -0,0 +1,2 @@
+[trailing-ideographic-space-004.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-transforms/animation/list-interpolation.html.ini b/tests/wpt/metadata/css/css-transforms/animation/list-interpolation.html.ini
index 9b671ea64ee..5105b95eec5 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/list-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/list-interpolation.html.ini
@@ -1,5 +1,4 @@
[list-interpolation.html]
- expected: ERROR
[Animation between "scale(2) rotate(0deg) translate(100px)" and "rotate(720deg) scale(2) translate(200px)" at progress 0.25]
expected: FAIL
@@ -90,3 +89,222 @@
[Transform list interpolation]
expected: FAIL
+ [CSS Animations: property <transform> from [none\] to [translate(200px) rotate(720deg)\] at (0.25) should be [translate(50px) rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [none\] at (0.25) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(720deg) translateX(0px) scaleX(2)\] to [rotate(0deg) scaleX(1)\] at (0.25) should be [rotate(540deg) matrix(1.75, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(0deg) scaleX(1)\] to [rotate(720deg) translateX(0px) scaleX(2)\] at (0.25) should be [rotate(180deg) matrix(1.25, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(-3) scaleY(2)\] to [scaleY(-3) translateX(0px) scaleX(2)\] at (0.25) should be [scale(-2, 0) matrix(1.25, 0, 0, 1.75, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(-3) scaleY(2)\] to [scaleY(-3) translateX(0px) scaleX(2)\] at (0.25) should be [scale(-2, 0) matrix(1.25, 0, 0, 1.75, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate(100px) rotate(720deg)\] to [translate(200px)\] at (0.25) should be [translate(125px) rotate(540deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(0deg) scaleX(1)\] to [rotate(720deg) translateX(0px) scaleX(2)\] at (0.25) should be [rotate(180deg) matrix(1.25, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleY(-3) translateX(0px)\] to [scaleX(-3) scaleY(2)\] at (0.25) should be [scale(0, -2) matrix(1, 0, 0, 1.25, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(1, 0, 0, 360deg) translateX(100px)\] to [rotate3d(0, 1, 0, -720deg) translateY(200px)\] at (0.25) should be [rotate3d(0, 0, 1, 0deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale(2) rotate(0deg) translate(100px)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [matrix(2, 0, 0, 2, 250, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleY(-3) translateX(0px)\] to [scaleX(-3) scaleY(2)\] at (0.25) should be [scale(0, -2) matrix(1, 0, 0, 1.25, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleY(-3) translateX(0px) scaleX(2)\] to [scaleX(-3) scaleY(2)\] at (0.25) should be [scale(0, -2) matrix(1.75, 0, 0, 1.25, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [translate(200px) rotate(720deg)\] at (0.25) should be [translate(50px) rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateX(100px) scaleX(3) translate(500px) scale(2)\] to [translateY(200px) scale(5) translateX(100px) scaleY(3)\] at (0.25) should be [translate(75px, 50px) scale(3.5, 2) translate(400px, 0px) scale(1.75, 2.25)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale(2) rotate(0deg)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [matrix(2, 0, 0, 2, 100, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(90deg) translateX(100px)\] to [rotate3d(50, 0, 0, 180deg) translateY(200px)\] at (0.25) should be [rotateX(112.5deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate(200px) rotate(720deg)\] to [none\] at (0.25) should be [translate(150px) rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate(200px) rotate(720deg)\] to [none\] at (0.25) should be [translate(150px) rotate(540deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(0deg) translate(100px)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [rotate(180deg) matrix(1.25, 0, 0, 1.25, 175, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale(2) rotate(360deg) translate(100px) matrix(1, 0, 0, 1, 100, 0) skew(0deg)\] to [scale(3) rotate(1080deg) translate(200px) matrix(1, 0, 0, 1, 0, 200) skew(720deg)\] at (0.25) should be [scale(2.25) rotate(540deg) translate(125px) matrix(1, 0, 0, 1, 75, 50) skew(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate(100px) rotate(720deg)\] to [translate(200px)\] at (0.25) should be [translate(125px) rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(0deg) translate(100px)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [rotate(180deg) matrix(1.25, 0, 0, 1.25, 175, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(0deg) translate(100px)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [rotate(180deg) matrix(1.25, 0, 0, 1.25, 175, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(1, 0, 0, 360deg) translateX(100px)\] to [rotate3d(0, 1, 0, -720deg) translateY(200px)\] at (0.25) should be [rotate3d(0, 0, 1, 0deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(-3) scaleY(2)\] to [scaleY(-3) translateX(0px) scaleX(2)\] at (0.25) should be [scale(-2, 0) matrix(1.25, 0, 0, 1.75, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(1, 1, 1, -60deg) translateX(100px)\] to [rotate3d(2, 2, 2, 60deg) translateY(200px)\] at (0.25) should be [rotate3d(1, 1, 1, -30deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(0deg) scaleX(1)\] to [rotate(720deg) translateX(0px) scaleX(2)\] at (0.25) should be [rotate(180deg) matrix(1.25, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(90deg) translateX(100px)\] to [rotateY(0deg) translateY(200px)\] at (0.25) should be [rotateX(67.5deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleY(-3) translateX(0px)\] to [scaleX(-3) scaleY(2)\] at (0.25) should be [scale(0, -2) matrix(1, 0, 0, 1.25, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(100px) scaleX(3) translate(500px) scale(2)\] to [translateY(200px) scale(5) translateX(100px) scaleY(3)\] at (0.25) should be [translate(75px, 50px) scale(3.5, 2) translate(400px, 0px) scale(1.75, 2.25)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(90deg) translateX(100px)\] to [rotateY(0deg) translateY(200px)\] at (0.25) should be [rotateX(67.5deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate(100px)\] to [translate(200px) rotate(720deg)\] at (0.25) should be [translate(125px) rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(90deg) translateX(100px)\] to [rotate3d(50, 0, 0, 180deg) translateY(200px)\] at (0.25) should be [rotateX(112.5deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(1, 0, 0, 360deg) translateX(100px)\] to [rotate3d(0, 1, 0, -720deg) translateY(200px)\] at (0.25) should be [rotate3d(0, 0, 1, 0deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [translate(200px) rotate(720deg)\] at (0.25) should be [translate(50px) rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(90deg) translateX(100px)\] to [rotateY(0deg) translateY(200px)\] at (0.25) should be [rotateX(67.5deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(90deg) translateX(100px)\] to [rotate3d(50, 0, 0, 180deg) translateY(200px)\] at (0.25) should be [rotateX(112.5deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(1, 1, 1, -60deg) translateX(100px)\] to [rotate3d(2, 2, 2, 60deg) translateY(200px)\] at (0.25) should be [rotate3d(1, 1, 1, -30deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateX(100px) scaleX(3) translate(500px) scale(2)\] to [translateY(200px) scale(5) translateX(100px) scaleY(3)\] at (0.25) should be [translate(75px, 50px) scale(3.5, 2) translate(400px, 0px) scale(1.75, 2.25)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(720deg) translateX(0px) scaleX(2)\] to [rotate(0deg) scaleX(1)\] at (0.25) should be [rotate(540deg) matrix(1.75, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(1, 1, 1, -60deg) translateX(100px)\] to [rotate3d(2, 2, 2, 60deg) translateY(200px)\] at (0.25) should be [rotate3d(1, 1, 1, -30deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(0deg) translate(100px)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [rotate(180deg) matrix(1.25, 0, 0, 1.25, 175, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(720deg) translateX(0px) scaleX(2)\] to [rotate(0deg) scaleX(1)\] at (0.25) should be [rotate(540deg) matrix(1.75, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale(2) rotate(360deg) translate(100px) matrix(1, 0, 0, 1, 100, 0) skew(0deg)\] to [scale(3) rotate(1080deg) translate(200px) matrix(1, 0, 0, 1, 0, 200) skew(720deg)\] at (0.25) should be [scale(2.25) rotate(540deg) translate(125px) matrix(1, 0, 0, 1, 75, 50) skew(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(90deg) translateX(100px)\] to [rotateY(0deg) translateY(200px)\] at (0.25) should be [rotateX(67.5deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(100px) scaleX(3) translate(500px) scale(2)\] to [translateY(200px) scale(5) translateX(100px) scaleY(3)\] at (0.25) should be [translate(75px, 50px) scale(3.5, 2) translate(400px, 0px) scale(1.75, 2.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale(2) rotate(0deg) translate(100px)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [matrix(2, 0, 0, 2, 250, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale(2) rotate(360deg) translate(100px) matrix(1, 0, 0, 1, 100, 0) skew(0deg)\] to [scale(3) rotate(1080deg) translate(200px) matrix(1, 0, 0, 1, 0, 200) skew(720deg)\] at (0.25) should be [scale(2.25) rotate(540deg) translate(125px) matrix(1, 0, 0, 1, 75, 50) skew(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale(2) rotate(0deg)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [matrix(2, 0, 0, 2, 100, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleY(-3) translateX(0px) scaleX(2)\] to [scaleX(-3) scaleY(2)\] at (0.25) should be [scale(0, -2) matrix(1.75, 0, 0, 1.25, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(720deg) translateX(0px) scaleX(2)\] to [rotate(0deg) scaleX(1)\] at (0.25) should be [rotate(540deg) matrix(1.75, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate(100px)\] to [translate(200px) rotate(720deg)\] at (0.25) should be [translate(125px) rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale(2) rotate(0deg) translate(100px)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [matrix(2, 0, 0, 2, 250, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale(2) rotate(0deg)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [matrix(2, 0, 0, 2, 100, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(1, 0, 0, 360deg) translateX(100px)\] to [rotate3d(0, 1, 0, -720deg) translateY(200px)\] at (0.25) should be [rotate3d(0, 0, 1, 0deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(0deg) scaleX(1)\] to [rotate(720deg) translateX(0px) scaleX(2)\] at (0.25) should be [rotate(180deg) matrix(1.25, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale(2) rotate(0deg)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [matrix(2, 0, 0, 2, 100, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleY(-3) translateX(0px) scaleX(2)\] to [scaleX(-3) scaleY(2)\] at (0.25) should be [scale(0, -2) matrix(1.75, 0, 0, 1.25, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate(100px) rotate(720deg)\] to [translate(200px)\] at (0.25) should be [translate(125px) rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(90deg) translateX(100px)\] to [rotate3d(50, 0, 0, 180deg) translateY(200px)\] at (0.25) should be [rotateX(112.5deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleY(-3) translateX(0px)\] to [scaleX(-3) scaleY(2)\] at (0.25) should be [scale(0, -2) matrix(1, 0, 0, 1.25, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale(2) rotate(360deg) translate(100px) matrix(1, 0, 0, 1, 100, 0) skew(0deg)\] to [scale(3) rotate(1080deg) translate(200px) matrix(1, 0, 0, 1, 0, 200) skew(720deg)\] at (0.25) should be [scale(2.25) rotate(540deg) translate(125px) matrix(1, 0, 0, 1, 75, 50) skew(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate(200px) rotate(720deg)\] to [none\] at (0.25) should be [translate(150px) rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate(100px)\] to [translate(200px) rotate(720deg)\] at (0.25) should be [translate(125px) rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate(100px)\] to [translate(200px) rotate(720deg)\] at (0.25) should be [translate(125px) rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleY(-3) translateX(0px) scaleX(2)\] to [scaleX(-3) scaleY(2)\] at (0.25) should be [scale(0, -2) matrix(1.75, 0, 0, 1.25, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(-3) scaleY(2)\] to [scaleY(-3) translateX(0px) scaleX(2)\] at (0.25) should be [scale(-2, 0) matrix(1.25, 0, 0, 1.75, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(1, 1, 1, -60deg) translateX(100px)\] to [rotate3d(2, 2, 2, 60deg) translateY(200px)\] at (0.25) should be [rotate3d(1, 1, 1, -30deg) translate(75px, 50px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate(200px) rotate(720deg)\] to [none\] at (0.25) should be [translate(150px) rotate(540deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate(100px) rotate(720deg)\] to [translate(200px)\] at (0.25) should be [translate(125px) rotate(540deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale(2) rotate(0deg) translate(100px)\] to [rotate(720deg) scale(2) translate(200px)\] at (0.25) should be [matrix(2, 0, 0, 2, 250, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [translate(200px) rotate(720deg)\] at (0.25) should be [translate(50px) rotate(180deg)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/matrix-interpolation.html.ini b/tests/wpt/metadata/css/css-transforms/animation/matrix-interpolation.html.ini
index 062dcee442c..c8817f118a2 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/matrix-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/matrix-interpolation.html.ini
@@ -1,8 +1,19 @@
[matrix-interpolation.html]
- expected: ERROR
[Animation between "rotateY(360deg)" and "rotateX(720deg)" at progress 0.5]
expected: FAIL
[Matrix interpolation]
expected: FAIL
+ [CSS Transitions: property <transform> from [rotateY(360deg)\] to [rotateX(720deg)\] at (0.5) should be [matrix(1, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateY(360deg)\] to [rotateX(720deg)\] at (0.5) should be [matrix(1, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(360deg)\] to [rotateX(720deg)\] at (0.5) should be [matrix(1, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(360deg)\] to [rotateX(720deg)\] at (0.5) should be [matrix(1, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/perspective-interpolation.html.ini b/tests/wpt/metadata/css/css-transforms/animation/perspective-interpolation.html.ini
index 1193e3dfa5c..af79ecd5f12 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/perspective-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/perspective-interpolation.html.ini
@@ -1,5 +1,5 @@
[perspective-interpolation.html]
- expected: ERROR
+ expected: TIMEOUT
[ perspective interpolation]
expected: FAIL
diff --git a/tests/wpt/metadata/css/css-transforms/animation/perspective-origin-interpolation.html.ini b/tests/wpt/metadata/css/css-transforms/animation/perspective-origin-interpolation.html.ini
index 475a3a37e29..fd5f85a6913 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/perspective-origin-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/perspective-origin-interpolation.html.ini
@@ -1,5 +1,325 @@
[perspective-origin-interpolation.html]
- expected: ERROR
[perspective-origin interpolation]
expected: FAIL
+ [Web Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (1) should be [100% 150%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [unset\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (0.6) should be [60% 110%\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (1) should be [100% 150%\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from neutral to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [inherit\] to [20px 20px\] at (0.6) should be [24px 16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [initial\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from neutral to [20px 20px\] at (0.6) should be [16px 24px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (0.6) should be [24px 16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [inherit\] to [20px 20px\] at (0.3) should be [27px 13px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (0.6) should be [60% 110%\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (-0.3) should be [-30% 20%\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from neutral to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (0.3) should be [30% 80%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from neutral to [20px 20px\] at (0.3) should be [13px 27px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (1.5) should be [150% 200%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [unset\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [inherit\] to [20px 20px\] at (0.3) should be [27px 13px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from neutral to [20px 20px\] at (0.6) should be [16px 24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (0.3) should be [27px 13px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (1.5) should be [150% 200%\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from neutral to [20px 20px\] at (0.3) should be [13px 27px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [unset\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [unset\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from neutral to [20px 20px\] at (0.3) should be [13px 27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (0.6) should be [24px 16px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (0.3) should be [27px 13px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (-0.3) should be [-30% 20%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [initial\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [unset\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [unset\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from neutral to [20px 20px\] at (0.6) should be [16px 24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [initial\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (0) should be [30px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (1.5) should be [150% 200%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (0.3) should be [30% 80%\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from neutral to [20px 20px\] at (0.6) should be [16px 24px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (0) should be [0% 50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [inherit\] to [20px 20px\] at (0.6) should be [24px 16px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (0.3) should be [30% 80%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [initial\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [initial\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [initial\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [initial\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (0) should be [30px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (-0.3) should be [-30% 20%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from neutral to [20px 20px\] at (0.3) should be [13px 27px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [unset\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [initial\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [unset\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [initial\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [unset\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (0.6) should be [60% 110%\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (-0.3) should be [-30% 20%\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [unset\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (0.6) should be [60% 110%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [initial\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [unset\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (1.5) should be [150% 200%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [unset\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from [initial\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [initial\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <perspective-origin> from [unset\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (0.3) should be [30% 80%\]]
+ expected: FAIL
+
+ [CSS Animations: property <perspective-origin> from [0% 50%\] to [100% 150%\] at (0) should be [0% 50%\]]
+ expected: FAIL
+
+ [Web Animations: property <perspective-origin> from neutral to [20px 20px\] at (0) should be [10px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <perspective-origin> from [initial\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/rotate-interpolation.html.ini b/tests/wpt/metadata/css/css-transforms/animation/rotate-interpolation.html.ini
index c09d1696d8f..e80c4cdd294 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/rotate-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/rotate-interpolation.html.ini
@@ -1,5 +1,4 @@
[rotate-interpolation.html]
- expected: ERROR
[Animation between "100deg" and "180deg" at progress -1]
expected: FAIL
@@ -75,3 +74,888 @@
[rotate interpolation]
expected: FAIL
+ [CSS Transitions: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (2) should be [1 0 0 900deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (2) should be [1 0 0 900deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (-1) should be [0.67 -0.06 -0.74 124.97deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (0.25) should be [0 1 0 50deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (2) should be [1 0 0 -450deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [180deg\] at (2) should be [260deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (-1) should be [0 1 0 -10deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [none\] to [7 -8 9 400grad\] at (1) should be [0.5 -0.57 0.65 400grad\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (0.25) should be [0 1 0 50deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [30deg\] at (0.25) should be [7.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [none\] to [7 -8 9 400grad\] at (0.125) should be [0.5 -0.57 0.65 50grad\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (1) should be [1 0 0 0deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [inherit\] to [270deg\] at (-1) should be [-90deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [180deg\] at (-1) should be [20deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (0.875) should be [-0.70246 0.70246 0.114452 53.1994deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (0.75) should be [0.17 0.78 0.61 118.68deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (-1) should be [0.22 -0.55 0.8 300deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (0.25) should be [0.22 -0.55 0.8 50deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (0.25) should be [0 1 0 50deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (2) should be [0 1 0 -300deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [none\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (0) should be [1 0 0 0deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [none\] at (2) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [none\] to [7 -8 9 400grad\] at (-1) should be [0.5 -0.57 0.65 -400grad\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (-1) should be [0.447214 -0.447214 0.774597 104.478deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (0) should be [0.5 -0.57 0.65 0deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from neutral to [30deg\] at (1) should be [30deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (0) should be [0 1 0 0deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [inherit\] to [270deg\] at (0) should be [90deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (1) should be [0 1 0 -100deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (0.75) should be [0.22 -0.55 0.8 -50deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [none\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (-1) should be [1 0 0 -450deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (0.75) should be [1 0 0 112.5deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [inherit\] to [270deg\] at (0.25) should be [135deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (0.875) should be [-0.70246 0.70246 0.114452 53.1994deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (-1) should be [0 1 0 300deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from neutral to [30deg\] at (0.75) should be [25deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [180deg\] at (0.875) should be [170deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (2) should be [-0.52 0.29 0.81 208.96deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [inherit\] to [270deg\] at (0.75) should be [225deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [30deg\] at (0.25) should be [7.5deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (-1) should be [0.67 -0.06 -0.74 124.97deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [none\] to [7 -8 9 400grad\] at (-1) should be [0.5 -0.57 0.65 -400grad\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [-100deg\] at (0.75) should be [-50deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (0.75) should be [0.22 -0.55 0.8 -50deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [180deg\] at (1) should be [180deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [none\] to [7 -8 9 400grad\] at (0.125) should be [0.5 -0.57 0.65 50grad\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [unset\] to [30deg\] at (0.25) should be [7.5deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (0.125) should be [-0.136456 0.136456 0.981203 40.6037deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [100deg\] to [-100deg\] at (2) should be [-300deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (0.125) should be [0.5 -0.57 0.65 50grad\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (0.875) should be [-0.70246 0.70246 0.114452 53.1994deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (0.75) should be [0.22 -0.55 0.8 -50deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [100deg\] to [-100deg\] at (0.25) should be [50deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [30deg\] at (1) should be [30deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (-1) should be [1 0 0 900deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [100deg\] to [-100deg\] at (0.75) should be [-50deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (-1) should be [1 0 0 -450deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (2) should be [-0.52 0.29 0.81 208.96deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from neutral to [30deg\] at (-1) should be [-10deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [100deg\] to [180deg\] at (0.875) should be [170deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (0) should be [0.22 -0.55 0.8 100deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [-100deg\] at (0.25) should be [50deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (0.75) should be [0 1 0 7.5deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from neutral to [30deg\] at (-1) should be [-10deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (2) should be [0 1 0 20deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [100deg\] to [180deg\] at (-1) should be [20deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [unset\] to [30deg\] at (0.25) should be [7.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (0.25) should be [0.54 0.8 0.26 94.83deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (2) should be [1 0 0 -450deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from neutral to [30deg\] at (2) should be [50deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (-1) should be [1 0 0 -450deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (0.75) should be [0 1 0 7.5deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [180deg\] at (0) should be [100deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [180deg\] at (0) should be [100deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [none\] at (0.125) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (0.875) should be [-0.70246 0.70246 0.114452 53.1994deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (1) should be [-0.71 0.71 0 60deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (2) should be [0.22 -0.55 0.8 -300deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (-1) should be [0.5 -0.57 0.65 -400grad\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (0.25) should be [0.54 0.8 0.26 94.83deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [unset\] to [30deg\] at (2) should be [60deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [100deg\] to [180deg\] at (2) should be [260deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (-1) should be [0.447214 -0.447214 0.774597 104.478deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (0.25) should be [1 0 0 112.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [unset\] to [30deg\] at (2) should be [60deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (2) should be [-0.637897 0.637897 -0.431479 124.975deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (0) should be [0.71 0.71 0 90deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (0.25) should be [0.22 -0.55 0.8 50deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (-1) should be [0 1 0 300deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (1) should be [-0.71 0.71 0 60deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (0.25) should be [1 0 0 337.5deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [30deg\] at (0) should be [0deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (0.75) should be [0 1 0 -50deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [inherit\] to [270deg\] at (2) should be [450deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [inherit\] to [270deg\] at (0.25) should be [135deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (-1) should be [0.447214 -0.447214 0.774597 104.478deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [-100deg\] at (1) should be [-100deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (-1) should be [0.5 -0.57 0.65 -400grad\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [30deg\] at (0.75) should be [22.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (2) should be [1 0 0 -450deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (0) should be [0.5 -0.57 0.65 0deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [unset\] to [30deg\] at (-1) should be [-30deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (-1) should be [0.22 -0.55 0.8 300deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (-1) should be [0.67 -0.06 -0.74 124.97deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [inherit\] to [270deg\] at (-1) should be [-90deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [30deg\] at (-1) should be [-30deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (0) should be [0 1 0 100deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (2) should be [1 0 0 -450deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [100deg\] to [180deg\] at (-1) should be [20deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [inherit\] to [270deg\] at (0.75) should be [225deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (0) should be [1 0 0 0deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from neutral to [30deg\] at (2) should be [50deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (0.25) should be [0.54 0.8 0.26 94.83deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (0.75) should be [1 0 0 112.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (-1) should be [0.447214 -0.447214 0.774597 104.478deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from neutral to [30deg\] at (0.25) should be [15deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (-1) should be [0 1 0 -10deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [-100deg\] at (2) should be [-300deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [unset\] to [30deg\] at (1) should be [30deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [100deg\] to [-100deg\] at (2) should be [-300deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (0.75) should be [0 1 0 -50deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (1) should be [1 0 0 450deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [none\] to [7 -8 9 400grad\] at (0.875) should be [0.5 -0.57 0.65 350grad\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (0.25) should be [0.22 -0.55 0.8 50deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (0) should be [z 45deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [none\] at (2) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [30deg\] at (1) should be [30deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (0.875) should be [0.5 -0.57 0.65 350grad\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (1) should be [0 1 0 10deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (0.75) should be [1 0 0 337.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [inherit\] to [270deg\] at (0.25) should be [135deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [30deg\] at (2) should be [60deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (0.125) should be [-0.136456 0.136456 0.981203 40.6037deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [-100deg\] at (-1) should be [300deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [unset\] to [30deg\] at (0.25) should be [7.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from neutral to [30deg\] at (0.25) should be [15deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (0) should be [0.22 -0.55 0.8 100deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (0.125) should be [-0.136456 0.136456 0.981203 40.6037deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from neutral to [30deg\] at (0.75) should be [25deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [none\] to [30deg\] at (2) should be [60deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [none\] to [7 -8 9 400grad\] at (0.875) should be [0.5 -0.57 0.65 350grad\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (2) should be [1 0 0 900deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (0.75) should be [0.17 0.78 0.61 118.68deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from neutral to [30deg\] at (-1) should be [-10deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [none\] at (0.875) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [30deg\] at (0) should be [0deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [100deg\] to [-100deg\] at (0.25) should be [50deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (0.75) should be [0 1 0 -50deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (-1) should be [1 0 0 900deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (0) should be [z 45deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (0) should be [0 1 0 0deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (0.75) should be [1 0 0 337.5deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [none\] at (0.875) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [unset\] to [30deg\] at (0.75) should be [22.5deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (0.25) should be [1 0 0 337.5deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [unset\] to [30deg\] at (2) should be [60deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [none\] to [30deg\] at (0.25) should be [7.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [100deg\] to [180deg\] at (0.125) should be [110deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (1) should be [0.5 -0.57 0.65 400grad\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (0.25) should be [1 0 0 337.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (0.125) should be [-0.136456 0.136456 0.981203 40.6037deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [-100deg\] at (1) should be [-100deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (2) should be [0.22 -0.55 0.8 -300deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (0.75) should be [1 0 0 112.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [none\] to [30deg\] at (2) should be [60deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [inherit\] to [270deg\] at (0.75) should be [225deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from neutral to [30deg\] at (0.25) should be [15deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (0.25) should be [0 1 0 2.5deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [unset\] to [30deg\] at (1) should be [30deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (0.25) should be [0 1 0 2.5deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [180deg\] at (0.125) should be [110deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [none\] at (-1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [unset\] to [30deg\] at (-1) should be [-30deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [inherit\] to [270deg\] at (0.25) should be [135deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (2) should be [-0.52 0.29 0.81 208.96deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (0.75) should be [1 0 0 337.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (0.25) should be [1 0 0 112.5deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (0.125) should be [0.5 -0.57 0.65 50grad\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (2) should be [0 1 0 20deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [unset\] to [30deg\] at (0.75) should be [22.5deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (1) should be [0 1 0 -100deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (0.25) should be [0.22 -0.55 0.8 50deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [100deg\] to [-100deg\] at (0.75) should be [-50deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [unset\] to [30deg\] at (-1) should be [-30deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (2) should be [0 1 0 -300deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [100deg\] to [180deg\] at (2) should be [260deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [none\] to [30deg\] at (-1) should be [-30deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [unset\] to [30deg\] at (0) should be [0deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (0.75) should be [0 1 0 7.5deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [30deg\] at (2) should be [60deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [inherit\] to [270deg\] at (2) should be [450deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [unset\] to [30deg\] at (0) should be [0deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (0) should be [1 0 0 450deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [100deg\] to [180deg\] at (0.125) should be [110deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (-1) should be [0 1 0 -10deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [none\] to [7 -8 9 400grad\] at (2) should be [0.5 -0.57 0.65 800grad\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from neutral to [30deg\] at (0.75) should be [25deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [inherit\] to [270deg\] at (0.75) should be [225deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (0.25) should be [0 1 0 50deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (0.25) should be [1 0 0 112.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [100deg\] to [-100deg\] at (-1) should be [300deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [inherit\] to [270deg\] at (-1) should be [-90deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (-1) should be [1 0 0 900deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [-100deg\] at (-1) should be [300deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [inherit\] to [270deg\] at (1) should be [270deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [inherit\] to [270deg\] at (1) should be [270deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [unset\] to [30deg\] at (-1) should be [-30deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (2) should be [0 1 0 20deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (0) should be [1 0 0 450deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (-1) should be [0.22 -0.55 0.8 300deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (0.25) should be [1 0 0 337.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (-1) should be [0.67 -0.06 -0.74 124.97deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (2) should be [0.22 -0.55 0.8 -300deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (-1) should be [0 1 0 300deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (2) should be [0.5 -0.57 0.65 800grad\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (2) should be [0.22 -0.55 0.8 -300deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (0.875) should be [0.5 -0.57 0.65 350grad\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (-1) should be [0 1 0 300deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [none\] to [30deg\] at (0.75) should be [22.5deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (1) should be [0 0.71 0.71 135deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [unset\] to [30deg\] at (0.25) should be [7.5deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (1) should be [0 0.71 0.71 135deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [none\] to [30deg\] at (-1) should be [-30deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [180deg\] at (-1) should be [20deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from neutral to [30deg\] at (-1) should be [-10deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [unset\] to [30deg\] at (0.75) should be [22.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from neutral to [30deg\] at (0.25) should be [15deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (0.75) should be [1 0 0 337.5deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (1) should be [0.5 -0.57 0.65 400grad\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (-1) should be [0 1 0 -10deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from neutral to [30deg\] at (0.75) should be [25deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [100deg\] to [180deg\] at (0.875) should be [170deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (1) should be [1 0 0 450deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (1) should be [1 0 0 0deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (2) should be [-0.637897 0.637897 -0.431479 124.975deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [180deg\] at (0.125) should be [110deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from neutral to [30deg\] at (0) should be [10deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [-100deg\] at (0.25) should be [50deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (0.75) should be [0.22 -0.55 0.8 -50deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from neutral to [30deg\] at (1) should be [30deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (2) should be [0 1 0 20deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (2) should be [1 0 0 900deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [30deg\] at (0.75) should be [22.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [unset\] to [30deg\] at (0.75) should be [22.5deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [-100deg\] at (0) should be [100deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [none\] to [7 -8 9 400grad\] at (1) should be [0.5 -0.57 0.65 400grad\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (1) should be [0 1 0 10deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (-1) should be [1 0 0 -450deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (2) should be [0 1 0 -300deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [-100deg\] at (2) should be [-300deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from neutral to [30deg\] at (2) should be [50deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (2) should be [-0.637897 0.637897 -0.431479 124.975deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [none\] to [none\] at (0.125) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (0.75) should be [0 1 0 -50deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [none\] to [7 -8 9 400grad\] at (2) should be [0.5 -0.57 0.65 800grad\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (0) should be [0.71 0.71 0 90deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [30deg\] at (-1) should be [-30deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (1) should be [1 0 0 0deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (0.25) should be [0 1 0 2.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [100deg\] to [-100deg\] at (-1) should be [300deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (0.75) should be [1 0 0 112.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (2) should be [0 1 0 -300deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (2) should be [-0.52 0.29 0.81 208.96deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [180deg\] at (0.875) should be [170deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [none\] at (-1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (-1) should be [0.22 -0.55 0.8 300deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [none\] to [30deg\] at (0.25) should be [7.5deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [0 1 0 100deg\] to [0 1 0 -100deg\] at (0) should be [0 1 0 100deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [180deg\] at (1) should be [180deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (1) should be [0.22 -0.55 0.8 -100deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (0.75) should be [0.17 0.78 0.61 118.68deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [-100deg\] at (0.75) should be [-50deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (0.25) should be [0.54 0.8 0.26 94.83deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [inherit\] to [270deg\] at (0) should be [90deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [100deg\] to [-100deg\] at (0) should be [100deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [100deg\] to [180deg\] at (2) should be [260deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [unset\] to [30deg\] at (2) should be [60deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [none\] to [30deg\] at (0.75) should be [22.5deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [inherit\] to [270deg\] at (-1) should be [-90deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [inherit\] to [270deg\] at (2) should be [450deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from neutral to [30deg\] at (2) should be [50deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (0.75) should be [0 1 0 7.5deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [1 0 0 0deg\] to [0 1 0 10deg\] at (0.25) should be [0 1 0 2.5deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [45deg\] to [-1 1 0 60deg\] at (2) should be [-0.637897 0.637897 -0.431479 124.975deg\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <rotate> from [inherit\] to [270deg\] at (2) should be [450deg\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 1 0 90deg\] to [0 1 1 135deg\] at (0.75) should be [0.17 0.78 0.61 118.68deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [0 1 0 0deg\] to [1 0 0 450deg\] at (0.25) should be [1 0 0 112.5deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [none\] to [7 -8 9 400grad\] at (2) should be [0.5 -0.57 0.65 800grad\]]
+ expected: FAIL
+
+ [Web Animations: property <rotate> from [1 -2.5 3.64 100deg\] to [1 -2.5 3.64 -100deg\] at (1) should be [0.22 -0.55 0.8 -100deg\]]
+ expected: FAIL
+
+ [CSS Animations: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (-1) should be [1 0 0 900deg\]]
+ expected: FAIL
+
+ [CSS Transitions: property <rotate> from [1 0 0 450deg\] to [0 1 0 0deg\] at (1) should be [1 0 0 0deg\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/scale-interpolation.html.ini b/tests/wpt/metadata/css/css-transforms/animation/scale-interpolation.html.ini
index c4daaea26d0..bae37e59cb6 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/scale-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/scale-interpolation.html.ini
@@ -1,5 +1,4 @@
[scale-interpolation.html]
- expected: ERROR
[Animation between "2 30 400" and "10 110 1200" at progress -1]
expected: FAIL
@@ -93,3 +92,954 @@
[scale interpolation]
expected: FAIL
+ [CSS Transitions with transition: all: property <scale> from [26 17 9\] to [2 1\] at (0.875) should be [5 3 2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 30 400\] to [10 110 1200\] at (2) should be [18 190 2000\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 0.5 1\] to [inherit\] at (0) should be [2 0.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [none\] to [4 3 2\] at (2) should be [7 5 3\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [26 17 9\] to [2 1\] at (-1) should be [50 33 17\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [inherit\] at (0.25) should be [1.625 0.625 1.25\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [2 0.5 1\] at (1) should be [2 0.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [initial\] at (0) should be [0.5 1 2\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5 1\] to [1\] at (-1) should be [-21 9\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [1\] to [10 -5 0\] at (0.25) should be [3.25 -0.5 0.75\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [inherit\] to [initial\] at (0.25) should be [0.625 1 1.75\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from neutral to [1.5 1\] at (0.75) should be [1.4 1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [inherit\] to [initial\] at (0.75) should be [0.875 1 1.25\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [inherit\] at (0.75) should be [0.875 0.875 1.75\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (1) should be [10 110 1200\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [1\] to [10 -5 0\] at (0.75) should be [7.75 -3.5 0.25\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [initial\] at (0.75) should be [0.875 1 1.25\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [26 17 9\] to [2 1\] at (2) should be [-22 -15 -7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [1\] to [10 -5 0\] at (2) should be [19 -11 -1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [unset\] to [1.5 1\] at (-1) should be [0.5 1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [26 17 9\] to [2 1\] at (1) should be [2 1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [1\] to [10 -5 0\] at (-1) should be [-8 7 2\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [none\] at (-1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from neutral to [1.5 1\] at (2) should be [1.9 1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [-10 5 1\] to [1\] at (0.75) should be [-1.75 2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [-10 5\] to [10 -5\] at (2) should be [30 -15\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [initial\] at (0) should be [2 0.5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [1\] to [10 -5 0\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [none\] to [4 3 2\] at (0.125) should be [1.375 1.25 1.125\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 0.5 1\] to [inherit\] at (0.25) should be [1.625 0.625 1.25\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [1\] to [10 -5 0\] at (1) should be [10 -5 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [-10 5\] to [10 -5\] at (2) should be [30 -15\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [4 3 2\] at (2) should be [7 5 3\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [2 0.5 1\] at (-1) should be [-1 1.5 3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 30 400\] to [10 110 1200\] at (-1) should be [-6 -50 -400\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [-10 5 1\] to [1\] at (-1) should be [-21 9\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (0) should be [2 30 400\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 0.5 1\] to [inherit\] at (2) should be [-1 1.5 3\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [none\] at (0.875) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [2 0.5 1\] at (2) should be [3.5 0 0\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5\] to [10 -5\] at (0.25) should be [-5 2.5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [inherit\] at (1) should be [0.5 1 2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 0.5 1\] to [inherit\] at (0.75) should be [0.875 0.875 1.75\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [initial\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [initial\] at (-1) should be [3 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [-10 5 1\] to [1\] at (2) should be [12 -3\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [2 0.5 1\] at (-1) should be [-1 1.5 3\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5 1\] to [1\] at (2) should be [12 -3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 30 400\] to [10 110 1200\] at (0.125) should be [3 40 500\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [-10 5\] to [10 -5\] at (0.75) should be [5 -2.5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (0) should be [2 30 400\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 0.5 1\] to [initial\] at (0.25) should be [1.75 0.6251\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5\] to [10 -5\] at (1) should be [10 -5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [inherit\] to [2 0.5 1\] at (1) should be [2 0.5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [unset\] to [1.5 1\] at (2) should be [2 1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [none\] to [4 3 2\] at (-1) should be [-2 -1 0\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [26 17 9\] to [2 1\] at (0.875) should be [5 3 2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 0.5 1\] to [inherit\] at (-1) should be [3.5 0 0\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [none\] at (-1) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [initial\] to [2 0.5 1\] at (2) should be [3 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [-10 5 1\] to [1\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [-10 5\] to [10 -5\] at (0.75) should be [5 -2.5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [inherit\] to [initial\] at (0.75) should be [0.875 1 1.25\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [4 3 2\] at (1) should be [4 3 2\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (2) should be [18 190 2000\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [26 17 9\] to [2 1\] at (0.125) should be [23 15 8\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [unset\] to [1.5 1\] at (0.75) should be [1.375 1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [unset\] to [1.5 1\] at (0.25) should be [1.125 1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5\] to [10 -5\] at (0) should be [-10 5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [-10 5 1\] to [1\] at (0.25) should be [-7.25 4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [inherit\] to [initial\] at (-1) should be [0 1 3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [26 17 9\] to [2 1\] at (-1) should be [50 33 17\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [inherit\] at (2) should be [-1 1.5 3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [initial\] to [inherit\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [none\] at (0.125) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [2 0.5 1\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [initial\] to [inherit\] at (2) should be [0 1 3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [1\] to [10 -5 0\] at (2) should be [19 -11 -1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [-10 5\] to [10 -5\] at (0.25) should be [-5 2.5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [inherit\] to [2 0.5 1\] at (2) should be [3.5 0 0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [initial\] to [2 0.5 1\] at (2) should be [3 0\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [1\] to [10 -5 0\] at (1) should be [10 -5 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 0.5 1\] to [inherit\] at (0.75) should be [0.875 0.875 1.75\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5\] to [10 -5\] at (0.75) should be [5 -2.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from neutral to [1.5 1\] at (2) should be [1.9 1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [none\] to [4 3 2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [inherit\] at (1) should be [0.5 1 2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from neutral to [1.5 1\] at (0.75) should be [1.4 1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (-1) should be [-6 -50 -400\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [26 17 9\] to [2 1\] at (1) should be [2 1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [inherit\] to [2 0.5 1\] at (0.25) should be [0.875 0.875 1.75\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [-10 5 1\] to [1\] at (0) should be [-10 5\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from neutral to [1.5 1\] at (0.25) should be [1.2 1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [-10 5 1\] to [1\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [1\] to [10 -5 0\] at (0.25) should be [3.25 -0.5 0.75\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 0.5 1\] to [initial\] at (0) should be [2 0.5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [none\] to [4 3 2\] at (0.875) should be [3.625 2.75 1.875\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 0.5 1\] to [initial\] at (0.75) should be [1.25 0.875\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5 1\] to [1\] at (0) should be [-10 5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [initial\] to [2 0.5 1\] at (-1) should be [0 1.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [initial\] at (0.25) should be [1.75 0.6251\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [-10 5 1\] to [1\] at (2) should be [12 -3\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [26 17 9\] to [2 1\] at (0.125) should be [23 15 8\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [initial\] at (-1) should be [0 1 3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 30 400\] to [10 110 1200\] at (0.125) should be [3 40 500\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [inherit\] at (1) should be [0.5 1 2\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [2 0.5 1\] at (0) should be [0.5 1 2\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [none\] at (0) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5 1\] to [1\] at (2) should be [12 -3\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5 1\] to [1\] at (0) should be [-10 5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [initial\] at (0.25) should be [0.625 1 1.75\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [4 3 2\] at (0.875) should be [3.625 2.75 1.875\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (0.125) should be [3 40 500\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [none\] at (0) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [26 17 9\] to [2 1\] at (0) should be [26 17 9\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [unset\] to [1.5 1\] at (0.25) should be [1.125 1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [inherit\] at (0) should be [2 0.5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5\] to [10 -5\] at (0.75) should be [5 -2.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [2 0.5 1\] at (2) should be [3.5 0 0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [26 17 9\] to [2 1\] at (0.875) should be [5 3 2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [unset\] to [1.5 1\] at (2) should be [2 1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [-10 5\] to [10 -5\] at (0.25) should be [-5 2.5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [2 0.5 1\] at (1) should be [2 0.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5\] to [10 -5\] at (2) should be [30 -15\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [-10 5 1\] to [1\] at (-1) should be [-21 9\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5 1\] to [1\] at (1) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [inherit\] at (-1) should be [3.5 0 0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [initial\] to [2 0.5 1\] at (1) should be [2 0.5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5 1\] to [1\] at (0.75) should be [-1.75 2\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [initial\] at (2) should be [1.5 1 0\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [1\] to [10 -5 0\] at (0.75) should be [7.75 -3.5 0.25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [none\] to [4 3 2\] at (2) should be [7 5 3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [initial\] to [2 0.5 1\] at (0.75) should be [1.75 0.625\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 30 400\] to [10 110 1200\] at (0.875) should be [9 100 1100\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [1\] to [10 -5 0\] at (-1) should be [-8 7 2\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [initial\] at (0.75) should be [1.25 0.875\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [26 17 9\] to [2 1\] at (2) should be [-22 -15 -7\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (1) should be [10 110 1200\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [none\] to [4 3 2\] at (0.125) should be [1.375 1.25 1.125\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 0.5 1\] to [initial\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [initial\] to [inherit\] at (0.75) should be [0.625 1 1.75\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [2 0.5 1\] at (2) should be [3 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [initial\] to [2 0.5 1\] at (0.25) should be [1.25 0.875\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 0.5 1\] to [initial\] at (-1) should be [3 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [26 17 9\] to [2 1\] at (-1) should be [50 33 17\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [1\] to [10 -5 0\] at (0) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [unset\] to [1.5 1\] at (0.75) should be [1.375 1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [4 3 2\] at (1) should be [4 3 2\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5 1\] to [1\] at (0.25) should be [-7.25 4\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [unset\] to [1.5 1\] at (2) should be [2 1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [initial\] at (-1) should be [3 0\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [initial\] at (0.75) should be [0.875 1 1.25\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [unset\] to [1.5 1\] at (0.25) should be [1.125 1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from neutral to [1.5 1\] at (1) should be [1.5 1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [inherit\] at (1) should be [0.5 1 2\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [unset\] to [1.5 1\] at (-1) should be [0.5 1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [inherit\] at (0.75) should be [0.875 0.875 1.75\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [2 0.5 1\] at (0) should be [0.5 1 2\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [4 3 2\] at (-1) should be [-2 -1 0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 0.5 1\] to [initial\] at (0.75) should be [1.25 0.875\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [1\] to [10 -5 0\] at (2) should be [19 -11 -1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [inherit\] to [initial\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 0.5 1\] to [initial\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [initial\] to [2 0.5 1\] at (0) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [initial\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [26 17 9\] to [2 1\] at (0.875) should be [5 3 2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [initial\] to [inherit\] at (0.25) should be [0.875 1 1.25\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [initial\] at (0.25) should be [0.625 1 1.75\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [inherit\] at (-1) should be [3.5 0 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [initial\] to [2 0.5 1\] at (1) should be [2 0.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from neutral to [1.5 1\] at (0.75) should be [1.4 1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 0.5 1\] to [initial\] at (2) should be [0 1.5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5 1\] to [1\] at (0.25) should be [-7.25 4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [unset\] to [1.5 1\] at (-1) should be [0.5 1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from neutral to [1.5 1\] at (2) should be [1.9 1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [inherit\] to [2 0.5 1\] at (-1) should be [-1 1.5 3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 0.5 1\] to [initial\] at (-1) should be [3 0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [initial\] to [inherit\] at (0) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [initial\] at (0) should be [0.5 1 2\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5\] to [10 -5\] at (-1) should be [-30 15\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [4 3 2\] at (2) should be [7 5 3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [1\] to [10 -5 0\] at (-1) should be [-8 7 2\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [2 0.5 1\] at (2) should be [3 0\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [2 0.5 1\] at (0.75) should be [1.625 0.625 1.25\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [inherit\] at (2) should be [0 1 3\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [4 3 2\] at (0.875) should be [3.625 2.75 1.875\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [inherit\] at (0.75) should be [0.625 1 1.75\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from neutral to [1.5 1\] at (0) should be [1.1 1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [initial\] to [2 0.5 1\] at (0.25) should be [1.25 0.875\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (0.125) should be [3 40 500\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from neutral to [1.5 1\] at (0.75) should be [1.4 1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5\] to [10 -5\] at (2) should be [30 -15\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [2 0.5 1\] at (-1) should be [0 1.5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from neutral to [1.5 1\] at (-1) should be [0.7 1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [4 3 2\] at (0.125) should be [1.375 1.25 1.125\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [initial\] at (2) should be [0 1.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [unset\] to [1.5 1\] at (-1) should be [0.5 1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [1\] to [10 -5 0\] at (0.25) should be [3.25 -0.5 0.75\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [2 0.5 1\] at (1) should be [2 0.5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [4 3 2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [-10 5 1\] to [1\] at (0) should be [-10 5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [inherit\] at (0) should be [2 0.5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from neutral to [1.5 1\] at (2) should be [1.9 1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [initial\] at (1) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from neutral to [1.5 1\] at (0.25) should be [1.2 1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [initial\] at (-1) should be [0 1 3\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [none\] at (2) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [initial\] to [2 0.5 1\] at (0.75) should be [1.75 0.625\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [4 3 2\] at (0.125) should be [1.375 1.25 1.125\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [unset\] to [1.5 1\] at (0.25) should be [1.125 1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [inherit\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (0.875) should be [9 100 1100\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [2 0.5 1\] at (0.25) should be [1.25 0.875\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [inherit\] at (0.25) should be [0.875 1 1.25\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [inherit\] at (-1) should be [1.5 1 0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [-10 5\] to [10 -5\] at (-1) should be [-30 15\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [unset\] to [1.5 1\] at (0) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [unset\] to [1.5 1\] at (1) should be [1.5 1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [inherit\] to [initial\] at (1) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [inherit\] at (0.25) should be [1.625 0.625 1.25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from neutral to [1.5 1\] at (0.25) should be [1.2 1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [unset\] to [1.5 1\] at (0.75) should be [1.375 1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [initial\] at (2) should be [0 1.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [inherit\] to [initial\] at (-1) should be [0 1 3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [inherit\] to [initial\] at (0.25) should be [0.625 1 1.75\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [inherit\] to [2 0.5 1\] at (2) should be [3.5 0 0\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [2 0.5 1\] at (0.25) should be [0.875 0.875 1.75\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [1\] to [10 -5 0\] at (0.75) should be [7.75 -3.5 0.25\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [2 0.5 1\] at (0.25) should be [0.875 0.875 1.75\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [1\] to [10 -5 0\] at (0.25) should be [3.25 -0.5 0.75\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [inherit\] at (0.75) should be [0.625 1 1.75\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [1\] to [10 -5 0\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [26 17 9\] to [2 1\] at (2) should be [-22 -15 -7\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [inherit\] to [2 0.5 1\] at (0.75) should be [1.625 0.625 1.25\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [initial\] at (0.25) should be [1.75 0.6251\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 0.5 1\] to [initial\] at (2) should be [0 1.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [initial\] to [inherit\] at (0.25) should be [0.875 1 1.25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [none\] to [4 3 2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [unset\] to [1.5 1\] at (2) should be [2 1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [none\] at (0.125) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [inherit\] to [initial\] at (2) should be [1.5 1 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 30 400\] to [10 110 1200\] at (0.875) should be [9 100 1100\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 0.5 1\] to [inherit\] at (-1) should be [3.5 0 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [26 17 9\] to [2 1\] at (1) should be [2 1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [inherit\] at (0.25) should be [0.875 1 1.25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [inherit\] to [initial\] at (2) should be [1.5 1 0\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 0.5 1\] to [initial\] at (0) should be [2 0.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [26 17 9\] to [2 1\] at (0.125) should be [23 15 8\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [inherit\] at (2) should be [-1 1.5 3\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5\] to [10 -5\] at (1) should be [10 -5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (0.875) should be [9 100 1100\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [unset\] to [1.5 1\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [initial\] to [inherit\] at (-1) should be [1.5 1 0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from neutral to [1.5 1\] at (-1) should be [0.7 1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5 1\] to [1\] at (0.75) should be [-1.75 2\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (-1) should be [-6 -50 -400\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [-10 5 1\] to [1\] at (0.25) should be [-7.25 4\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5\] to [10 -5\] at (0) should be [-10 5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [initial\] to [inherit\] at (2) should be [0 1 3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [-10 5 1\] to [1\] at (0.75) should be [-1.75 2\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [26 17 9\] to [2 1\] at (1) should be [2 1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5\] to [10 -5\] at (0.25) should be [-5 2.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [-10 5\] to [10 -5\] at (-1) should be [-30 15\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [inherit\] to [2 0.5 1\] at (-1) should be [-1 1.5 3\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5 1\] to [1\] at (-1) should be [-21 9\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [26 17 9\] to [2 1\] at (0.125) should be [23 15 8\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [4 3 2\] at (-1) should be [-2 -1 0\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [1\] to [10 -5 0\] at (2) should be [19 -11 -1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [26 17 9\] to [2 1\] at (-1) should be [50 33 17\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from neutral to [1.5 1\] at (1) should be [1.5 1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 0.5 1\] to [inherit\] at (0) should be [2 0.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 0.5 1\] to [initial\] at (0.25) should be [1.75 0.6251\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [none\] at (2) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [none\] to [4 3 2\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [26 17 9\] to [2 1\] at (0) should be [26 17 9\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 0.5 1\] to [inherit\] at (0.25) should be [1.625 0.625 1.25\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [2 0.5 1\] at (-1) should be [0 1.5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [inherit\] to [2 0.5 1\] at (0.25) should be [0.875 0.875 1.75\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [2 0.5 1\] at (0.75) should be [1.75 0.625\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [2 0.5 1\] at (1) should be [2 0.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [initial\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from neutral to [1.5 1\] at (0.25) should be [1.2 1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [inherit\] to [2 0.5 1\] at (1) should be [2 0.5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [inherit\] to [2 0.5 1\] at (0.75) should be [1.625 0.625 1.25\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [2 0.5 1\] at (0.75) should be [1.75 0.625\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [-10 5\] to [10 -5\] at (-1) should be [-30 15\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [inherit\] at (0) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [none\] to [none\] at (0.875) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [26 17 9\] to [2 1\] at (2) should be [-22 -15 -7\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [none\] to [4 3 2\] at (0.875) should be [3.625 2.75 1.875\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [2 30 400\] to [10 110 1200\] at (-1) should be [-6 -50 -400\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from neutral to [1.5 1\] at (-1) should be [0.7 1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [initial\] to [inherit\] at (-1) should be [1.5 1 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 0.5 1\] to [initial\] at (0) should be [2 0.5\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from neutral to [1.5 1\] at (-1) should be [0.7 1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [inherit\] to [initial\] at (2) should be [1.5 1 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [inherit\] to [2 0.5 1\] at (0.75) should be [1.625 0.625 1.25\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [unset\] to [1.5 1\] at (0.75) should be [1.375 1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [1\] to [10 -5 0\] at (0) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [2 0.5 1\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [1\] to [10 -5 0\] at (0.75) should be [7.75 -3.5 0.25\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [initial\] to [2 0.5 1\] at (0) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 30 400\] to [10 110 1200\] at (2) should be [18 190 2000\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [2 0.5 1\] to [initial\] at (0.75) should be [1.25 0.875\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 0.5 1\] to [inherit\] at (2) should be [-1 1.5 3\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [initial\] to [inherit\] at (2) should be [0 1 3\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [1\] to [10 -5 0\] at (-1) should be [-8 7 2\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [initial\] to [2 0.5 1\] at (-1) should be [0 1.5\]]
+ expected: FAIL
+
+ [Web Animations: property <scale> from [-10 5 1\] to [1\] at (1) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [2 0.5 1\] at (0.25) should be [1.25 0.875\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [initial\] to [inherit\] at (-1) should be [1.5 1 0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [none\] to [4 3 2\] at (-1) should be [-2 -1 0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <scale> from [2 30 400\] to [10 110 1200\] at (2) should be [18 190 2000\]]
+ expected: FAIL
+
+ [CSS Animations: property <scale> from [unset\] to [1.5 1\] at (1) should be [1.5 1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <scale> from [initial\] to [inherit\] at (0.75) should be [0.625 1 1.75\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-001.html.ini b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-001.html.ini
index 4ea34ca69cd..4dc473fa7ac 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-001.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-001.html.ini
@@ -1,5 +1,1084 @@
[transform-interpolation-001.html]
- expected: ERROR
[transform interpolation]
expected: FAIL
+ [Web Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (0.25) should be [skewX(12.5rad) perspective(425px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (2) should be [skewX(30rad) perspective(600px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0) should be [rotate3d(1, 1, 0, 90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (0) should be [scaleZ(1) perspective(400px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0) should be [rotate3d(1, 1, 0, 90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0.25) should be [rotateY(225deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (-1) should be [rotate3d(7, 8, 9, -60deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (-1) should be [rotate3d(0, 1, 0, -450deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (0.75) should be [perspective(475px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (2) should be [perspective(600px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (0.25) should be [rotate3d(0, 1, 0, 112.5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (2) should be [skewX(30rad) perspective(600px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (2) should be [rotateY(1800deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (-1) should be [skewX(0rad) perspective(300px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (1) should be [rotate3d(0, 1, 0, 450deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (0.25) should be [scaleZ(1.25) perspective(425px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0.25) should be [rotate3d(0.524083, 0.804261, 0.280178, 106.91deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(90deg)\] to [none\] at (0.75) should be [rotate(22.5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0.25) should be [rotateY(675deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (0.25) should be [rotate3d(0, 1, 0, 112.5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0.75) should be [rotate3d(7, 8, 9, 220deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (2) should be [scaleZ(3) perspective(600px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (0.75) should be [rotate3d(0, 1, 0, 337.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (2) should be [scaleZ(3) perspective(600px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(90deg)\] to [none\] at (0) should be [rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(90deg)\] at (0.25) should be [rotate(22.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (0) should be [skewX(10rad) perspective(400px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0) should be [rotateY(900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (2) should be [rotate3d(0, 1, 0, 900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(90deg)\] at (0.75) should be [rotate(67.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (-1) should be [rotateX(-700deg) rotateY(-800deg) rotateZ(-900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (0.75) should be [rotateZ(675deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (0.25) should be [scaleZ(1.25) perspective(425px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(90deg)\] to [none\] at (-1) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (2) should be [rotate3d(0, 1, 0, 900deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (2) should be [skewX(30rad) perspective(600px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (2) should be [rotate3d(0.71, 0, -0.71, 90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (0) should be [rotate3d(0, 1, 0, 0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0.75) should be [rotate3d(7, 8, 9, 337.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (2) should be [rotateY(1600deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (0) should be [rotate3d(0, 1, 0, 0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (1) should be [rotate3d(7, 8, 9, 450deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (1) should be [perspective(500px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (2) should be [rotate3d(7, 8, 9, 900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0.25) should be [rotate3d(7, 8, 9, 140deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0) should be [rotate3d(7, 8, 9, 0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (2) should be [rotate3d(7, 8, 9, 900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (0.75) should be [rotate3d(0, 1, 0, 337.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(90deg)\] to [none\] at (-1) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (0.75) should be [rotate3d(0, 1, 0, 337.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0.25) should be [rotateY(675deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (1) should be [skewX(20rad) perspective(500px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (1) should be [perspective(500px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0.75) should be [rotate3d(0.163027, 0.774382, 0.611354, 153.99deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (0) should be [rotate3d(0, 1, 0, 0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (-1) should be [rotateX(-700deg) rotateY(-800deg) rotateZ(-900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (2) should be [scaleZ(3) perspective(600px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (-1) should be [rotateX(-700deg) rotateY(-800deg) rotateZ(-900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (2) should be [rotate3d(0, 1, 0, 900deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0) should be [rotateY(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (1) should be [rotate3d(0, 1, 0, 450deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (1) should be [skewX(20rad) perspective(500px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (1) should be [rotate3d(0, 1, 1, 180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0) should be [rotateY(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0.75) should be [rotate3d(0.163027, 0.774382, 0.611354, 153.99deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (0.25) should be [rotateX(175deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (0.75) should be [rotateY(600deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(90deg)\] to [none\] at (1) should be [rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0.25) should be [rotateY(225deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(90deg)\] at (0.25) should be [rotate(22.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (1) should be [rotateX(700deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (1) should be [rotateZ(900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0.25) should be [rotate3d(0.524083, 0.804261, 0.280178, 106.91deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (2) should be [rotate(630deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (0.25) should be [rotate(105deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0) should be [rotate3d(7, 8, 9, 100deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (-1) should be [rotate3d(7, 8, 9, -60deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (1) should be [rotateY(900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (-1) should be [rotate3d(0.41, -0.41, -0.82, 120deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (0.75) should be [rotateY(600deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(90deg)\] to [none\] at (2) should be [rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (-1) should be [perspective(300px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (0.25) should be [skewX(12.5rad) perspective(425px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (2) should be [perspective(600px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (0.75) should be [rotate3d(0, 1, 0, 337.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (0) should be [scaleZ(1) perspective(400px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (0.75) should be [rotate3d(0, 1, 0, 337.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0.25) should be [rotate3d(7, 8, 9, 112.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(90deg)\] at (0.75) should be [rotate(67.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(90deg)\] at (-1) should be [rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (-1) should be [rotateY(-900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (0.25) should be [rotate3d(0, 1, 0, 112.5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (2) should be [scaleZ(3) perspective(600px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (2) should be [rotate3d(0, 1, 0, 900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (0.75) should be [rotateX(525deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (0.75) should be [rotate3d(0, 1, 0, 337.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (1) should be [rotateY(900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (0.75) should be [rotateX(525deg) rotateY(600deg) rotateZ(675deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (2) should be [rotate(630deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (1) should be [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (1) should be [rotate3d(7, 8, 9, 450deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0) should be [rotate3d(7, 8, 9, 100deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0) should be [rotateY(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (0.75) should be [rotateZ(675deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (1) should be [rotate3d(7, 8, 9, 260deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0) should be [rotate3d(7, 8, 9, 0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (-1) should be [scaleZ(0) perspective(300px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (0) should be [rotateZ(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (-1) should be [rotateY(-800deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(90deg)\] to [none\] at (0.25) should be [rotate(67.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (2) should be [rotateX(1400deg) rotateY(1600deg) rotateZ(1800deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (0) should be [rotateX(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(90deg)\] at (2) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (2) should be [rotateY(1600deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0) should be [rotateY(900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (0.25) should be [rotateZ(225deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0.25) should be [rotateY(675deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (2) should be [rotateY(-900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (-1) should be [rotateY(-800deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (0.25) should be [scaleZ(1.25) perspective(425px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(90deg)\] at (0.75) should be [rotate(67.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (1) should be [rotate3d(0, 1, 1, 180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (-1) should be [rotate3d(0.41, -0.41, -0.82, 120deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0.25) should be [rotate3d(7, 8, 9, 140deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (2) should be [rotateX(1400deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (-1) should be [rotateX(-700deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0.75) should be [rotateY(675deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0) should be [rotateY(900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (0.25) should be [rotate3d(0, 1, 0, 112.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(90deg)\] at (0) should be [rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (-1) should be [rotate3d(0, 1, 0, -450deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (2) should be [rotate3d(7, 8, 9, 420deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (2) should be [rotateX(1400deg) rotateY(1600deg) rotateZ(1800deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (-1) should be [rotateZ(-900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (-1) should be [rotateX(-700deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0) should be [rotate3d(7, 8, 9, 0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (-1) should be [rotate3d(0.41, -0.41, -0.82, 120deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (2) should be [rotate3d(7, 8, 9, 900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (1) should be [rotate3d(0, 1, 1, 180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (1) should be [scaleZ(2) perspective(500px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (1) should be [rotateY(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0.25) should be [rotate3d(7, 8, 9, 140deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (-1) should be [rotateY(1800deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0.75) should be [rotate3d(7, 8, 9, 220deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (0.25) should be [rotateX(175deg) rotateY(200deg) rotateZ(225deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (1) should be [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (2) should be [rotateX(1400deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (2) should be [rotateY(1600deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (2) should be [rotateZ(1800deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (0.25) should be [skewX(12.5rad) perspective(425px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (0) should be [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(90deg)\] to [none\] at (2) should be [rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (2) should be [rotate(630deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(90deg)\] at (1) should be [rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0.25) should be [rotate3d(0.524083, 0.804261, 0.280178, 106.91deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (2) should be [rotate3d(0.71, 0, -0.71, 90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (2) should be [rotateZ(1800deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (0.25) should be [rotateX(175deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (-1) should be [rotate(-270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0.75) should be [rotate3d(0.163027, 0.774382, 0.611354, 153.99deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (2) should be [rotate3d(0, 1, 0, 900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(90deg)\] at (2) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (2) should be [rotate3d(0.71, 0, -0.71, 90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0.75) should be [rotate3d(7, 8, 9, 337.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (0.75) should be [scaleZ(1.75) perspective(475px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (0.75) should be [rotateX(525deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (2) should be [skewX(30rad) perspective(600px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(90deg)\] at (0) should be [rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0.75) should be [rotate3d(7, 8, 9, 220deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(90deg)\] at (-1) should be [rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(90deg)\] to [none\] at (0.75) should be [rotate(22.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (-1) should be [rotate3d(0, 1, 0, -450deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (0.75) should be [rotateY(600deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(90deg)\] to [none\] at (-1) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0) should be [rotate3d(1, 1, 0, 90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(90deg)\] to [none\] at (2) should be [rotate(-90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(90deg)\] at (0.25) should be [rotate(22.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0) should be [rotate3d(7, 8, 9, 100deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (2) should be [rotateY(1800deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (1) should be [rotateY(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (1) should be [rotate3d(0, 1, 0, 450deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (-1) should be [rotate3d(0, 1, 0, -450deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (0.75) should be [rotate3d(0, 1, 0, 337.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (2) should be [rotateX(1400deg) rotateY(1600deg) rotateZ(1800deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (-1) should be [rotateZ(-900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(90deg)\] to [none\] at (0.25) should be [rotate(67.5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (2) should be [rotateY(-900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (-1) should be [rotate(-270deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (2) should be [rotateY(1800deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (-1) should be [skewX(0rad) perspective(300px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (0) should be [rotateZ(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (0) should be [perspective(400px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (0.75) should be [rotateY(600deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (-1) should be [rotate3d(0, 1, 0, -450deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0.75) should be [rotateY(675deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (1) should be [rotateY(800deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (0.75) should be [skewX(17.5rad) perspective(475px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (1) should be [rotateY(900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (0.75) should be [scaleZ(1.75) perspective(475px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (-1) should be [rotate3d(7, 8, 9, -450deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (-1) should be [rotate3d(7, 8, 9, -450deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (-1) should be [rotate(-270deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (0.25) should be [perspective(425px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (1) should be [rotate3d(7, 8, 9, 450deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (-1) should be [skewX(0rad) perspective(300px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (0.75) should be [rotate(255deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (-1) should be [rotateX(-700deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (1) should be [rotateZ(900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (0.25) should be [rotateY(200deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (-1) should be [scaleZ(0) perspective(300px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (0.75) should be [skewX(17.5rad) perspective(475px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(90deg)\] to [none\] at (0) should be [rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (2) should be [rotateY(-900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0.25) should be [rotate3d(7, 8, 9, 140deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (2) should be [rotateY(1600deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(90deg)\] at (2) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (0.75) should be [rotateX(525deg) rotateY(600deg) rotateZ(675deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (1) should be [rotate3d(0, 1, 1, 180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (-1) should be [rotateY(-900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0) should be [rotate3d(1, 1, 0, 90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (0.25) should be [rotateX(175deg) rotateY(200deg) rotateZ(225deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (0) should be [rotateX(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (1) should be [rotate3d(7, 8, 9, 260deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (-1) should be [rotateZ(-900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (0.25) should be [rotateZ(225deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0) should be [rotateY(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (-1) should be [rotateY(1800deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0.75) should be [rotateY(225deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0.75) should be [rotateY(225deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (0.75) should be [rotateZ(675deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(90deg)\] to [none\] at (0.75) should be [rotate(22.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (0.75) should be [perspective(475px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (-1) should be [perspective(300px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (0.25) should be [rotateX(175deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (1) should be [rotateY(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (1) should be [rotate3d(0, 1, 0, 450deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (-1) should be [rotate3d(7, 8, 9, -60deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (0) should be [rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (-1) should be [rotateY(1800deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0.75) should be [rotate3d(7, 8, 9, 220deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (2) should be [rotate3d(7, 8, 9, 420deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0.25) should be [rotateY(225deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (1) should be [rotateX(700deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (0.25) should be [scaleZ(1.25) perspective(425px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (0.25) should be [rotate(105deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (-1) should be [rotate(-270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (-1) should be [perspective(300px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0.75) should be [rotateY(675deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (0) should be [rotate3d(7, 8, 9, 100deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (0.25) should be [rotateY(200deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0.75) should be [rotateY(225deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (2) should be [perspective(600px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (0.25) should be [rotateZ(225deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (0.25) should be [rotateX(175deg) rotateY(200deg) rotateZ(225deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (2) should be [rotate3d(0, 1, 0, 900deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (0.25) should be [rotate3d(0, 1, 0, 112.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (2) should be [rotateY(1800deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (0.75) should be [rotateX(525deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (1) should be [rotateY(900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0.75) should be [rotateY(675deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (0.75) should be [perspective(475px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(90deg)\] to [none\] at (0.75) should be [rotate(22.5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(90deg)\] at (-1) should be [rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (-1) should be [rotate3d(7, 8, 9, -60deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (-1) should be [rotate3d(0, 1, 0, -450deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (0) should be [rotateY(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (-1) should be [perspective(300px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (0.25) should be [rotate3d(0, 1, 0, 112.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(90deg)\] to [none\] at (1) should be [rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (-1) should be [scaleZ(0) perspective(300px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (0.25) should be [rotateY(200deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0.75) should be [rotate3d(7, 8, 9, 337.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (0.75) should be [scaleZ(1.75) perspective(475px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (0.75) should be [rotate(255deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(90deg)\] at (0.75) should be [rotate(67.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (0.25) should be [perspective(425px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (2) should be [rotateZ(1800deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (1) should be [rotateY(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (1) should be [scaleZ(2) perspective(500px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0.25) should be [rotateY(675deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (-1) should be [rotate3d(0.41, -0.41, -0.82, 120deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (-1) should be [rotateZ(-900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (0.75) should be [rotate(255deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (-1) should be [rotateX(-700deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (0.25) should be [rotateX(175deg) rotateY(200deg) rotateZ(225deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (1) should be [rotate(330deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (-1) should be [scaleZ(0) perspective(300px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (-1) should be [rotateY(-900deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(90deg)\] to [none\] at (0.25) should be [rotate(67.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (2) should be [rotate3d(7, 8, 9, 900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(90deg)\] at (-1) should be [rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (-1) should be [rotateY(1800deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0) should be [rotateY(900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (-1) should be [skewX(0rad) perspective(300px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (0.25) should be [perspective(425px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (1) should be [rotate3d(7, 8, 9, 260deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (2) should be [rotateX(1400deg) rotateY(1600deg) rotateZ(1800deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (0.75) should be [rotateX(525deg) rotateY(600deg) rotateZ(675deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (-1) should be [rotate3d(0, 1, 0, -450deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (2) should be [rotate3d(7, 8, 9, 420deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0) should be [rotate3d(7, 8, 9, 0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0.75) should be [rotate3d(7, 8, 9, 337.5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (-1) should be [rotateX(-700deg) rotateY(-800deg) rotateZ(-900deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0.25) should be [rotate3d(7, 8, 9, 112.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (0.75) should be [rotateX(525deg) rotateY(600deg) rotateZ(675deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (2) should be [rotate3d(0, 1, 0, 900deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (2) should be [rotate3d(7, 8, 9, 420deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (2) should be [rotate3d(0.71, 0, -0.71, 90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0.25) should be [rotate3d(0.524083, 0.804261, 0.280178, 106.91deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (0.75) should be [perspective(475px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (0.25) should be [rotateZ(225deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(90deg)\] to [none\] at (-1) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (2) should be [rotateX(1400deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (0.25) should be [skewX(12.5rad) perspective(425px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (0) should be [skewX(10rad) perspective(400px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (2) should be [rotate(630deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (0.25) should be [rotate(105deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (0.75) should be [rotate(255deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (-1) should be [rotateY(-800deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(90deg)\] at (2) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (0.25) should be [rotate3d(0, 1, 0, 112.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (0) should be [rotate(30deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (-1) should be [rotateY(-900deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (0.25) should be [perspective(425px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg)\] to [rotateY(900deg)\] at (0.25) should be [rotateY(225deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (0.75) should be [skewX(17.5rad) perspective(475px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\] to [rotateX(700deg) rotateY(800deg) rotateZ(900deg)\] at (0) should be [rotateX(0deg) rotateY(0deg) rotateZ(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(90deg)\] at (1) should be [rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (0.25) should be [rotateY(200deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (0.75) should be [rotateX(525deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (2) should be [rotateZ(1800deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (-1) should be [rotate3d(0, 1, 0, -450deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateZ(0deg)\] to [rotateZ(900deg)\] at (0.75) should be [rotateZ(675deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (1) should be [rotate(330deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (0) should be [rotate3d(0, 1, 0, 0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (2) should be [rotateX(1400deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (0) should be [perspective(400px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (-1) should be [rotateY(-800deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) perspective(400px)\] to [skewX(20rad) perspective(500px)\] at (0.75) should be [skewX(17.5rad) perspective(475px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (0.25) should be [rotate3d(0, 1, 0, 112.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateX(0deg)\] to [rotateX(700deg)\] at (0.25) should be [rotateX(175deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(90deg)\] to [none\] at (2) should be [rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(90deg)\] at (0.25) should be [rotate(22.5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(30deg)\] to [rotate(330deg)\] at (0.25) should be [rotate(105deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (1) should be [rotateY(800deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (-1) should be [rotate3d(7, 8, 9, -450deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0.25) should be [rotate3d(7, 8, 9, 112.5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (1) should be [rotate3d(7, 8, 9, 450deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 1, 0, 450deg)\] at (0.75) should be [rotate3d(0, 1, 0, 337.5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotateY(0deg)\] to [rotateY(800deg)\] at (0) should be [rotateY(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(0, 1, 0, 0deg)\] to [rotate3d(0, 2, 0, 450deg)\] at (2) should be [rotate3d(0, 1, 0, 900deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (2) should be [rotateY(-900deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(90deg)\] to [none\] at (0.25) should be [rotate(67.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate3d(7, 8, 9, 100deg)\] to [rotate3d(7, 8, 9, 260deg)\] at (1) should be [rotate3d(7, 8, 9, 260deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (0.25) should be [rotate3d(7, 8, 9, 112.5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [perspective(400px)\] to [perspective(500px)\] at (2) should be [perspective(600px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1) perspective(400px)\] to [scaleZ(2) perspective(500px)\] at (0.75) should be [scaleZ(1.75) perspective(475px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate3d(7, 8, 9, 0deg)\] to [rotate3d(7, 8, 9, 450deg)\] at (-1) should be [rotate3d(7, 8, 9, -450deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate3d(1, 1, 0, 90deg)\] to [rotate3d(0, 1, 1, 180deg)\] at (0.75) should be [rotate3d(0.163027, 0.774382, 0.611354, 153.99deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotateY(900deg)\] to [rotateZ(0deg)\] at (0.75) should be [rotateY(225deg)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-002.html.ini b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-002.html.ini
index ab072437844..d896b54ed12 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-002.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-002.html.ini
@@ -1,5 +1,556 @@
[transform-interpolation-002.html]
- expected: ERROR
[transform interpolation]
expected: FAIL
+ [CSS Transitions: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (0.75) should be [scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (0.25) should be [scaleY(6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (2) should be [scale(2, -1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (0) should be [scale3d(2, 3, 5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (2) should be [scale3d(3, 5, 9)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (0.75) should be [scale3d(1.75, 2.5, 4)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (1) should be [scaleZ(2)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (2) should be [scaleX(30) scaleY(1.5) scaleZ(3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (1) should be [scale3d(2, 3, 5)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (0.25) should be [scaleX(12.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (1) should be [scale(20, 9)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (-1) should be [scale3d(3, 5, 9)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (0.25) should be [scaleX(12.5) scaleY(0.625) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (1) should be [scale(1, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (2) should be [scale3d(0, -1, -3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (-1) should be [scaleX(0) scaleY(0) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (0.75) should be [scale(17.5, 8)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (-1) should be [scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (-1) should be [scaleX(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (0.75) should be [scale3d(17.5, 0.875, 1.75)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (0.25) should be [scale3d(1.25, 1.5, 2)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0.25) should be [scale(0.25, 0.75)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (2) should be [scale3d(3, 5, 9)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (2) should be [scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0) should be [scale(0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (0) should be [scale3d(2, 3, 5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (-1) should be [scaleX(0) scaleY(0) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (2) should be [scale(2, -1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0.25) should be [scale(0.25, 0.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (0) should be [scaleX(10) scaleY(0.5) scaleZ(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (0.25) should be [scale(12.5, 6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (2) should be [scale3d(30, 1.5, 3)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (0.25) should be [scale3d(12.5, 0.625, 1.25)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (-1) should be [scale3d(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (0.75) should be [scale(17.5, 8)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (0.75) should be [scale3d(1.25, 1.5, 2)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (0) should be [scaleX(10)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (0.75) should be [scaleZ(1.75)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (1) should be [scale3d(20, 1, 2)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (2) should be [scale3d(30, 1.5, 3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (0) should be [scaleX(10) scaleY(0.5) scaleZ(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (0.25) should be [scaleY(6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (-1) should be [scale(-1, 2)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (0.25) should be [scale3d(1.25, 1.5, 2)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (-1) should be [scale3d(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (0) should be [scaleZ(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (0) should be [scaleY(5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (0.25) should be [scaleX(12.5) scaleY(0.625) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (-1) should be [scaleY(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (2) should be [scale(30, 13)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (0.75) should be [scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (2) should be [scale(30, 13)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (0.25) should be [scale3d(12.5, 0.625, 1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (0.75) should be [scaleX(17.5) scaleY(0.875) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (0.75) should be [scaleY(8)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (2) should be [scale3d(30, 1.5, 3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (0.75) should be [scale3d(17.5, 0.875, 1.75)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (2) should be [scaleX(30)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (-1) should be [scale(0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (-1) should be [scaleZ(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (2) should be [scaleX(30)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0.75) should be [scale(0.75, 0.25)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (-1) should be [scaleX(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (0) should be [scaleY(5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (0.25) should be [scaleX(12.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (0.75) should be [scale3d(1.75, 2.5, 4)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (0.75) should be [scaleX(17.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0.75) should be [scale(0.75, 0.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (-1) should be [scale3d(0, -1, -3)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (-1) should be [scaleY(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (0.25) should be [scale3d(1.75, 2.5, 4)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (0.25) should be [scaleY(6)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (-1) should be [scale3d(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (0) should be [scale3d(10, 0.5, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (0) should be [scale(10, 5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (0.75) should be [scale3d(17.5, 0.875, 1.75)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (1) should be [scale3d(1, 1, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (2) should be [scale(30, 13)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (0.25) should be [scale3d(1.25, 1.5, 2)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (0) should be [scale3d(10, 0.5, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0) should be [scale(0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (2) should be [scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (1) should be [scaleZ(2)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (2) should be [scale3d(0, -1, -3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (1) should be [scaleX(20) scaleY(1) scaleZ(2)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (-1) should be [scale(-1, 2)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (2) should be [scale(30, 13)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0) should be [scale(0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (1) should be [scaleX(20)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (0.75) should be [scaleX(17.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (0.75) should be [scale3d(17.5, 0.875, 1.75)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (2) should be [scaleX(30) scaleY(1.5) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (1) should be [scaleX(20) scaleY(1) scaleZ(2)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (0.75) should be [scaleX(17.5) scaleY(0.875) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (0.75) should be [scaleY(8)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (0) should be [scale(10, 5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (2) should be [scale3d(0, -1, -3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (0.75) should be [scaleX(17.5) scaleY(0.875) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (1) should be [scaleX(20)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (2) should be [scale3d(3, 5, 9)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (0.25) should be [scale3d(1.75, 2.5, 4)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (2) should be [scale3d(3, 5, 9)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (0.25) should be [scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (-1) should be [scale(0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (-1) should be [scale(0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (0.75) should be [scale3d(1.75, 2.5, 4)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (-1) should be [scaleZ(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (-1) should be [scale(0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (0.75) should be [scaleX(17.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (-1) should be [scale3d(3, 5, 9)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (-1) should be [scaleY(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (-1) should be [scaleX(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (2) should be [scaleX(30)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (1) should be [scale(1, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0.25) should be [scale(0.25, 0.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (2) should be [scaleX(30) scaleY(1.5) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (1) should be [scaleY(9)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (0.25) should be [scale(12.5, 6)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (0.25) should be [scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (2) should be [scale3d(30, 1.5, 3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (0) should be [scale3d(1, 1, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (-1) should be [scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (-1) should be [scale3d(0, -1, -3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (0.25) should be [scale3d(1.25, 1.5, 2)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (1) should be [scale3d(1, 1, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (0.25) should be [scaleX(12.5) scaleY(0.625) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (0.75) should be [scaleY(8)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (2) should be [scaleX(30) scaleY(1.5) scaleZ(3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (0.25) should be [scale3d(1.75, 2.5, 4)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (-1) should be [scale3d(3, 5, 9)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (-1) should be [scale3d(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0.75) should be [scale(0.75, 0.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (-1) should be [scaleX(0) scaleY(0) scaleZ(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0) should be [scale(0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (0.25) should be [scale3d(12.5, 0.625, 1.25)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (1) should be [scale(1, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (0.75) should be [scaleX(17.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (0.25) should be [scaleX(12.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (0.25) should be [scaleX(12.5) scaleY(0.625) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (2) should be [scale(2, -1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0.25) should be [scale(0.25, 0.75)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (2) should be [scaleZ(3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (-1) should be [scale3d(0, -1, -3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (0.75) should be [scale(17.5, 8)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (-1) should be [scale3d(0, -1, -3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (0.75) should be [scale3d(1.25, 1.5, 2)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (0.75) should be [scale(17.5, 8)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (0) should be [scaleX(10)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (2) should be [scaleZ(3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (1) should be [scaleY(9)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (0.75) should be [scale3d(1.25, 1.5, 2)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (0.75) should be [scale3d(1.75, 2.5, 4)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (0.25) should be [scale3d(1.75, 2.5, 4)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (0.75) should be [scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (1) should be [scale3d(20, 1, 2)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (-1) should be [scaleX(0) scaleY(0) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (-1) should be [scaleY(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (2) should be [scaleY(13)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(10, 0.5, 1)\] to [scale3d(20, 1, 2)\] at (0.25) should be [scale3d(12.5, 0.625, 1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (2) should be [scale(2, -1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (2) should be [scaleY(13)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (-1) should be [scale(-1, 2)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (0.25) should be [scaleZ(1.25)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (0) should be [scaleZ(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (0.75) should be [scale(0.75, 0.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (0.25) should be [scaleX(12.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (0.25) should be [scale(12.5, 6)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (-1) should be [scale3d(3, 5, 9)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (0.25) should be [scaleY(6)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (-1) should be [scale(-1, 2)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (1) should be [scale3d(2, 3, 5)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (0.25) should be [scale(12.5, 6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(1)\] to [scaleZ(2)\] at (0.25) should be [scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (2) should be [scaleY(13)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (0.75) should be [scale3d(1.25, 1.5, 2)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (-1) should be [scaleX(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(0)\] to [scaleY(0)\] at (1) should be [scale(1, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [scale3d(2, 3, 5)\] at (0) should be [scale3d(1, 1, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale(10, 5)\] to [scale(20, 9)\] at (1) should be [scale(20, 9)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scale3d(2, 3, 5)\] to [none\] at (2) should be [scale3d(0, -1, -3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (2) should be [scaleY(13)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleY(5)\] to [scaleY(9)\] at (0.75) should be [scaleY(8)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleX(10) scaleY(0.5) scaleZ(1)\] to [scaleX(20) scaleY(1) scaleZ(2)\] at (0.75) should be [scaleX(17.5) scaleY(0.875) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleX(10)\] to [scaleX(20)\] at (2) should be [scaleX(30)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-003.html.ini b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-003.html.ini
index eeeb89a8175..5664f064c47 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-003.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-003.html.ini
@@ -1,5 +1,442 @@
[transform-interpolation-003.html]
- expected: ERROR
[transform interpolation]
expected: FAIL
+ [CSS Transitions: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (2) should be [skewX(30rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (2) should be [skewX(30rad) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (0.25) should be [skewX(12.5rad) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (0) should be [skewX(10rad) scaleZ(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (0.75) should be [skewX(17.5rad) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (-1) should be [translateY(50%) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (0.75) should be [skewY(17.5rad)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (2) should be [translateY(110%) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (0.25) should be [translateY(75%) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (2) should be [translateY(110%) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (0.75) should be [skewX(17.5rad)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0.25) should be [scaleZ(3.25) matrix3d(1, 0, 0, 0, 0.389352, 1, 0, 0, 0, 0, 1, -0.002375, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (2) should be [skewX(30rad) scaleZ(3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (0.75) should be [skewX(17.5rad) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (-1) should be [skewX(0rad) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0.75) should be [scaleZ(3.75) matrix3d(1, 0, 0, 0, 1.16806, 1, 0, 0, 0, 0, 1, -0.002125, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (1) should be [translateY(90%) scaleZ(2)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (-1) should be [translateY(50%) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0.75) should be [translateY(85%) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (2) should be [skewX(30rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (0.25) should be [skewY(12.5rad)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0.75) should be [scaleZ(3.75) matrix3d(1, 0, 0, 0, 1.16806, 1, 0, 0, 0, 0, 1, -0.002125, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (0.75) should be [translateY(85%) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (2) should be [skewX(30rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (0) should be [translateY(70%) scaleZ(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (0.75) should be [skewX(17.5rad) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (0.25) should be [skewY(12.5rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0.75) should be [scaleZ(3.75) matrix3d(1, 0, 0, 0, 1.16806, 1, 0, 0, 0, 0, 1, -0.002125, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0.75) should be [scaleZ(3.75) matrix3d(1, 0, 0, 0, 1.16806, 1, 0, 0, 0, 0, 1, -0.002125, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0) should be [translateY(70%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0.75) should be [translateY(85%) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (2) should be [skewX(30rad) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (2) should be [translateY(110%) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (2) should be [skewY(30rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (0) should be [skewX(10rad) scaleZ(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (0.25) should be [skewX(12.5rad) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (0.75) should be [skewY(17.5rad)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0.75) should be [translateY(85%) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (0.25) should be [skewX(12.5rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (1) should be [scaleZ(4) matrix3d(1, 0, 0, 0, 1.55741, 1, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (0.25) should be [skewX(12.5rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (1) should be [skewX(20rad) scaleZ(2)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (2) should be [skewY(30rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (-1) should be [skewX(0rad) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (1) should be [scaleZ(4) matrix3d(1, 0, 0, 0, 1.55741, 1, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (2) should be [skewX(30rad)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0.75) should be [translateY(85%) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (2) should be [skewY(30rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (-1) should be [translateY(50%) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (0.25) should be [translateY(75%) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (1) should be [scaleZ(4) matrix3d(1, 0, 0, 0, 1.55741, 1, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0) should be [translateY(70%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (1) should be [skewY(20rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (-1) should be [translateY(50%) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (2) should be [scaleZ(5) matrix3d(1, 0, 0, 0, 3.11482, 1, 0, 0, 0, 0, 1, -0.0015, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0) should be [scaleZ(3) matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (-1) should be [skewX(0rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (-1) should be [skewX(0rad) scaleZ(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (2) should be [scaleZ(5) matrix3d(1, 0, 0, 0, 3.11482, 1, 0, 0, 0, 0, 1, -0.0015, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (1) should be [translateY(90%) scaleZ(2)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (-1) should be [skewX(0rad) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (0.25) should be [skewX(12.5rad) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0) should be [translateY(70%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (2) should be [skewX(30rad) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0.25) should be [scaleZ(3.25) matrix3d(1, 0, 0, 0, 0.389352, 1, 0, 0, 0, 0, 1, -0.002375, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (2) should be [skewX(30rad) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (-1) should be [scaleZ(2) matrix3d(1, 0, 0, 0, -1.55741, 1, 0, 0, 0, 0, 1, -0.003, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (0.75) should be [skewX(17.5rad) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (2) should be [skewX(30rad) scaleZ(3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0.25) should be [scaleZ(3.25) matrix3d(1, 0, 0, 0, 0.389352, 1, 0, 0, 0, 0, 1, -0.002375, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (-1) should be [translateY(50%) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (-1) should be [scaleZ(2) matrix3d(1, 0, 0, 0, -1.55741, 1, 0, 0, 0, 0, 1, -0.003, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (0.75) should be [skewX(17.5rad) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (0.25) should be [skewX(12.5rad) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (0.25) should be [skewY(12.5rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (1) should be [skewX(20rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (0) should be [skewY(10rad)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (-1) should be [skewX(0rad) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (-1) should be [translateY(50%) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0.25) should be [translateY(75%) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (0.25) should be [skewX(12.5rad) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (0) should be [skewX(10rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (2) should be [translateY(110%) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (-1) should be [skewY(0rad)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0) should be [scaleZ(3) matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (2) should be [translateY(110%) scaleZ(3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (0.75) should be [skewY(17.5rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (0.75) should be [skewX(17.5rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (0.75) should be [translateY(85%) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (2) should be [scaleZ(5) matrix3d(1, 0, 0, 0, 3.11482, 1, 0, 0, 0, 0, 1, -0.0015, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (0.25) should be [skewX(12.5rad) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (0.75) should be [translateY(85%) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (2) should be [translateY(110%) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (-1) should be [skewX(0rad) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (-1) should be [skewX(0rad)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (2) should be [skewX(30rad) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (2) should be [skewX(30rad) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (1) should be [translateY(90%) scaleZ(2)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (0) should be [skewY(10rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (2) should be [skewY(30rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (0.75) should be [skewY(17.5rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (0.25) should be [translateY(75%) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (1) should be [scaleZ(4) matrix3d(1, 0, 0, 0, 1.55741, 1, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (-1) should be [skewY(0rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (2) should be [scaleZ(5) matrix3d(1, 0, 0, 0, 3.11482, 1, 0, 0, 0, 0, 1, -0.0015, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0) should be [scaleZ(3) matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (0) should be [skewX(10rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (0) should be [skewX(10rad) scaleZ(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (0.75) should be [skewX(17.5rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (2) should be [translateY(110%) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (-1) should be [skewX(0rad) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (1) should be [skewX(20rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0) should be [translateY(70%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0.25) should be [translateY(75%) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (-1) should be [skewX(0rad) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (0) should be [skewX(10rad) scaleZ(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (-1) should be [translateY(50%) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (0.75) should be [skewX(17.5rad) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (0.75) should be [skewX(17.5rad)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (1) should be [skewX(20rad) scaleZ(2)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (0.75) should be [skewX(17.5rad) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (-1) should be [scaleZ(2) matrix3d(1, 0, 0, 0, -1.55741, 1, 0, 0, 0, 0, 1, -0.003, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0.25) should be [translateY(75%) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (0.25) should be [skewX(12.5rad) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (1) should be [translateY(90%) scaleZ(2)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0) should be [scaleZ(3) matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (0.25) should be [scaleZ(3.25) matrix3d(1, 0, 0, 0, 0.389352, 1, 0, 0, 0, 0, 1, -0.002375, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (0.75) should be [skewX(17.5rad) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) scaleZ(1)\] to [skewX(20rad) scaleZ(2)\] at (1) should be [skewX(20rad) scaleZ(2)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (0.25) should be [skewY(12.5rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (-1) should be [skewY(0rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (-1) should be [skewX(0rad)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (-1) should be [translateY(50%) scaleZ(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (-1) should be [skewY(0rad)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (0.25) should be [translateY(75%) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (0.75) should be [translateY(85%) scaleZ(1.75)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (0.25) should be [skewX(12.5rad)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (1) should be [skewX(20rad) scaleZ(2)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (0.25) should be [skewX(12.5rad)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad)\] to [skewX(20rad) scaleZ(2)\] at (0.25) should be [skewX(12.5rad) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad)\] to [skewX(20rad)\] at (-1) should be [skewX(0rad)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (2) should be [translateY(110%) scaleZ(3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%) scaleZ(2)\] at (0.25) should be [translateY(75%) scaleZ(1.25)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%) scaleZ(1)\] to [translateY(90%) scaleZ(2)\] at (0) should be [translateY(70%) scaleZ(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [scaleZ(3) perspective(400px)\] to [scaleZ(4) skewX(1rad) perspective(500px)\] at (-1) should be [scaleZ(2) matrix3d(1, 0, 0, 0, -1.55741, 1, 0, 0, 0, 0, 1, -0.003, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewY(10rad)\] to [skewY(20rad)\] at (1) should be [skewY(20rad)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-004.html.ini b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-004.html.ini
index 477238cc89d..a0f428bb0a8 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-004.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-004.html.ini
@@ -1,5 +1,784 @@
[transform-interpolation-004.html]
- expected: ERROR
[transform interpolation]
expected: FAIL
+ [Web Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (1) should be [translate3d(13px, 90%, 3em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (1) should be [translate(13px, 90%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0.25) should be [translate3d(7px, -6px, 11px) skewX(1.25rad) matrix3d(1, 0, 0, 0, 0, 1.25, 0, 0, 0, 0, 1, -0.001875, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (-1) should be [translateX(11px) translateY(50%) translateZ(1em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (0.75) should be [translateX(12.75px) translateY(85%) translateZ(2.75em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (-1) should be [translateY(50%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (0.75) should be [translate3d(12.75px, 85%, 2.75em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (0.75) should be [skewX(17.5rad) translateY(85%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (0.75) should be [translateZ(2.75em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (0.25) should be [skewX(12.5rad) translateY(75%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (0.75) should be [translateY(85%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (0.25) should be [translate3d(12.25px, 75%, 2.25em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (-1) should be [translate3d(12px, 4px, 16px) skewX(0rad) matrix3d(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -0.005, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (0) should be [translate(12px, 70%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (0.75) should be [translateZ(2.75em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (-1) should be [translate3d(12px, 4px, 16px) matrix3d(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -0.003, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 100, 200, 300, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (-1) should be [translate3d(12px, 4px, 16px) matrix3d(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -0.003, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (0.75) should be [translateZ(2.75em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (2) should be [translateX(14px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0) should be [matrix3d(1, 0, 0, 0, 1.5574077246549023, 1, 0, 0, -0.02, 0.01, 0.97, -0.0025, 8, -4, 12, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (0.25) should be [translateX(12.25px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (0) should be [translateY(70%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (0) should be [translateX(12px) translateY(70%) translateZ(2em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (0.75) should be [translate(12.75px, 85%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (0.25) should be [translate(12.25px, 75%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (2) should be [translate(14px, 110%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (2) should be [matrix3d(1, 0, 0, 0, -11.227342763749263, 3, 0, 0, 0.021237113402061854, -0.010618556701030927, 1.03, -0.0014653608247422677, -8, 4, -12, 0.9861443298969074)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (0.25) should be [translateY(75%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (-1) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 200, 400, 600, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (-1) should be [translateZ(1em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (0.25) should be [translateY(75%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (0) should be [skewX(10rad) translateY(70%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0.25) should be [translate3d(7px, -6px, 11px) skewX(1.25rad) matrix3d(1, 0, 0, 0, 0, 1.25, 0, 0, 0, 0, 1, -0.001875, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0) should be [translate3d(8px, -4px, 12px) matrix3d(1, 0, 0, 0, 1.55741, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (0.75) should be [translate(12.75px, 85%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (0) should be [translateX(12px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (0.75) should be [translateX(12.75px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (0.75) should be [translateY(85%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (2) should be [translate3d(0px, -20px, 4px) matrix3d(1, 0, 0, 0, -4.67222, 3, 0, 0, 0, 0, 1, -0.0015, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0.25) should be [matrix3d(1, 0, 0, 0, 1.1186572632293585, 1.25, 0, 0, -0.0151159793814433, 0.00755798969072165, 0.9775, -0.002378247422680413, 6, -3, 9, 1.0012989690721648)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0.25) should be [matrix3d(1, 0, 0, 0, 1.1186572632293585, 1.25, 0, 0, -0.0151159793814433, 0.00755798969072165, 0.9775, -0.002378247422680413, 6, -3, 9, 1.0012989690721648)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (2) should be [translate3d(0px, -20px, 4px) skewX(3rad) matrix3d(1, 0, 0, 0, 0, 3, 0, 0, 0, 0, 1, 0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0.75) should be [matrix3d(1, 0, 0, 0, -0.7525665307288518, 1.75, 0, 0, -0.005115979381443298, 0.002557989690721649, 0.9924999999999999, -0.002128247422680412, 2, -1, 3, 1.001298969072165)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (0.25) should be [translateX(12.25px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (-1) should be [translate3d(12px, 4px, 16px) matrix3d(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -0.003, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (1) should be [translate3d(13px, 90%, 3em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (-1) should be [translate3d(11px, 50%, 1em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (2) should be [translate3d(14px, 110%, 4em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (-1) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 200, 400, 600, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (1) should be [matrix(1, 0, 0, 1, 0, 0) \]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0.25) should be [translate3d(7px, -6px, 11px) skewX(1.25rad) matrix3d(1, 0, 0, 0, 0, 1.25, 0, 0, 0, 0, 1, -0.001875, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (-1) should be [skewX(0rad) translateY(50%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (2) should be [matrix3d(1, 0, 0, 0, -11.227342763749263, 3, 0, 0, 0.021237113402061854, -0.010618556701030927, 1.03, -0.0014653608247422677, -8, 4, -12, 0.9861443298969074)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (-1) should be [matrix3d(1, 0, 0, 0, 0, 0, 0, 0, -0.03876288659793814, 0.01938144329896907, 0.94, -0.0029653608247422686, 16, -8, 24, 0.986144329896907)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (2) should be [translate3d(14px, 110%, 4em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (0.25) should be [translateX(12.25px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0.75) should be [translate3d(5px, -10px, 9px) skewX(1.75rad) matrix3d(1, 0, 0, 0, 0, 1.75, 0, 0, 0, 0, 1, -0.000625, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0.25) should be [matrix3d(1, 0, 0, 0, 0.621795827675797, 1, 0, 0, 0, 0, 1, 0, 2, -1, 3, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0.25) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 75, 150, 225, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (-1) should be [matrix3d(1, 0, 0, 0, 0, 0, 0, 0, -0.03876288659793814, 0.01938144329896907, 0.94, -0.0029653608247422686, 16, -8, 24, 0.986144329896907)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0) should be [matrix(1, 0, 1.5574077246549023, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (0.75) should be [translateX(12.75px) translateY(85%) translateZ(2.75em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (2) should be [matrix3d(1, 0, 0, 0, -11.227342763749263, 3, 0, 0, 0.021237113402061854, -0.010618556701030927, 1.03, -0.0014653608247422677, -8, 4, -12, 0.9861443298969074)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (0.25) should be [translateX(12.25px) translateY(75%) translateZ(2.25em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (0) should be [translateZ(2em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (0.25) should be [translateY(75%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (2) should be [translateX(14px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (2) should be [translateX(14px) translateY(110%) translateZ(4em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (2) should be [translateX(14px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (-1) should be [matrix3d(1, 0, 0, 0, 0, 0, 0, 0, -0.03876288659793814, 0.01938144329896907, 0.94, -0.0029653608247422686, 16, -8, 24, 0.986144329896907)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (1) should be [translate3d(4px, -12px, 8px) matrix3d(1, 0, 0, 0, 0, 2, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0.75) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 25, 50, 75, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0) should be [matrix(1, 0, 1.5574077246549023, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (1) should be [matrix3d(1, 0, 0, 0, -2.185039863261519, 1, 0, 0, 0, 0, 1, 0, 8, -4, 12, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (-1) should be [translate3d(11px, 50%, 1em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (-1) should be [translate(11px, 50%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (2) should be [translate3d(0px, -20px, 4px) matrix3d(1, 0, 0, 0, -4.67222, 3, 0, 0, 0, 0, 1, -0.0015, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0) should be [matrix(1, 0, 1.5574077246549023, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (0.25) should be [translateY(75%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0) should be [translate3d(8px, -4px, 12px) skewX(1rad) matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (1) should be [matrix3d(1, 0, 0, 0, -2.185039863261519, 2, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (0.75) should be [translate(12.75px, 85%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (2) should be [translate(14px, 110%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (1) should be [translateX(13px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0.75) should be [matrix3d(1, 0, 0, 0, -1.2494279662824135, 1, 0, 0, 0, 0, 1, 0, 6, -3, 9, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (0.25) should be [skewX(12.5rad) translateY(75%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (1) should be [matrix3d(1, 0, 0, 0, -2.185039863261519, 2, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (2) should be [matrix3d(1, 0, 0, 0, -5.9274874511779405, 1, 0, 0, 0, 0, 1, 0, 16, -8, 24, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (0.25) should be [translate3d(12.25px, 75%, 2.25em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (-1) should be [translateX(11px) translateY(50%) translateZ(1em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (2) should be [translate3d(0px, -20px, 4px) skewX(3rad) matrix3d(1, 0, 0, 0, 0, 3, 0, 0, 0, 0, 1, 0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (0.75) should be [translateZ(2.75em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (1) should be [matrix(1, 0, 0, 1, 0, 0) \]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (2) should be [translateZ(4em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 100, 200, 300, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0.25) should be [matrix3d(1, 0, 0, 0, 0.621795827675797, 1, 0, 0, 0, 0, 1, 0, 2, -1, 3, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (-1) should be [translate3d(12px, 4px, 16px) skewX(0rad) matrix3d(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -0.005, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (-1) should be [translateZ(1em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (-1) should be [translate3d(11px, 50%, 1em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (-1) should be [translate(11px, 50%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (0.25) should be [translateX(12.25px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (2) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -100, -200, -300, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (0.25) should be [translate3d(12.25px, 75%, 2.25em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (2) should be [translateX(14px) translateY(110%) translateZ(4em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (2) should be [skewX(30rad) translateY(110%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (-1) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 200, 400, 600, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (0.25) should be [translateX(12.25px) translateY(75%) translateZ(2.25em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (-1) should be [translateY(50%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (-1) should be [skewX(0rad) translateY(50%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0) should be [matrix(1, 0, 1.5574077246549023, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (-1) should be [translate3d(11px, 50%, 1em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (1) should be [matrix3d(1, 0, 0, 0, -2.185039863261519, 2, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0.75) should be [translate3d(5px, -10px, 9px) matrix3d(1, 0, 0, 0, 0.681366, 1.75, 0, 0, 0, 0, 1, -0.002125, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (0.25) should be [translateZ(2.25em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (2) should be [translateY(110%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0.75) should be [matrix3d(1, 0, 0, 0, -1.2494279662824135, 1, 0, 0, 0, 0, 1, 0, 6, -3, 9, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (2) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -100, -200, -300, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0.25) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 75, 150, 225, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (0) should be [translateX(12px) translateY(70%) translateZ(2em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (1) should be [translate(13px, 90%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (-1) should be [matrix3d(1, 0, 0, 0, 5.2998553125713235, 1, 0, 0, 0, 0, 1, 0, -8, 4, -12, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0) should be [translate3d(8px, -4px, 12px) matrix3d(1, 0, 0, 0, 1.55741, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (2) should be [translateY(110%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (1) should be [skewX(20rad) translateY(90%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (1) should be [matrix(1, 0, 0, 1, 0, 0) \]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (-1) should be [translateZ(1em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (0.25) should be [translateZ(2.25em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (0.75) should be [skewX(17.5rad) translateY(85%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0) should be [matrix3d(1, 0, 0, 0, 1.5574077246549023, 1, 0, 0, -0.02, 0.01, 0.97, -0.0025, 8, -4, 12, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (2) should be [translate3d(14px, 110%, 4em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (-1) should be [skewX(0rad) translateY(50%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (1) should be [translateX(13px) translateY(90%) translateZ(3em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (2) should be [translate3d(0px, -20px, 4px) skewX(3rad) matrix3d(1, 0, 0, 0, 0, 3, 0, 0, 0, 0, 1, 0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (0.25) should be [translateX(12.25px) translateY(75%) translateZ(2.25em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 100, 200, 300, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (1) should be [translate3d(4px, -12px, 8px) skewX(2rad) matrix(1, 0, 0, 2, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (2) should be [matrix3d(1, 0, 0, 0, -5.9274874511779405, 1, 0, 0, 0, 0, 1, 0, 16, -8, 24, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0.75) should be [translate3d(5px, -10px, 9px) skewX(1.75rad) matrix3d(1, 0, 0, 0, 0, 1.75, 0, 0, 0, 0, 1, -0.000625, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0.25) should be [matrix3d(1, 0, 0, 0, 1.1186572632293585, 1.25, 0, 0, -0.0151159793814433, 0.00755798969072165, 0.9775, -0.002378247422680413, 6, -3, 9, 1.0012989690721648)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (-1) should be [translate(11px, 50%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0.25) should be [matrix3d(1, 0, 0, 0, 0.621795827675797, 1, 0, 0, 0, 0, 1, 0, 2, -1, 3, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (2) should be [translate(14px, 110%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (2) should be [translate3d(0px, -20px, 4px) matrix3d(1, 0, 0, 0, -4.67222, 3, 0, 0, 0, 0, 1, -0.0015, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (-1) should be [translate3d(12px, 4px, 16px) matrix3d(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -0.003, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (0) should be [skewX(10rad) translateY(70%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (0) should be [translateZ(2em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (2) should be [translateY(110%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0.75) should be [matrix3d(1, 0, 0, 0, -0.7525665307288518, 1.75, 0, 0, -0.005115979381443298, 0.002557989690721649, 0.9924999999999999, -0.002128247422680412, 2, -1, 3, 1.001298969072165)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (1) should be [translateX(13px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (0) should be [translate3d(12px, 70%, 2em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (0.25) should be [translate(12.25px, 75%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (2) should be [translateX(14px) translateY(110%) translateZ(4em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (2) should be [translateZ(4em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (1) should be [matrix3d(1, 0, 0, 0, -2.185039863261519, 1, 0, 0, 0, 0, 1, 0, 8, -4, 12, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0.75) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 25, 50, 75, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (1) should be [matrix3d(1, 0, 0, 0, -2.185039863261519, 1, 0, 0, 0, 0, 1, 0, 8, -4, 12, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (1) should be [translate3d(4px, -12px, 8px) matrix3d(1, 0, 0, 0, 0, 2, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (2) should be [translateX(14px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (-1) should be [translate(11px, 50%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0.25) should be [translate3d(7px, -6px, 11px) matrix3d(1, 0, 0, 0, 1.46007, 1.25, 0, 0, 0, 0, 1, -0.002375, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (0.75) should be [translateX(12.75px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (0.75) should be [skewX(17.5rad) translateY(85%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0) should be [translate3d(8px, -4px, 12px) matrix3d(1, 0, 0, 0, 1.55741, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (-1) should be [matrix3d(1, 0, 0, 0, 5.2998553125713235, 1, 0, 0, 0, 0, 1, 0, -8, 4, -12, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0.75) should be [matrix3d(1, 0, 0, 0, -0.7525665307288518, 1.75, 0, 0, -0.005115979381443298, 0.002557989690721649, 0.9924999999999999, -0.002128247422680412, 2, -1, 3, 1.001298969072165)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (0.25) should be [skewX(12.5rad) translateY(75%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0.75) should be [translate3d(5px, -10px, 9px) matrix3d(1, 0, 0, 0, 0.681366, 1.75, 0, 0, 0, 0, 1, -0.002125, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (2) should be [translate3d(14px, 110%, 4em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0.25) should be [translate3d(7px, -6px, 11px) matrix3d(1, 0, 0, 0, 1.46007, 1.25, 0, 0, 0, 0, 1, -0.002375, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (0.25) should be [skewX(12.5rad) translateY(75%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0.25) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 75, 150, 225, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (0.25) should be [translateZ(2.25em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (2) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -100, -200, -300, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0.75) should be [translate3d(5px, -10px, 9px) matrix3d(1, 0, 0, 0, 0.681366, 1.75, 0, 0, 0, 0, 1, -0.002125, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (-1) should be [translateY(50%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0.75) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 25, 50, 75, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (2) should be [matrix3d(1, 0, 0, 0, -11.227342763749263, 3, 0, 0, 0.021237113402061854, -0.010618556701030927, 1.03, -0.0014653608247422677, -8, 4, -12, 0.9861443298969074)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (1) should be [translateZ(3em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (1) should be [matrix(1, 0, 0, 1, 0, 0) \]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0.25) should be [translate3d(7px, -6px, 11px) matrix3d(1, 0, 0, 0, 1.46007, 1.25, 0, 0, 0, 0, 1, -0.002375, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0) should be [translate3d(8px, -4px, 12px) skewX(1rad) matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (2) should be [translate(14px, 110%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (0.75) should be [translateX(12.75px) translateY(85%) translateZ(2.75em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (-1) should be [translateY(50%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (2) should be [matrix3d(1, 0, 0, 0, -5.9274874511779405, 1, 0, 0, 0, 0, 1, 0, 16, -8, 24, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (1) should be [matrix3d(1, 0, 0, 0, -2.185039863261519, 1, 0, 0, 0, 0, 1, 0, 8, -4, 12, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0.75) should be [translate3d(5px, -10px, 9px) skewX(1.75rad) matrix3d(1, 0, 0, 0, 0, 1.75, 0, 0, 0, 0, 1, -0.000625, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (0) should be [translate(12px, 70%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0) should be [translate3d(8px, -4px, 12px) matrix3d(1, 0, 0, 0, 1.55741, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0.75) should be [translate3d(5px, -10px, 9px) matrix3d(1, 0, 0, 0, 0.681366, 1.75, 0, 0, 0, 0, 1, -0.002125, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (0.75) should be [translate3d(12.75px, 85%, 2.75em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (2) should be [translateX(14px) translateY(110%) translateZ(4em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (1) should be [translateY(90%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (0.75) should be [translate(12.75px, 85%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (2) should be [translateZ(4em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (0) should be [translateX(12px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (0.75) should be [translate3d(12.75px, 85%, 2.75em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0.25) should be [matrix3d(1, 0, 0, 0, 1.1186572632293585, 1.25, 0, 0, -0.0151159793814433, 0.00755798969072165, 0.9775, -0.002378247422680413, 6, -3, 9, 1.0012989690721648)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (-1) should be [translateX(11px) translateY(50%) translateZ(1em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (1) should be [translate3d(4px, -12px, 8px) skewX(2rad) matrix(1, 0, 0, 2, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0) should be [matrix3d(1, 0, 0, 0, 1.5574077246549023, 1, 0, 0, -0.02, 0.01, 0.97, -0.0025, 8, -4, 12, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (-1) should be [translateX(11px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0) should be [translate3d(8px, -4px, 12px) skewX(1rad) matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (-1) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 200, 400, 600, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (2) should be [skewX(30rad) translateY(110%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (-1) should be [skewX(0rad) translateY(50%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (1) should be [translateZ(3em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0.75) should be [matrix3d(1, 0, 0, 0, -1.2494279662824135, 1, 0, 0, 0, 0, 1, 0, 6, -3, 9, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (-1) should be [translate3d(12px, 4px, 16px) skewX(0rad) matrix3d(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -0.005, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0.75) should be [matrix3d(1, 0, 0, 0, -1.2494279662824135, 1, 0, 0, 0, 0, 1, 0, 6, -3, 9, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (-1) should be [translateX(11px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (1) should be [translate3d(4px, -12px, 8px) skewX(2rad) matrix(1, 0, 0, 2, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (2) should be [skewX(30rad) translateY(110%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0.75) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 25, 50, 75, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (-1) should be [translateX(11px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (2) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -100, -200, -300, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (0.75) should be [translateX(12.75px) translateY(85%) translateZ(2.75em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (0.75) should be [translateY(85%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (0.75) should be [translate3d(12.75px, 85%, 2.75em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (0.25) should be [matrix3d(1, 0, 0, 0, 0.621795827675797, 1, 0, 0, 0, 0, 1, 0, 2, -1, 3, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (1) should be [translate3d(4px, -12px, 8px) skewX(2rad) matrix(1, 0, 0, 2, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (2) should be [skewX(30rad) translateY(110%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (0.75) should be [skewX(17.5rad) translateY(85%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (0.25) should be [translate3d(7px, -6px, 11px) matrix3d(1, 0, 0, 0, 1.46007, 1.25, 0, 0, 0, 0, 1, -0.002375, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (2) should be [translate3d(0px, -20px, 4px) skewX(3rad) matrix3d(1, 0, 0, 0, 0, 3, 0, 0, 0, 0, 1, 0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (2) should be [translate3d(0px, -20px, 4px) matrix3d(1, 0, 0, 0, -4.67222, 3, 0, 0, 0, 0, 1, -0.0015, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (0) should be [translate3d(12px, 70%, 2em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (0.75) should be [translateY(85%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (-1) should be [translate3d(12px, 4px, 16px) skewX(0rad) matrix3d(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -0.005, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (0.25) should be [translate(12.25px, 75%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (2) should be [matrix3d(1, 0, 0, 0, -5.9274874511779405, 1, 0, 0, 0, 0, 1, 0, 16, -8, 24, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (-1) should be [matrix3d(1, 0, 0, 0, 5.2998553125713235, 1, 0, 0, 0, 0, 1, 0, -8, 4, -12, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (0.75) should be [translateX(12.75px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0) should be [matrix3d(1, 0, 0, 0, 1.5574077246549023, 1, 0, 0, -0.02, 0.01, 0.97, -0.0025, 8, -4, 12, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (1) should be [translate3d(4px, -12px, 8px) matrix3d(1, 0, 0, 0, 0, 2, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0) should be [translate3d(8px, -4px, 12px) skewX(1rad) matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (2) should be [translateY(110%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0.25) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 75, 150, 225, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (0.75) should be [matrix3d(1, 0, 0, 0, -0.7525665307288518, 1.75, 0, 0, -0.005115979381443298, 0.002557989690721649, 0.9924999999999999, -0.002128247422680412, 2, -1, 3, 1.001298969072165)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (-1) should be [matrix3d(1, 0, 0, 0, 0, 0, 0, 0, -0.03876288659793814, 0.01938144329896907, 0.94, -0.0029653608247422686, 16, -8, 24, 0.986144329896907)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) scaleY(2) perspective(500px)\] at (1) should be [translate3d(4px, -12px, 8px) matrix3d(1, 0, 0, 0, 0, 2, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (0) should be [translateY(70%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate(12px, 70%)\] to [translate(13px, 90%)\] at (0.25) should be [translate(12.25px, 75%)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0.25) should be [translate3d(7px, -6px, 11px) skewX(1.25rad) matrix3d(1, 0, 0, 0, 0, 1.25, 0, 0, 0, 0, 1, -0.001875, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (0.25) should be [translateX(12.25px) translateY(75%) translateZ(2.25em)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateY(70%)\] to [translateY(90%)\] at (1) should be [translateY(90%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (-1) should be [translateX(11px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (1) should be [translateX(13px) translateY(90%) translateZ(3em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [translate3d(4px, -12px, 8px) skewX(2rad) scaleY(2)\] at (0.75) should be [translate3d(5px, -10px, 9px) skewX(1.75rad) matrix3d(1, 0, 0, 0, 0, 1.75, 0, 0, 0, 0, 1, -0.000625, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3D(100px, 200px, 300px)\] to [none\] at (0) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 100, 200, 300, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (0.25) should be [translateZ(2.25em)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (2) should be [translateZ(4em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translate3d(8px, -4px, 12px) skewX(1rad) perspective(400px)\] to [scaleY(2) skewX(2rad) perspective(500px)\] at (1) should be [matrix3d(1, 0, 0, 0, -2.185039863261519, 2, 0, 0, 0, 0, 1, -0.002, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px) translateY(70%) translateZ(2em)\] to [translateX(13px) translateY(90%) translateZ(3em)\] at (-1) should be [translateX(11px) translateY(50%) translateZ(1em)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [translateZ(2em)\] to [translateZ(3em)\] at (-1) should be [translateZ(1em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translateX(12px)\] to [translateX(13px)\] at (0.75) should be [translateX(12.75px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [skewX(1rad)\] to [translate3d(8px, -4px, 12px) skewX(2rad)\] at (-1) should be [matrix3d(1, 0, 0, 0, 5.2998553125713235, 1, 0, 0, 0, 0, 1, 0, -8, 4, -12, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [translate3d(12px, 70%, 2em)\] to [translate3d(13px, 90%, 3em)\] at (0.25) should be [translate3d(12.25px, 75%, 2.25em)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [skewX(10rad) translateY(70%)\] to [skewX(20rad) translateY(90%)\] at (1) should be [skewX(20rad) translateY(90%)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-005.html.ini b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-005.html.ini
index 74b4381cf8c..b99aad4b362 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-005.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-005.html.ini
@@ -1,5 +1,904 @@
[transform-interpolation-005.html]
- expected: ERROR
[transform interpolation]
expected: FAIL
+ [CSS Transitions with transition: all: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.25) should be [matrix(2.5, 0, 0, 4, 0, -4.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(180deg)\] at (0.75) should be [rotate(135deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.3333333333333333) should be [matrix(2.5000000000000004, 4.330127018922193, -0.8660254037844386, 0.5000000000000001, 4, -2)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.75) should be [matrix(5.5, 0, 1.31, 1.75, 4.5, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (2) should be [matrix(13, 0, 6, 3, 12, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(180deg)\] to [none\] at (0.25) should be [rotate(135deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (1) should be [matrix(7, 0, 2, 2, 6, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(360deg)\] at (2) should be [rotate(720deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (-1) should be [matrix(0, 5, 1, 0, -6, -12)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(360deg)\] at (2) should be [rotate(720deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (1) should be [matrix(1, 0, 0, 1, 0, -6)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (0.25) should be [matrix3d(2.441256919175, 0.0, 0.0, 0.0, 0.0, 2.571299218825, 0.0, 0.0, 0.0, 0.0, 2.6947530634, 0.0, 20.35889062555, 20.561444082325, 20.800684839349998, 1.0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (2) should be [matrix3d(3.0761619932999995, 0.0, 0.0, 0.0, 0.0, 2.3221331858, 0.0, 0.0, 0.0, 0.0, 2.9442666928000003, 0.0, 20.5331850252, 19.7952290231, 20.002012795600002, 1.0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(180deg)\] to [none\] at (-1) should be [rotate(360deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (2) should be [matrix3d(-1.2484405096414273, 0, -2.727892280477045, 0, 0, 5, 0, 0, 6.365081987779772, 0, -2.9130278558299967, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (2) should be [matrix3d(0, 0, 0, 0, 0, -1, 0, 0, 1.682941969615793, 0, -1.0806046117362795, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.5) should be [matrix(4, 0, 2, 4, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (0) should be [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.5) should be [matrix(2, 0, 0, 3, 0, -3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(180deg)\] at (0) should be [rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.3333333333333333) should be [matrix(3, 0, 1.6667, 5, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(360deg)\] at (-1) should be [rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(360deg)\] at (0.75) should be [rotate(270deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.5) should be [matrix(2, 0, 0, 3, 0, -3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (2) should be [matrix3d(-1.2484405096414273, 0, -2.727892280477045, 0, 0, 5, 0, 0, 6.365081987779772, 0, -2.9130278558299967, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(180deg)\] at (-1) should be [rotate(-180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.5) should be [matrix(2.8284271247461903, 2.82842712474619, -0.7071067811865475, 0.7071067811865476, 3, -3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (-1) should be [matrix(5, 0, 0, 9, 0, -12)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.25) should be [matrix(2.5, 0, 0, 4, 0, -4.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(180deg)\] to [none\] at (-1) should be [rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.3333333333333333) should be [matrix(2.5000000000000004, 4.330127018922193, -0.8660254037844386, 0.5000000000000001, 4, -2)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0) should be [matrix(1, 0, 0, 1, 0, -6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(180deg)\] to [none\] at (0.75) should be [rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (-1) should be [matrix(5, 0, 0, 9, 0, -12)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(180deg)\] at (1) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(360deg)\] at (1) should be [rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (1) should be [matrix(7, 0, 1, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (-1) should be [matrix3d(0, 0, 0, 0, 0, -1, 0, 0, 1.682941969615793, 0, -1.0806046117362795, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(360deg)\] at (0.75) should be [rotate(270deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(180deg)\] at (1) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (0) should be [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (0.25) should be [matrix3d(1.211140527138306, 0, -0.30925494906815365, 0, 0, 1.5, 0, 0, 0.43295692869541513, 0, 1.6955967379936283, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (0.25) should be [matrix3d(1.211140527138306, 0, -0.30925494906815365, 0, 0, 1.5, 0, 0, 0.43295692869541513, 0, 1.6955967379936283, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (2) should be [matrix3d(0, 0, 0, 0, 0, -1, 0, 0, 1.682941969615793, 0, -1.0806046117362795, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (1) should be [matrix(0, 7, -1, 0, 6, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (-1) should be [matrix3d(1.9877532948000005, 0.0, 0.0, 0.0, 0.0, 2.7492749567000003, 0.0, 0.0, 0.0, 0.0, 2.5165290423999997, 0.0, 20.2343946258, 21.1087405532, 21.371164870599998, 1.0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(360deg)\] at (2) should be [rotate(720deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (1) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (1) should be [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (1) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (1) should be [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (0) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.25) should be [matrix(2.5, 0, 0.31, 1.25, 1.5, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (-1) should be [matrix3d(-0.6299594065765657, -0.10825090106268696, -0.20133311671001855, 5.485724217214554, 6.358051978686152, 0.16496896269344588, 1.5760051143537075, -54.21568355620423, 0.7106057459805782, -1.1596356050622005, -0.11495342545397585, -4.913752963990824, -1.03125, -1.125, 3.5625, -5.901513951904114)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.3333333333333333) should be [matrix(2.598076211353316, 1.4999999999999998, -0.49999999999999994, 0.8660254037844387, 2, -4)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (1) should be [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (0) should be [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (0.75) should be [matrix3d(2.622658368925, 0.0, 0.0, 0.0, 0.0, 2.500108923675, 0.0, 0.0, 0.0, 0.0, 2.7660426718, 0.0, 20.408689025450002, 20.342525493975, 20.572492826850002, 1.0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (1) should be [matrix(1, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.6666666666666666) should be [matrix(5, 0, 2, 3, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (-1) should be [matrix3d(-1.2484405096414273, 0, -2.727892280477045, 0, 0, 5, 0, 0, 6.365081987779772, 0, -2.9130278558299967, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (2) should be [matrix(13, 0, -10, -5, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.75) should be [matrix(1.5, 0, 0, 2, 0, -1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (2) should be [matrix(-1, 0, 0, -3, 0, 6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (-1) should be [matrix3d(-1.2484405096414273, 0, -2.727892280477045, 0, 0, 5, 0, 0, 6.365081987779772, 0, -2.9130278558299967, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (0.25) should be [matrix3d(0.9041890962319094, 0.3522701519297133, -0.15240204298176957, -0.1428256720529315, -0.7579798772527586, 0.6803606288839232, -0.05133336076757235, 0.37904689530895724, -0.1957679784745485, 0.38554138029509327, 0.8226186974340638, 0.3370288143441876, -0.296875, -0.015625, 0.328125, 0.5930529142680923)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (-1) should be [matrix(-5, 0, -13, 13, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(180deg)\] to [none\] at (0.25) should be [rotate(135deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (-1) should be [matrix(-5, 0, -13, 13, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (0) should be [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (2) should be [matrix(-1, 0, 0, -3, 0, 6)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.75) should be [matrix(1.5, 0, 0, 2, 0, -1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (0.25) should be [matrix3d(0.7912976716694541, -0.4517927901159618, -0.6868745974719376, 1.2522201536338506, 0.7952183069582651, 0.06340410955800829, -0.7956629784232128, 2.2561737435012983, 0.345639443327071, -0.8934490945546473, 0.830131443385676, 1.2606901484983566, -1.0078125, 0.75, -0.703125, 2.4888661932358946)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0) should be [matrix(1, 0, 0, 7, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (-1) should be [matrix(-13, 0, 0, -1, 12, 6)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (2) should be [matrix3d(-1.1789992641434441, -0.7109729379601547, -0.4455746537954199, -21.703089533128907, -0.11137581475421703, -0.08822983871000473, -0.05695380894007451, -2.22667264132605, -3.1443917136741506, 1.8952588096345078, 2.426615889772007, -21.697523130750138, -1.5, 2.0625, -3.1875, -5.901513951904121)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (2) should be [matrix(13, 0, -10, -5, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.5) should be [matrix(2, 0, 0, 3, 0, -3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (1) should be [matrix(7, 0, 2, 2, 6, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (2) should be [matrix(13, 0, -10, -5, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.6666666666666666) should be [matrix(2.5000000000000004, 4.330127018922193, -0.8660254037844386, 0.5000000000000001, 4, -2)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(360deg)\] at (2) should be [rotate(720deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (-1) should be [matrix3d(-0.0000000000000002377810622383943, -1.0671050586638147, -0.08972656766237302, 1.3740432449326199, 0.98484601036295, -2.653201092395309, 0.6753819540610847, 3.6127240080250744, -2.7988839807429846, -1.2090004194153336, -0.5183744226115445, -0.7936088631686278, 1.1875, 0.0625, -1.3125, 5.340768914473683)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (2) should be [matrix(0, 5, 1, 0, -6, -12)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (2) should be [matrix3d(-0.5844534449366048, -0.42278005999296053, -0.4650580659922564, -0.6817595809063256, 0.9156938760088464, 0.3851647027225889, 0.9244443507516923, 0.7218225020358241, -0.0803568793574344, 0.1719974850210706, -0.49676609633513097, -0.25968177786904373, -2.375, -0.125, 2.625, 5.340768914473685)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(180deg)\] at (0.25) should be [rotate(45deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.3333333333333333) should be [matrix(2.5000000000000004, 4.330127018922193, -0.8660254037844386, 0.5000000000000001, 4, -2)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (2) should be [matrix(-13, 0, 0, -1, 12, 6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (2) should be [matrix3d(0.39048513570444376, 0.14780794797065988, 0.6963068100217401, -4.857907861239344, -2.967682789284791, 0.6004978769584385, -3.5472376016872444, 26.675324787979896, -2.5953724498995308, 1.6280843851961373, 0.8163834310586356, 9.001735256585825, 1.34375, -1, 0.9375, -14.881239394516227)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(360deg)\] at (0.25) should be [rotate(90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.5) should be [matrix(2.8284271247461903, 2.82842712474619, -0.7071067811865475, 0.7071067811865476, 3, -3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.75) should be [matrix(5.5, 0, 1.31, 1.75, 4.5, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.5) should be [matrix(4, 0, 0.75, 1.5, 3, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (2) should be [matrix(-13, 0, 0, -1, 12, 6)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (0.25) should be [matrix3d(1.2804555205291865, 0, -1.1928678300408346, 0, 0, 2.5, 0, 0, 2.215325970075836, 0, 2.377988823839918, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (-1) should be [matrix(-13, 0, 0, -1, 12, 6)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(180deg)\] at (0.25) should be [rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(180deg)\] at (2) should be [rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (0.75) should be [matrix3d(2.622658368925, 0.0, 0.0, 0.0, 0.0, 2.500108923675, 0.0, 0.0, 0.0, 0.0, 2.7660426718, 0.0, 20.408689025450002, 20.342525493975, 20.572492826850002, 1.0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (0.75) should be [matrix3d(0.35007413226026135, 0.7254385504141292, -0.4977009150941454, 0.09582061929004702, -1.1027525038949482, -0.5884810398827429, 0.4516829688651701, 0.5447944343861767, -0.68717798815684, 0.2657772247405681, 0.5465690479810023, 1.0836207863885503, -0.890625, -0.046875, 0.984375, 0.5930529142680927)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (0.75) should be [matrix3d(1.2804555205291865, 0, -1.1928678300408346, 0, 0, 2.5, 0, 0, 2.215325970075836, 0, 2.377988823839918, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(360deg)\] at (0) should be [rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (-1) should be [matrix(-5, 0, 0, 0, -6, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (-1) should be [matrix3d(-0.6299594065765657, -0.10825090106268696, -0.20133311671001855, 5.485724217214554, 6.358051978686152, 0.16496896269344588, 1.5760051143537075, -54.21568355620423, 0.7106057459805782, -1.1596356050622005, -0.11495342545397585, -4.913752963990824, -1.03125, -1.125, 3.5625, -5.901513951904114)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (-1) should be [matrix3d(0, 0, 0, 0, 0, -1, 0, 0, 1.682941969615793, 0, -1.0806046117362795, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (0.25) should be [matrix3d(0.9041890962319094, 0.3522701519297133, -0.15240204298176957, -0.1428256720529315, -0.7579798772527586, 0.6803606288839232, -0.05133336076757235, 0.37904689530895724, -0.1957679784745485, 0.38554138029509327, 0.8226186974340638, 0.3370288143441876, -0.296875, -0.015625, 0.328125, 0.5930529142680923)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (0.75) should be [matrix3d(0.6861191524977764, -0.18025672746204927, -0.8710297237546482, 0.6072134247444672, 0.2819931018922366, 0.27778974607679663, -0.6540128246146626, 0.5063632314069845, 0.5509562084361049, -0.3215202993119732, 0.5459062603735321, 2.8697154005492105, -1.3046875, 0.734375, -0.375, 1.6470169329910096)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.6666666666666666) should be [matrix(5, 0, 2, 3, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (-1) should be [matrix(5, 0, 0, 9, 0, -12)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0) should be [matrix(1, 0, 0, 1, 0, -6)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(360deg)\] at (-1) should be [rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0) should be [matrix(0, 7, -1, 0, 6, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(180deg)\] to [none\] at (0.75) should be [rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (-1) should be [matrix3d(-0.0000000000000002377810622383943, -1.0671050586638147, -0.08972656766237302, 1.3740432449326199, 0.98484601036295, -2.653201092395309, 0.6753819540610847, 3.6127240080250744, -2.7988839807429846, -1.2090004194153336, -0.5183744226115445, -0.7936088631686278, 1.1875, 0.0625, -1.3125, 5.340768914473683)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0) should be [matrix(1, 0, 0, 7, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (-1) should be [matrix3d(-0.6413028394192518, -1.0702420910513302, -0.5807595966791961, -18.02447171345163, 0.8211815704840004, 1.0980679097347057, 0.9399408862655454, 22.460730852026064, 0.28421009261178104, -0.5408346238741739, 0.5194791363698213, 3.075163035391172, -2.6875, 2, -1.875, -14.881239394516232)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (-1) should be [matrix3d(-0.6413028394192518, -1.0702420910513302, -0.5807595966791961, -18.02447171345163, 0.8211815704840004, 1.0980679097347057, 0.9399408862655454, 22.460730852026064, 0.28421009261178104, -0.5408346238741739, 0.5194791363698213, 3.075163035391172, -2.6875, 2, -1.875, -14.881239394516232)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (-1) should be [matrix(0, 5, 1, 0, -6, -12)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (0.25) should be [matrix3d(1.211140527138306, 0, -0.30925494906815365, 0, 0, 1.5, 0, 0, 0.43295692869541513, 0, 1.6955967379936283, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (-1) should be [matrix3d(-1.2484405096414273, 0, -2.727892280477045, 0, 0, 5, 0, 0, 6.365081987779772, 0, -2.9130278558299967, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (0) should be [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (2) should be [matrix(-13, 0, 0, -1, 12, 6)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (2) should be [matrix3d(-1.2484405096414273, 0, -2.727892280477045, 0, 0, 5, 0, 0, 6.365081987779772, 0, -2.9130278558299967, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(180deg)\] to [none\] at (0.75) should be [rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(180deg)\] at (2) should be [rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.3333333333333333) should be [matrix(2.598076211353316, 1.4999999999999998, -0.49999999999999994, 0.8660254037844387, 2, -4)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.6666666666666666) should be [matrix(5, 0, 2, 3, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(180deg)\] to [none\] at (2) should be [rotate(-180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(180deg)\] to [none\] at (1) should be [rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (0.25) should be [matrix3d(0.7912976716694541, -0.4517927901159618, -0.6868745974719376, 1.2522201536338506, 0.7952183069582651, 0.06340410955800829, -0.7956629784232128, 2.2561737435012983, 0.345639443327071, -0.8934490945546473, 0.830131443385676, 1.2606901484983566, -1.0078125, 0.75, -0.703125, 2.4888661932358946)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (1) should be [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (-1) should be [matrix(-5, 0, -13, 13, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(180deg)\] to [none\] at (-1) should be [rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (-1) should be [matrix(-5, 0, 0, 0, -6, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (2) should be [matrix3d(-0.5844534449366048, -0.42278005999296053, -0.4650580659922564, -0.6817595809063256, 0.9156938760088464, 0.3851647027225889, 0.9244443507516923, 0.7218225020358241, -0.0803568793574344, 0.1719974850210706, -0.49676609633513097, -0.25968177786904373, -2.375, -0.125, 2.625, 5.340768914473685)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.5) should be [matrix(4, 0, 0.75, 1.5, 3, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (0.25) should be [matrix3d(0.33652832679595723, 0.55254445148386, -0.7544724447833296, 0.22700224951774267, -0.69720168363685, -0.036373245768780864, 0.28149188169180933, -0.2845156818045006, -0.24737156018941048, 0.31207160370190334, 0.4564821058052897, 0.9220853089096839, -1.2265625, 0.203125, 0.75, 1.647016932991011)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(360deg)\] at (0.25) should be [rotate(90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (0.25) should be [matrix3d(2.441256919175, 0.0, 0.0, 0.0, 0.0, 2.571299218825, 0.0, 0.0, 0.0, 0.0, 2.6947530634, 0.0, 20.35889062555, 20.561444082325, 20.800684839349998, 1.0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.25) should be [matrix(2.5, 0, 0, 4, 0, -4.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.6666666666666666) should be [matrix(2.5000000000000004, 4.330127018922193, -0.8660254037844386, 0.5000000000000001, 4, -2)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (2) should be [matrix3d(-1.1789992641434441, -0.7109729379601547, -0.4455746537954199, -21.703089533128907, -0.11137581475421703, -0.08822983871000473, -0.05695380894007451, -2.22667264132605, -3.1443917136741506, 1.8952588096345078, 2.426615889772007, -21.697523130750138, -1.5, 2.0625, -3.1875, -5.901513951904121)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (-1) should be [matrix3d(0, 0, 0, 0, 0, -1, 0, 0, 1.682941969615793, 0, -1.0806046117362795, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (2) should be [matrix3d(-1.1789992641434441, -0.7109729379601547, -0.4455746537954199, -21.703089533128907, -0.11137581475421703, -0.08822983871000473, -0.05695380894007451, -2.22667264132605, -3.1443917136741506, 1.8952588096345078, 2.426615889772007, -21.697523130750138, -1.5, 2.0625, -3.1875, -5.901513951904121)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (0.25) should be [matrix3d(1.2804555205291865, 0, -1.1928678300408346, 0, 0, 2.5, 0, 0, 2.215325970075836, 0, 2.377988823839918, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.25) should be [matrix(2.5, 0, 0, 4, 0, -4.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.6666666666666666) should be [matrix(2.598076211353316, 1.4999999999999998, -0.49999999999999994, 0.8660254037844387, 2, -4)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.25) should be [matrix(2.5, 0, 0.31, 1.25, 1.5, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (0.25) should be [matrix3d(0.7912976716694541, -0.4517927901159618, -0.6868745974719376, 1.2522201536338506, 0.7952183069582651, 0.06340410955800829, -0.7956629784232128, 2.2561737435012983, 0.345639443327071, -0.8934490945546473, 0.830131443385676, 1.2606901484983566, -1.0078125, 0.75, -0.703125, 2.4888661932358946)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (-1) should be [matrix(0, 5, 1, 0, -6, -12)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (2) should be [matrix(0, 5, 1, 0, -6, -12)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (1) should be [matrix(0, 7, -1, 0, 6, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (2) should be [matrix3d(0.39048513570444376, 0.14780794797065988, 0.6963068100217401, -4.857907861239344, -2.967682789284791, 0.6004978769584385, -3.5472376016872444, 26.675324787979896, -2.5953724498995308, 1.6280843851961373, 0.8163834310586356, 9.001735256585825, 1.34375, -1, 0.9375, -14.881239394516227)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (-1) should be [matrix(-13, 0, 0, -1, 12, 6)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.5) should be [matrix(2.8284271247461903, 2.82842712474619, -0.7071067811865475, 0.7071067811865476, 3, -3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (1) should be [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0) should be [matrix(1, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(180deg)\] at (-1) should be [rotate(-180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.75) should be [matrix(1.5, 0, 0, 2, 0, -1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (1) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(180deg)\] at (0) should be [rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (1) should be [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (2) should be [matrix3d(-1.1789992641434441, -0.7109729379601547, -0.4455746537954199, -21.703089533128907, -0.11137581475421703, -0.08822983871000473, -0.05695380894007451, -2.22667264132605, -3.1443917136741506, 1.8952588096345078, 2.426615889772007, -21.697523130750138, -1.5, 2.0625, -3.1875, -5.901513951904121)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0) should be [matrix(1, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [rotate(180deg)\] to [none\] at (2) should be [rotate(-180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (2) should be [matrix3d(-1.2484405096414273, 0, -2.727892280477045, 0, 0, 5, 0, 0, 6.365081987779772, 0, -2.9130278558299967, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(180deg)\] to [none\] at (0.25) should be [rotate(135deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (0.75) should be [matrix3d(1.211140527138306, 0, -0.30925494906815365, 0, 0, 1.5, 0, 0, 0.43295692869541513, 0, 1.6955967379936283, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (2) should be [matrix3d(-0.5844534449366048, -0.42278005999296053, -0.4650580659922564, -0.6817595809063256, 0.9156938760088464, 0.3851647027225889, 0.9244443507516923, 0.7218225020358241, -0.0803568793574344, 0.1719974850210706, -0.49676609633513097, -0.25968177786904373, -2.375, -0.125, 2.625, 5.340768914473685)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (0) should be [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (0.25) should be [matrix3d(1.2804555205291865, 0, -1.1928678300408346, 0, 0, 2.5, 0, 0, 2.215325970075836, 0, 2.377988823839918, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (0.75) should be [matrix3d(2.622658368925, 0.0, 0.0, 0.0, 0.0, 2.500108923675, 0.0, 0.0, 0.0, 0.0, 2.7660426718, 0.0, 20.408689025450002, 20.342525493975, 20.572492826850002, 1.0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (0.25) should be [matrix3d(0.33652832679595723, 0.55254445148386, -0.7544724447833296, 0.22700224951774267, -0.69720168363685, -0.036373245768780864, 0.28149188169180933, -0.2845156818045006, -0.24737156018941048, 0.31207160370190334, 0.4564821058052897, 0.9220853089096839, -1.2265625, 0.203125, 0.75, 1.647016932991011)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (0) should be [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.6666666666666666) should be [matrix(2.5000000000000004, 4.330127018922193, -0.8660254037844386, 0.5000000000000001, 4, -2)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.5) should be [matrix(4, 0, 0.75, 1.5, 3, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (1) should be [matrix(1, 0, 0, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (0.75) should be [matrix3d(0.6861191524977764, -0.18025672746204927, -0.8710297237546482, 0.6072134247444672, 0.2819931018922366, 0.27778974607679663, -0.6540128246146626, 0.5063632314069845, 0.5509562084361049, -0.3215202993119732, 0.5459062603735321, 2.8697154005492105, -1.3046875, 0.734375, -0.375, 1.6470169329910096)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.6666666666666666) should be [matrix(5, 0, 2, 3, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (0) should be [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (2) should be [matrix(0, 5, 1, 0, -6, -12)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (0.75) should be [matrix3d(1.0093457700315165, -0.12746048375025829, -0.24746788943106088, 1.3202120308857304, 0.6128364656690982, 0.7600694601651116, -0.22233359857303325, 1.4081483224940277, 0.21669805381113447, -0.3786082265932788, 0.908354523914928, 0.6747509193960347, -0.3359375, 0.25, -0.234375, 2.4888661932358964)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (2) should be [matrix(-1, 0, 0, -3, 0, 6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [rotate(180deg)\] to [none\] at (0) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (-1) should be [matrix3d(-1.2484405096414273, 0, -2.727892280477045, 0, 0, 5, 0, 0, 6.365081987779772, 0, -2.9130278558299967, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.6666666666666666) should be [matrix(2.598076211353316, 1.4999999999999998, -0.49999999999999994, 0.8660254037844387, 2, -4)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (-1) should be [matrix(-5, 0, 0, 0, -6, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(360deg)\] at (0) should be [rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (2) should be [matrix3d(0, 0, 0, 0, 0, -1, 0, 0, 1.682941969615793, 0, -1.0806046117362795, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (0.75) should be [matrix3d(1.211140527138306, 0, -0.30925494906815365, 0, 0, 1.5, 0, 0, 0.43295692869541513, 0, 1.6955967379936283, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.6666666666666666) should be [matrix(2.598076211353316, 1.4999999999999998, -0.49999999999999994, 0.8660254037844387, 2, -4)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (2) should be [matrix(13, 0, -10, -5, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(180deg)\] at (0.25) should be [rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (2) should be [matrix3d(3.0761619932999995, 0.0, 0.0, 0.0, 0.0, 2.3221331858, 0.0, 0.0, 0.0, 0.0, 2.9442666928000003, 0.0, 20.5331850252, 19.7952290231, 20.002012795600002, 1.0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (-1) should be [matrix(-13, 0, 0, -1, 12, 6)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (0) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(180deg)\] at (-1) should be [rotate(-180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.6666666666666666) should be [matrix(2.598076211353316, 1.4999999999999998, -0.49999999999999994, 0.8660254037844387, 2, -4)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (0.25) should be [matrix3d(2.441256919175, 0.0, 0.0, 0.0, 0.0, 2.571299218825, 0.0, 0.0, 0.0, 0.0, 2.6947530634, 0.0, 20.35889062555, 20.561444082325, 20.800684839349998, 1.0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (2) should be [matrix3d(0.39048513570444376, 0.14780794797065988, 0.6963068100217401, -4.857907861239344, -2.967682789284791, 0.6004978769584385, -3.5472376016872444, 26.675324787979896, -2.5953724498995308, 1.6280843851961373, 0.8163834310586356, 9.001735256585825, 1.34375, -1, 0.9375, -14.881239394516227)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(180deg)\] at (0.75) should be [rotate(135deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (1) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(360deg)\] at (0.25) should be [rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (-1) should be [matrix3d(1.9877532948000005, 0.0, 0.0, 0.0, 0.0, 2.7492749567000003, 0.0, 0.0, 0.0, 0.0, 2.5165290423999997, 0.0, 20.2343946258, 21.1087405532, 21.371164870599998, 1.0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (0.75) should be [matrix3d(0.35007413226026135, 0.7254385504141292, -0.4977009150941454, 0.09582061929004702, -1.1027525038949482, -0.5884810398827429, 0.4516829688651701, 0.5447944343861767, -0.68717798815684, 0.2657772247405681, 0.5465690479810023, 1.0836207863885503, -0.890625, -0.046875, 0.984375, 0.5930529142680927)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(180deg)\] at (0.75) should be [rotate(135deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.3333333333333333) should be [matrix(2.598076211353316, 1.4999999999999998, -0.49999999999999994, 0.8660254037844387, 2, -4)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (-1) should be [matrix3d(0, 0, 0, 0, 0, -1, 0, 0, 1.682941969615793, 0, -1.0806046117362795, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (1) should be [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (-1) should be [matrix3d(-0.6413028394192518, -1.0702420910513302, -0.5807595966791961, -18.02447171345163, 0.8211815704840004, 1.0980679097347057, 0.9399408862655454, 22.460730852026064, 0.28421009261178104, -0.5408346238741739, 0.5194791363698213, 3.075163035391172, -2.6875, 2, -1.875, -14.881239394516232)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (2) should be [matrix(13, 0, 6, 3, 12, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(360deg)\] at (0.75) should be [rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0) should be [matrix(3, 0, 0, 5, 0, -6)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (0) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(180deg)\] to [none\] at (2) should be [rotate(-180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (0.75) should be [matrix3d(0.6861191524977764, -0.18025672746204927, -0.8710297237546482, 0.6072134247444672, 0.2819931018922366, 0.27778974607679663, -0.6540128246146626, 0.5063632314069845, 0.5509562084361049, -0.3215202993119732, 0.5459062603735321, 2.8697154005492105, -1.3046875, 0.734375, -0.375, 1.6470169329910096)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (-1) should be [matrix3d(1.9877532948000005, 0.0, 0.0, 0.0, 0.0, 2.7492749567000003, 0.0, 0.0, 0.0, 0.0, 2.5165290423999997, 0.0, 20.2343946258, 21.1087405532, 21.371164870599998, 1.0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (-1) should be [matrix3d(1.9877532948000005, 0.0, 0.0, 0.0, 0.0, 2.7492749567000003, 0.0, 0.0, 0.0, 0.0, 2.5165290423999997, 0.0, 20.2343946258, 21.1087405532, 21.371164870599998, 1.0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (1) should be [matrix(7, 0, 1, 1, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (0.75) should be [matrix3d(1.2804555205291865, 0, -1.1928678300408346, 0, 0, 2.5, 0, 0, 2.215325970075836, 0, 2.377988823839918, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (0.75) should be [matrix3d(0.35007413226026135, 0.7254385504141292, -0.4977009150941454, 0.09582061929004702, -1.1027525038949482, -0.5884810398827429, 0.4516829688651701, 0.5447944343861767, -0.68717798815684, 0.2657772247405681, 0.5465690479810023, 1.0836207863885503, -0.890625, -0.046875, 0.984375, 0.5930529142680927)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.5) should be [matrix(2.8284271247461903, 2.82842712474619, -0.7071067811865475, 0.7071067811865476, 3, -3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(180deg)\] at (0.25) should be [rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (0.75) should be [matrix3d(1.2804555205291865, 0, -1.1928678300408346, 0, 0, 2.5, 0, 0, 2.215325970075836, 0, 2.377988823839918, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(360deg)\] at (1) should be [rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.5) should be [matrix(2.8284271247461903, 2.82842712474619, -0.7071067811865475, 0.7071067811865476, 3, -3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(180deg)\] to [none\] at (-1) should be [rotate(360deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(360deg)\] at (0.75) should be [rotate(270deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(360deg)\] at (-1) should be [rotate(-360deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(180deg)\] to [none\] at (0) should be [rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.25) should be [matrix(2.5, 0, 0.31, 1.25, 1.5, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (0.75) should be [matrix3d(1.0093457700315165, -0.12746048375025829, -0.24746788943106088, 1.3202120308857304, 0.6128364656690982, 0.7600694601651116, -0.22233359857303325, 1.4081483224940277, 0.21669805381113447, -0.3786082265932788, 0.908354523914928, 0.6747509193960347, -0.3359375, 0.25, -0.234375, 2.4888661932358964)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.5) should be [matrix(2, 0, 0, 3, 0, -3)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (-1) should be [matrix(-5, 0, -13, 13, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0.75) should be [matrix(1.5, 0, 0, 2, 0, -1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (-1) should be [matrix3d(-0.6299594065765657, -0.10825090106268696, -0.20133311671001855, 5.485724217214554, 6.358051978686152, 0.16496896269344588, 1.5760051143537075, -54.21568355620423, 0.7106057459805782, -1.1596356050622005, -0.11495342545397585, -4.913752963990824, -1.03125, -1.125, 3.5625, -5.901513951904114)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (-1) should be [matrix(-5, 0, 0, 0, -6, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (0.75) should be [matrix3d(1.211140527138306, 0, -0.30925494906815365, 0, 0, 1.5, 0, 0, 0.43295692869541513, 0, 1.6955967379936283, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (2) should be [matrix(13, 0, 6, 3, 12, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (0.75) should be [matrix3d(1.2804555205291865, 0, -1.1928678300408346, 0, 0, 2.5, 0, 0, 2.215325970075836, 0, 2.377988823839918, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.5) should be [matrix(2.8284271247461903, 2.82842712474619, -0.7071067811865475, 0.7071067811865476, 3, -3)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (0.25) should be [matrix3d(0.7912976716694541, -0.4517927901159618, -0.6868745974719376, 1.2522201536338506, 0.7952183069582651, 0.06340410955800829, -0.7956629784232128, 2.2561737435012983, 0.345639443327071, -0.8934490945546473, 0.830131443385676, 1.2606901484983566, -1.0078125, 0.75, -0.703125, 2.4888661932358946)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.5) should be [matrix(2.8284271247461903, 2.82842712474619, -0.7071067811865475, 0.7071067811865476, 3, -3)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (2) should be [matrix3d(3.0761619932999995, 0.0, 0.0, 0.0, 0.0, 2.3221331858, 0.0, 0.0, 0.0, 0.0, 2.9442666928000003, 0.0, 20.5331850252, 19.7952290231, 20.002012795600002, 1.0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (2) should be [matrix(0, 5, 1, 0, -6, -12)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [rotate(180deg)\] at (2) should be [rotate(360deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (1) should be [matrix(1, 0, 0, 1, 0, -6)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (0.25) should be [matrix3d(2.441256919175, 0.0, 0.0, 0.0, 0.0, 2.571299218825, 0.0, 0.0, 0.0, 0.0, 2.6947530634, 0.0, 20.35889062555, 20.561444082325, 20.800684839349998, 1.0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (0.25) should be [matrix3d(0.9041890962319094, 0.3522701519297133, -0.15240204298176957, -0.1428256720529315, -0.7579798772527586, 0.6803606288839232, -0.05133336076757235, 0.37904689530895724, -0.1957679784745485, 0.38554138029509327, 0.8226186974340638, 0.3370288143441876, -0.296875, -0.015625, 0.328125, 0.5930529142680923)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(180deg)\] at (0.75) should be [rotate(135deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (-1) should be [matrix(0, 5, 1, 0, -6, -12)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.75) should be [matrix(5.5, 0, 1.31, 1.75, 4.5, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (0.25) should be [matrix3d(0.33652832679595723, 0.55254445148386, -0.7544724447833296, 0.22700224951774267, -0.69720168363685, -0.036373245768780864, 0.28149188169180933, -0.2845156818045006, -0.24737156018941048, 0.31207160370190334, 0.4564821058052897, 0.9220853089096839, -1.2265625, 0.203125, 0.75, 1.647016932991011)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [rotate(180deg)\] at (2) should be [rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.6666666666666666) should be [matrix(2.5000000000000004, 4.330127018922193, -0.8660254037844386, 0.5000000000000001, 4, -2)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (2) should be [matrix3d(0.39048513570444376, 0.14780794797065988, 0.6963068100217401, -4.857907861239344, -2.967682789284791, 0.6004978769584385, -3.5472376016872444, 26.675324787979896, -2.5953724498995308, 1.6280843851961373, 0.8163834310586356, 9.001735256585825, 1.34375, -1, 0.9375, -14.881239394516227)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (0.75) should be [matrix3d(0.35007413226026135, 0.7254385504141292, -0.4977009150941454, 0.09582061929004702, -1.1027525038949482, -0.5884810398827429, 0.4516829688651701, 0.5447944343861767, -0.68717798815684, 0.2657772247405681, 0.5465690479810023, 1.0836207863885503, -0.890625, -0.046875, 0.984375, 0.5930529142680927)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (0.25) should be [matrix3d(0.33652832679595723, 0.55254445148386, -0.7544724447833296, 0.22700224951774267, -0.69720168363685, -0.036373245768780864, 0.28149188169180933, -0.2845156818045006, -0.24737156018941048, 0.31207160370190334, 0.4564821058052897, 0.9220853089096839, -1.2265625, 0.203125, 0.75, 1.647016932991011)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (0.75) should be [matrix3d(1.0093457700315165, -0.12746048375025829, -0.24746788943106088, 1.3202120308857304, 0.6128364656690982, 0.7600694601651116, -0.22233359857303325, 1.4081483224940277, 0.21669805381113447, -0.3786082265932788, 0.908354523914928, 0.6747509193960347, -0.3359375, 0.25, -0.234375, 2.4888661932358964)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (-1) should be [matrix(5, 0, 0, 9, 0, -12)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.5) should be [matrix(4, 0, 2, 4, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (0) should be [matrix(3, 0, 0, 5, 0, -6)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (-1) should be [matrix3d(-0.0000000000000002377810622383943, -1.0671050586638147, -0.08972656766237302, 1.3740432449326199, 0.98484601036295, -2.653201092395309, 0.6753819540610847, 3.6127240080250744, -2.7988839807429846, -1.2090004194153336, -0.5183744226115445, -0.7936088631686278, 1.1875, 0.0625, -1.3125, 5.340768914473683)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (2) should be [matrix(-13, 0, 0, -1, 12, 6)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.3333333333333333) should be [matrix(2.5000000000000004, 4.330127018922193, -0.8660254037844386, 0.5000000000000001, 4, -2)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (-1) should be [matrix3d(-0.6299594065765657, -0.10825090106268696, -0.20133311671001855, 5.485724217214554, 6.358051978686152, 0.16496896269344588, 1.5760051143537075, -54.21568355620423, 0.7106057459805782, -1.1596356050622005, -0.11495342545397585, -4.913752963990824, -1.03125, -1.125, 3.5625, -5.901513951904114)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [rotate(360deg)\] at (0.25) should be [rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.3333333333333333) should be [matrix(3, 0, 1.6667, 5, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (2) should be [matrix(13, 0, 6, 3, 12, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.75) should be [matrix(5.5, 0, 1.31, 1.75, 4.5, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (0.25) should be [matrix3d(1.211140527138306, 0, -0.30925494906815365, 0, 0, 1.5, 0, 0, 0.43295692869541513, 0, 1.6955967379936283, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(180deg)\] to [none\] at (1) should be [rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.3333333333333333) should be [matrix(3, 0, 1.6667, 5, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0.5) should be [matrix(2.8284271247461903, 2.82842712474619, -0.7071067811865475, 0.7071067811865476, 3, -3)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (2) should be [matrix3d(3.0761619932999995, 0.0, 0.0, 0.0, 0.0, 2.3221331858, 0.0, 0.0, 0.0, 0.0, 2.9442666928000003, 0.0, 20.5331850252, 19.7952290231, 20.002012795600002, 1.0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(360deg)\] at (-1) should be [rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (0.25) should be [matrix3d(0.9041890962319094, 0.3522701519297133, -0.15240204298176957, -0.1428256720529315, -0.7579798772527586, 0.6803606288839232, -0.05133336076757235, 0.37904689530895724, -0.1957679784745485, 0.38554138029509327, 0.8226186974340638, 0.3370288143441876, -0.296875, -0.015625, 0.328125, 0.5930529142680923)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (2) should be [matrix3d(-0.5844534449366048, -0.42278005999296053, -0.4650580659922564, -0.6817595809063256, 0.9156938760088464, 0.3851647027225889, 0.9244443507516923, 0.7218225020358241, -0.0803568793574344, 0.1719974850210706, -0.49676609633513097, -0.25968177786904373, -2.375, -0.125, 2.625, 5.340768914473685)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.5) should be [matrix(4, 0, 2, 4, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (0.75) should be [matrix3d(1.0093457700315165, -0.12746048375025829, -0.24746788943106088, 1.3202120308857304, 0.6128364656690982, 0.7600694601651116, -0.22233359857303325, 1.4081483224940277, 0.21669805381113447, -0.3786082265932788, 0.908354523914928, 0.6747509193960347, -0.3359375, 0.25, -0.234375, 2.4888661932358964)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (0.75) should be [matrix3d(1.211140527138306, 0, -0.30925494906815365, 0, 0, 1.5, 0, 0, 0.43295692869541513, 0, 1.6955967379936283, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.25) should be [matrix(2.5, 0, 0.31, 1.25, 1.5, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.5) should be [matrix(4, 0, 2, 4, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [rotate(180deg)\] at (-1) should be [rotate(-180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(1, 0, 0, 7, 0, 0)\] to [matrix(7, 0, 1, 1, 0, 0)\] at (0.3333333333333333) should be [matrix(3, 0, 1.6667, 5, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (2) should be [matrix3d(0, 0, 0, 0, 0, -1, 0, 0, 1.682941969615793, 0, -1.0806046117362795, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] to [none\] at (0.25) should be [matrix3d(1.2804555205291865, 0, -1.1928678300408346, 0, 0, 2.5, 0, 0, 2.215325970075836, 0, 2.377988823839918, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [none\] to [matrix3d(1.0806046117362795, 0, -1.682941969615793, 0, 0, 3, 0, 0, 3.365883939231586, 0, 2.161209223472559, 0, 0, 0, 0, 1)\] at (0) should be [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] at (-1) should be [matrix3d(-0.0000000000000002377810622383943, -1.0671050586638147, -0.08972656766237302, 1.3740432449326199, 0.98484601036295, -2.653201092395309, 0.6753819540610847, 3.6127240080250744, -2.7988839807429846, -1.2090004194153336, -0.5183744226115445, -0.7936088631686278, 1.1875, 0.0625, -1.3125, 5.340768914473683)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(0, 0.6875, -0.625, 0.3125, -0.6666666666666665, -1, 0.8333333333333334, 0.125, -0.6666666666666665, 0, 0.5, 1.0625, -1.1875, -0.0625, 1.3125, 1)\] to [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] at (0.75) should be [matrix3d(0.6861191524977764, -0.18025672746204927, -0.8710297237546482, 0.6072134247444672, 0.2819931018922366, 0.27778974607679663, -0.6540128246146626, 0.5063632314069845, 0.5509562084361049, -0.3215202993119732, 0.5459062603735321, 2.8697154005492105, -1.3046875, 0.734375, -0.375, 1.6470169329910096)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix3d(0.571428571428571, -0.625, -0.8333333333333346, -0.66666666666669, 0.5, -0.1875, -0.8125, 0.3125, 0.34375, -1, 0.8333333333333327, 1.34375, -1.34375, 1, -0.9375, 1)\] to [none\] at (-1) should be [matrix3d(-0.6413028394192518, -1.0702420910513302, -0.5807595966791961, -18.02447171345163, 0.8211815704840004, 1.0980679097347057, 0.9399408862655454, 22.460730852026064, 0.28421009261178104, -0.5408346238741739, 0.5194791363698213, 3.075163035391172, -2.6875, 2, -1.875, -14.881239394516232)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [none\] to [matrix(7, 0, 2, 2, 6, 0)\] at (0.5) should be [matrix(4, 0, 0.75, 1.5, 3, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (1) should be [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix(1, 0, 0, 1, 0, -6)\] to [matrix(0, 7, -1, 0, 6, 0)\] at (0.3333333333333333) should be [matrix(2.598076211353316, 1.4999999999999998, -0.49999999999999994, 0.8660254037844387, 2, -4)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [matrix3d(2.3505561943, 0.0, 0.0, 0.0, 0.0, 2.6068943664, 0.0, 0.0, 0.0, 0.0, 2.6591082592, 0.0, 20.3339914256, 20.6709033765, 20.9147808456, 1.0)\] to [matrix3d(2.7133590938, 0.0, 0.0, 0.0, 0.0, 2.4645137761, 0.0, 0.0, 0.0, 0.0, 2.801687476, 0.0, 20.4335882254, 20.2330661998, 20.4583968206, 1.0)\] at (0.75) should be [matrix3d(2.622658368925, 0.0, 0.0, 0.0, 0.0, 2.500108923675, 0.0, 0.0, 0.0, 0.0, 2.7660426718, 0.0, 20.408689025450002, 20.342525493975, 20.572492826850002, 1.0)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(180deg)\] to [none\] at (2) should be [rotate(-180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [matrix(0, 7, -1, 0, 6, 0)\] to [matrix(1, 0, 0, 1, 0, -6)\] at (0) should be [matrix(0, 7, -1, 0, 6, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [matrix(3, 0, 0, 5, 0, -6)\] to [none\] at (2) should be [matrix(-1, 0, 0, -3, 0, 6)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [rotate(180deg)\] to [none\] at (0.75) should be [rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [rotate(180deg)\] to [none\] at (0.25) should be [rotate(135deg)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-006.html.ini b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-006.html.ini
index bc7061336f3..0e2282f22af 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-006.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/transform-interpolation-006.html.ini
@@ -1,5 +1,238 @@
[transform-interpolation-006.html]
- expected: ERROR
[transform interpolation]
expected: FAIL
+ [CSS Transitions: property <transform> from [inherit\] to [translate(20px)\] at (0.75) should be [translate(22.5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from neutral to [translate(20px)\] at (0.75) should be [translate(17.5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [unset\] to [translate(20px)\] at (2) should be [translate(40px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [initial\] to [translate(20px)\] at (0.75) should be [translate(15px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [initial\] to [translate(20px)\] at (-1) should be [translate(-20px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [initial\] to [translate(20px)\] at (2) should be [translate(40px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [unset\] to [translate(20px)\] at (1) should be [translate(20px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [inherit\] to [translate(20px)\] at (-1) should be [translate(40px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [inherit\] to [translate(20px)\] at (0.25) should be [translate(27.5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [unset\] to [translate(20px)\] at (0.75) should be [translate(15px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [unset\] to [translate(20px)\] at (0) should be [translate(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [unset\] to [translate(20px)\] at (0.75) should be [translate(15px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from neutral to [translate(20px)\] at (2) should be [translate(30px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from neutral to [translate(20px)\] at (-1) should be [translate(0px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from neutral to [translate(20px)\] at (0.25) should be [translate(12.5px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from neutral to [translate(20px)\] at (0.25) should be [translate(12.5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [unset\] to [translate(20px)\] at (0.25) should be [translate(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [inherit\] to [translate(20px)\] at (1) should be [translate(20px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from neutral to [translate(20px)\] at (-1) should be [translate(0px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [unset\] to [translate(20px)\] at (-1) should be [translate(-20px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from neutral to [translate(20px)\] at (0.75) should be [translate(17.5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [initial\] to [translate(20px)\] at (1) should be [translate(20px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [unset\] to [translate(20px)\] at (0.75) should be [translate(15px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [inherit\] to [translate(20px)\] at (2) should be [translate(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from neutral to [translate(20px)\] at (2) should be [translate(30px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [initial\] to [translate(20px)\] at (0.75) should be [translate(15px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [inherit\] to [translate(20px)\] at (0.25) should be [translate(27.5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [inherit\] to [translate(20px)\] at (0.75) should be [translate(22.5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [unset\] to [translate(20px)\] at (2) should be [translate(40px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [inherit\] to [translate(20px)\] at (-1) should be [translate(40px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [unset\] to [translate(20px)\] at (0.25) should be [translate(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [initial\] to [translate(20px)\] at (0.25) should be [translate(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [initial\] to [translate(20px)\] at (0.75) should be [translate(15px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [unset\] to [translate(20px)\] at (-1) should be [translate(-20px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [initial\] to [translate(20px)\] at (0.25) should be [translate(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [unset\] to [translate(20px)\] at (2) should be [translate(40px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from neutral to [translate(20px)\] at (0) should be [translate(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [inherit\] to [translate(20px)\] at (0.25) should be [translate(27.5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [initial\] to [translate(20px)\] at (0) should be [translate(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [unset\] to [translate(20px)\] at (1) should be [translate(20px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [initial\] to [translate(20px)\] at (-1) should be [translate(-20px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [unset\] to [translate(20px)\] at (-1) should be [translate(-20px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [initial\] to [translate(20px)\] at (2) should be [translate(40px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [initial\] to [translate(20px)\] at (1) should be [translate(20px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from neutral to [translate(20px)\] at (0.25) should be [translate(12.5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from neutral to [translate(20px)\] at (0.75) should be [translate(17.5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [inherit\] to [translate(20px)\] at (0.75) should be [translate(22.5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from neutral to [translate(20px)\] at (2) should be [translate(30px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [inherit\] to [translate(20px)\] at (0) should be [translate(30px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [initial\] to [translate(20px)\] at (0.25) should be [translate(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [inherit\] to [translate(20px)\] at (1) should be [translate(20px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [unset\] to [translate(20px)\] at (0.25) should be [translate(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [inherit\] to [translate(20px)\] at (0) should be [translate(30px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [unset\] to [translate(20px)\] at (2) should be [translate(40px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [unset\] to [translate(20px)\] at (-1) should be [translate(-20px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from neutral to [translate(20px)\] at (0.75) should be [translate(17.5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [unset\] to [translate(20px)\] at (0.25) should be [translate(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [unset\] to [translate(20px)\] at (0.75) should be [translate(15px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [unset\] to [translate(20px)\] at (0) should be [translate(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [inherit\] to [translate(20px)\] at (2) should be [translate(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from neutral to [translate(20px)\] at (-1) should be [translate(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [inherit\] to [translate(20px)\] at (0.25) should be [translate(27.5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from neutral to [translate(20px)\] at (2) should be [translate(30px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [inherit\] to [translate(20px)\] at (-1) should be [translate(40px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from neutral to [translate(20px)\] at (1) should be [translate(20px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [initial\] to [translate(20px)\] at (-1) should be [translate(-20px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from neutral to [translate(20px)\] at (-1) should be [translate(0px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [initial\] to [translate(20px)\] at (0.25) should be [translate(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [inherit\] to [translate(20px)\] at (-1) should be [translate(40px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from neutral to [translate(20px)\] at (0.25) should be [translate(12.5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [initial\] to [translate(20px)\] at (0.75) should be [translate(15px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from neutral to [translate(20px)\] at (1) should be [translate(20px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [initial\] to [translate(20px)\] at (0) should be [translate(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform> from [inherit\] to [translate(20px)\] at (2) should be [translate(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [initial\] to [translate(20px)\] at (-1) should be [translate(-20px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform> from [inherit\] to [translate(20px)\] at (0.75) should be [translate(22.5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <transform> from [initial\] to [translate(20px)\] at (2) should be [translate(40px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform> from [initial\] to [translate(20px)\] at (2) should be [translate(40px)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/transform-origin-interpolation.html.ini b/tests/wpt/metadata/css/css-transforms/animation/transform-origin-interpolation.html.ini
index 6c8104cccca..9f27223c186 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/transform-origin-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/transform-origin-interpolation.html.ini
@@ -1,5 +1,469 @@
[transform-origin-interpolation.html]
- expected: ERROR
[transform-origin interpolation]
expected: FAIL
+ [CSS Transitions: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (0.6) should be [60% 110% 2px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [initial\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [initial\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [center center\] to [0% 100px\] at (1) should be [0px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (0.6) should be [24px 16px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [center center\] to [0% 100px\] at (1.5) should be [-12.5px 137.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [unset\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [unset\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [center center\] to [0% 100px\] at (1) should be [0px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [unset\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from neutral to [20px 20px\] at (0.6) should be [16px 24px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (0.6) should be [60% 110% 2px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [initial\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [top left\] to [bottom right\] at (-0.3) should be [-15px -15px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (0) should be [0% 50% 5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [center center\] to [0% 100px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [top left\] to [bottom right\] at (0.6) should be [30px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [top left\] to [bottom right\] at (1) should be [50px 50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [center center\] to [0% 100px\] at (0.6) should be [10px 70px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from neutral to [20px 20px\] at (0) should be [10px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [center center\] to [0% 100px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (1.5) should be [150% 200% -2.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from neutral to [20px 20px\] at (0.6) should be [16px 24px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [center center\] to [0% 100px\] at (-0.3) should be [32.5px 2.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [inherit\] to [20px 20px\] at (0.6) should be [24px 16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [top left\] to [bottom right\] at (1) should be [50px 50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [unset\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (0) should be [30px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [top left\] to [bottom right\] at (1.5) should be [75px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [inherit\] to [20px 20px\] at (0.3) should be [27px 13px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [center center\] to [0% 100px\] at (0.6) should be [10px 70px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from neutral to [20px 20px\] at (0.6) should be [16px 24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [center center\] to [0% 100px\] at (0.3) should be [17.5px 47.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [center center\] to [0% 100px\] at (1) should be [0px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from neutral to [20px 20px\] at (0.3) should be [13px 27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [top left\] to [bottom right\] at (-0.3) should be [-15px -15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [unset\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (0.3) should be [30% 80% 3.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from neutral to [20px 20px\] at (0.3) should be [13px 27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [top left\] to [bottom right\] at (1.5) should be [75px 75px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [unset\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [initial\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (0.3) should be [27px 13px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [unset\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [unset\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [center center\] to [0% 100px\] at (0.3) should be [17.5px 47.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (1) should be [100% 150% 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [initial\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (0.6) should be [60% 110% 2px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [top left\] to [bottom right\] at (0) should be [0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [center center\] to [0% 100px\] at (0.3) should be [17.5px 47.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [top left\] to [bottom right\] at (0.6) should be [30px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (0.3) should be [27px 13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (0) should be [0% 50% 5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [initial\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [inherit\] to [20px 20px\] at (0.3) should be [27px 13px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [initial\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [initial\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [top left\] to [bottom right\] at (0.3) should be [15px 15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (0) should be [30px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [center center\] to [0% 100px\] at (1.5) should be [-12.5px 137.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [center center\] to [0% 100px\] at (-0.3) should be [32.5px 2.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [center center\] to [0% 100px\] at (0.6) should be [10px 70px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [initial\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [top left\] to [bottom right\] at (0.3) should be [15px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [unset\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [unset\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [unset\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [unset\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [unset\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (-0.3) should be [-30% 20% 6.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [initial\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [inherit\] to [20px 20px\] at (1.5) should be [15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [center center\] to [0% 100px\] at (1.5) should be [-12.5px 137.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [top left\] to [bottom right\] at (-0.3) should be [-15px -15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from neutral to [20px 20px\] at (1.5) should be [25px 15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [top left\] to [bottom right\] at (0.6) should be [30px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (-0.3) should be [-30% 20% 6.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [initial\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (1.5) should be [150% 200% -2.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [unset\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [center center\] to [0% 100px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [center center\] to [0% 100px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (-0.3) should be [33px 7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [top left\] to [bottom right\] at (0) should be [0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [initial\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (-0.3) should be [-30% 20% 6.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [initial\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [top left\] to [bottom right\] at (-0.3) should be [-15px -15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (-0.3) should be [-30% 20% 6.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [center center\] to [0% 100px\] at (-0.3) should be [32.5px 2.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [top left\] to [bottom right\] at (1) should be [50px 50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [unset\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [unset\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from neutral to [20px 20px\] at (0.3) should be [13px 27px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [top left\] to [bottom right\] at (1.5) should be [75px 75px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [top left\] to [bottom right\] at (0.6) should be [30px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [unset\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [top left\] to [bottom right\] at (0) should be [0px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [initial\] to [20px 20px\] at (1.5) should be [17.5px 17.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from neutral to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from neutral to [20px 20px\] at (-0.3) should be [7px 33px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (1.5) should be [150% 200% -2.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [initial\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [top left\] to [bottom right\] at (1) should be [50px 50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [initial\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [initial\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from neutral to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [center center\] to [0% 100px\] at (0.6) should be [10px 70px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [initial\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [center center\] to [0% 100px\] at (0.3) should be [17.5px 47.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [unset\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (0.3) should be [30% 80% 3.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [unset\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [top left\] to [bottom right\] at (0) should be [0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [unset\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [top left\] to [bottom right\] at (0.3) should be [15px 15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [initial\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [center center\] to [0% 100px\] at (1) should be [0px 100px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (0.3) should be [30% 80% 3.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [initial\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [unset\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [unset\] to [20px 20px\] at (0) should be [25px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [inherit\] to [20px 20px\] at (0.6) should be [24px 16px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [initial\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [unset\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [center center\] to [0% 100px\] at (1.5) should be [-12.5px 137.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (0.6) should be [60% 110% 2px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (1) should be [100% 150% 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [inherit\] to [20px 20px\] at (0.6) should be [24px 16px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (0.3) should be [30% 80% 3.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [top left\] to [bottom right\] at (1.5) should be [75px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [top left\] to [bottom right\] at (0.3) should be [15px 15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [center center\] to [0% 100px\] at (-0.3) should be [32.5px 2.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <transform-origin> from [0% 50% 5px\] to [100% 150% 0px\] at (1.5) should be [150% 200% -2.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from neutral to [20px 20px\] at (0.6) should be [16px 24px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [initial\] to [20px 20px\] at (0.6) should be [22px 22px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from neutral to [20px 20px\] at (0.3) should be [13px 27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <transform-origin> from [initial\] to [20px 20px\] at (0.3) should be [23.5px 23.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <transform-origin> from [initial\] to [20px 20px\] at (-0.3) should be [26.5px 26.5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <transform-origin> from [unset\] to [20px 20px\] at (1) should be [20px 20px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transforms/animation/translate-interpolation.html.ini b/tests/wpt/metadata/css/css-transforms/animation/translate-interpolation.html.ini
index bffca51359d..8f6ece60c55 100644
--- a/tests/wpt/metadata/css/css-transforms/animation/translate-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-transforms/animation/translate-interpolation.html.ini
@@ -1,5 +1,4 @@
[translate-interpolation.html]
- expected: ERROR
[Animation between "220px 240px 260px" and "300px 400px 500px" at progress -1]
expected: FAIL
@@ -75,3 +74,1050 @@
[translate interpolation]
expected: FAIL
+ [CSS Transitions: property <translate> from [480px 400px 320px\] to [240% 160%\] at (1) should be [240% 160%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [200px 100px 400px\] to [initial\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [none\] to [8px 80% 800px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px -50px\] to [100px 50px\] at (2) should be [300px 150px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [inherit\] to [200px 100px 200px\] at (-1) should be [0px 300px 400px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px\] to [100px\] at (0.25) should be [-50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [inherit\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (0.75) should be [175px 125px 225px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100%\] to [100%\] at (2) should be [300%\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [initial\] at (0) should be [100px 200px 300px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [inherit\] to [initial\] at (-1) should be [200px 400px 600px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [200px 100px 200px\] to [inherit\] at (0.75) should be [125px 175px 275px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100%\] to [100%\] at (-1) should be [-300%\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [none\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [inherit\] to [initial\] at (2) should be [-100px -200px -300px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [200px 100px 400px\] to [initial\] at (-1) should be [400px 200px 800px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px -50px 100px\] to [0px\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (2) should be [0px 300px 400px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (0.75) should be [-75px -37.5px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from neutral to [20px\] at (2) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [unset\] to [20px\] at (0.25) should be [5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [inherit\] to [200px 100px 200px\] at (0.25) should be [125px 175px 275px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px\] to [100px\] at (0.25) should be [-50px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [none\] at (0.875) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 400px\] to [initial\] at (0.25) should be [150px 75px 300px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (0.25) should be [-75px -37.5px 75px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [inherit\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [unset\] to [20px\] at (0.75) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [480px 400px 320px\] to [240% 160%\] at (1) should be [240% 160%\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 400px\] to [initial\] at (0) should be [200px 100px 400px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [unset\] to [20px\] at (2) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [initial\] at (0) should be [100px 200px 300px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [0px\] to [-100px -50px 100px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100%\] to [100%\] at (0) should be [-100%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [inherit\] to [initial\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (0.25) should be [-50px -25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (0.75) should be [175px 125px 225px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (1) should be [240% 160%\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px\] to [100px\] at (0.75) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [initial\] at (0.75) should be [25px 50px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [0px\] to [-100px -50px 100px\] at (2) should be [-200px -100px 200px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 400px\] to [initial\] at (2) should be [-200px -100px -400px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (-1) should be [-300px -150px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100%\] to [100%\] at (0.75) should be [50%\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [unset\] to [20px\] at (0.75) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [initial\] to [inherit\] at (0.75) should be [75px 150px 225px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [initial\] to [inherit\] at (0.25) should be [25px 50px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px\] to [100px\] at (-1) should be [-300px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px -50px\] to [100px 50px\] at (-1) should be [-300px -150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [200px 100px 200px\] at (1) should be [200px 100px 200px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (2) should be [0px 300px 400px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [8px 80% 800px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [inherit\] at (0.25) should be [25px 50px 75px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [8px 80% 800px\] at (-1) should be [-8px -80% -800px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (0.125) should be [230px 260px 290px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [initial\] to [200px 100px 200px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px\] to [100px\] at (-1) should be [-300px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100%\] to [100%\] at (0.75) should be [50%\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (0.75) should be [50px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (2) should be [-200px -100px 200px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [initial\] to [inherit\] at (-1) should be [-100px -200px -300px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [480px 400px 320px\] to [240% 160%\] at (2) should be [calc(480% - 480px) calc(320% - 400px) -320px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [unset\] to [20px\] at (-1) should be [-20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [initial\] to [200px 100px 200px\] at (-1) should be [-200px -100px -200px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [200px 100px 200px\] to [inherit\] at (0.25) should be [175px 125px 225px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (0) should be [-100px -50px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 400px\] to [initial\] at (-1) should be [400px 200px 800px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [none\] at (-1) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from neutral to [20px\] at (2) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 400px\] to [initial\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [8px 80% 800px\] at (2) should be [16px 160% 1600px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [unset\] to [20px\] at (2) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [inherit\] to [initial\] at (-1) should be [200px 400px 600px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [200px 100px 200px\] to [inherit\] at (-1) should be [300px 0px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (-1) should be [calc(960px - 240%) calc(800px - 160%) 640px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [none\] at (0.125) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100%\] to [100%\] at (0.25) should be [-50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [unset\] to [20px\] at (2) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [8px 80% 800px\] at (0.125) should be [1px 10% 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 400px\] to [initial\] at (0.75) should be [50px 25px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (0.25) should be [125px 175px 275px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [initial\] to [inherit\] at (-1) should be [-100px -200px -300px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (1) should be [200px 100px 200px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100%\] to [100%\] at (0.75) should be [50%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [200px 100px 200px\] to [inherit\] at (2) should be [0px 300px 400px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [initial\] to [inherit\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [8px 80% 800px\] at (1) should be [8px 80% 800px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100%\] to [100%\] at (-1) should be [-300%\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (1) should be [-100px -50px 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px\] to [100px\] at (0) should be [-100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [0px\] to [-100px -50px 100px\] at (-1) should be [100px 50px -100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (0) should be [220px 240px 260px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (-1) should be [0px 300px 400px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [8px 80% 800px\] at (1) should be [8px 80% 800px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [200px 100px 200px\] at (2) should be [400px 200px 400px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [unset\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px -50px 100px\] to [0px\] at (2) should be [100px 50px -100px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (-1) should be [140px 80px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (1) should be [240% 160%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [480px 400px 320px\] to [240% 160%\] at (2) should be [calc(480% - 480px) calc(320% - 400px) -320px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (0.75) should be [50px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (-1) should be [300px 0px 100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [initial\] to [200px 100px 200px\] at (-1) should be [-200px -100px -200px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [200px 100px 400px\] to [initial\] at (-1) should be [400px 200px 800px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 400px\] to [initial\] at (0) should be [200px 100px 400px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [0px\] to [-100px -50px 100px\] at (-1) should be [100px 50px -100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [unset\] to [20px\] at (0.25) should be [5px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (0.25) should be [175px 125px 225px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (2) should be [-200px -100px 200px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [unset\] to [20px\] at (0.25) should be [5px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from neutral to [20px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px\] to [100px\] at (2) should be [300px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (2) should be [calc(480% - 480px) calc(320% - 400px) -320px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0.875) should be [calc(210% + 60px) calc(140% + 50px) 40px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (-1) should be [calc(960px - 240%) calc(800px - 160%) 640px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (-1) should be [-200px -100px 200px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [0px\] to [-100px -50px 100px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px -50px\] to [100px 50px\] at (0.75) should be [50px 25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (0) should be [200px 100px 200px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [unset\] to [20px\] at (2) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px\] to [100px\] at (0.75) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [none\] to [8px 80% 800px\] at (-1) should be [-8px -80% -800px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (1) should be [200px 100px 200px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (-1) should be [100px 50px -100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [initial\] at (2) should be [-100px -200px -300px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [initial\] to [200px 100px 200px\] at (2) should be [400px 200px 400px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [inherit\] to [initial\] at (2) should be [-100px -200px -300px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [unset\] to [20px\] at (-1) should be [-20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (1) should be [100px 50px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 400px\] to [initial\] at (-1) should be [400px 200px 800px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from neutral to [20px\] at (0.25) should be [12.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0.875) should be [calc(210% + 60px) calc(140% + 50px) 40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [none\] at (0.125) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (0) should be [200px 100px 200px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100%\] to [100%\] at (2) should be [300%\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (0) should be [220px 240px 260px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [200px 100px 200px\] to [inherit\] at (0.75) should be [125px 175px 275px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [none\] at (0.875) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [200px 100px 200px\] at (0.75) should be [150px 75px 150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (-1) should be [-200px -100px 200px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [initial\] to [200px 100px 200px\] at (2) should be [400px 200px 400px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100%\] to [100%\] at (1) should be [100%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [inherit\] to [initial\] at (0.75) should be [25px 50px 75px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [none\] at (-1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from neutral to [20px\] at (2) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px -50px 100px\] to [0px\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px -50px\] to [100px 50px\] at (2) should be [300px 150px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (0.125) should be [230px 260px 290px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 400px\] to [initial\] at (0.75) should be [50px 25px 100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [unset\] to [20px\] at (0.25) should be [5px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (0) should be [-100px -50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [8px 80% 800px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [initial\] at (-1) should be [200px 400px 600px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (0.75) should be [-25px -12.5px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (0.875) should be [290px 380px 470px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px -50px\] to [100px 50px\] at (0.25) should be [-50px -25px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [8px 80% 800px\] at (2) should be [16px 160% 1600px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [inherit\] to [200px 100px 200px\] at (-1) should be [0px 300px 400px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (0.125) should be [230px 260px 290px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [inherit\] to [initial\] at (0.25) should be [75px 150px 225px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [0px\] to [-100px -50px 100px\] at (0.25) should be [-25px -12.5px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100%\] to [100%\] at (0.25) should be [-50%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [0px\] to [-100px -50px 100px\] at (0.25) should be [-25px -12.5px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [initial\] to [inherit\] at (0.75) should be [75px 150px 225px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100%\] to [100%\] at (2) should be [300%\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from neutral to [20px\] at (0.25) should be [12.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0) should be [480px 400px 320px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (0) should be [-100px -50px 100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from neutral to [20px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [200px 100px 200px\] to [inherit\] at (2) should be [0px 300px 400px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [8px 80% 800px\] at (0.875) should be [7px 70% 700px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [initial\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px\] to [100px\] at (0.75) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (2) should be [380px 560px 740px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100%\] to [100%\] at (0.25) should be [-50%\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from neutral to [20px\] at (2) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px\] to [100px\] at (2) should be [300px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from neutral to [20px\] at (0.25) should be [12.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (0.25) should be [-75px -37.5px 75px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (2) should be [300px 0px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [initial\] at (-1) should be [200px 400px 600px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [none\] to [8px 80% 800px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (0.75) should be [-75px -37.5px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [inherit\] to [200px 100px 200px\] at (2) should be [300px 0px 100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100%\] to [100%\] at (0.75) should be [50%\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [200px 100px 200px\] at (1) should be [200px 100px 200px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (0) should be [-100px -50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [inherit\] to [200px 100px 200px\] at (0.75) should be [175px 125px 225px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (2) should be [380px 560px 740px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (0.875) should be [290px 380px 470px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [inherit\] to [initial\] at (0.75) should be [25px 50px 75px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from neutral to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (2) should be [300px 150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from neutral to [20px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from neutral to [20px\] at (0.75) should be [17.5px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [initial\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (2) should be [calc(480% - 480px) calc(320% - 400px) -320px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (2) should be [100px 50px -100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px -50px 100px\] to [0px\] at (0.75) should be [-25px -12.5px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [inherit\] at (0.25) should be [25px 50px 75px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px\] to [100px\] at (2) should be [300px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (0.875) should be [290px 380px 470px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [480px 400px 320px\] to [240% 160%\] at (-1) should be [calc(960px - 240%) calc(800px - 160%) 640px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px\] to [100px\] at (0.25) should be [-50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [unset\] to [20px\] at (-1) should be [-20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from neutral to [20px\] at (-1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (-1) should be [140px 80px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [initial\] to [inherit\] at (2) should be [200px 400px 600px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [200px 100px 200px\] at (0.75) should be [150px 75px 150px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px\] to [100px\] at (-1) should be [-300px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [unset\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [200px 100px 200px\] at (0.25) should be [50px 25px 50px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (2) should be [100px 50px -100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (1) should be [300px 400px 500px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0) should be [480px 400px 320px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [0px\] to [-100px -50px 100px\] at (0.75) should be [-75px -37.5px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from neutral to [20px\] at (0.75) should be [17.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (0.25) should be [-50px -25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (-1) should be [-300px -150px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (1) should be [100px 50px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px -50px 100px\] to [0px\] at (0.75) should be [-25px -12.5px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [200px 100px 400px\] to [initial\] at (0.75) should be [50px 25px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0.875) should be [calc(210% + 60px) calc(140% + 50px) 40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [inherit\] to [initial\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0.125) should be [calc(420px + 30%) calc(350px + 20%) 280px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px -50px 100px\] to [0px\] at (-1) should be [-200px -100px 200px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [initial\] to [inherit\] at (2) should be [200px 400px 600px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [200px 100px 400px\] to [initial\] at (0.25) should be [150px 75px 300px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (2) should be [380px 560px 740px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px -50px\] to [100px 50px\] at (2) should be [300px 150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (0.75) should be [125px 175px 275px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [initial\] to [200px 100px 200px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [8px 80% 800px\] at (0.125) should be [1px 10% 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100px\] to [100px\] at (0) should be [-100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (2) should be [300px 0px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [inherit\] at (1) should be [100px 200px 300px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0.875) should be [calc(210% + 60px) calc(140% + 50px) 40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [200px 100px 200px\] at (-1) should be [-200px -100px -200px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [200px 100px 200px\] to [inherit\] at (-1) should be [300px 0px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0.125) should be [calc(420px + 30%) calc(350px + 20%) 280px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (-1) should be [100px 50px -100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [none\] to [8px 80% 800px\] at (0.875) should be [7px 70% 700px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [unset\] to [20px\] at (0.75) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [none\] to [8px 80% 800px\] at (2) should be [16px 160% 1600px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [inherit\] to [200px 100px 200px\] at (2) should be [300px 0px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (0.25) should be [125px 175px 275px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [inherit\] to [200px 100px 200px\] at (0.25) should be [125px 175px 275px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [inherit\] to [initial\] at (0.25) should be [75px 150px 225px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [inherit\] to [200px 100px 200px\] at (0.75) should be [175px 125px 225px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [8px 80% 800px\] at (0.875) should be [7px 70% 700px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px -50px\] to [100px 50px\] at (0.75) should be [50px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (0.25) should be [-25px -12.5px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px -50px 100px\] to [0px\] at (2) should be [100px 50px -100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [initial\] to [200px 100px 200px\] at (0.25) should be [50px 25px 50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [initial\] to [200px 100px 200px\] at (0.25) should be [50px 25px 50px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [200px 100px 200px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100%\] to [100%\] at (2) should be [300%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [none\] to [8px 80% 800px\] at (0.125) should be [1px 10% 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [200px 100px 200px\] at (0.25) should be [50px 25px 50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px -50px\] to [100px 50px\] at (-1) should be [-300px -150px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [none\] to [8px 80% 800px\] at (0.875) should be [7px 70% 700px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [inherit\] at (1) should be [100px 200px 300px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [inherit\] at (-1) should be [-100px -200px -300px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (0.75) should be [125px 175px 275px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px\] to [100px\] at (0.25) should be [-50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0.125) should be [calc(420px + 30%) calc(350px + 20%) 280px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [8px 80% 800px\] at (-1) should be [-8px -80% -800px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [0px\] to [-100px -50px 100px\] at (0.75) should be [-75px -37.5px 75px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (0) should be [100px 200px 300px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [200px 100px 200px\] at (2) should be [400px 200px 400px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0) should be [480px 400px 320px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [200px 100px 400px\] to [initial\] at (2) should be [-200px -100px -400px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [none\] to [8px 80% 800px\] at (0.125) should be [1px 10% 100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100%\] to [100%\] at (0) should be [-100%\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100%\] to [100%\] at (1) should be [100%\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [none\] at (2) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [200px 100px 400px\] to [initial\] at (0.25) should be [150px 75px 300px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0) should be [480px 400px 320px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px\] to [100px\] at (2) should be [300px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (0.25) should be [-25px -12.5px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [-100%\] to [100%\] at (-1) should be [-300%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px -50px 100px\] to [0px\] at (-1) should be [-200px -100px 200px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [200px 100px 200px\] to [inherit\] at (0.25) should be [175px 125px 225px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (1) should be [100px 200px 300px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (1) should be [100px 200px 300px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [-100px\] to [100px\] at (-1) should be [-300px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (0.25) should be [175px 125px 225px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [inherit\] at (0.75) should be [75px 150px 225px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [inherit\] at (2) should be [200px 400px 600px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [200px 100px 200px\] at (-1) should be [-200px -100px -200px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 400px\] to [initial\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (0.875) should be [290px 380px 470px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [initial\] at (2) should be [-100px -200px -300px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100%\] to [100%\] at (-1) should be [-300%\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [initial\] at (0.25) should be [75px 150px 225px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [200px 100px 200px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [unset\] to [20px\] at (-1) should be [-20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (-1) should be [140px 80px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px\] to [100px\] at (0.75) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (-1) should be [0px 300px 400px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [initial\] to [200px 100px 200px\] at (0.75) should be [150px 75px 150px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [initial\] to [200px 100px 200px\] at (0.75) should be [150px 75px 150px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [200px 100px 400px\] to [initial\] at (0.75) should be [50px 25px 100px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [200px 100px 400px\] to [initial\] at (2) should be [-200px -100px -400px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [480px 400px 320px\] to [240% 160%\] at (-1) should be [calc(960px - 240%) calc(800px - 160%) 640px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px -50px\] to [100px 50px\] at (0.25) should be [-50px -25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [0px\] to [-100px -50px 100px\] at (1) should be [-100px -50px 100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100%\] to [100%\] at (0.25) should be [-50%\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [initial\] at (0.75) should be [25px 50px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [initial\] to [inherit\] at (0.25) should be [25px 50px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [none\] to [8px 80% 800px\] at (2) should be [16px 160% 1600px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [initial\] to [inherit\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from neutral to [20px\] at (0.75) should be [17.5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (2) should be [380px 560px 740px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [0px\] to [-100px -50px 100px\] at (2) should be [-200px -100px 200px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [none\] to [8px 80% 800px\] at (-1) should be [-8px -80% -800px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 400px\] to [initial\] at (2) should be [-200px -100px -400px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [inherit\] to [200px 100px 200px\] at (0) should be [100px 200px 300px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [200px 100px 200px\] to [inherit\] at (-1) should be [300px 0px 100px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (1) should be [300px 400px 500px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [200px 100px 400px\] to [initial\] at (1) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [200px 100px 400px\] to [initial\] at (0.25) should be [150px 75px 300px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [none\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [none\] at (2) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from neutral to [20px\] at (0.75) should be [17.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [none\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [inherit\] at (-1) should be [-100px -200px -300px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px -50px 100px\] to [0px\] at (0.25) should be [-75px -37.5px 75px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [-100px -50px 100px\] to [0px\] at (0.75) should be [-25px -12.5px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [inherit\] to [initial\] at (0.25) should be [75px 150px 225px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [unset\] to [20px\] at (0.75) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from [-100px -50px 100px\] to [0px\] at (0.25) should be [-75px -37.5px 75px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [initial\] to [inherit\] at (0.75) should be [75px 150px 225px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (0.125) should be [230px 260px 290px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <translate> from neutral to [20px\] at (0.25) should be [12.5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [initial\] to [inherit\] at (2) should be [200px 400px 600px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <translate> from [480px 400px 320px\] to [240% 160%\] at (0.125) should be [calc(420px + 30%) calc(350px + 20%) 280px\]]
+ expected: FAIL
+
+ [Web Animations: property <translate> from [none\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <translate> from [220px 240px 260px\] to [300px 400px 500px\] at (-1) should be [140px 80px 20px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transitions/animations/text-shadow-interpolation.html.ini b/tests/wpt/metadata/css/css-transitions/animations/text-shadow-interpolation.html.ini
index 1e38244ddb7..18475bc0495 100644
--- a/tests/wpt/metadata/css/css-transitions/animations/text-shadow-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-transitions/animations/text-shadow-interpolation.html.ini
@@ -1,5 +1,355 @@
[text-shadow-interpolation.html]
- expected: ERROR
[text-shadow interpolation]
expected: FAIL
+ [CSS Transitions: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 15px 25px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 15px 25px 15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 33px 7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from neutral to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 25px 15px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from neutral to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 13px 27px 13px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (0) should be [rgb(255, 165, 0) 30px 10px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 24px 16px 24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 27px 13px 27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 192, 0) 30px 30px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 33px 7px 33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (0.3) should be [rgba(0, 128, 0, 0.3) 6px 6px 6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (0.3) should be [rgb(0, 38, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (1.5) should be [rgb(0, 192, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from neutral to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 7px 33px 7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from neutral to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 16px 24px 16px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (0.6) should be [rgba(0, 128, 0, 0.6) 12px 12px 12px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from neutral to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 16px 24px 16px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (0) should be [rgb(0, 0, 0) 15px 10px 5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 15px 25px 15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (0) should be [rgb(0, 0, 0) 15px 10px 5px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from neutral to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 25px 15px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 24px 16px 24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (1) should be [rgb(255, 165, 0) -15px -10px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 33px 7px 33px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 24px 16px 24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 24px 16px 24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 24px 16px 24px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 27px 13px 27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 27px 13px 27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (0) should be [rgb(0, 0, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from neutral to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 16px 24px 16px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from neutral to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 7px 33px 7px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 27px 13px 27px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (1.5) should be [rgb(0, 192, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from neutral to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 16px 24px 16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (0.6) should be [rgba(0, 128, 0, 0.6) 12px 12px 12px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (1.5) should be [rgb(0, 192, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 27px 13px 27px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (0.3) should be [rgba(0, 128, 0, 0.3) 6px 6px 6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from neutral to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 13px 27px 13px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (1.5) should be [rgb(0, 192, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (0.6) should be [rgba(0, 128, 0, 0.6) 12px 12px 12px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 33px 7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 15px 25px 15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (0.6) should be [rgba(0, 128, 0, 0.6) 12px 12px 12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (0) should be [rgba(0, 0, 0, 0) 0px 0px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (1) should be [rgb(0, 128, 0) 20px 20px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 15px 25px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (1) should be [rgb(0, 128, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (1) should be [rgb(0, 128, 0) 20px 20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (0.3) should be [rgb(0, 38, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from neutral to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 7px 33px 7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from neutral to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 13px 27px 13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (1) should be [rgb(0, 128, 0) 20px 20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from neutral to [green 20px 20px 20px\] at (0) should be [rgb(255, 165, 0) 10px 30px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 192, 0) 30px 30px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 15px 25px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (0.6) should be [rgb(0, 77, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 33px 7px 33px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 27px 13px 27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 27px 13px 27px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from neutral to [green 20px 20px 20px\] at (1) should be [rgb(0, 128, 0) 20px 20px 20px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (0) should be [rgba(0, 0, 0, 0) 0px 0px 0px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from neutral to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 7px 33px 7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 24px 16px 24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (-0.3) should be [rgb(0, 0, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (1) should be [rgb(0, 128, 0) 20px 20px 20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (-0.3) should be [rgb(0, 0, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 27px 13px 27px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (0.3) should be [rgb(0, 38, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (-0.3) should be [rgb(0, 0, 0) 24px 16px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (0) should be [rgb(255, 165, 0) 30px 10px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 33px 7px 33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (0.6) should be [rgb(0, 77, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 33px 7px 33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (-0.3) should be [rgba(0, 0, 0, 0) -6px -6px 0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from neutral to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 25px 15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (0.3) should be [rgba(0, 128, 0, 0.3) 6px 6px 6px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 192, 0) 30px 30px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 15px 25px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (0) should be [rgb(0, 0, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 15px 25px 15px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (0) should be [rgb(255, 165, 0) 30px 10px 30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (1.5) should be [rgb(255, 248, 0) -30px -20px 35px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (0.6) should be [rgb(0, 77, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (1) should be [rgb(0, 128, 0) 20px 20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (0.3) should be [rgb(0, 38, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (0) should be [rgb(255, 165, 0) 30px 10px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 192, 0) 30px 30px 30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (0.3) should be [rgb(77, 50, 0) 6px 4px 11px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from neutral to [green 20px 20px 20px\] at (1) should be [rgb(0, 128, 0) 20px 20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (0.6) should be [rgb(0, 77, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (-0.3) should be [rgb(255, 176, 0) 33px 7px 33px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from neutral to [green 20px 20px 20px\] at (1.5) should be [rgb(0, 110, 0) 25px 15px 25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from neutral to [green 20px 20px 20px\] at (0.3) should be [rgb(179, 154, 0) 13px 27px 13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [black 10px 10px 10px\] to [currentColor 10px 10px 10px\] at (1) should be [rgb(0, 128, 0) 10px 10px 10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (1) should be [rgb(0, 128, 0) 20px 20px 20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [initial\] to [green 20px 20px 20px\] at (0.3) should be [rgba(0, 128, 0, 0.3) 6px 6px 6px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (1) should be [rgb(255, 165, 0) -15px -10px 25px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-shadow> from [black 15px 10px 5px\] to [orange -15px -10px 25px\] at (0.6) should be [rgb(153, 99, 0) -3px -2px 17px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-shadow> from [unset\] to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 24px 16px 24px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-shadow> from [inherit\] to [green 20px 20px 20px\] at (0.6) should be [rgb(102, 143, 0) 24px 16px 24px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transitions/animations/vertical-align-interpolation.html.ini b/tests/wpt/metadata/css/css-transitions/animations/vertical-align-interpolation.html.ini
index 2a09131aa8e..d5c9dc4982f 100644
--- a/tests/wpt/metadata/css/css-transitions/animations/vertical-align-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-transitions/animations/vertical-align-interpolation.html.ini
@@ -1,2 +1,349 @@
[vertical-align-interpolation.html]
- expected: ERROR
+ [Web Animations: property <vertical-align> from [initial\] to [40px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [super\] to [40%\] at (1) should be [40%\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from neutral to [40px\] at (-0.5) should be [-5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [unset\] to [40px\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from [40px\] to [40%\] at (-0.5) should be [calc(60px - 20%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [inherit\] to [40px\] at (-0.5) should be [130px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [unset\] to [40px\] at (0.5) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [super\] to [40%\] at (0) should be [super\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [40px\] to [40%\] at (1) should be [calc(0px + 40%)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from [inherit\] to [40px\] at (-0.5) should be [130px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [initial\] to [40px\] at (1.5) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from neutral to [40px\] at (-0.5) should be [-5px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [40px\] to [40%\] at (0) should be [calc(40px + 0%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [inherit\] to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from [40px\] to [40%\] at (1.5) should be [calc(-20px + 60%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [super\] to [40%\] at (0.6) should be [40%\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from neutral to [40px\] at (-0.5) should be [-5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [super\] to [40%\] at (0.3) should be [super\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from [0px\] to [100px\] at (-0.5) should be [-50px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [inherit\] to [40px\] at (0.6) should be [64px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [inherit\] to [40px\] at (0) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [initial\] to [40px\] at (0.5) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [40px\] to [40%\] at (0) should be [calc(40px + 0%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [super\] to [40%\] at (1.5) should be [40%\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [unset\] to [40px\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [40px\] to [40%\] at (-0.5) should be [calc(60px - 20%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from neutral to [40px\] at (-0.5) should be [-5px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [super\] to [40%\] at (-0.3) should be [super\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [initial\] to [40px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [initial\] to [40px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [initial\] to [40px\] at (0.5) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [unset\] to [40px\] at (1.5) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from [inherit\] to [40px\] at (0.3) should be [82px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [super\] to [40%\] at (0.5) should be [40%\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [super\] to [40%\] at (-0.3) should be [super\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from [0px\] to [100px\] at (-0.5) should be [-50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from [40px\] to [40%\] at (0.3) should be [calc(28px + 12%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from [inherit\] to [40px\] at (-0.5) should be [130px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [40px\] to [40%\] at (-0.5) should be [calc(60px - 20%)\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [inherit\] to [40px\] at (0.3) should be [82px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [inherit\] to [40px\] at (0) should be [100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [unset\] to [40px\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from [40px\] to [40%\] at (1.5) should be [calc(-20px + 60%)\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [super\] to [40%\] at (1.5) should be [40%\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [initial\] to [40px\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [40px\] to [40%\] at (1) should be [calc(0px + 40%)\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [super\] to [40%\] at (0.3) should be [super\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from neutral to [40px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [0px\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from neutral to [40px\] at (0.3) should be [19px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [unset\] to [40px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from [inherit\] to [40px\] at (1.5) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from [40px\] to [40%\] at (-0.5) should be [calc(60px - 20%)\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [unset\] to [40px\] at (0.5) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [inherit\] to [40px\] at (1.5) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [initial\] to [40px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [inherit\] to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [0px\] to [100px\] at (-0.5) should be [-50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [initial\] to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [initial\] to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [super\] to [40%\] at (0.6) should be [40%\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from neutral to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from [inherit\] to [40px\] at (0.6) should be [64px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from neutral to [40px\] at (0.6) should be [28px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from [0px\] to [100px\] at (1.5) should be [150px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [initial\] to [40px\] at (1.5) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [0px\] to [100px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from [inherit\] to [40px\] at (0.6) should be [64px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [initial\] to [40px\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [initial\] to [40px\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [40px\] to [40%\] at (0.3) should be [calc(28px + 12%)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from [inherit\] to [40px\] at (0.3) should be [82px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [inherit\] to [40px\] at (-0.5) should be [130px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [0px\] to [100px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <vertical-align> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [40px\] to [40%\] at (0.3) should be [calc(28px + 12%)\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [unset\] to [40px\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from [inherit\] to [40px\] at (1.5) should be [10px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [unset\] to [40px\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [super\] to [40%\] at (0) should be [super\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [initial\] to [40px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [40px\] to [40%\] at (1.5) should be [calc(-20px + 60%)\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [super\] to [40%\] at (1) should be [40%\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [0px\] to [100px\] at (0.6) should be [60px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from [40px\] to [40%\] at (0.3) should be [calc(28px + 12%)\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [super\] to [40%\] at (0.5) should be [40%\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [unset\] to [40px\] at (0.6) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [40px\] to [40%\] at (1.5) should be [calc(-20px + 60%)\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [unset\] to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [unset\] to [40px\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [0px\] to [100px\] at (-0.5) should be [-50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [inherit\] to [40px\] at (0.6) should be [64px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [unset\] to [40px\] at (1.5) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from neutral to [40px\] at (1.5) should be [55px\]]
+ expected: FAIL
+
+ [Web Animations: property <vertical-align> from [unset\] to [40px\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <vertical-align> from [inherit\] to [40px\] at (0.3) should be [82px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <vertical-align> from [0px\] to [100px\] at (0.3) should be [30px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-transitions/animations/z-index-interpolation.html.ini b/tests/wpt/metadata/css/css-transitions/animations/z-index-interpolation.html.ini
index 99337227f8d..ab1e0cc76f1 100644
--- a/tests/wpt/metadata/css/css-transitions/animations/z-index-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-transitions/animations/z-index-interpolation.html.ini
@@ -1,2 +1,421 @@
[z-index-interpolation.html]
- expected: ERROR
+ [CSS Animations: property <z-index> from [2\] to [4\] at (0.6) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from neutral to [5\] at (-0.3) should be [-4\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [unset\] to [5\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [2\] to [4\] at (0.3) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from neutral to [5\] at (1.5) should be [9\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [2\] to [4\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [auto\] to [10\] at (1.5) should be [10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [-2\] to [-4\] at (0.6) should be [-3\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [unset\] to [5\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [initial\] to [5\] at (1) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [initial\] to [5\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from neutral to [5\] at (0.6) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [auto\] to [10\] at (-0.3) should be [auto\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from neutral to [5\] at (-0.3) should be [-4\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [-5\] to [5\] at (0) should be [-5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [inherit\] to [5\] at (-0.3) should be [18\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from neutral to [5\] at (1) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [2\] to [4\] at (0) should be [2\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [2\] to [4\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from neutral to [5\] at (1.5) should be [9\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [-5\] to [5\] at (1.5) should be [10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [inherit\] to [5\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [initial\] to [5\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [2\] to [4\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [2\] to [4\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [initial\] to [5\] at (0.6) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [auto\] to [10\] at (0.5) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from neutral to [5\] at (1) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [-2\] to [-4\] at (0.3) should be [-3\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [unset\] to [5\] at (0.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [-2\] to [-4\] at (-0.3) should be [-1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [-5\] to [5\] at (0.6) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [-5\] to [5\] at (0.3) should be [-2\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [unset\] to [5\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [initial\] to [5\] at (0.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [-2\] to [-4\] at (-0.3) should be [-1\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [inherit\] to [5\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [-2\] to [-4\] at (-0.3) should be [-1\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [2\] to [4\] at (1) should be [4\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-2\] to [-4\] at (1.5) should be [-5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [inherit\] to [5\] at (0.3) should be [12\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [2\] to [4\] at (0.6) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-2\] to [-4\] at (0) should be [-2\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [inherit\] to [5\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-2\] to [-4\] at (1) should be [-4\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-2\] to [-4\] at (0.3) should be [-3\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-5\] to [5\] at (1) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [initial\] to [5\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from neutral to [5\] at (0.6) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [initial\] to [5\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [inherit\] to [5\] at (0.6) should be [9\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [2\] to [4\] at (0.3) should be [3\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [initial\] to [5\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [-2\] to [-4\] at (1.5) should be [-5\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [initial\] to [5\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from neutral to [5\] at (0.6) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [2\] to [4\] at (0) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [inherit\] to [5\] at (-0.3) should be [18\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from neutral to [5\] at (0.6) should be [2\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [unset\] to [5\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [inherit\] to [5\] at (0) should be [15\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [auto\] to [10\] at (1) should be [10\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [-5\] to [5\] at (0.6) should be [1\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [-5\] to [5\] at (1.5) should be [10\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from neutral to [5\] at (1.5) should be [9\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [2\] to [4\] at (1) should be [4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [2\] to [4\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from neutral to [5\] at (1.5) should be [9\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [inherit\] to [5\] at (0.3) should be [12\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [auto\] to [10\] at (0) should be [auto\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [inherit\] to [5\] at (0.6) should be [9\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [-5\] to [5\] at (-0.3) should be [-8\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [-5\] to [5\] at (1.5) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from neutral to [5\] at (0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [auto\] to [10\] at (1.5) should be [10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [2\] to [4\] at (0.6) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [inherit\] to [5\] at (0.3) should be [12\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [unset\] to [5\] at (0.6) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-5\] to [5\] at (0.6) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [-2\] to [-4\] at (0.3) should be [-3\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [-2\] to [-4\] at (0.6) should be [-3\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [-2\] to [-4\] at (1.5) should be [-5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [unset\] to [5\] at (1) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [2\] to [4\] at (0.3) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [unset\] to [5\] at (0.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [-5\] to [5\] at (1) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [-5\] to [5\] at (-0.3) should be [-8\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from neutral to [5\] at (-0.3) should be [-4\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [2\] to [4\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-5\] to [5\] at (0.3) should be [-2\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [auto\] to [10\] at (0.3) should be [auto\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [unset\] to [5\] at (1) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [initial\] to [5\] at (1) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-2\] to [-4\] at (0.6) should be [-3\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-2\] to [-4\] at (-0.3) should be [-1\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-5\] to [5\] at (-0.3) should be [-8\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [2\] to [4\] at (1.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [inherit\] to [5\] at (1.5) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [-2\] to [-4\] at (1.5) should be [-5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [2\] to [4\] at (0.3) should be [3\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [-2\] to [-4\] at (0.3) should be [-3\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from neutral to [5\] at (0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [auto\] to [10\] at (0) should be [auto\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [unset\] to [5\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [-5\] to [5\] at (0.6) should be [1\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-2\] to [-4\] at (0.1) should be [-2\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-5\] to [5\] at (1.5) should be [10\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [-5\] to [5\] at (0.3) should be [-2\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [-5\] to [5\] at (0) should be [-5\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from neutral to [5\] at (0) should be [-2\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [inherit\] to [5\] at (0) should be [15\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [unset\] to [5\] at (-0.3) should be [unset\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [unset\] to [5\] at (0.6) should be [5\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [unset\] to [5\] at (0.3) should be [unset\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [inherit\] to [5\] at (1) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [inherit\] to [5\] at (-0.3) should be [18\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [initial\] to [5\] at (0.6) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [-2\] to [-4\] at (1) should be [-4\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [-5\] to [5\] at (-0.3) should be [-8\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [auto\] to [10\] at (0.5) should be [10\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [initial\] to [5\] at (0.5) should be [5\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [inherit\] to [5\] at (0.6) should be [9\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [auto\] to [10\] at (0.3) should be [auto\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from neutral to [5\] at (0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [2\] to [4\] at (0.6) should be [3\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [auto\] to [10\] at (0.6) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [inherit\] to [5\] at (1) should be [5\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [unset\] to [5\] at (0) should be [unset\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from neutral to [5\] at (-0.3) should be [-4\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [2\] to [4\] at (-0.3) should be [1\]]
+ expected: FAIL
+
+ [CSS Transitions: property <z-index> from [-2\] to [-4\] at (0.6) should be [-3\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [auto\] to [10\] at (-0.3) should be [auto\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from neutral to [5\] at (0.3) should be [0\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [initial\] to [5\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [inherit\] to [5\] at (0.6) should be [9\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [auto\] to [10\] at (1) should be [10\]]
+ expected: FAIL
+
+ [Web Animations: property <z-index> from [initial\] to [5\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [inherit\] to [5\] at (0.3) should be [12\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <z-index> from [inherit\] to [5\] at (-0.3) should be [18\]]
+ expected: FAIL
+
+ [CSS Animations: property <z-index> from [auto\] to [10\] at (0.6) should be [10\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-ui/animation/caret-color-interpolation.html.ini b/tests/wpt/metadata/css/css-ui/animation/caret-color-interpolation.html.ini
index 8920c4dacee..53cf77de076 100644
--- a/tests/wpt/metadata/css/css-ui/animation/caret-color-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-ui/animation/caret-color-interpolation.html.ini
@@ -1,5 +1,532 @@
[caret-color-interpolation.html]
- expected: ERROR
[caret-color interpolation]
expected: FAIL
+ [CSS Transitions: property <caret-color> from [unset\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [unset\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [black\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [currentColor\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [currentColor\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from neutral to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [auto\] to [green\] at (0.6) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [inherit\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from neutral to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from neutral to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [initial\] to [green\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [initial\] to [green\] at (1.5) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [inherit\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [initial\] to [green\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [auto\] to [green\] at (1.5) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [initial\] to [green\] at (1.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [auto\] to [green\] at (-0.3) should be [auto\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [inherit\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [currentColor\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from neutral to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [initial\] to [green\] at (1) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [auto\] to [green\] at (1) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [inherit\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [unset\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [initial\] to [green\] at (0) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [unset\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [unset\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [currentColor\] to [green\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [currentColor\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [initial\] to [green\] at (-0.3) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [auto\] to [green\] at (0.3) should be [auto\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [inherit\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from neutral to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [black\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [black\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [currentColor\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [currentColor\] to [green\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [unset\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [black\] to [orange\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [auto\] to [green\] at (0.6) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [initial\] to [green\] at (-0.3) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [black\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [auto\] to [green\] at (0.6) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [unset\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [black\] to [orange\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [currentColor\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [auto\] to [green\] at (1.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [initial\] to [green\] at (1.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from neutral to [green\] at (0) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [currentColor\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [black\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [unset\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [initial\] to [green\] at (0.6) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from neutral to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [initial\] to [green\] at (0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [auto\] to [green\] at (1) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [initial\] to [green\] at (0.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [currentColor\] to [green\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [auto\] to [green\] at (0) should be [auto\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [currentColor\] to [green\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [initial\] to [green\] at (0.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [black\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [currentColor\] to [green\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [currentColor\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [initial\] to [green\] at (1) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [auto\] to [green\] at (0.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [inherit\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from neutral to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [auto\] to [green\] at (1) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [currentColor\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [initial\] to [green\] at (1.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [initial\] to [green\] at (0.6) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [auto\] to [green\] at (1) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from neutral to [green\] at (-0.3) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [auto\] to [green\] at (0.3) should be [auto\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from neutral to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from neutral to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [inherit\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [currentColor\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from neutral to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [auto\] to [green\] at (0) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [auto\] to [green\] at (0) should be [auto\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [black\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [unset\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [black\] to [orange\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from neutral to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [auto\] to [green\] at (0.5) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [initial\] to [green\] at (0.6) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [initial\] to [green\] at (0.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from neutral to [green\] at (-0.3) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [initial\] to [green\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [initial\] to [green\] at (0) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [currentColor\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [inherit\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [inherit\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [auto\] to [green\] at (0.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [auto\] to [green\] at (0.3) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [currentColor\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [auto\] to [green\] at (0.6) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [black\] to [orange\] at (0.3) should be [rgb(77, 50, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from neutral to [green\] at (-0.3) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from neutral to [green\] at (0) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from neutral to [green\] at (-0.3) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [initial\] to [green\] at (0.6) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [initial\] to [green\] at (0) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [initial\] to [green\] at (-0.3) should be [initial\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [black\] to [orange\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [black\] to [orange\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [black\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [currentColor\] to [green\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [auto\] to [green\] at (1.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [initial\] to [green\] at (1) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [initial\] to [green\] at (0.5) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [auto\] to [green\] at (1.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [currentColor\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [initial\] to [green\] at (0.3) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from neutral to [green\] at (0) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [auto\] to [green\] at (-0.3) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [unset\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [black\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [black\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [inherit\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [black\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from neutral to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [inherit\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [inherit\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [black\] to [orange\] at (1.5) should be [rgb(255, 248, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from neutral to [green\] at (0) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [black\] to [orange\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [auto\] to [green\] at (0.5) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [black\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [auto\] to [green\] at (-0.3) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [auto\] to [green\] at (-0.3) should be [auto\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [auto\] to [green\] at (0) should be [green\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [currentColor\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [black\] to [orange\] at (1) should be [rgb(255, 165, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [inherit\] to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [inherit\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [black\] to [orange\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [unset\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from neutral to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [currentColor\] to [green\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from neutral to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [initial\] to [green\] at (1) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [currentColor\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from neutral to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [auto\] to [green\] at (0.3) should be [green\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [currentColor\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [inherit\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [black\] to [orange\] at (0.6) should be [rgb(153, 99, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [inherit\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [inherit\] to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <caret-color> from [inherit\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from [unset\] to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [black\] to [orange\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [initial\] to [green\] at (0.3) should be [green\]]
+ expected: FAIL
+
+ [Web Animations: property <caret-color> from [currentColor\] to [green\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [inherit\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <caret-color> from neutral to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <caret-color> from [inherit\] to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-ui/animation/outline-color-interpolation.html.ini b/tests/wpt/metadata/css/css-ui/animation/outline-color-interpolation.html.ini
index cbd9d0788c0..36faf0382ca 100644
--- a/tests/wpt/metadata/css/css-ui/animation/outline-color-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-ui/animation/outline-color-interpolation.html.ini
@@ -1,5 +1,268 @@
[outline-color-interpolation.html]
- expected: ERROR
[outline-color interpolation]
expected: FAIL
+ [CSS Transitions with transition: all: property <outline-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [white\] to [orange\] at (-0.3) should be [white\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [initial\] to [green\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [initial\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from neutral to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [inherit\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [white\] to [orange\] at (0) should be [white\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [unset\] to [green\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from [inherit\] to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [inherit\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from neutral to [green\] at (-0.3) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [inherit\] to [green\] at (-0.3) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from neutral to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [initial\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from neutral to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from neutral to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [inherit\] to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [initial\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from neutral to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from neutral to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [inherit\] to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from neutral to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [inherit\] to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [initial\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [initial\] to [green\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [inherit\] to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [white\] to [orange\] at (-0.3) should be [white\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from neutral to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [initial\] to [green\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [initial\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [inherit\] to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from [initial\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [initial\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [initial\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from neutral to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [unset\] to [green\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [white\] to [orange\] at (0) should be [white\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [unset\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from neutral to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [unset\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from [initial\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [inherit\] to [green\] at (0.3) should be [rgb(179, 217, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [inherit\] to [green\] at (0) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [white\] to [orange\] at (1) should be [orange\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [white\] to [orange\] at (1) should be [orange\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from neutral to [green\] at (0.3) should be [rgb(0, 38, 179)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [initial\] to [green\] at (0.3) should be [rgb(0, 38, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [inherit\] to [green\] at (0) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from neutral to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from [initial\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from neutral to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [initial\] to [green\] at (0) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [unset\] to [green\] at (1) should be [rgb(0, 128, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [unset\] to [green\] at (0.6) should be [rgb(0, 77, 0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [inherit\] to [green\] at (-0.3) should be [rgb(255, 255, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from neutral to [green\] at (0.6) should be [rgb(0, 77, 102)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [white\] to [orange\] at (1.5) should be [rgb(255, 120, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [white\] to [orange\] at (0.3) should be [rgb(255, 228, 179)\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-color> from [unset\] to [green\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from neutral to [green\] at (0) should be [rgb(0, 0, 255)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [unset\] to [green\] at (-0.3) should be [rgb(0, 0, 0)\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-color> from [unset\] to [green\] at (1.5) should be [rgb(0, 192, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from [inherit\] to [green\] at (0.6) should be [rgb(102, 179, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-color> from [inherit\] to [green\] at (1.5) should be [rgb(0, 65, 0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-color> from [white\] to [orange\] at (0.6) should be [rgb(255, 201, 102)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-ui/animation/outline-offset-interpolation.html.ini b/tests/wpt/metadata/css/css-ui/animation/outline-offset-interpolation.html.ini
index 12a28490f5d..8112b075a92 100644
--- a/tests/wpt/metadata/css/css-ui/animation/outline-offset-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-ui/animation/outline-offset-interpolation.html.ini
@@ -1,5 +1,298 @@
[outline-offset-interpolation.html]
- expected: ERROR
[outline-offset interpolation]
expected: FAIL
+ [Web Animations: property <outline-offset> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [unset\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [initial\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [unset\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [-5px\] to [5px\] at (1.5) should be [10px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [-5px\] to [5px\] at (0) should be [-5px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [unset\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [initial\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [unset\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [unset\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [-5px\] to [5px\] at (1) should be [5px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from neutral to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [unset\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [unset\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [-5px\] to [5px\] at (1.5) should be [10px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [-5px\] to [5px\] at (1) should be [5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [unset\] to [20px\] at (1.5) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [-5px\] to [5px\] at (1.5) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [unset\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [unset\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [unset\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [unset\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [initial\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [initial\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [initial\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [-5px\] to [5px\] at (0.6) should be [1px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [-5px\] to [5px\] at (0) should be [-5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [unset\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [unset\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [unset\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [unset\] to [20px\] at (0.6) should be [12px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [initial\] to [20px\] at (-0.3) should be [-6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [-5px\] to [5px\] at (-0.3) should be [-8px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-offset> from [-5px\] to [5px\] at (0.3) should be [-2px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-offset> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-offset> from [unset\] to [20px\] at (0.3) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-offset> from [unset\] to [20px\] at (0) should be [0px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-ui/animation/outline-width-interpolation.html.ini b/tests/wpt/metadata/css/css-ui/animation/outline-width-interpolation.html.ini
index c996d09746e..4c2f4dc5aca 100644
--- a/tests/wpt/metadata/css/css-ui/animation/outline-width-interpolation.html.ini
+++ b/tests/wpt/metadata/css/css-ui/animation/outline-width-interpolation.html.ini
@@ -1,5 +1,364 @@
[outline-width-interpolation.html]
- expected: ERROR
[outline-width interpolation]
expected: FAIL
+ [CSS Transitions with transition: all: property <outline-width> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [initial\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [0px\] to [10px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from neutral to [20px\] at (0) should be [10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [initial\] to [20px\] at (0.6) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [unset\] to [20px\] at (1.5) should be [28px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [thick\] to [15px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [0px\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [unset\] to [20px\] at (0.6) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [initial\] to [20px\] at (1.5) should be [28px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [0px\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [unset\] to [20px\] at (0) should be [3px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [unset\] to [20px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [thick\] to [15px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [unset\] to [20px\] at (0.6) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [unset\] to [20px\] at (0.6) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [thick\] to [15px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [initial\] to [20px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [thick\] to [15px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [initial\] to [20px\] at (1.5) should be [28px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from neutral to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [0px\] to [10px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [thick\] to [15px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [thick\] to [15px\] at (1) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [thick\] to [15px\] at (0.6) should be [11px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [unset\] to [20px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [0px\] to [10px\] at (1) should be [10px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [unset\] to [20px\] at (0) should be [3px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [initial\] to [20px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [unset\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [initial\] to [20px\] at (0.6) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [thick\] to [15px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [0px\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [unset\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [unset\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [unset\] to [20px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [thick\] to [15px\] at (-0.3) should be [2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [inherit\] to [20px\] at (-0.3) should be [33px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [thick\] to [15px\] at (0) should be [5px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [thick\] to [15px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [initial\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [initial\] to [20px\] at (1.5) should be [28px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [unset\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [thick\] to [15px\] at (-0.3) should be [2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [inherit\] to [20px\] at (0.6) should be [24px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [thick\] to [15px\] at (0.6) should be [11px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [initial\] to [20px\] at (1.5) should be [28px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [thick\] to [15px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [0px\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [thick\] to [15px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [initial\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [thick\] to [15px\] at (1.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [thick\] to [15px\] at (-2) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [thick\] to [15px\] at (0) should be [5px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [0px\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [initial\] to [20px\] at (0.6) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [thick\] to [15px\] at (0.6) should be [11px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [0px\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [0px\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [thick\] to [15px\] at (1) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [inherit\] to [20px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [0px\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [thick\] to [15px\] at (-0.3) should be [2px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [0px\] to [10px\] at (0.6) should be [6px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [initial\] to [20px\] at (0.6) should be [13px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [unset\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [0px\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [unset\] to [20px\] at (1.5) should be [28px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [0px\] to [10px\] at (1.5) should be [15px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [initial\] to [20px\] at (0) should be [3px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [inherit\] to [20px\] at (0) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [0px\] to [10px\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from neutral to [20px\] at (0.6) should be [16px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [thick\] to [15px\] at (-0.3) should be [2px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [thick\] to [15px\] at (0.6) should be [11px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [0px\] to [10px\] at (0.3) should be [3px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [unset\] to [20px\] at (0.6) should be [13px\]]
+ expected: FAIL
+
+ [Web Animations: property <outline-width> from [thick\] to [15px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [inherit\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from neutral to [20px\] at (1.5) should be [25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [initial\] to [20px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [initial\] to [20px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [initial\] to [20px\] at (1) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from neutral to [20px\] at (0.3) should be [13px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [initial\] to [20px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [unset\] to [20px\] at (1.5) should be [28px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <outline-width> from [inherit\] to [20px\] at (0.3) should be [27px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [0px\] to [10px\] at (-0.3) should be [0px\]]
+ expected: FAIL
+
+ [CSS Animations: property <outline-width> from [initial\] to [20px\] at (0) should be [3px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [unset\] to [20px\] at (0.3) should be [8px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from neutral to [20px\] at (-0.3) should be [7px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <outline-width> from [unset\] to [20px\] at (1.5) should be [28px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-values/animations/calc-interpolation.html.ini b/tests/wpt/metadata/css/css-values/animations/calc-interpolation.html.ini
new file mode 100644
index 00000000000..57ac6ff7227
--- /dev/null
+++ b/tests/wpt/metadata/css/css-values/animations/calc-interpolation.html.ini
@@ -0,0 +1,298 @@
+[calc-interpolation.html]
+ [CSS Transitions with transition: all: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.5) should be [calc(((50% - 25px) * 0.5) + ((100% - 10px) * 0.5))\]]
+ expected: FAIL
+
+ [CSS Transitions: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1.25) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0%\] to [100px\] at (0.5) should be [calc(0% + 50px)\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0%\] to [100px\] at (1) should be [calc(0% + 100px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0em\] to [100px\] at (1.25) should be [125px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0%\] to [100px\] at (0.25) should be [calc(0% + 25px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0em\] to [100px\] at (0.5) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.75) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0%\] to [100px\] at (0.25) should be [calc(0% + 25px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0em\] to [100px\] at (0.25) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0%\] to [100px\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0em\] to [100px\] at (0) should be [0em\]]
+ expected: FAIL
+
+ [CSS Transitions: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (-0.25) should be [-10px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0em\] to [100px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0%\] to [100px\] at (0.5) should be [calc(0% + 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.25) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0) should be [calc(50% - 25px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0em\] to [100px\] at (0.25) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0) should be [calc(50% - 25px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1) should be [calc(100% - 10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0em\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0%\] to [100px\] at (1.25) should be [calc(0% + 125px)\]]
+ expected: FAIL
+
+ [Web Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.25) should be [calc(((50% - 25px) * 0.75) + ((100% - 10px) * 0.25))\]]
+ expected: FAIL
+
+ [CSS Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1.25) should be [calc(((50% - 25px) * -0.25) + ((100% - 10px) * 1.25))\]]
+ expected: FAIL
+
+ [CSS Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.25) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1.25) should be [calc(((50% - 25px) * -0.25) + ((100% - 10px) * 1.25))\]]
+ expected: FAIL
+
+ [CSS Transitions: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.75) should be [30px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1) should be [40px\]]
+ expected: FAIL
+
+ [Web Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.75) should be [30px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0%\] to [100px\] at (-0.25) should be [calc(0% + -25px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.75) should be [calc(((50% - 25px) * 0.25) + ((100% - 10px) * 0.75))\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (-0.25) should be [calc(((50% - 25px) * 1.25) + ((100% - 10px) * -0.25))\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (-0.25) should be [calc(((50% - 25px) * 1.25) + ((100% - 10px) * -0.25))\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.25) should be [calc(((50% - 25px) * 0.75) + ((100% - 10px) * 0.25))\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0%\] to [100px\] at (-0.25) should be [calc(0% + -25px)\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0em\] to [100px\] at (0.25) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0em\] to [100px\] at (-0.25) should be [-25px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0%\] to [100px\] at (0) should be [0%\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.75) should be [30px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0%\] to [100px\] at (0.25) should be [calc(0% + 25px)\]]
+ expected: FAIL
+
+ [Web Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1.25) should be [calc(((50% - 25px) * -0.25) + ((100% - 10px) * 1.25))\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0%\] to [100px\] at (1.25) should be [calc(0% + 125px)\]]
+ expected: FAIL
+
+ [Web Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.25) should be [10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0em\] to [100px\] at (1.25) should be [125px\]]
+ expected: FAIL
+
+ [Web Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (-0.25) should be [calc(((50% - 25px) * 1.25) + ((100% - 10px) * -0.25))\]]
+ expected: FAIL
+
+ [Web Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1.25) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0%\] to [100px\] at (-0.25) should be [calc(0% + -25px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0%\] to [100px\] at (0.25) should be [calc(0% + 25px)\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0%\] to [100px\] at (0.75) should be [calc(0% + 75px)\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0%\] to [100px\] at (1.25) should be [calc(0% + 125px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0em\] to [100px\] at (-0.25) should be [-25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0%\] to [100px\] at (0.75) should be [calc(0% + 75px)\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.75) should be [calc(((50% - 25px) * 0.25) + ((100% - 10px) * 0.75))\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0em\] to [100px\] at (1.25) should be [125px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.5) should be [calc(((50% - 25px) * 0.5) + ((100% - 10px) * 0.5))\]]
+ expected: FAIL
+
+ [CSS Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1.25) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0%\] to [100px\] at (0.5) should be [calc(0% + 50px)\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.25) should be [calc(((50% - 25px) * 0.75) + ((100% - 10px) * 0.25))\]]
+ expected: FAIL
+
+ [Web Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (-0.25) should be [-10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0em\] to [100px\] at (-0.25) should be [-25px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.75) should be [calc(((50% - 25px) * 0.25) + ((100% - 10px) * 0.75))\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0em\] to [100px\] at (0.5) should be [50px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.5) should be [calc(((50% - 25px) * 0.5) + ((100% - 10px) * 0.5))\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0em\] to [100px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (-0.25) should be [calc(((50% - 25px) * 1.25) + ((100% - 10px) * -0.25))\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1.25) should be [50px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0em\] to [100px\] at (1.25) should be [125px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0em\] to [100px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1) should be [calc(100% - 10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (-0.25) should be [-10px\]]
+ expected: FAIL
+
+ [CSS Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.5) should be [20px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0em\] to [100px\] at (0.25) should be [25px\]]
+ expected: FAIL
+
+ [Web Animations: property <text-indent> from [0%\] to [100px\] at (-0.25) should be [calc(0% + -25px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0%\] to [100px\] at (0.75) should be [calc(0% + 75px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (-0.25) should be [-10px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.5) should be [calc(((50% - 25px) * 0.5) + ((100% - 10px) * 0.5))\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0em\] to [100px\] at (0.75) should be [75px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.25) should be [calc(((50% - 25px) * 0.75) + ((100% - 10px) * 0.25))\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (1.25) should be [calc(((50% - 25px) * -0.25) + ((100% - 10px) * 1.25))\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0em\] to [100px\] at (-0.25) should be [-25px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0em\] to [100px\] at (0.5) should be [50px\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0%\] to [100px\] at (1) should be [calc(0% + 100px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0em\] to [100px\] at (1) should be [100px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0) should be [0px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.75) should be [calc(((50% - 25px) * 0.25) + ((100% - 10px) * 0.75))\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <text-indent> from [0%\] to [100px\] at (0.75) should be [calc(0% + 75px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0%\] to [100px\] at (1.25) should be [calc(0% + 125px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <text-indent> from [0em\] to [100px\] at (0.5) should be [50px\]]
+ expected: FAIL
+
+ [CSS Transitions: property <text-indent> from [0%\] to [100px\] at (0.5) should be [calc(0% + 50px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <left> from [calc(50% - 25px)\] to [calc(100% - 10px)\] at (0.25) should be [10px\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/cssom-view/matchMedia-display-none-iframe.html.ini b/tests/wpt/metadata/css/cssom-view/matchMedia-display-none-iframe.html.ini
new file mode 100644
index 00000000000..e6e1f29e274
--- /dev/null
+++ b/tests/wpt/metadata/css/cssom-view/matchMedia-display-none-iframe.html.ini
@@ -0,0 +1,2 @@
+[matchMedia-display-none-iframe.html]
+ expected: ERROR
diff --git a/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-001.html.ini b/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-001.html.ini
index cb2f1b0b706..abd513f8af5 100644
--- a/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-001.html.ini
+++ b/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-001.html.ini
@@ -1,5 +1,4 @@
[backdrop-filter-interpolation-001.html]
- expected: ERROR
[Animation between "hue-rotate(0deg) blur(6px)" and "hue-rotate(180deg) blur(10px)" at progress -0.5]
expected: FAIL
@@ -45,3 +44,783 @@
[backdrop-filter interpolation]
expected: FAIL
+ [CSS Transitions with transition: all: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(15deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(35deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (1) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (1.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [initial\] to [sepia(1)\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (1.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1) should be [hue-rotate(90deg) blur(10mm)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (1.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (-0.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1) should be [hue-rotate(90deg) blur(10mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1) should be [hue-rotate(90deg) blur(10mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (-0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (-0.5) should be [hue-rotate(-90deg) blur(4px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (-0.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1.5) should be [hue-rotate(95deg) blur(12mm)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px white)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1) should be [hue-rotate(180deg) blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (1.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px currentcolor)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (-0.5) should be [hue-rotate(75deg) blur(4mm)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0) should be [hue-rotate(80deg) blur(6mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (1) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px white)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px currentcolor)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px #80C080)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0.25) should be [hue-rotate(135deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(27deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (1) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0.25) should be [hue-rotate(135deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1) should be [hue-rotate(180deg) blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px currentcolor)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(16deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(27deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (1.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1) should be [hue-rotate(180deg) blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.5) should be [hue-rotate(90deg) blur(8px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.3) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1.5) should be [hue-rotate(95deg) blur(12mm)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (1.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0) should be [hue-rotate(0deg) blur(6px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(25deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (1.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [initial\] to [sepia(1)\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (-0.3) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [initial\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.6) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1.5) should be [hue-rotate(270deg) blur(12px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.25) should be [hue-rotate(82.5deg) blur(7mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [initial\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (-0.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0) should be [hue-rotate(10deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(13deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.25) should be [hue-rotate(45deg) blur(7px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(24deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1.5) should be [hue-rotate(270deg) blur(12px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1) should be [hue-rotate(180deg) blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(15deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(15deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #004100)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(13deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #004100)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px white)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(16deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [initial\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.5) should be [hue-rotate(90deg) blur(8px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.25) should be [hue-rotate(82.5deg) blur(7mm)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px #80C080)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(35deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (1) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.5) should be [hue-rotate(85deg) blur(8mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(24deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [initial\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.25) should be [hue-rotate(45deg) blur(7px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(27deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [initial\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [initial\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.25) should be [hue-rotate(45deg) blur(7px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (1) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #004100)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(13deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(35deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (-0.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (-0.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(35deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(13deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (-0.3) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.5) should be [hue-rotate(90deg) blur(8px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.6) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (1.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.3) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.6) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1.5) should be [hue-rotate(95deg) blur(12mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.25) should be [hue-rotate(82.5deg) blur(7mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0.25) should be [hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [initial\] to [sepia(1)\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (1) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (-0.5) should be [hue-rotate(75deg) blur(4mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #004100)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(15deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0) should be [hue-rotate(80deg) blur(6mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.5) should be [hue-rotate(85deg) blur(8mm)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0.25) should be [hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0) should be [hue-rotate(0deg) blur(6px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.25) should be [hue-rotate(45deg) blur(7px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1.5) should be [hue-rotate(270deg) blur(12px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.5) should be [hue-rotate(90deg) blur(8px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [initial\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [initial\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0.25) should be [hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [initial\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (-0.5) should be [hue-rotate(-90deg) blur(4px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [initial\] to [sepia(1)\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0) should be [hue-rotate(0deg) blur(6px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [initial\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px white)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px #80C080)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [initial\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(16deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.6) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(25deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0) should be [hue-rotate(10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (1.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (1) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (1.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1.5) should be [hue-rotate(95deg) blur(12mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (-0.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (1) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(24deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px currentcolor)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0) should be [hue-rotate(10deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0) should be [hue-rotate(0deg) blur(6px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.5) should be [hue-rotate(85deg) blur(8mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (1.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [initial\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [initial\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (-0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (-0.5) should be [hue-rotate(75deg) blur(4mm)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0) should be [hue-rotate(10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(24deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.25) should be [hue-rotate(82.5deg) blur(7mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (-0.5) should be [hue-rotate(75deg) blur(4mm)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (1.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [initial\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (1) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (1) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0) should be [hue-rotate(80deg) blur(6mm)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.5) should be [hue-rotate(85deg) blur(8mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0.25) should be [hue-rotate(135deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [initial\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1) should be [hue-rotate(90deg) blur(10mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (1) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (1) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (-0.5) should be [hue-rotate(-90deg) blur(4px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (0.25) should be [hue-rotate(135deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (-0.5) should be [hue-rotate(-90deg) blur(4px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1.5) should be [hue-rotate(270deg) blur(12px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px #80C080)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(27deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [initial\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(25deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(25deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(16deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate(180deg)\] to [none\] at (-0.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [initial\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from neutral to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [inherit\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [unset\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0) should be [hue-rotate(80deg) blur(6mm)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (0.25) should be [hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [hue-rotate(180deg)\] at (-0.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-002.html.ini b/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-002.html.ini
index 5bcb8d12b43..c5e2954bc0b 100644
--- a/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-002.html.ini
+++ b/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-002.html.ini
@@ -1,5 +1,4 @@
[backdrop-filter-interpolation-002.html]
- expected: ERROR
[Animation between "grayscale(0) blur(0px)" and "blur(10px)" at progress -1]
expected: FAIL
@@ -60,3 +59,207 @@
[backdrop-filter interpolation]
expected: FAIL
+ [Web Animations: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1) should be [blur(10px) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.25) should be [opacity(0.875) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (-0.5) should be [blur(4px) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1.5) should be [opacity(0.25) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1) should be [opacity(0.5) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (-0.5) should be [blur(4px) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.5) should be [blur(8px) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.5) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.25) should be [blur(7px) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.5) should be [blur(8px) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.3) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (-0.5) should be [opacity(1) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (-0.5) should be [blur(4px) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.5) should be [opacity(0.75) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.6) should be [blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1) should be [opacity(0.5) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.5) should be [blur(8px) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.25) should be [blur(7px) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.5) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1.5) should be [opacity(0.25) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.6) should be [blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (-0.3) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.25) should be [opacity(0.875) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1.5) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (-0.5) should be [blur(4px) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.25) should be [blur(7px) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1) should be [opacity(0.5) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (-0.3) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.3) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1.5) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (-0.3) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1.5) should be [blur(12px) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.6) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1) should be [opacity(0.5) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.5) should be [opacity(0.75) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.5) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.25) should be [opacity(0.875) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1.5) should be [opacity(0.25) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1.5) should be [blur(12px) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1.5) should be [blur(12px) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.3) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (-0.5) should be [opacity(1) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1.5) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.25) should be [blur(7px) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (-0.3) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.5) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1.5) should be [blur(12px) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.5) should be [opacity(0.75) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (-0.5) should be [opacity(1) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1) should be [blur(10px) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (-0.5) should be [opacity(1) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.3) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1) should be [blur(10px) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1.5) should be [opacity(0.25) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.5) should be [opacity(0.75) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1) should be [blur(10px) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.6) should be [blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.25) should be [opacity(0.875) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.5) should be [blur(8px) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1.5) should be [blur(10px)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-003.html.ini b/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-003.html.ini
index d471737879d..e7375e403e4 100644
--- a/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-003.html.ini
+++ b/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-003.html.ini
@@ -1,5 +1,4 @@
[backdrop-filter-interpolation-003.html]
- expected: ERROR
[Animation between "url("#svgfilter")" and "none" at progress 0.4]
expected: FAIL
@@ -174,3 +173,567 @@
[backdrop-filter interpolation]
expected: FAIL
+ [CSS Animations: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [opacity(0)\] to [none\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [grayscale(1)\] at (1) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [contrast(0)\] to [none\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [grayscale(1)\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [saturate(0)\] to [none\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.6) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [saturate(0)\] to [none\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [brightness(0)\] to [none\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [invert(1)\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [brightness(0)\] to [none\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [saturate(0)\] to [none\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [invert(1)\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [opacity(0)\] to [none\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [saturate(0)\] to [none\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (1.5) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [brightness(0)\] to [none\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [invert(1)\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [brightness(0)\] to [none\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [invert(1)\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [brightness(0)\] to [none\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [saturate(0)\] to [none\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [grayscale(1)\] at (1) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px rgba(0, 128, 0, 0.5))\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [brightness(0)\] to [none\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [opacity(0)\] to [none\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #00C000)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px transparent)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [saturate(0)\] to [none\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [invert(1)\] at (1) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [opacity(0)\] to [none\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #00C000)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [grayscale(1)\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [opacity(0)\] to [none\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px transparent)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px rgba(0, 128, 0, 0.5))\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.6) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [opacity(0)\] to [none\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [grayscale(1)\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [contrast(0)\] to [none\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (-0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [opacity(0)\] to [none\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [contrast(0)\] to [none\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [brightness(0)\] to [none\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [saturate(0)\] to [none\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [grayscale(1)\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [contrast(0)\] to [none\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [contrast(0)\] to [none\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.6) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [grayscale(1)\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [invert(1)\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [invert(1)\] at (1) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [grayscale(1)\] at (1) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [invert(1)\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [opacity(0)\] to [none\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [contrast(0)\] to [none\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [brightness(0)\] to [none\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [contrast(0)\] to [none\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [opacity(0)\] to [none\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [brightness(0)\] to [none\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #00C000)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px transparent)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [opacity(0)\] to [none\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [brightness(0)\] to [none\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [invert(1)\] at (1) should be [invert(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [contrast(0)\] to [none\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [opacity(0)\] to [none\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [grayscale(1)\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [brightness(0)\] to [none\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [contrast(0)\] to [none\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [grayscale(1)\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [invert(1)\] at (1) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [contrast(0)\] to [none\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [saturate(0)\] to [none\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px rgba(0, 128, 0, 0.5))\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [brightness(0)\] to [none\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [grayscale(1)\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (-0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.6) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [invert(1)\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [saturate(0)\] to [none\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [contrast(0)\] to [none\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [saturate(0)\] to [none\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px transparent)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [grayscale(1)\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [brightness(0)\] to [none\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [invert(1)\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [saturate(0)\] to [none\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (1.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [brightness(0)\] to [none\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [contrast(0)\] to [none\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [brightness(0)\] to [none\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [grayscale(1)\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [opacity(0)\] to [none\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (1.5) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [saturate(0)\] to [none\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [grayscale(1)\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [saturate(0)\] to [none\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [saturate(0)\] to [none\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [invert(1)\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [none\] to [invert(1)\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [saturate(0)\] to [none\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [invert(1)\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #00C000)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [opacity(0)\] to [none\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [contrast(0)\] to [none\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px rgba(0, 128, 0, 0.5))\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [opacity(0)\] to [none\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [none\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [opacity(0)\] to [none\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [grayscale(1)\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [none\] to [grayscale(1)\] at (1) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [contrast(0)\] to [none\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [contrast(0)\] to [none\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [saturate(0)\] to [none\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [contrast(0)\] to [none\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [invert(1)\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [opacity(0)\] to [none\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [url("#svgfilter")\] to [none\] at (1.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [none\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [brightness(0)\] to [none\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-004.html.ini b/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-004.html.ini
index 77849b1233b..b7c94f819c5 100644
--- a/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-004.html.ini
+++ b/tests/wpt/metadata/css/filter-effects/animation/backdrop-filter-interpolation-004.html.ini
@@ -1,5 +1,4 @@
[backdrop-filter-interpolation-004.html]
- expected: ERROR
["hue-rotate()" and "hue-rotate(360deg)" are valid backdrop-filter values]
expected: FAIL
@@ -183,3 +182,603 @@
[backdrop-filter interpolation]
expected: FAIL
+ [Web Animations: property <backdrop-filter> from [invert(0)\] to [invert()\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [invert(0)\] to [invert()\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [invert(0)\] to [invert()\] at (1) should be [invert()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (1) should be [grayscale()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (0) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0) should be [drop-shadow(0px 0px blue)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1) should be [drop-shadow(20px 10px 30px green)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (1) should be [opacity()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (1) should be [grayscale()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (-1) should be [drop-shadow(-20px -10px blue)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [invert(0)\] to [invert()\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [invert(0)\] to [invert()\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (1) should be [contrast()\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0) should be [drop-shadow(0px 0px blue)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (1) should be [contrast()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (1) should be [brightness()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [invert(0)\] to [invert()\] at (0) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0) should be [hue-rotate()\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (0) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1.5) should be [drop-shadow(30px 15px 45px rgb(0, 192, 0))\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [invert(0)\] to [invert()\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (1) should be [saturate()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [invert(0)\] to [invert()\] at (1) should be [invert()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0.5) should be [drop-shadow(10px 5px 15px rgb(0, 64, 128))\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [invert(0)\] to [invert()\] at (1) should be [invert()\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1) should be [drop-shadow(20px 10px 30px green)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (1) should be [saturate()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (1) should be [opacity()\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0) should be [drop-shadow(0px 0px blue)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [invert(0)\] to [invert()\] at (0) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [invert(0)\] to [invert()\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [invert(0)\] to [invert()\] at (1) should be [invert()\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1.5) should be [drop-shadow(30px 15px 45px rgb(0, 192, 0))\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1) should be [drop-shadow(20px 10px 30px green)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0) should be [hue-rotate()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (0) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1) should be [drop-shadow(20px 10px 30px green)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (1) should be [saturate()\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0) should be [drop-shadow(0px 0px blue)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (0) should be [blur()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [invert(0)\] to [invert()\] at (0) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0) should be [hue-rotate()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (-1) should be [drop-shadow(-20px -10px blue)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (1) should be [grayscale()\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1.5) should be [drop-shadow(30px 15px 45px rgb(0, 192, 0))\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0.5) should be [drop-shadow(10px 5px 15px rgb(0, 64, 128))\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0.5) should be [drop-shadow(10px 5px 15px rgb(0, 64, 128))\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [invert(0)\] to [invert()\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [invert(0)\] to [invert()\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (0) should be [blur()\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (-1) should be [drop-shadow(-20px -10px blue)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0) should be [hue-rotate()\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (1) should be [brightness()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (1) should be [brightness()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (0) should be [blur()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (1) should be [brightness()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (1) should be [sepia()\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0.5) should be [drop-shadow(10px 5px 15px rgb(0, 64, 128))\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (1) should be [grayscale()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (1) should be [sepia()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [invert(0)\] to [invert()\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (1) should be [sepia()\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (1) should be [contrast()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [invert(0)\] to [invert()\] at (0) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (0) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (1) should be [contrast()\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (1) should be [sepia()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [invert(0)\] to [invert()\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [invert(0)\] to [invert()\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (1) should be [opacity()\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [saturate(0)\] to [saturate()\] at (1) should be [saturate()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [invert(0)\] to [invert()\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (-1) should be [drop-shadow(-20px -10px blue)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [brightness(0)\] to [brightness()\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [sepia(0)\] to [sepia()\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (0) should be [blur()\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (1) should be [opacity()\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <backdrop-filter> from [contrast(0)\] to [contrast()\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [opacity(0)\] to [opacity()\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1.5) should be [drop-shadow(30px 15px 45px rgb(0, 192, 0))\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [blur()\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <backdrop-filter> from [grayscale(0)\] to [grayscale()\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-001.html.ini b/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-001.html.ini
index a6dbfa24368..d7dfd0ce0ec 100644
--- a/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-001.html.ini
+++ b/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-001.html.ini
@@ -1,5 +1,4 @@
[filter-interpolation-001.html]
- expected: ERROR
[Animation between "hue-rotate(0deg) blur(6px)" and "hue-rotate(180deg) blur(10px)" at progress -0.5]
expected: FAIL
@@ -39,3 +38,360 @@
[filter interpolation]
expected: FAIL
+ [CSS Transitions: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (-0.5) should be [hue-rotate(75deg) blur(4mm)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.25) should be [hue-rotate(82.5deg) blur(7mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (-0.5) should be [hue-rotate(-90deg) blur(4px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(27deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from neutral to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from neutral to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from neutral to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(16deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from neutral to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(5deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0) should be [hue-rotate(80deg) blur(6mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [initial\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [unset\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.5) should be [hue-rotate(85deg) blur(8mm)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from neutral to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(25deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.25) should be [hue-rotate(82.5deg) blur(7mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from neutral to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(13deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(27deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1.5) should be [hue-rotate(95deg) blur(12mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1.5) should be [hue-rotate(95deg) blur(12mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [initial\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.25) should be [hue-rotate(45deg) blur(7px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(24deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(35deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.25) should be [hue-rotate(45deg) blur(7px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from neutral to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(25deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1.5) should be [hue-rotate(270deg) blur(12px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1.5) should be [hue-rotate(95deg) blur(12mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0) should be [hue-rotate(80deg) blur(6mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1) should be [hue-rotate(90deg) blur(10mm)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [initial\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from neutral to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(16deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [initial\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.5) should be [hue-rotate(90deg) blur(8px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [initial\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.25) should be [hue-rotate(82.5deg) blur(7mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(27deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (-0.5) should be [hue-rotate(75deg) blur(4mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(15deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(15deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [unset\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from neutral to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(5deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (-0.5) should be [hue-rotate(-90deg) blur(4px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [initial\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [unset\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from neutral to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(13deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(24deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1.5) should be [hue-rotate(95deg) blur(12mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.25) should be [hue-rotate(45deg) blur(7px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.5) should be [hue-rotate(90deg) blur(8px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from neutral to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(13deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [unset\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.5) should be [hue-rotate(85deg) blur(8mm)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(24deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [initial\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(15deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1.5) should be [hue-rotate(270deg) blur(12px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.5) should be [hue-rotate(90deg) blur(8px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(24deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from neutral to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(25deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [unset\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from neutral to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(25deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (-0.5) should be [hue-rotate(-90deg) blur(4px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (-0.5) should be [hue-rotate(75deg) blur(4mm)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from neutral to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(13deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [unset\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(35deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (1) should be [hue-rotate(90deg) blur(10mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from neutral to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(5deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (-0.5) should be [hue-rotate(75deg) blur(4mm)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from neutral to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(16deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.5) should be [hue-rotate(85deg) blur(8mm)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from neutral to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(16deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.5) should be [hue-rotate(85deg) blur(8mm)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [initial\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [unset\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(-10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [unset\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (-0.5) should be [hue-rotate(-90deg) blur(4px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0) should be [hue-rotate(0deg) blur(6px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from neutral to [hue-rotate(20deg)\] at (0) should be [hue-rotate(10deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.5) should be [hue-rotate(90deg) blur(8px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(35deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(27deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0.25) should be [hue-rotate(45deg) blur(7px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (0.3) should be [hue-rotate(6deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1) should be [hue-rotate(180deg) blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1.5) should be [hue-rotate(270deg) blur(12px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(80deg) blur(6mm)\] to [hue-rotate(100grad) blur(1cm)\] at (0.25) should be [hue-rotate(82.5deg) blur(7mm)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (0) should be [hue-rotate(0deg) blur(6px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from neutral to [hue-rotate(20deg)\] at (1) should be [hue-rotate(20deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [initial\] to [hue-rotate(20deg)\] at (0.6) should be [hue-rotate(12deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (0) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1) should be [hue-rotate(180deg) blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (-0.5) should be [hue-rotate(35deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [inherit\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(15deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [unset\] to [hue-rotate(20deg)\] at (1.5) should be [hue-rotate(30deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate(0deg) blur(6px)\] to [hue-rotate(180deg) blur(10px)\] at (1.5) should be [hue-rotate(270deg) blur(12px)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-002.html.ini b/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-002.html.ini
index 4ea39f01976..4d0ca49ef2a 100644
--- a/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-002.html.ini
+++ b/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-002.html.ini
@@ -1,5 +1,4 @@
[filter-interpolation-002.html]
- expected: ERROR
[Animation between "grayscale(0) blur(0px)" and "blur(10px)" at progress -1]
expected: FAIL
@@ -51,3 +50,357 @@
[filter interpolation]
expected: FAIL
+ [CSS Transitions: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.5) should be [blur(8px) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1) should be [blur(10px) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1.5) should be [opacity(0.25) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [hue-rotate(180deg)\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(180deg)\] to [none\] at (-0.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1.5) should be [blur(12px) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.25) should be [opacity(0.875) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (-0.5) should be [blur(4px) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1) should be [blur(10px) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (1) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.25) should be [blur(7px) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0) should be [opacity(1) hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (0) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px white)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (-0.5) should be [opacity(1) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.6) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #004100)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.5) should be [opacity(0.75) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (0.25) should be [hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate(180deg)\] to [none\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0) should be [opacity(1) hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px currentcolor)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.25) should be [blur(7px) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1.5) should be [blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [drop-shadow(20px 10px blue)\] to [drop-shadow(20px 10px green)\] at (2147483648) should be [drop-shadow(20px 10px #00FF00\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #004100)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate(180deg)\] to [none\] at (1.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0) should be [blur(6px) hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [hue-rotate(180deg)\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.5) should be [blur(8px) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px white)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [hue-rotate(180deg)\] at (0.25) should be [hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (1) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (0.25) should be [hue-rotate(135deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (-0.3) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [hue-rotate(180deg)\] at (-0.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.5) should be [opacity(0.75) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px currentcolor)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px currentcolor)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #004100)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1.5) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [drop-shadow(20px 10px blue)\] to [drop-shadow(20px 10px green)\] at (2147483648) should be [drop-shadow(20px 10px #00FF00\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (-0.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [drop-shadow(20px 10px blue)\] to [drop-shadow(20px 10px green)\] at (2147483648) should be [drop-shadow(20px 10px #00FF00\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (1) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.5) should be [blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (-0.5) should be [opacity(1) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate(180deg)\] to [none\] at (-0.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.3) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(180deg)\] to [none\] at (1.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (1.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (-0.5) should be [blur(4px) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (-0.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [drop-shadow(20px 10px blue)\] to [drop-shadow(20px 10px green)\] at (2147483648) should be [drop-shadow(20px 10px #00FF00\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (-0.5) should be [blur(4px) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (-0.3) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate(180deg)\] to [none\] at (0.25) should be [hue-rotate(135deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.5) should be [blur(8px) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (-0.5) should be [opacity(1) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (1) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px #80C080)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.6) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.5) should be [blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (0.3) should be [grayscale(0) blur(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1.5) should be [opacity(0.25) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (-0.5) should be [opacity(1) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (1.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1) should be [opacity(0.5) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1) should be [opacity(0.5) hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [hue-rotate(180deg)\] at (0.25) should be [hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px white)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1.5) should be [opacity(0.25) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (-0.5) should be [blur(4px) hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0) should be [blur(6px) hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px white)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (0) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (-0.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.25) should be [opacity(0.875) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0) blur(0px)\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (0.25) should be [hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.5) should be [opacity(0.75) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1.5) should be [blur(12px) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate(180deg)\] to [none\] at (0.25) should be [hue-rotate(135deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (1.5) should be [opacity(0.25) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1.5) should be [blur(12px) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.25) should be [opacity(0.875) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [hue-rotate(180deg)\] at (-0.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.5) should be [opacity(0.75) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px #80C080)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(180deg)\] to [none\] at (0.25) should be [hue-rotate(135deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px #80C080)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (1.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (-0.5) should be [hue-rotate(-90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.25) should be [blur(7px) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px #80C080)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #004100)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (1.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (1.5) should be [blur(12px) hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate(180deg)\] to [none\] at (0.5) should be [hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [hue-rotate(180deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [hue-rotate(180deg)\] at (1.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.25) should be [blur(7px) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [hue-rotate(180deg)\] at (1.5) should be [hue-rotate(270deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [opacity(0.5) hue-rotate(180deg)\] at (0.25) should be [opacity(0.875) hue-rotate(45deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [blur(6px)\] to [blur(10px) hue-rotate(180deg)\] at (0.5) should be [blur(8px) hue-rotate(90deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [drop-shadow(0px 0px 0px currentcolor)\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px currentcolor)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-003.html.ini b/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-003.html.ini
index 8574d390afe..0120042d0e7 100644
--- a/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-003.html.ini
+++ b/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-003.html.ini
@@ -1,5 +1,4 @@
[filter-interpolation-003.html]
- expected: ERROR
[Animation between "url("#svgfilter")" and "none" at progress 0.4]
expected: FAIL
@@ -147,3 +146,657 @@
[filter interpolation]
expected: FAIL
+ [CSS Transitions: property <filter> from [none\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [contrast(0)\] to [none\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [contrast(0)\] to [none\] at (1) should be [contrast(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [blur(10px)\] at (0) should be [blur(0px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [invert(1)\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [grayscale(1)\] at (1) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [none\] at (-0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [saturate(0)\] to [none\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [brightness(0)\] to [none\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [none\] at (0) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [opacity(0)\] to [none\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [saturate(0)\] to [none\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [initial\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [contrast(0)\] to [none\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [none\] at (0.6) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [invert(1)\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [opacity(0)\] to [none\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [grayscale(1)\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px transparent)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (1.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [brightness(0)\] to [none\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [none\] at (0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [grayscale(1)\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [none\] at (1.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [grayscale(1)\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [none\] at (-0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.6) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [none\] at (0.6) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [grayscale(1)\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [initial\] to [sepia(1)\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #00C000)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [initial\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [brightness(0)\] to [none\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [brightness(0)\] to [none\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [brightness(0)\] to [none\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [invert(1)\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [saturate(0)\] to [none\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (-0.3) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [opacity(0)\] to [none\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [none\] at (0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [brightness(0)\] to [none\] at (1) should be [brightness(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [brightness(0)\] to [none\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [invert(1)\] at (0) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.6) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (1.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [invert(1)\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [none\] at (0.6) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [brightness(0)\] to [none\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px transparent)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [invert(1)\] at (1) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [invert(1)\] at (0) should be [invert(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [saturate(0)\] to [none\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [initial\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (-0.3) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [initial\] to [sepia(1)\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [opacity(0)\] to [none\] at (1) should be [opacity(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [grayscale(1)\] at (0) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px transparent)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [none\] at (0) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px rgba(0, 128, 0, 0.5))\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [saturate(0)\] to [none\] at (1) should be [saturate(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [saturate(0)\] to [none\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [none\] at (1.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (1.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [brightness(0)\] to [none\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [grayscale(1)\] at (0) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px transparent)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [blur(10px)\] at (0) should be [blur(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [none\] at (0) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (-0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [sepia(1)\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [hue-rotate(360deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [opacity(0)\] to [none\] at (1) should be [opacity(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px rgba(0, 128, 0, 0.5))\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px transparent)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [contrast(0)\] to [none\] at (1) should be [contrast(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [contrast(0)\] to [none\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [saturate(0)\] to [none\] at (1) should be [saturate(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [brightness(0)\] to [none\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [sepia(1)\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (1.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [initial\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.6) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [opacity(0)\] to [none\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [initial\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [initial\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [contrast(0)\] to [none\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [none\] at (0.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [grayscale(1)\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [opacity(0)\] to [none\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [invert(1)\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [initial\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (-0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #00C000)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [brightness(0)\] to [none\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [none\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [contrast(0)\] to [none\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [initial\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [saturate(0)\] to [none\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #00C000)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [opacity(0)\] to [none\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [none\] at (0.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [saturate(0)\] to [none\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.3) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [none\] at (1.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px transparent)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [invert(1)\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [brightness(0)\] to [none\] at (1) should be [brightness(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [brightness(0)\] to [none\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [opacity(0)\] to [none\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [sepia(1)\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [initial\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [none\] at (0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [invert(1)\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [saturate(0)\] to [none\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [invert(1)\] at (1) should be [invert(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (1) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [initial\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (-1) should be [drop-shadow(-20px -10px transparent)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [hue-rotate(360deg)\] at (0) should be [hue-rotate(0deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [contrast(0)\] to [none\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (1) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [opacity(0)\] to [none\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [none\] at (0) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [contrast(0)\] to [none\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [none\] at (0.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [initial\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [none\] at (0.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px rgba(0, 128, 0, 0.5))\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (1) should be [drop-shadow(20px 10px green)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [grayscale(1)\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [grayscale(1)\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [grayscale(1)\] at (1) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [contrast(0)\] to [none\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (0) should be [drop-shadow(0px 0px 0px transparent)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [contrast(0)\] to [none\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [opacity(0)\] to [none\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [grayscale(1)\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [contrast(0)\] to [none\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.6) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [none\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [brightness(0)\] to [none\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [contrast(0)\] to [none\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.3) should be [url("#svgfilter")\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [opacity(0)\] to [none\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [none\] at (1.5) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [grayscale(1)\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (1) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (0.3) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [sepia(1)\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (0.5) should be [drop-shadow(10px 5px rgba(0, 128, 0, 0.5))\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [invert(1)\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [saturate(0)\] to [none\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [saturate(0)\] to [none\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [grayscale(1)\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [url("#svgfilter")\] to [blur(5px)\] at (1) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [invert(1)\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [opacity(0)\] to [none\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [sepia(1)\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [contrast(0)\] to [none\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [opacity(0)\] to [none\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [url("#svgfilter")\] to [none\] at (0.6) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [initial\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [sepia(1)\] at (1) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [none\] to [drop-shadow(20px 10px green)\] at (1.5) should be [drop-shadow(30px 15px #00C000)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [none\] at (1) should be [none\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [saturate(0)\] to [none\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [none\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [url("#svgfilter")\] to [none\] at (-0.3) should be [none\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [none\] to [invert(1)\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [saturate(0)\] to [none\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [none\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-004.html.ini b/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-004.html.ini
index 5739f28b2f0..b48051c1330 100644
--- a/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-004.html.ini
+++ b/tests/wpt/metadata/css/filter-effects/animation/filter-interpolation-004.html.ini
@@ -1,5 +1,4 @@
[filter-interpolation-004.html]
- expected: ERROR
[Animation between "saturate(0)" and "saturate()" at progress 1]
expected: FAIL
@@ -156,3 +155,447 @@
[filter interpolation]
expected: FAIL
+ [CSS Transitions: property <filter> from [sepia(0)\] to [sepia()\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [saturate(0)\] to [saturate()\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [contrast(0)\] to [contrast()\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [blur()\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [brightness(0)\] to [brightness()\] at (1) should be [brightness()\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0)\] to [grayscale()\] at (0) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (-1) should be [drop-shadow(-20px -10px blue)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0) should be [drop-shadow(0px 0px blue)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [blur()\] to [blur(10px)\] at (-1) should be [blur(0px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [brightness(0)\] to [brightness()\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [sepia(0)\] to [sepia()\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [saturate(0)\] to [saturate()\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [blur()\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [opacity(0)\] to [opacity()\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [blur()\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [contrast(0)\] to [contrast()\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0)\] to [grayscale()\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [contrast(0)\] to [contrast()\] at (1) should be [contrast()\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0) should be [hue-rotate()\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [invert(0)\] to [invert()\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [invert(0)\] to [invert()\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [saturate(0)\] to [saturate()\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0)\] to [grayscale()\] at (0) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0.5) should be [drop-shadow(10px 5px 15px rgb(0, 64, 128))\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [invert(0)\] to [invert()\] at (0) should be [invert(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [brightness(0)\] to [brightness()\] at (1) should be [brightness()\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [invert(0)\] to [invert()\] at (1) should be [invert()\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1.5) should be [drop-shadow(30px 15px 45px rgb(0, 192, 0))\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [grayscale(0)\] to [grayscale()\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [sepia(0)\] to [sepia()\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [sepia(0)\] to [sepia()\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [invert(0)\] to [invert()\] at (0) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0) should be [drop-shadow(0px 0px blue)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [opacity(0)\] to [opacity()\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0)\] to [grayscale()\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [contrast(0)\] to [contrast()\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [saturate(0)\] to [saturate()\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0.5) should be [drop-shadow(10px 5px 15px rgb(0, 64, 128))\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [sepia(0)\] to [sepia()\] at (-1) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [brightness(0)\] to [brightness()\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [sepia(0)\] to [sepia()\] at (1) should be [sepia()\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [invert(0)\] to [invert()\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [blur()\] to [blur(10px)\] at (0) should be [blur()\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [brightness(0)\] to [brightness()\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [opacity(0)\] to [opacity()\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0)\] to [grayscale()\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1) should be [drop-shadow(20px 10px 30px green)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [invert(0)\] to [invert()\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [contrast(0)\] to [contrast()\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1) should be [drop-shadow(20px 10px 30px green)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1.5) should be [drop-shadow(30px 15px 45px rgb(0, 192, 0))\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [blur()\] to [blur(10px)\] at (0) should be [blur()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [invert(0)\] to [invert()\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [saturate(0)\] to [saturate()\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [opacity(0)\] to [opacity()\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [contrast(0)\] to [contrast()\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1) should be [drop-shadow(20px 10px 30px green)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [brightness(0)\] to [brightness()\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [blur()\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [opacity(0)\] to [opacity()\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [contrast(0)\] to [contrast()\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [blur()\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [opacity(0)\] to [opacity()\] at (1) should be [opacity()\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0)\] to [grayscale()\] at (1) should be [grayscale()\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (-1) should be [drop-shadow(-20px -10px blue)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [opacity(0)\] to [opacity()\] at (-1) should be [opacity(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [blur()\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [brightness(0)\] to [brightness()\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [invert(0)\] to [invert()\] at (1) should be [invert()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1.5) should be [hue-rotate(540deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [opacity(0)\] to [opacity()\] at (0) should be [opacity(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1.5) should be [drop-shadow(30px 15px 45px rgb(0, 192, 0))\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [sepia(0)\] to [sepia()\] at (1) should be [sepia()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0)\] to [grayscale()\] at (-1) should be [grayscale(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [blur()\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [saturate(0)\] to [saturate()\] at (-1) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [sepia(0)\] to [sepia()\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [blur()\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0) should be [drop-shadow(0px 0px blue)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0) should be [hue-rotate()\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [saturate(0)\] to [saturate()\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [sepia(0)\] to [sepia()\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1.5) should be [drop-shadow(30px 15px 45px rgb(0, 192, 0))\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [opacity(0)\] to [opacity()\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (-1) should be [drop-shadow(-20px -10px blue)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [blur()\] to [blur(10px)\] at (1) should be [blur(10px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0)\] to [grayscale()\] at (1) should be [grayscale()\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [grayscale(0)\] to [grayscale()\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [saturate(0)\] to [saturate()\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [grayscale(0)\] to [grayscale()\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [contrast(0)\] to [contrast()\] at (1.5) should be [contrast(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [opacity(0)\] to [opacity()\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [saturate(0)\] to [saturate()\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [invert(0)\] to [invert()\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [brightness(0)\] to [brightness()\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (0.5) should be [hue-rotate(180deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (1) should be [hue-rotate(360deg)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [invert(0)\] to [invert()\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [contrast(0)\] to [contrast()\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [invert(0)\] to [invert()\] at (0.5) should be [invert(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [sepia(0)\] to [sepia()\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [sepia(0)\] to [sepia()\] at (0) should be [sepia(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [invert(0)\] to [invert()\] at (-1) should be [invert(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [grayscale(0)\] to [grayscale()\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [brightness(0)\] to [brightness()\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [saturate(0)\] to [saturate()\] at (0) should be [saturate(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [brightness(0)\] to [brightness()\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [saturate(0)\] to [saturate()\] at (1) should be [saturate()\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [sepia(0)\] to [sepia()\] at (0.5) should be [sepia(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [brightness(0)\] to [brightness()\] at (0) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [grayscale(0)\] to [grayscale()\] at (1.5) should be [grayscale(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [saturate(0)\] to [saturate()\] at (1.5) should be [saturate(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [hue-rotate()\] to [hue-rotate(360deg)\] at (-1) should be [hue-rotate(-360deg)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [opacity(0)\] to [opacity()\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [brightness(0)\] to [brightness()\] at (1.5) should be [brightness(1.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [invert(0)\] to [invert()\] at (1.5) should be [invert(1)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [opacity(0)\] to [opacity()\] at (1.5) should be [opacity(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0.5) should be [drop-shadow(10px 5px 15px rgb(0, 64, 128))\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [contrast(0)\] to [contrast()\] at (0) should be [contrast(0)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [sepia(0)\] to [sepia()\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [opacity(0)\] to [opacity()\] at (1) should be [opacity()\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0) should be [drop-shadow(0px 0px blue)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [brightness(0)\] to [brightness()\] at (-1) should be [brightness(0)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [grayscale(0)\] to [grayscale()\] at (0.5) should be [grayscale(0.5)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [blur()\] to [blur(10px)\] at (0.5) should be [blur(5px)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (1) should be [drop-shadow(20px 10px 30px green)\]]
+ expected: FAIL
+
+ [CSS Transitions: property <filter> from [contrast(0)\] to [contrast()\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [contrast(0)\] to [contrast()\] at (-1) should be [contrast(0)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (-1) should be [drop-shadow(-20px -10px blue)\]]
+ expected: FAIL
+
+ [CSS Transitions with transition: all: property <filter> from [drop-shadow(0px 0px)\] to [drop-shadow(20px 10px 30px green)\] at (0.5) should be [drop-shadow(10px 5px 15px rgb(0, 64, 128))\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [opacity(0)\] to [opacity()\] at (0.5) should be [opacity(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [brightness(0)\] to [brightness()\] at (0.5) should be [brightness(0.5)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [saturate(0)\] to [saturate()\] at (1) should be [saturate()\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [blur()\] to [blur(10px)\] at (1.5) should be [blur(15px)\]]
+ expected: FAIL
+
+ [CSS Animations: property <filter> from [saturate(0)\] to [saturate()\] at (0.5) should be [saturate(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [contrast(0)\] to [contrast()\] at (0.5) should be [contrast(0.5)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [sepia(0)\] to [sepia()\] at (1.5) should be [sepia(1)\]]
+ expected: FAIL
+
+ [Web Animations: property <filter> from [contrast(0)\] to [contrast()\] at (1) should be [contrast()\]]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/fetch/api/cors/cors-preflight-redirect.any.js.ini b/tests/wpt/metadata/fetch/api/cors/cors-preflight-redirect.any.js.ini
index 8a9abe9e756..36898d70d30 100644
--- a/tests/wpt/metadata/fetch/api/cors/cors-preflight-redirect.any.js.ini
+++ b/tests/wpt/metadata/fetch/api/cors/cors-preflight-redirect.any.js.ini
@@ -1,68 +1,8 @@
[cors-preflight-redirect.any.html]
type: testharness
- [Redirection 301 on preflight failed]
- expected: FAIL
-
- [Redirection 301 after preflight failed]
- expected: FAIL
-
- [Redirection 302 on preflight failed]
- expected: FAIL
-
- [Redirection 302 after preflight failed]
- expected: FAIL
-
- [Redirection 303 on preflight failed]
- expected: FAIL
-
- [Redirection 303 after preflight failed]
- expected: FAIL
-
- [Redirection 307 on preflight failed]
- expected: FAIL
-
- [Redirection 307 after preflight failed]
- expected: FAIL
-
- [Redirection 308 on preflight failed]
- expected: FAIL
-
- [Redirection 308 after preflight failed]
- expected: FAIL
-
[cors-preflight-redirect.any.worker.html]
type: testharness
- [Redirection 301 on preflight failed]
- expected: FAIL
-
- [Redirection 301 after preflight failed]
- expected: FAIL
-
- [Redirection 302 on preflight failed]
- expected: FAIL
-
- [Redirection 302 after preflight failed]
- expected: FAIL
-
- [Redirection 303 on preflight failed]
- expected: FAIL
-
- [Redirection 303 after preflight failed]
- expected: FAIL
-
- [Redirection 307 on preflight failed]
- expected: FAIL
-
- [Redirection 307 after preflight failed]
- expected: FAIL
-
- [Redirection 308 on preflight failed]
- expected: FAIL
-
- [Redirection 308 after preflight failed]
- expected: FAIL
-
[cors-preflight-redirect]
expected: FAIL
diff --git a/tests/wpt/metadata/fetch/content-type/response.window.js.ini b/tests/wpt/metadata/fetch/content-type/response.window.js.ini
index 7c6560d5882..4ba7558ca5d 100644
--- a/tests/wpt/metadata/fetch/content-type/response.window.js.ini
+++ b/tests/wpt/metadata/fetch/content-type/response.window.js.ini
@@ -309,30 +309,24 @@
[<iframe>: separate response Content-Type: */* text/html]
expected: FAIL
- [<iframe>: combined response Content-Type: text/html */*;charset=gbk]
- expected: FAIL
-
[<iframe>: combined response Content-Type: text/html;charset=gbk text/plain text/html]
expected: FAIL
[<iframe>: separate response Content-Type: text/html */*]
expected: FAIL
- [<iframe>: separate response Content-Type: text/html;" \\" text/plain]
- expected: FAIL
-
[<iframe>: combined response Content-Type: text/html */*]
expected: FAIL
- [<iframe>: separate response Content-Type: text/html;" text/plain]
+ [<iframe>: combined response Content-Type: text/html;x=" text/plain]
expected: FAIL
- [<iframe>: separate response Content-Type: text/html;x=" text/plain]
+ [<iframe>: combined response Content-Type: text/html;" text/plain]
expected: FAIL
- [<iframe>: combined response Content-Type: text/html;x=" text/plain]
+ [<iframe>: separate response Content-Type: text/html */*;charset=gbk]
expected: FAIL
- [<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
+ [<iframe>: combined response Content-Type: text/html;" \\" text/plain]
expected: FAIL
diff --git a/tests/wpt/metadata/fetch/content-type/script.window.js.ini b/tests/wpt/metadata/fetch/content-type/script.window.js.ini
index 5c001592859..d2df9b78483 100644
--- a/tests/wpt/metadata/fetch/content-type/script.window.js.ini
+++ b/tests/wpt/metadata/fetch/content-type/script.window.js.ini
@@ -56,6 +56,3 @@
[separate text/javascript x/x]
expected: FAIL
- [separate text/javascript;charset=windows-1252 error text/javascript]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/fetch/metadata/navigation.https.sub.html.ini b/tests/wpt/metadata/fetch/metadata/navigation.https.sub.html.ini
deleted file mode 100644
index a53ed577de8..00000000000
--- a/tests/wpt/metadata/fetch/metadata/navigation.https.sub.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[navigation.https.sub.html]
- expected: TIMEOUT
diff --git a/tests/wpt/metadata/fetch/metadata/navigation.tentative.https.sub.html.ini b/tests/wpt/metadata/fetch/metadata/navigation.tentative.https.sub.html.ini
new file mode 100644
index 00000000000..9fd8a4e2881
--- /dev/null
+++ b/tests/wpt/metadata/fetch/metadata/navigation.tentative.https.sub.html.ini
@@ -0,0 +1,2 @@
+[navigation.tentative.https.sub.html]
+ expected: TIMEOUT
diff --git a/tests/wpt/metadata/fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html.ini b/tests/wpt/metadata/fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html.ini
new file mode 100644
index 00000000000..9cd247dcb2d
--- /dev/null
+++ b/tests/wpt/metadata/fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html.ini
@@ -0,0 +1,5 @@
+[multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html]
+ expected: TIMEOUT
+ [Https downgrade-upgrade prefetch => No headers]
+ expected: TIMEOUT
+
diff --git a/tests/wpt/metadata/fetch/metadata/redirect/redirect-http-upgrade-prefetch.optional.tentative.sub.html.ini b/tests/wpt/metadata/fetch/metadata/redirect/redirect-http-upgrade-prefetch.optional.tentative.sub.html.ini
new file mode 100644
index 00000000000..1ec9a01abd0
--- /dev/null
+++ b/tests/wpt/metadata/fetch/metadata/redirect/redirect-http-upgrade-prefetch.optional.tentative.sub.html.ini
@@ -0,0 +1,5 @@
+[redirect-http-upgrade-prefetch.optional.tentative.sub.html]
+ expected: TIMEOUT
+ [Http upgrade prefetch => No headers]
+ expected: TIMEOUT
+
diff --git a/tests/wpt/metadata/fetch/metadata/redirect/redirect-https-downgrade-prefetch.optional.tentative.sub.html.ini b/tests/wpt/metadata/fetch/metadata/redirect/redirect-https-downgrade-prefetch.optional.tentative.sub.html.ini
new file mode 100644
index 00000000000..7ea8aff3cb9
--- /dev/null
+++ b/tests/wpt/metadata/fetch/metadata/redirect/redirect-https-downgrade-prefetch.optional.tentative.sub.html.ini
@@ -0,0 +1,5 @@
+[redirect-https-downgrade-prefetch.optional.tentative.sub.html]
+ expected: TIMEOUT
+ [Https downgrade prefetch => No headers]
+ expected: TIMEOUT
+
diff --git a/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini b/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini
index 87c807a49ff..b7052af5b5c 100644
--- a/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini
+++ b/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini
@@ -11,3 +11,6 @@
[X-Content-Type-Options%3A%20nosniff%0C]
expected: FAIL
+ [X-Content-Type-Options%3A%0D%0AX-Content-Type-Options%3A%20nosniff]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini
new file mode 100644
index 00000000000..87b07c3e670
--- /dev/null
+++ b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini
@@ -0,0 +1,4 @@
+[traverse_the_history_1.html]
+ [Multiple history traversals from the same task]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_4.html.ini b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_4.html.ini
deleted file mode 100644
index 385376c7321..00000000000
--- a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_4.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[traverse_the_history_4.html]
- [Multiple history traversals, last would be aborted]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html.ini b/tests/wpt/metadata/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html.ini
index 16fa2c5cfc1..dec4c579137 100644
--- a/tests/wpt/metadata/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html.ini
+++ b/tests/wpt/metadata/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html.ini
@@ -1,4 +1,5 @@
[creating_browsing_context_test_01.html]
+ expected: TIMEOUT
[first argument: absolute url]
- expected: FAIL
+ expected: TIMEOUT
diff --git a/tests/wpt/metadata/html/browsers/windows/embedded-opener-remove-frame.html.ini b/tests/wpt/metadata/html/browsers/windows/embedded-opener-remove-frame.html.ini
index 2532dceabac..442db3cb549 100644
--- a/tests/wpt/metadata/html/browsers/windows/embedded-opener-remove-frame.html.ini
+++ b/tests/wpt/metadata/html/browsers/windows/embedded-opener-remove-frame.html.ini
@@ -1,5 +1,4 @@
[embedded-opener-remove-frame.html]
- expected: CRASH
[opener and "removed" embedded documents]
expected: FAIL
diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html.ini
index f42f518d257..fc37df7e3fa 100644
--- a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html.ini
+++ b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-1.html.ini
@@ -1,5 +1,6 @@
[iframe_sandbox_popups_escaping-1.html]
type: testharness
+ expected: TIMEOUT
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
- expected: FAIL
+ expected: TIMEOUT
diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html.ini
index f6a7aca3306..5f60c78e73c 100644
--- a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html.ini
+++ b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-3.html.ini
@@ -1,5 +1,6 @@
[iframe_sandbox_popups_escaping-3.html]
type: testharness
+ expected: TIMEOUT
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
- expected: FAIL
+ expected: TIMEOUT
diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html.ini
index 3f7e3e9544f..9df1ac56f2a 100644
--- a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html.ini
+++ b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html.ini
@@ -1,5 +1,6 @@
[iframe_sandbox_popups_nonescaping-1.html]
type: testharness
+ expected: TIMEOUT
[Check that popups from a sandboxed iframe do not escape the sandbox]
- expected: FAIL
+ expected: NOTRUN
diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/non-active-document.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/non-active-document.html.ini
new file mode 100644
index 00000000000..b9d103f521e
--- /dev/null
+++ b/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/non-active-document.html.ini
@@ -0,0 +1,4 @@
+[non-active-document.html]
+ [DOMParser]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/semantics/forms/constraints/infinite_backtracking.html.ini b/tests/wpt/metadata/html/semantics/forms/constraints/infinite_backtracking.html.ini
new file mode 100644
index 00000000000..fd73c8d647c
--- /dev/null
+++ b/tests/wpt/metadata/html/semantics/forms/constraints/infinite_backtracking.html.ini
@@ -0,0 +1,4 @@
+[infinite_backtracking.html]
+ [Infinite backtracking pattern terminates]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/semantics/forms/form-submission-0/form-double-submit-3.html.ini b/tests/wpt/metadata/html/semantics/forms/form-submission-0/form-double-submit-3.html.ini
index df89cd21511..941d0dee0c8 100644
--- a/tests/wpt/metadata/html/semantics/forms/form-submission-0/form-double-submit-3.html.ini
+++ b/tests/wpt/metadata/html/semantics/forms/form-submission-0/form-double-submit-3.html.ini
@@ -1,5 +1,5 @@
[form-double-submit-3.html]
expected: ERROR
[<button> should have the same double-submit protection as <input type=submit>]
- expected: FAIL
+ expected: TIMEOUT
diff --git a/tests/wpt/metadata/html/semantics/forms/form-submission-0/form-double-submit.html.ini b/tests/wpt/metadata/html/semantics/forms/form-submission-0/form-double-submit.html.ini
index dce74c6dd71..47a7bbb7975 100644
--- a/tests/wpt/metadata/html/semantics/forms/form-submission-0/form-double-submit.html.ini
+++ b/tests/wpt/metadata/html/semantics/forms/form-submission-0/form-double-submit.html.ini
@@ -1,5 +1,5 @@
[form-double-submit.html]
expected: ERROR
[default submit action should supersede onclick submit()]
- expected: FAIL
+ expected: TIMEOUT
diff --git a/tests/wpt/metadata/html/syntax/parsing/DOMContentLoaded-defer.html.ini b/tests/wpt/metadata/html/syntax/parsing/DOMContentLoaded-defer.html.ini
new file mode 100644
index 00000000000..a9677391662
--- /dev/null
+++ b/tests/wpt/metadata/html/syntax/parsing/DOMContentLoaded-defer.html.ini
@@ -0,0 +1,4 @@
+[DOMContentLoaded-defer.html]
+ [The end: DOMContentLoaded and defer scripts]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/offscreen-canvas/the-offscreen-canvas/size.large.html.ini b/tests/wpt/metadata/offscreen-canvas/the-offscreen-canvas/size.large.html.ini
new file mode 100644
index 00000000000..68cde348264
--- /dev/null
+++ b/tests/wpt/metadata/offscreen-canvas/the-offscreen-canvas/size.large.html.ini
@@ -0,0 +1,2 @@
+[size.large.html]
+ expected: CRASH
diff --git a/tests/wpt/metadata/webmessaging/with-ports/017.html.ini b/tests/wpt/metadata/webmessaging/with-ports/017.html.ini
deleted file mode 100644
index 064cf47545b..00000000000
--- a/tests/wpt/metadata/webmessaging/with-ports/017.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[017.html]
- expected: TIMEOUT
- [origin of the script that invoked the method, about:blank]
- expected: TIMEOUT
-
diff --git a/tests/wpt/metadata/webmessaging/without-ports/017.html.ini b/tests/wpt/metadata/webmessaging/without-ports/017.html.ini
deleted file mode 100644
index 064cf47545b..00000000000
--- a/tests/wpt/metadata/webmessaging/without-ports/017.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[017.html]
- expected: TIMEOUT
- [origin of the script that invoked the method, about:blank]
- expected: TIMEOUT
-
diff --git a/tests/wpt/metadata/webmessaging/without-ports/018.html.ini b/tests/wpt/metadata/webmessaging/without-ports/018.html.ini
new file mode 100644
index 00000000000..663a1f8fa30
--- /dev/null
+++ b/tests/wpt/metadata/webmessaging/without-ports/018.html.ini
@@ -0,0 +1,5 @@
+[018.html]
+ expected: TIMEOUT
+ [origin of the script that invoked the method, javascript:]
+ expected: TIMEOUT
+
diff --git a/tests/wpt/metadata/workers/constructors/Worker/Worker-constructor.html.ini b/tests/wpt/metadata/workers/constructors/Worker/Worker-constructor.html.ini
deleted file mode 100644
index 80f9a4f15b8..00000000000
--- a/tests/wpt/metadata/workers/constructors/Worker/Worker-constructor.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[Worker-constructor.html]
- expected: ERROR
diff --git a/tests/wpt/web-platform-tests/.azure-pipelines.yml b/tests/wpt/web-platform-tests/.azure-pipelines.yml
index fa0dc670502..a534278337d 100644
--- a/tests/wpt/web-platform-tests/.azure-pipelines.yml
+++ b/tests/wpt/web-platform-tests/.azure-pipelines.yml
@@ -16,8 +16,13 @@
# https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/v2-windows
trigger:
-- epochs/*
-- triggers/*
+# These are all the branches referenced in the jobs that follow.
+- epochs/daily
+- epochs/three_hourly
+- triggers/edge_dev
+- triggers/edge_canary
+- triggers/safari_stable
+- triggers/safari_preview
jobs:
# The affected tests jobs are unconditional for speed, as most PRs have one or
diff --git a/tests/wpt/web-platform-tests/.github/workflows/manifest.yml b/tests/wpt/web-platform-tests/.github/workflows/manifest.yml
index 555b9d6c290..e4708873c0d 100644
--- a/tests/wpt/web-platform-tests/.github/workflows/manifest.yml
+++ b/tests/wpt/web-platform-tests/.github/workflows/manifest.yml
@@ -8,6 +8,8 @@ on:
- 'tools/**'
jobs:
build-and-tag:
+ # Do not run this job on forks.
+ if: github.repository == 'web-platform-tests/wpt'
runs-on: ubuntu-18.04
steps:
- name: Checkout
diff --git a/tests/wpt/web-platform-tests/.taskcluster.yml b/tests/wpt/web-platform-tests/.taskcluster.yml
index 6bc9253ec20..cc07b1d6711 100644
--- a/tests/wpt/web-platform-tests/.taskcluster.yml
+++ b/tests/wpt/web-platform-tests/.taskcluster.yml
@@ -4,359 +4,66 @@ policy:
tasks:
$let:
event_str: {$json: {$eval: event}}
- provisionerId:
- $if: 'taskcluster_root_url == "https://taskcluster.net"'
- then: aws-provisioner-v1
- else: proj-wpt
- workerType:
- $if: 'taskcluster_root_url == "https://taskcluster.net"'
+ scopes:
+ $if: 'tasks_for == "github-push"'
then:
- $if: event.repository.full_name == 'web-platform-tests/wpt'
+ $let:
+ branch:
+ $if: "event.ref[:11] == 'refs/heads/'"
+ then: "${event.ref[11:]}"
+ else: "${event.ref}"
+ in: "assume:repo:github.com/${event.repository.full_name}:branch:${branch}"
+ else: "assume:repo:github.com/${event.repository.full_name}:pull-request"
+ run_task:
+ $if: 'tasks_for == "github-push"'
+ then:
+ $if: 'event.ref in ["refs/heads/master", "refs/heads/epochs/daily", "refs/heads/epochs/weekly", "refs/heads/triggers/chrome_stable", "refs/heads/triggers/chrome_beta", "refs/heads/triggers/chrome_dev", "refs/heads/triggers/firefox_stable", "refs/heads/triggers/firefox_beta", "refs/heads/triggers/firefox_nightly", "refs/heads/triggers/webkitgtk_minibrowser_stable", "refs/heads/triggers/webkitgtk_minibrowser_nightly"]'
+ then: true
+ else: false
+ else:
+ $if: 'tasks_for == "github-pull-request"'
then:
- wpt-docker-worker
- else:
- github-worker
- else: ci
+ $if: 'event.action in ["opened", "reopened", "synchronize", "ready_for_review"] && !(event.pull_request.draft)'
+ then: true
+ else: false
+ else: false
+ rev:
+ $if: 'tasks_for == "github-pull-request"'
+ then: "refs/pull/${event.number}/merge"
+ else: "${event.after}"
in:
- $flattenDeep:
- - $if: tasks_for == "github-push"
- then:
- $map:
- $flatten:
- $match: {
- event.ref == "refs/heads/master": [{name: firefox, channel: nightly}, {name: chrome, channel: dev}],
- event.ref == "refs/heads/epochs/daily": [{name: firefox, channel: stable}, {name: chrome, channel: stable}, {name: webkitgtk_minibrowser, channel: nightly}],
- event.ref == "refs/heads/epochs/weekly": [{name: firefox, channel: beta}, {name: chrome, channel: beta}, {name: webkitgtk_minibrowser, channel: stable}],
- event.ref == "refs/heads/triggers/chrome_stable": [{name: chrome, channel: stable}],
- event.ref == "refs/heads/triggers/chrome_beta": [{name: chrome, channel: beta}],
- event.ref == "refs/heads/triggers/chrome_dev": [{name: chrome, channel: dev}],
- event.ref == "refs/heads/triggers/firefox_stable": [{name: firefox, channel: stable}],
- event.ref == "refs/heads/triggers/firefox_beta": [{name: firefox, channel: beta}],
- event.ref == "refs/heads/triggers/firefox_nightly": [{name: firefox, channel: nightly}],
- event.ref == "refs/heads/triggers/webkitgtk_minibrowser_stable": [{name: webkitgtk_minibrowser, channel: stable}],
- event.ref == "refs/heads/triggers/webkitgtk_minibrowser_nightly": [{name: webkitgtk_minibrowser, channel: nightly}]
- }
- each(browser):
- $map:
- - [testharness, 1, 16]
- - [testharness, 2, 16]
- - [testharness, 3, 16]
- - [testharness, 4, 16]
- - [testharness, 5, 16]
- - [testharness, 6, 16]
- - [testharness, 7, 16]
- - [testharness, 8, 16]
- - [testharness, 9, 16]
- - [testharness, 10, 16]
- - [testharness, 11, 16]
- - [testharness, 12, 16]
- - [testharness, 13, 16]
- - [testharness, 14, 16]
- - [testharness, 15, 16]
- - [testharness, 16, 16]
- - [reftest, 1, 5]
- - [reftest, 2, 5]
- - [reftest, 3, 5]
- - [reftest, 4, 5]
- - [reftest, 5, 5]
- - [wdspec, 1, 1]
- each(chunk):
- taskId: {$eval: 'as_slugid(browser.name + browser.channel + chunk[0] + str(chunk[1]))'}
- taskGroupId: {$eval: 'as_slugid("task group")'}
- created: {$fromNow: ''}
- deadline: {$fromNow: '24 hours'}
- provisionerId: ${provisionerId}
- workerType: ${workerType}
- metadata:
- name: wpt-${browser.name}-${browser.channel}-${chunk[0]}-${chunk[1]}
- description: >-
- A subset of WPT's "${chunk[0]}" tests (chunk number ${chunk[1]}
- of ${chunk[2]}), run in the ${browser.channel} release of
- ${browser.name}.
- owner:
- # event.pusher.email is null when it comes from a GitHub action, so it has to be null-checked,
- # and using the "in" operator causes an evaluation error when the right variable is null, if its
- # done on the same "if" statement than the null-check (with &&), therefore we use a nested "if" here.
- $if: 'event.pusher.email'
- then:
- $if: '"@" in event.pusher.email'
- then: ${event.pusher.email}
- else: web-platform-tests@users.noreply.github.com
- else: web-platform-tests@users.noreply.github.com
- source: ${event.repository.url}
- payload:
- image:
- harjgam/web-platform-tests:0.33
- maxRunTime: 7200
- artifacts:
- public/results:
- path: /home/test/artifacts
- type: directory
- command:
- - /bin/bash
- - --login
- - -c
- - set -ex;
- echo "wpt-${browser.name}-${browser.channel}-${chunk[0]}-${chunk[1]}";
- ~/start.sh
- ${event.repository.url}
- ${event.ref};
- cd ~/web-platform-tests;
- sudo cp tools/certs/cacert.pem
- /usr/local/share/ca-certificates/cacert.crt;
- sudo update-ca-certificates;
- ./tools/ci/run_tc.py
- --checkout=${event.after}
- --oom-killer
- --hosts
- --browser=${browser.name}
- --channel=${browser.channel}
- --xvfb
- run-all
- ./tools/ci/taskcluster-run.py
- ${browser.name}
- --
- --channel=${browser.channel}
- --log-wptreport=../artifacts/wpt_report.json
- --log-wptscreenshot=../artifacts/wpt_screenshot.txt
- --no-fail-on-unexpected
- --test-type=${chunk[0]}
- --this-chunk=${chunk[1]}
- --total-chunks=${chunk[2]};
- extra:
- github_event: "${event_str}"
-
- - $if: tasks_for == "github-pull-request"
- # PR tasks that run the tests in various configurations
- then:
- # Taskcluster responds to a number of events issued by the GitHub API
- # which should not trigger re-validation.
- $if: event.action in ['opened', 'reopened', 'synchronize']
- then:
- $map: [{name: firefox, channel: nightly}, {name: chrome, channel: dev}]
- each(browser):
- $map:
- # This is the main place to define new stability checks
- - name: wpt-${browser.name}-${browser.channel}-stability
- job_name: stability
- checkout: task_head
- diff_base: base_head
- description: >-
- Verify that all tests affected by a pull request are stable
- when executed in ${browser.name}.
- extra_args: '--verify'
- - name: wpt-${browser.name}-${browser.channel}-results
- job_name: affected_tests
- checkout: task_head
- diff_base: base_head
- description: >-
- Collect results for all tests affected by a pull request in
- ${browser.name}.
- extra_args: >-
- --no-fail-on-unexpected
- --log-wptreport=../artifacts/wpt_report.json
- --log-wptscreenshot=../artifacts/wpt_screenshot.txt
- - name: wpt-${browser.name}-${browser.channel}-results-without-changes
- job_name: affected_tests
- checkout: base_head
- diff_base: task_head
- description: >-
- Collect results for all tests affected by a pull request in
- ${browser.name} but without the changes in the PR.
- extra_args: >-
- --no-fail-on-unexpected
- --log-wptreport=../artifacts/wpt_report.json
- --log-wptscreenshot=../artifacts/wpt_screenshot.txt
- each(operation):
- taskId: {$eval: 'as_slugid(operation.name)'}
- taskGroupId: {$eval: 'as_slugid("task group")'}
- created: {$fromNow: ''}
- deadline: {$fromNow: '24 hours'}
- provisionerId: ${provisionerId}
- workerType: ${workerType}
- metadata:
- name: ${operation.name}
- description: ${operation.description}
- owner: ${event.pull_request.user.login}@users.noreply.github.com
- source: ${event.repository.url}
- payload:
- image: harjgam/web-platform-tests:0.33
- maxRunTime: 7200
- artifacts:
- public/results:
- path: /home/test/artifacts
- type: directory
- # Fetch the GitHub-provided merge commit (rather than the pull
- # request branch) so that the tasks simulate the behavior of the
- # submitted patch after it is merged. Using the merge commit also
- # simplifies detection of modified files because the first parent
- # of the merge commit can consistently be used to summarize the
- # changes.
- command:
- - /bin/bash
- - --login
- - -c
- - set -ex;
- echo "${operation.name}";
- ~/start.sh
- ${event.repository.clone_url}
- refs/pull/${event.number}/merge;
- cd web-platform-tests;
- ./tools/ci/run_tc.py
- --checkout=${operation.checkout}
- --oom-killer
- --browser=${browser.name}
- --channel=${browser.channel}
- --xvfb
- ${operation.job_name}
- ./tools/ci/taskcluster-run.py
- --commit-range ${operation.diff_base}
- ${browser.name}
- --
- --channel=${browser.channel}
- ${operation.extra_args};
- extra:
- github_event: "${event_str}"
+ - $if: run_task
+ then:
+ created: {$fromNow: ''}
+ deadline: {$fromNow: '24 hours'}
+ provisionerId: proj-wpt
+ workerType: ci
+ metadata:
+ name: "wpt-decision-task"
+ description: "The task that creates all of the other tasks in the task graph"
+ owner: "${event.sender.login}@users.noreply.github.com"
+ source: ${event.repository.clone_url}
+ payload:
+ image: harjgam/web-platform-tests:0.33
+ maxRunTime: 7200
+ artifacts:
+ public/results:
+ path: /home/test/artifacts
+ type: directory
+ command:
+ - /bin/bash
+ - --login
+ - -c
+ - set -ex;
+ ~/start.sh
+ ${event.repository.clone_url}
+ ${rev};
+ cd ~/web-platform-tests;
+ ./wpt tc-decision --tasks-path=/home/test/artifacts/tasks.json
+ features :
+ taskclusterProxy: true
+ scopes:
+ - ${scopes}
+ extra:
+ github_event: "${event_str}"
- - $map:
- # This is the main point to define new CI checks other than stability checks
- - name: lint
- description: >-
- Lint for wpt-specific requirements
- script: >-
- ./tools/ci/run_tc.py \
- --no-hosts \
- lint \
- ./wpt lint --all
- conditions:
- push
- pull-request
- - name: update built tests
- description: >-
- Ensure test suites that require a build step are updated
- script: >-
- ./tools/ci/run_tc.py \
- --no-hosts \
- update_built \
- tools/ci/ci_built_diff.sh
- conditions:
- pull-request
- - name: tools/ unittests (Python 2)
- description: >-
- Unit tests for tools running under Python 2.7, excluding wptrunner
- script: >-
- export TOXENV=py27;
- export HYPOTHESIS_PROFILE=ci;
- export PY_COLORS=0;
- ./tools/ci/run_tc.py \
- tools_unittest \
- tools/ci/ci_tools_unittest.sh
- conditions:
- push
- pull-request
- - name: tools/ unittests (Python 3)
- description: >-
- Unit tests for tools running under Python 3, excluding wptrunner
- script: >-
- export TOXENV=py36;
- export HYPOTHESIS_PROFILE=ci;
- export PY_COLORS=0;
- sudo apt update -qqy;
- sudo apt install -qqy python3-pip;
- ./tools/ci/run_tc.py \
- tools_unittest \
- tools/ci/ci_tools_unittest.sh
- conditions:
- push
- pull-request
- - name: tools/wpt/ tests
- description: >-
- Integration tests for wpt commands
- script: >-
- export TOXENV=py27;
- sudo apt update -qqy;
- sudo apt install -qqy libnss3-tools;
- ./tools/ci/run_tc.py \
- --oom-killer \
- --browser=firefox \
- --browser=chrome \
- --channel=experimental \
- --xvfb \
- wpt_integration \
- tools/ci/ci_wpt.sh
- conditions:
- pull-request
- - name: resources/ tests
- description: >-
- Tests for testharness.js and other files in resources/
- script: >-
- export TOXENV=py27;
- ./tools/ci/run_tc.py \
- --browser=firefox \
- --xvfb \
- resources_unittest \
- tools/ci/ci_resources_unittest.sh
- conditions:
- pull-request
- - name: infrastructure/ tests
- description: >-
- Smoketests for wptrunner
- script: >-
- sudo apt update -qqy;
- sudo apt install -qqy libnss3-tools libappindicator1 fonts-liberation;
- ./tools/ci/run_tc.py \
- --oom-killer \
- --browser=firefox \
- --browser=chrome \
- --channel=experimental \
- --no-hosts \
- --xvfb \
- wptrunner_infrastructure \
- tools/ci/ci_wptrunner_infrastructure.sh
- conditions:
- pull-request
- each(operation):
- # Note: jsone doesn't short-circuit evaluation so all parts of the conditional are evaluated
- # Accessing properties using the [] notation allows them to evaluate as null in case they're undefined
- # TODO: Allow running pushes on branches other than master
- - $if: ("push" in operation.conditions && tasks_for == "github-push" && event['ref'] == "refs/heads/master") || ("pull-request" in operation.conditions && tasks_for == "github-pull-request" && event['action'] in ['opened', 'reopened', 'synchronize'])
- then:
- $let:
- checkout_ref:
- $if: tasks_for == "github-push"
- then:
- ${event.ref}
- else:
- refs/pull/${event.number}/merge
- in:
- taskId: {$eval: 'as_slugid(operation.name)'}
- taskGroupId: {$eval: 'as_slugid("task group")'}
- created: {$fromNow: ''}
- deadline: {$fromNow: '24 hours'}
- provisionerId: ${provisionerId}
- workerType: ${workerType}
- metadata:
- name: ${operation.name}
- description: ${operation.description}
- owner: ${event.sender.login}@users.noreply.github.com
- source: ${event.repository.url}
- payload:
- image: harjgam/web-platform-tests:0.33
- maxRunTime: 7200
- artifacts:
- public/results:
- path: /home/test/artifacts
- type: directory
- command:
- - /bin/bash
- - --login
- - -c
- - set -ex;
- echo "${operation.name}";
- ~/start.sh
- ${event.repository.clone_url}
- ${checkout_ref};
- cd ~/web-platform-tests;
- ${operation.script};
- extra:
- github_event: "${event_str}"
diff --git a/tests/wpt/web-platform-tests/client-hints/accept_ch.tentative.https.html b/tests/wpt/web-platform-tests/client-hints/accept_ch.tentative.https.html
index 4b46610c581..0f8b525576e 100644
--- a/tests/wpt/web-platform-tests/client-hints/accept_ch.tentative.https.html
+++ b/tests/wpt/web-platform-tests/client-hints/accept_ch.tentative.https.html
@@ -12,16 +12,14 @@ in this web page, and two in the other web pages.
<script>
// This test fetches resources/accept_ch.html. The response headers to
-// that webpage contains only the Accept-CH header. Due to the missing
-// Accept-CH-Lifetime header, the user-agent should not persist origin
-// preferences for the client hints specified in Accept-CH header.
+// that webpage contains only the Accept-CH header. These preferences should be
+// stored so that the next request to the same origin is sent with the
+// requested client hint headers.
-// Next, to verify that the origin preferences were not persisted by the user
-// agent, this test fetches resources/do_not_expect_client_hints_headers.html
-// in a new window. Fetching of
-// resources/do_not_expect_client_hints_headers.html
-// verifies that the user agent does not send the client hints in the request
-// headers.
+// Next, to verify that the origin preferences were persisted by the user
+// agent, this test fetches resources/expect_client_hints_headers.html in a new
+// window. Fetching of resources/expect_client_hints_headers.html verifies that
+// the user agent does send the client hints in the request headers.
// Test is marked as tentative until https://github.com/whatwg/fetch/issues/726
// is resolved.
@@ -39,7 +37,7 @@ promise_test(t => {
async_test(t => {
window.addEventListener('message', t.step_func(function(e) {
- if(!e.source.location.pathname.includes("do_not_expect_client_hints_headers.html")) {
+ if(!e.source.location.pathname.includes("expect_client_hints_headers.html")) {
return;
}
if(typeof e.data != "string")
@@ -47,12 +45,12 @@ async_test(t => {
assert_equals(e.data, "PASS");
t.done();
}));
-}, "Loading of resources/do_not_expect_client_hints_headers.html did not finish.");
+}, "Loading of resources/expect_client_hints_headers.html did not finish.");
function acceptChLoaded() {
// Open a new window. Verify that the user agent does not attach the client
// hints.
- var verify_win = window.open("resources/do_not_expect_client_hints_headers.html");
+ var verify_win = window.open("resources/expect_client_hints_headers.html");
assert_not_equals(verify_win, null, "Popup windows not allowed?");
}
diff --git a/tests/wpt/web-platform-tests/client-hints/http_equiv_accept_ch.tentative.https.html b/tests/wpt/web-platform-tests/client-hints/http_equiv_accept_ch.tentative.https.html
index 74eea344e90..2830cb714fa 100644
--- a/tests/wpt/web-platform-tests/client-hints/http_equiv_accept_ch.tentative.https.html
+++ b/tests/wpt/web-platform-tests/client-hints/http_equiv_accept_ch.tentative.https.html
@@ -12,16 +12,15 @@
<script>
-// This test contains accept-ch http-equiv header. Due to the missing
-// Accept-CH-Lifetime header, the user-agent should not persist origin
-// preferences for the client hints specified in Accept-CH header.
+// This test contains accept-ch http-equiv header. The user-agent should
+// persist origin preferences for the client hints specified in Accept-CH
+// header.
-// Next, to verify that the origin preferences were not persisted by the user
+// Next, to verify that the origin preferences were persisted by the user
// agent, this test fetches resources/do_not_expect_client_hints_headers.html
// in a new window. Fetching of
-// resources/do_not_expect_client_hints_headers.html
-// verifies that the user agent does not send the client hints in the request
-// headers.
+// resources/do_not_expect_client_hints_headers.html verifies that the user
+// agent does not send the client hints in the request headers.
// Test is marked as tentative until https://github.com/whatwg/fetch/issues/726
// is resolved.
@@ -37,12 +36,12 @@ promise_test(t => {
// Verify that the browser does not attach client hints on resources in a
// different navigation. This verifies that the client hint preferences were
// not persisted for the origin.
-window.open("resources/do_not_expect_client_hints_headers.html");
+window.open("resources/expect_client_hints_headers.html");
async_test(t => {
window.addEventListener('message', t.step_func_done(e => {
assert_equals(e.data, 'PASS');
}));
-}, "Loading of resources/do_not_expect_client_hints_headers.html did not finish.");
+}, "Loading of resources/expect_client_hints_headers.html did not finish.");
</script>
</body>
diff --git a/tests/wpt/web-platform-tests/compression/decompression-corrupt-input.any.js b/tests/wpt/web-platform-tests/compression/decompression-corrupt-input.tentative.any.js
index 95e91b662ee..95e91b662ee 100644
--- a/tests/wpt/web-platform-tests/compression/decompression-corrupt-input.any.js
+++ b/tests/wpt/web-platform-tests/compression/decompression-corrupt-input.tentative.any.js
diff --git a/tests/wpt/web-platform-tests/conformance-checkers/messages.json b/tests/wpt/web-platform-tests/conformance-checkers/messages.json
index 94d3bc461f5..2dcd3830d72 100644
--- a/tests/wpt/web-platform-tests/conformance-checkers/messages.json
+++ b/tests/wpt/web-platform-tests/conformance-checkers/messages.json
@@ -2187,7 +2187,7 @@
"html/media-queries/011-novalid.html": "Bad value \u201cscreen and (min-width: 400dpi)\u201d for attribute \u201cmedia\u201d on element \u201clink\u201d: Bad media query: \u201c400dpi\u201d is not a \u201cwidth\u201d value",
"html/media-queries/013-novalid.html": "Bad value \u201cscreen and (min-width:\u201d for attribute \u201cmedia\u201d on element \u201clink\u201d: Bad media query: Parse Error.",
"html/media-queries/014-novalid.html": "Bad value \u201cscreen and (min-width: 400px) and\u201d for attribute \u201cmedia\u201d on element \u201clink\u201d: Bad media query: Parse Error.",
- "html/media-queries/019-novalid.html": "Bad value \u201cscreen and (color: 1em)\u201d for attribute \u201cmedia\u201d on element \u201clink\u201d: Bad media query: Too many values or values are not recognized",
+ "html/media-queries/019-novalid.html": "Bad value \u201cscreen and (color: 1em)\u201d for attribute \u201cmedia\u201d on element \u201clink\u201d: Bad media query: \u201c1em\u201d is not a \u201ccolor\u201d value",
"html/media-queries/020-novalid.html": "Bad value \u201c,\u201d for attribute \u201cmedia\u201d on element \u201clink\u201d: Bad media query: Parse Error.",
"html/media-queries/021-novalid.html": "Bad value \u201cscreen,,print\u201d for attribute \u201cmedia\u201d on element \u201clink\u201d: Bad media query: Parse Error.",
"html/media-queries/022-novalid.html": "Bad value \u201cscreen,\u201d for attribute \u201cmedia\u201d on element \u201clink\u201d: Bad media query: Parse Error.",
diff --git a/tests/wpt/web-platform-tests/content-dpr/image-pseudo-element-content-dpr-ref.html b/tests/wpt/web-platform-tests/content-dpr/image-pseudo-element-content-dpr-ref.html
new file mode 100644
index 00000000000..baa25ac87c8
--- /dev/null
+++ b/tests/wpt/web-platform-tests/content-dpr/image-pseudo-element-content-dpr-ref.html
@@ -0,0 +1,12 @@
+<html>
+ <head>
+ <title>Content-DPR: pseudo elements</title>
+ <link rel="author" title="Noam Rosenthal" href="noam@webkit.org">
+ <meta name="assert" content="Assert that content-dpr is taken into account for images in pseudo-elements">
+ </head>
+ <body>
+ The following squares should be identical <br />
+ <img src="resources/square.png" width="50" />
+ <img src="resources/square.png" width="50" />
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/content-dpr/image-pseudo-element-content-dpr.html b/tests/wpt/web-platform-tests/content-dpr/image-pseudo-element-content-dpr.html
new file mode 100644
index 00000000000..7770df39997
--- /dev/null
+++ b/tests/wpt/web-platform-tests/content-dpr/image-pseudo-element-content-dpr.html
@@ -0,0 +1,17 @@
+<html>
+ <head>
+ <title>Content-DPR: pseudo elements</title>
+ <link rel="author" title="Noam Rosenthal" href="noam@webkit.org">
+ <link rel="match" href="image-pseudo-element-content-dpr-ref.html" />
+ <meta name="assert" content="Assert that content-dpr is taken into account for images in pseudo-elements">
+ <style>
+ body::after {
+ content: url(resources/dpr.py?name=square.png&mimeType=image/png&dpr=2);
+ }
+ </style>
+ </head>
+ <body>
+ The following squares should be identical <br />
+ <img src="resources/square.png" width="50" />
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/content-dpr/image-with-content-dpr-and-explicit-dimensions-ref.html b/tests/wpt/web-platform-tests/content-dpr/image-with-content-dpr-and-explicit-dimensions-ref.html
new file mode 100644
index 00000000000..27ce1be8b0d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/content-dpr/image-with-content-dpr-and-explicit-dimensions-ref.html
@@ -0,0 +1,10 @@
+<html>
+ <head>
+ <title>Content-DPR: render natural size</title>
+ <link rel="author" title="Noam Rosenthal" href="noam@webkit.org">
+ </head>
+ <body>
+ <img src="resources/square.png" style="width: 100px; height: 120px" />
+ <img src="resources/square.png" style="width: 100px; height: 120px" />
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/content-dpr/image-with-content-dpr-and-explicit-dimensions.html b/tests/wpt/web-platform-tests/content-dpr/image-with-content-dpr-and-explicit-dimensions.html
new file mode 100644
index 00000000000..783fb03a3b0
--- /dev/null
+++ b/tests/wpt/web-platform-tests/content-dpr/image-with-content-dpr-and-explicit-dimensions.html
@@ -0,0 +1,12 @@
+<html>
+ <head>
+ <title>Content-DPR: with size attributes</title>
+ <link rel="author" title="Noam Rosenthal" href="noam@webkit.org">
+ <link rel="match" href="image-with-content-dpr-and-explicit-dimensions-ref.html" />
+ <meta name="assert" content="Assert explicit width/height attributes to supercede content-dpr">
+ </head>
+ <body>
+ <img src="resources/dpr.py?name=square.png&mimeType=image/png&dpr=4.0" width="100px" height="120px" />
+ <img src="resources/dpr.py?name=square.png&mimeType=image/png&dpr=4.0" style="width: 100px; height: 120px;" />
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/client-hints/image-with-dpr-header.html b/tests/wpt/web-platform-tests/content-dpr/image-with-dpr-header.html
index 6c4e6084476..6c4e6084476 100644
--- a/tests/wpt/web-platform-tests/client-hints/image-with-dpr-header.html
+++ b/tests/wpt/web-platform-tests/content-dpr/image-with-dpr-header.html
diff --git a/tests/wpt/web-platform-tests/content-dpr/resources/background.png b/tests/wpt/web-platform-tests/content-dpr/resources/background.png
new file mode 100644
index 00000000000..6db6c6b1b9d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/content-dpr/resources/background.png
Binary files differ
diff --git a/tests/wpt/web-platform-tests/client-hints/resources/dpr.py b/tests/wpt/web-platform-tests/content-dpr/resources/dpr.py
index 14d7d550fe2..14d7d550fe2 100644
--- a/tests/wpt/web-platform-tests/client-hints/resources/dpr.py
+++ b/tests/wpt/web-platform-tests/content-dpr/resources/dpr.py
diff --git a/tests/wpt/web-platform-tests/content-dpr/resources/square.png b/tests/wpt/web-platform-tests/content-dpr/resources/square.png
new file mode 100644
index 00000000000..01c9666a8de
--- /dev/null
+++ b/tests/wpt/web-platform-tests/content-dpr/resources/square.png
Binary files differ
diff --git a/tests/wpt/web-platform-tests/content-dpr/tiled-background-image-with-content-dpr-ref.html b/tests/wpt/web-platform-tests/content-dpr/tiled-background-image-with-content-dpr-ref.html
new file mode 100644
index 00000000000..58cbeb436fc
--- /dev/null
+++ b/tests/wpt/web-platform-tests/content-dpr/tiled-background-image-with-content-dpr-ref.html
@@ -0,0 +1,29 @@
+<html>
+ <head>
+ <title>Content-DPR: css tiled background</title>
+ <link rel="author" title="Noam Rosenthal" href="noam@webkit.org">
+ <meta name="assert" content="Assert that content-dpr is taken into account for tiled background images">
+ <style>
+ #bg, #bg2 {
+ background-image: url(resources/background.png);
+ width: 32px;
+ height: 32px;
+ }
+ #bg {
+ background-size: 16px 16px;
+ }
+
+ #bg2 {
+ background-size: 8px 8px;
+ }
+ </style>
+ </head>
+ <body>
+ The next div should have 16 boxes
+ <div id="bg">
+ </div>
+ The next div should have 64 boxes
+ <div id="bg2">
+ </div>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/content-dpr/tiled-background-image-with-content-dpr.html b/tests/wpt/web-platform-tests/content-dpr/tiled-background-image-with-content-dpr.html
new file mode 100644
index 00000000000..94f2f72d401
--- /dev/null
+++ b/tests/wpt/web-platform-tests/content-dpr/tiled-background-image-with-content-dpr.html
@@ -0,0 +1,27 @@
+<html>
+ <head>
+ <title>Content-DPR: css tiled background</title>
+ <link rel="author" title="Noam Rosenthal" href="noam@webkit.org">
+ <link rel="match" href="tiled-background-image-with-content-dpr-ref.html" />
+ <meta name="assert" content="Assert that content-dpr is taken into account for tiled background images">
+ <style>
+ #bg, #bg2 {
+ width: 32px;
+ height: 32px;
+ background-image: url(resources/dpr.py?name=background.png&mimeType=image/png&dpr=2.0);
+ }
+
+ #bg2 {
+ background-size: 8px 8px;
+ }
+ </style>
+ </head>
+ <body>
+ The next div should have 16 boxes
+ <div id="bg">
+ </div>
+ The next div should have 64 boxes
+ <div id="bg2">
+ </div>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/cookie-store/cookieStore_subscriptions_empty.tentative.https.window.js b/tests/wpt/web-platform-tests/cookie-store/cookieStore_subscriptions_empty.tentative.https.window.js
new file mode 100644
index 00000000000..907a34b4de6
--- /dev/null
+++ b/tests/wpt/web-platform-tests/cookie-store/cookieStore_subscriptions_empty.tentative.https.window.js
@@ -0,0 +1,13 @@
+// META: script=/service-workers/service-worker/resources/test-helpers.sub.js
+
+'use strict';
+
+promise_test(async testCase => {
+ const registration = await service_worker_unregister_and_register(
+ testCase, 'resources/empty_sw.js', 'resources/does/not/exist');
+ testCase.add_cleanup(() => registration.unregister());
+ await wait_for_state(testCase, registration.installing, 'activated');
+
+ const subscriptions = await registration.cookies.getSubscriptions();
+ assert_equals(0, subscriptions.length);
+}, 'Newly registered and activated service worker has no subscriptions');
diff --git a/tests/wpt/web-platform-tests/cookie-store/resources/always_changing_sw.sub.js b/tests/wpt/web-platform-tests/cookie-store/resources/always_changing_sw.sub.js
new file mode 100644
index 00000000000..9fdf99848fa
--- /dev/null
+++ b/tests/wpt/web-platform-tests/cookie-store/resources/always_changing_sw.sub.js
@@ -0,0 +1,6 @@
+// This script changes every time it is fetched.
+
+// When used as a service worker script, this causes the Service Worker to be
+// updated on every ServiceWorkerRegistration.update() call.
+
+// The following bytes change on every fetch: {{uuid()}}
diff --git a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions.js b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions.js
index 41cbed01a5b..107bb957612 100644
--- a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions.js
+++ b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions.js
@@ -4,26 +4,6 @@ self.GLOBAL = {
};
importScripts("/resources/testharness.js");
-self.addEventListener('install', (event) => {
- event.waitUntil((async () => {
- // The subscribeToChanges calls are not done in parallel on purpose. Having
- // multiple in-flight requests introduces failure modes aside from the
- // cookie change logic that this test aims to cover.
- try {
- await cookieStore.subscribeToChanges([
- { name: 'cookie-name1', matchType: 'equals', url: '/cookie-store/path1' }]);
- await cookieStore.subscribeToChanges([
- { }, // Test the default values for subscription properties.
- { name: 'cookie-prefix', matchType: 'starts-with' },
- ]);
-
- // If the worker enters the "redundant" state, the UA may terminate it
- // before all tests have been reported to the client. Stifle errors in
- // order to avoid this and ensure all tests are consistently reported.
- } catch (err) {}
- })());
-});
-
// Resolves when the service worker receives the 'activate' event.
const kServiceWorkerActivatedPromise = new Promise(resolve => {
self.addEventListener('activate', event => { resolve(); });
@@ -41,7 +21,23 @@ function CompareStrings(a, b) {
promise_test(async testCase => {
await kServiceWorkerActivatedPromise;
- const subscriptions = await cookieStore.getChangeSubscriptions();
+ {
+ const subscriptions = [
+ { name: 'cookie-name1', matchType: 'equals', url: '/cookie-store/path1' },
+ ];
+ await registration.cookies.subscribe(subscriptions);
+ testCase.add_cleanup(() => registration.cookies.unsubscribe(subscriptions));
+ }
+ {
+ const subscriptions = [
+ { }, // Test the default values for subscription properties.
+ { name: 'cookie-prefix', matchType: 'starts-with' },
+ ];
+ await registration.cookies.subscribe(subscriptions);
+ testCase.add_cleanup(() => registration.cookies.unsubscribe(subscriptions));
+ }
+
+ const subscriptions = await registration.cookies.getSubscriptions();
assert_equals(subscriptions.length, 3);
subscriptions.sort((a, b) => CompareStrings(`${a.name}`, `${b.name}`));
@@ -54,20 +50,13 @@ promise_test(async testCase => {
assert_false('name' in subscriptions[2]);
assert_equals('starts-with', subscriptions[2].matchType);
-}, 'getChangeSubscriptions returns subscriptions passed to subscribeToChanges');
-
-promise_test(async testCase => {
- promise_rejects(
- testCase, new TypeError(),
- cookieStore.subscribeToChanges([{ name: 'cookie-name2' }]));
-}, 'subscribeToChanges rejects when called outside the install handler');
-
+}, 'getSubscriptions returns subscriptions passed to subscribe');
// Accumulates cookiechange events dispatched to the service worker.
let g_cookie_changes = [];
// Resolved when a cookiechange event is received. Rearmed by
-// ResetCookieChangeReceivedPromise().
+// RearmCookieChangeReceivedPromise().
let g_cookie_change_received_promise = null;
let g_cookie_change_received_promise_resolver = null;
self.addEventListener('cookiechange', (event) => {
@@ -85,6 +74,22 @@ RearmCookieChangeReceivedPromise();
promise_test(async testCase => {
await kServiceWorkerActivatedPromise;
+ {
+ const subscriptions = [
+ { name: 'cookie-name1', matchType: 'equals', url: '/cookie-store/path1' },
+ ];
+ await registration.cookies.subscribe(subscriptions);
+ testCase.add_cleanup(() => registration.cookies.unsubscribe(subscriptions));
+ }
+ {
+ const subscriptions = [
+ { }, // Test the default values for subscription properties.
+ { name: 'cookie-prefix', matchType: 'starts-with' },
+ ];
+ await registration.cookies.subscribe(subscriptions);
+ testCase.add_cleanup(() => registration.cookies.unsubscribe(subscriptions));
+ }
+
await cookieStore.set('cookie-name', 'cookie-value');
testCase.add_cleanup(async () => {
await cookieStore.delete('cookie-name');
diff --git a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_basic.js b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_basic.js
index 293969e5b8f..a96eeeb116d 100644
--- a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_basic.js
+++ b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_basic.js
@@ -4,20 +4,6 @@ self.GLOBAL = {
};
importScripts("/resources/testharness.js");
-self.addEventListener('install', (event) => {
- event.waitUntil((async () => {
- try {
- await cookieStore.subscribeToChanges([
- { name: 'cookie-name', matchType: 'equals',
- url: '/cookie-store/scope/path' }]);
-
- // If the worker enters the "redundant" state, the UA may terminate it
- // before all tests have been reported to the client. Stifle errors in
- // order to avoid this and ensure all tests are consistently reported.
- } catch (err) {}
- })());
-});
-
// Resolves when the service worker receives the 'activate' event.
const kServiceWorkerActivatedPromise = new Promise(resolve => {
self.addEventListener('activate', event => { resolve(); });
@@ -26,29 +12,42 @@ const kServiceWorkerActivatedPromise = new Promise(resolve => {
promise_test(async testCase => {
await kServiceWorkerActivatedPromise;
- const subscriptions = await cookieStore.getChangeSubscriptions();
+ {
+ const subscriptions = [
+ { name: 'cookie-name', matchType: 'equals',
+ url: '/cookie-store/scope/path' }];
+ await registration.cookies.subscribe(subscriptions);
+ testCase.add_cleanup(() => registration.cookies.unsubscribe(subscriptions));
+ }
+
+ const subscriptions = await registration.cookies.getSubscriptions();
assert_equals(subscriptions.length, 1);
assert_equals(subscriptions[0].name, 'cookie-name');
- assert_equals('equals', subscriptions[0].matchType);
-}, 'getChangeSubscriptions returns a subscription passed to subscribeToChanges');
+ assert_equals(subscriptions[0].matchType, 'equals');
+ assert_equals(subscriptions[0].url,
+ (new URL("/cookie-store/scope/path", self.location.href)).href);
+}, 'getSubscriptions returns a subscription passed to subscribe');
+const kCookieChangeReceivedPromise = new Promise((resolve) => {
+ self.addEventListener('cookiechange', event => { resolve(event); });
+});
promise_test(async testCase => {
await kServiceWorkerActivatedPromise;
- const cookie_change_received_promise = new Promise((resolve) => {
- self.addEventListener('cookiechange', (event) => {
- resolve(event);
- });
- });
+ const subscriptions = [
+ { name: 'cookie-name', matchType: 'equals',
+ url: '/cookie-store/scope/path' }];
+ await registration.cookies.subscribe(subscriptions);
+ testCase.add_cleanup(() => registration.cookies.unsubscribe(subscriptions));
await cookieStore.set('cookie-name', 'cookie-value');
testCase.add_cleanup(async () => {
await cookieStore.delete('cookie-name');
});
- const event = await cookie_change_received_promise;
+ const event = await kCookieChangeReceivedPromise;
assert_equals(event.type, 'cookiechange');
assert_equals(event.changed.length, 1);
assert_equals(event.changed[0].name, 'cookie-name');
diff --git a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_empty.js b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_empty.js
index b6231869974..7df77730553 100644
--- a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_empty.js
+++ b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_empty.js
@@ -4,18 +4,6 @@ self.GLOBAL = {
};
importScripts("/resources/testharness.js");
-self.addEventListener('install', (event) => {
- event.waitUntil((async () => {
- try {
- await cookieStore.subscribeToChanges([]);
-
- // If the worker enters the "redundant" state, the UA may terminate it
- // before all tests have been reported to the client. Stifle errors in
- // order to avoid this and ensure all tests are consistently reported.
- } catch (err) {}
- })());
-});
-
// Resolves when the service worker receives the 'activate' event.
const kServiceWorkerActivatedPromise = new Promise(resolve => {
self.addEventListener('activate', event => { resolve(); });
@@ -24,9 +12,9 @@ const kServiceWorkerActivatedPromise = new Promise(resolve => {
promise_test(async testCase => {
await kServiceWorkerActivatedPromise;
- const subscriptions = await cookieStore.getChangeSubscriptions();
+ const subscriptions = await registration.cookies.getSubscriptions();
assert_equals(subscriptions.length, 0);
-}, 'getChangeSubscriptions returns an empty array when there are no subscriptions');
+}, 'getSubscriptions returns an empty array when there are no subscriptions');
done();
diff --git a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_eventhandler_attribute.js b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_eventhandler_attribute.js
index 258441921bf..ed0cdcfcfca 100644
--- a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_eventhandler_attribute.js
+++ b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_eventhandler_attribute.js
@@ -4,20 +4,6 @@ self.GLOBAL = {
};
importScripts("/resources/testharness.js");
-self.addEventListener('install', (event) => {
- event.waitUntil((async () => {
- try {
- await cookieStore.subscribeToChanges([
- { name: 'cookie-name', matchType: 'equals',
- url: '/cookie-store/scope/path' }]);
-
- // If the worker enters the "redundant" state, the UA may terminate it
- // before all tests have been reported to the client. Stifle errors in
- // order to avoid this and ensure all tests are consistently reported.
- } catch (err) {}
- })());
-});
-
// Resolves when the service worker receives the 'activate' event.
const kServiceWorkerActivatedPromise = new Promise((resolve) => {
self.addEventListener('activate', event => { resolve(); });
@@ -32,6 +18,12 @@ const kCookieChangeReceivedPromise = new Promise((resolve) => {
promise_test(async testCase => {
await kServiceWorkerActivatedPromise;
+ const subscriptions = [
+ { name: 'cookie-name', matchType: 'equals',
+ url: '/cookie-store/scope/path' }];
+ await registration.cookies.subscribe(subscriptions);
+ testCase.add_cleanup(() => registration.cookies.unsubscribe(subscriptions));
+
await cookieStore.set('cookie-name', 'cookie-value');
testCase.add_cleanup(async () => {
await cookieStore.delete('cookie-name');
diff --git a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_mismatch.js b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_mismatch.js
index bd37b9be1ee..5414a664db6 100644
--- a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_mismatch.js
+++ b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_mismatch.js
@@ -4,20 +4,6 @@ self.GLOBAL = {
};
importScripts("/resources/testharness.js");
-self.addEventListener('install', (event) => {
- event.waitUntil((async () => {
- try {
- await cookieStore.subscribeToChanges([
- { name: 'cookie-name', matchType: 'equals',
- url: '/cookie-store/scope/path' }]);
-
- // If the worker enters the "redundant" state, the UA may terminate it
- // before all tests have been reported to the client. Stifle errors in
- // order to avoid this and ensure all tests are consistently reported.
- } catch (err) {}
- })());
-});
-
// Resolves when the service worker receives the 'activate' event.
const kServiceWorkerActivatedPromise = new Promise((resolve) => {
self.addEventListener('activate', event => { resolve(); });
@@ -32,6 +18,12 @@ const kCookieChangeReceivedPromise = new Promise((resolve) => {
promise_test(async testCase => {
await kServiceWorkerActivatedPromise;
+ const subscriptions = [
+ { name: 'cookie-name', matchType: 'equals',
+ url: '/cookie-store/scope/path' }];
+ await registration.cookies.subscribe(subscriptions);
+ testCase.add_cleanup(() => registration.cookies.unsubscribe(subscriptions));
+
await cookieStore.set('another-cookie-name', 'cookie-value');
testCase.add_cleanup(async () => {
await cookieStore.delete('another-cookie-name');
diff --git a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_reset.sub.js b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_reset.sub.js
deleted file mode 100644
index 7fc8eabc570..00000000000
--- a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_reset.sub.js
+++ /dev/null
@@ -1,24 +0,0 @@
-self.GLOBAL = {
- isWindow: function() { return false; },
- isWorker: function() { return true; },
-};
-importScripts("/resources/testharness.js");
-
-self.addEventListener('install', event => {
- event.waitUntil((async () => {
- try {
- await cookieStore.subscribeToChanges([
- { name: 'cookie-name', matchType: 'equals',
- url: '/cookie-store/scope/path' }]);
-
- // If the worker enters the "redundant" state, the UA may terminate it
- // before all tests have been reported to the client. Stifle errors in
- // order to avoid this and ensure all tests are consistently reported.
- } catch (err) {}
- })());
-});
-
-self.addEventListener('message', async event => {
- const subscriptions = await cookieStore.getChangeSubscriptions();
- event.ports[0].postMessage(subscriptions.length);
-}); \ No newline at end of file
diff --git a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_reset.tentative.https.html b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_reset.tentative.https.html
index a0923548c78..4e157840e98 100644
--- a/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_reset.tentative.https.html
+++ b/tests/wpt/web-platform-tests/cookie-store/serviceworker_cookieStore_subscriptions_reset.tentative.https.html
@@ -8,30 +8,48 @@
</script>
<script src='resources/helpers.js'></script>
<script>
-const worker_url = 'serviceworker_cookieStore_subscriptions_reset.sub.js';
-const scope = '/cookie-store/';
-
-async function getSubscriptionCount(serviceWorker) {
- return sendMessageOverChannel('', serviceWorker);
-}
+'use strict';
promise_test(async t => {
const registration = await service_worker_unregister_and_register(
- t, worker_url, scope);
+ t, 'resources/empty_sw.js', 'resources/does/not/exist');
t.add_cleanup(() => registration.unregister());
await wait_for_state(t, registration.installing, 'activated');
- assert_equals(await getSubscriptionCount(registration.active), 1,
+ await registration.cookies.subscribe(
+ [{ name: 'cookie-name', matchType: 'equals' }]);
+ const original_subscriptions = await registration.cookies.getSubscriptions();
+ assert_equals(original_subscriptions.length, 1,
'subscription count before unregistration');
await registration.unregister();
const new_registration = await navigator.serviceWorker.register(
- worker_url, { scope });
+ 'resources/empty_sw.js', { scope: 'resources/does/not/exist' });
t.add_cleanup(() => new_registration.unregister());
await wait_for_state(t, new_registration.installing, 'activated');
- assert_equals(await getSubscriptionCount(new_registration.active), 1,
+ const new_subscriptions = await new_registration.cookies.getSubscriptions();
+ assert_equals(new_subscriptions.length, 0,
'subscription count after unregistration');
-}, `cookiechange subscription list resets across service worker
- unregistrations`);
+}, 'cookiechange subscriptions reset across service worker unregistrations');
+
+promise_test(async t => {
+ const registration = await service_worker_unregister_and_register(
+ t, 'resources/always_changing_sw.sub.js', 'resources/does/not/exist');
+ t.add_cleanup(() => registration.unregister());
+ await wait_for_state(t, registration.installing, 'activated');
+ await registration.cookies.subscribe(
+ [{ name: 'cookie-name', matchType: 'equals' }]);
+ const original_subscriptions = await registration.cookies.getSubscriptions();
+ assert_equals(original_subscriptions.length, 1,
+ 'subscription count before update');
+
+ await registration.update();
+ const worker = await wait_for_update(t, registration);
+ await wait_for_state(t, worker, 'activated');
+
+ const update_subscriptions = await registration.cookies.getSubscriptions();
+ assert_equals(update_subscriptions.length, 1,
+ 'subscription count after update');
+}, 'cookiechange subscriptions persist across service worker updates');
</script>
diff --git a/tests/wpt/web-platform-tests/css/CSS2/linebox/inline-negative-margin-minmax-crash-001.html b/tests/wpt/web-platform-tests/css/CSS2/linebox/inline-negative-margin-minmax-crash-001.html
new file mode 100644
index 00000000000..d6480edd621
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/CSS2/linebox/inline-negative-margin-minmax-crash-001.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<title>CSS Test: Check inline negative margin with fit-content should not cause hang</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<link rel="help" href="https://crbug.com/1028817">
+<link rel="help" href="https://drafts.csswg.org/css2/visudet.html#inline-width">
+<link rel="author" title="Koji Ishii" href="mailto:kojii@chromium.org">
+<style>
+div {
+ width: fit-content;
+}
+span {
+ margin-left: -15px;
+}
+</style>
+<body>
+ <div>| <span>Operation</span></div>
+<script>test(() => {});</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/css/css-backgrounds/animations/background-image-interpolation.html b/tests/wpt/web-platform-tests/css/css-backgrounds/animations/background-image-interpolation.html
index b442c4e9120..feda6afebed 100644
--- a/tests/wpt/web-platform-tests/css/css-backgrounds/animations/background-image-interpolation.html
+++ b/tests/wpt/web-platform-tests/css/css-backgrounds/animations/background-image-interpolation.html
@@ -38,19 +38,26 @@ test_interpolation({
}, [
{at: -0.3, expect: from},
{at: 0, expect: from},
- {at: 0.3, expect: 'cross-fade(' + from + ', ' + to + ', 0.3)'},
- {at: 0.6, expect: 'cross-fade(' + from + ', ' + to + ', 0.6)'},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
{at: 1, expect: to},
{at: 1.5, expect: to},
]);
// initial to image
to = 'url(../resources/green-100.png)';
-test_no_interpolation({
+test_interpolation({
property: 'background-image',
from: 'initial',
to: to,
-});
+}, [
+ {at: -0.3, expect: 'none'},
+ {at: 0, expect: 'none'},
+ {at: 0.3, expect: 'none'},
+ {at: 0.6, expect: to},
+ {at: 1, expect: to},
+ {at: 1.5, expect: to},
+]);
// inherit to image
from = 'url(../resources/blue-100.png)';
@@ -62,18 +69,25 @@ test_interpolation({
}, [
{at: -0.3, expect: from},
{at: 0, expect: from},
- {at: 0.3, expect: 'cross-fade(' + from + ', ' + to + ', 0.3)'},
- {at: 0.6, expect: 'cross-fade(' + from + ', ' + to + ', 0.6)'},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
{at: 1, expect: to},
{at: 1.5, expect: to},
]);
// unset to image
-test_no_interpolation({
+test_interpolation({
property: 'background-image',
from: 'unset',
to: to,
-});
+}, [
+ {at: -0.3, expect: 'none'},
+ {at: 0, expect: 'none'},
+ {at: 0.3, expect: 'none'},
+ {at: 0.6, expect: to},
+ {at: 1, expect: to},
+ {at: 1.5, expect: to},
+]);
// Image to image
from = 'url(../resources/blue-100.png)';
@@ -85,8 +99,8 @@ test_interpolation({
}, [
{at: -0.3, expect: from},
{at: 0, expect: from},
- {at: 0.3, expect: 'cross-fade(' + from + ', ' + to + ', 0.3)'},
- {at: 0.6, expect: 'cross-fade(' + from + ', ' + to + ', 0.6)'},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
{at: 1, expect: to},
{at: 1.5, expect: to},
]);
@@ -94,38 +108,66 @@ test_interpolation({
// Image to gradient
from = 'url(../resources/blue-100.png)';
to = 'linear-gradient(45deg, blue, orange)';
-test_no_interpolation({
+test_interpolation({
property: 'background-image',
from: from,
to: to,
-});
+}, [
+ {at: -0.3, expect: from},
+ {at: 0, expect: from},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
+ {at: 1, expect: to},
+ {at: 1.5, expect: to},
+]);
// Image to crossfade
from = 'url(../resources/blue-100.png)';
to = 'cross-fade(url(../resources/green-100.png), url(../resources/stripes-100.png), 0.5)';
-test_no_interpolation({
+test_interpolation({
property: 'background-image',
from: from,
to: to,
-});
+}, [
+ {at: -0.3, expect: from},
+ {at: 0, expect: from},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
+ {at: 1, expect: to},
+ {at: 1.5, expect: to},
+]);
// Gradient to gradient
from = 'linear-gradient(-45deg, red, yellow)';
to = 'linear-gradient(45deg, blue, orange)';
-test_no_interpolation({
+test_interpolation({
property: 'background-image',
from: from,
to: to,
-});
+}, [
+ {at: -0.3, expect: from},
+ {at: 0, expect: from},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
+ {at: 1, expect: to},
+ {at: 1.5, expect: to},
+]);
// Keyword to image
from = 'none';
to = 'url(../resources/green-100.png)';
-test_no_interpolation({
+test_interpolation({
property: 'background-image',
from: from,
to: to,
-});
+}, [
+ {at: -0.3, expect: from},
+ {at: 0, expect: from},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
+ {at: 1, expect: to},
+ {at: 1.5, expect: to},
+]);
// Multiple to multiple
var fromA = 'url(../resources/stripes-100.png)';
@@ -141,8 +183,8 @@ test_interpolation({
}, [
{at: -0.3, expect: from},
{at: 0, expect: from},
- {at: 0.3, expect: 'cross-fade(' + fromA + ', ' + toA + ', 0.3), cross-fade(' + fromB + ', ' + toB + ', 0.3)'},
- {at: 0.6, expect: 'cross-fade(' + fromA + ', ' + toA + ', 0.6), cross-fade(' + fromB + ', ' + toB + ', 0.6)'},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
{at: 1, expect: to},
{at: 1.5, expect: to},
]);
@@ -161,10 +203,10 @@ test_interpolation({
// Animating background-image is not specified to be possible however we do it for backwards compatibility.
// With this in mind we kept the implementation simple at the expense of this corner case because there is
// no official specification to support.
- {at: -0.3, expect: from + ', ' + from},
+ {at: -0.3, expect: from},
{at: 0, expect: from},
- {at: 0.3, expect: 'cross-fade(' + from + ', ' + toA + ', 0.3), cross-fade(' + from + ', ' + toB + ', 0.3)'},
- {at: 0.6, expect: 'cross-fade(' + from + ', ' + toA + ', 0.6), cross-fade(' + from + ', ' + toB + ', 0.6)'},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
{at: 1, expect: to},
{at: 1.5, expect: to},
]);
@@ -172,10 +214,17 @@ test_interpolation({
// Multiple mismatched types
from = 'url(../resources/blue-100.png), none';
to = 'url(../resources/stripes-100.png), url(../resources/green-100.png)';
-test_no_interpolation({
+test_interpolation({
property: 'background-image',
from: from,
to: to,
-});
+}, [
+ {at: -0.3, expect: from},
+ {at: 0, expect: from},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
+ {at: 1, expect: to},
+ {at: 1.5, expect: to},
+]);
</script>
</body>
diff --git a/tests/wpt/web-platform-tests/css/css-backgrounds/animations/border-image-slice-interpolation-stability.html b/tests/wpt/web-platform-tests/css/css-backgrounds/animations/border-image-slice-interpolation-stability.html
new file mode 100644
index 00000000000..26431334e4a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-backgrounds/animations/border-image-slice-interpolation-stability.html
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>border-image-slice interpolation stability</title>
+<link rel="help" href="https://drafts.csswg.org/css-backgrounds-3/#border-image-slice">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<div id="target"></div>
+<script>
+test(function() {
+ var player = target.animate([
+ {borderImageSlice: '50'},
+ {borderImageSlice: '50'},
+ ], {
+ duration: 1,
+ fill: 'forwards',
+ easing: 'cubic-bezier(0, 1.5, 1, 1.5)',
+ });
+ player.pause();
+ player.currentTime = 0.6345195996109396
+ assert_equals(getComputedStyle(target).borderImageSlice, '50');
+});
+</script>
diff --git a/tests/wpt/web-platform-tests/css/css-break/fieldset-001-ref.html b/tests/wpt/web-platform-tests/css/css-break/fieldset-001-ref.html
new file mode 100644
index 00000000000..1422086da71
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-break/fieldset-001-ref.html
@@ -0,0 +1,55 @@
+<!DOCTYPE html>
+<html><head>
+<title>Reference: fragmenting a fieldset in multicol layout</title>
+<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+<style>
+ * {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+ }
+ body { width:600px; height:600px; }
+
+ .cols { columns:3; background:grey; margin-bottom: 10px; height:80px; column-fill:auto; }
+ .c2 { column-count:2; height:120px; }
+ legend { background:black; width:100px; height:19px; }
+ p {
+ position: relative;
+ border: solid;
+ border-width: 6px 3px 10px 7px;
+ margin: 3px 10px 7px 5px;
+ background-color: lightgrey;
+ }
+ p, legend {
+ background-clip: content-box;
+ padding: 10px 7px 20px 3px;
+ }
+ p { margin-top: 25px; }
+ legend {
+ position: absolute;
+ padding: 0;
+ border: 0 solid grey;
+ border-left-width: 3px;
+ border-right-width: 7px;
+ top: -18px; left: 3px;
+ }
+ p.sized {
+ height: 86px;
+ }
+ c { display:block; background:blue; opacity:.5; height:108px; }
+ pad { display:block; height: 21px; background-color: lightgrey;}
+</style>
+</head>
+<body>
+ <div class="cols">
+ <p><legend></legend><pad></pad><c></c></p>
+ </div>
+ <div class="cols c2">
+ <p><legend></legend><pad></pad><c></c></p>
+ </div>
+ <div class="cols">
+ <p class="sized"><legend></legend><pad></pad><c style="height:98px"></c><c style="width:154px;height:10px"></c></p>
+ </div>
+ <div class="cols c2">
+ <p class="sized"><legend></legend><pad></pad><c></c></p>
+ </div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-break/fieldset-001.html b/tests/wpt/web-platform-tests/css/css-break/fieldset-001.html
new file mode 100644
index 00000000000..d320fe15beb
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-break/fieldset-001.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<html><head>
+<title>CSS Test: fragmenting a fieldset in multicol layout</title>
+<link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+<link rel="help" href="https://drafts.csswg.org/css-break/#valdef-box-decoration-break-slice">
+<link rel="match" href="fieldset-001-ref.html">
+<style>
+ * {
+ color:black; background-color:white; font:16px/1 monospace; padding:0; margin:0;
+ }
+ body { width:600px; height:600px; }
+
+ .cols { columns:3; background:grey; margin-bottom: 10px; height:80px; column-fill:auto; }
+ .c2 { column-count:2; height:120px; }
+ legend { background:black; width:100px; height:19px; }
+ fieldset {
+ background-color: lightgrey;
+ border: solid;
+ border-width: 6px 3px 10px 7px;
+ margin: 3px 10px 7px 5px;
+ }
+ fieldset, legend {
+ background-clip: content-box;
+ padding: 10px 7px 20px 3px;
+ }
+ fieldset.sized {
+ height: 108px;
+ }
+ c { display:block; background:blue; opacity:.5; height:108px; }
+</style>
+</head>
+<body>
+ <div class="cols">
+ <fieldset><legend></legend><c></c></fieldset>
+ </div>
+ <div class="cols c2">
+ <fieldset><legend></legend><c></c></fieldset>
+ </div>
+ <div class="cols">
+ <fieldset class="sized"><legend></legend><c></c></fieldset>
+ </div>
+ <div class="cols c2">
+ <fieldset class="sized"><legend></legend><c></c></fieldset>
+ </div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-break/tall-break-inside-avoid-at-start.html b/tests/wpt/web-platform-tests/css/css-break/tall-break-inside-avoid-at-start.html
new file mode 100644
index 00000000000..6e9ab8bd9f5
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-break/tall-break-inside-avoid-at-start.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/css-break-3/#unforced-breaks">
+<link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+<meta name="assert" content="Cannot break before a child if we're at the block-start of a fragmentainer">
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div style="columns:2; column-fill:auto; column-gap:0; width:100px; height:100px; background:red;">
+ <div></div>
+ <div style="break-inside:avoid; height:200px; background:green;"></div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-display/animations/display-interpolation.html b/tests/wpt/web-platform-tests/css/css-display/animations/display-interpolation.html
new file mode 100644
index 00000000000..d0b1d9573b8
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-display/animations/display-interpolation.html
@@ -0,0 +1,47 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>display interpolation</title>
+<link rel="help" href="https://www.w3.org/TR/CSS2/visuren.html#display-prop">
+<meta name="assert" content="display supports animation">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/interpolation-testcommon.js"></script>
+
+
+<style>
+.target {
+ display: block;
+}
+</style>
+
+<body>
+<script>
+test_interpolation({
+ property: 'display',
+ from: 'none',
+ to: 'flex',
+ method: 'CSS Animations',
+}, [
+ {at: -0.3, expect: 'block'},
+ {at: 0, expect: 'block'},
+ {at: 0.3, expect: 'block'},
+ {at: 0.6, expect: 'block'},
+ {at: 1, expect: 'block'},
+ {at: 1.5, expect: 'block'},
+]);
+test_interpolation({
+ property: 'display',
+ from: 'none',
+ to: 'flex',
+ method: 'Web Animations',
+}, [
+ {at: -0.3, expect: 'block'},
+ {at: 0, expect: 'block'},
+ {at: 0.3, expect: 'block'},
+ {at: 0.6, expect: 'block'},
+ {at: 1, expect: 'block'},
+ {at: 1.5, expect: 'block'},
+]);
+</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-17-notref.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-17-notref.html
new file mode 100644
index 00000000000..3d01985ed6b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-17-notref.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html>
+<head>
+<link rel="author" title="Myles C. Maxfield" href="mailto:mmaxfield@apple.com"/>
+</head>
+<body>
+<div>
+<div style="display: inline-block; font: 72px 'ui-sans-serif'; font-synthesis: none;">HeJllo</div>
+</div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-17.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-17.html
new file mode 100644
index 00000000000..9ce56ed8fa6
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-17.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<html>
+<head>
+<link rel="author" title="Myles C. Maxfield" href="mailto:mmaxfield@apple.com"/>
+<link rel="help" href="https://drafts.csswg.org/css-fonts-4/#standard-font-families"/>
+<link rel="mismatch" href="standard-font-family-17-notref.html"/>
+<meta name="assert" content="ui-sans-serif's bold isn't synthetic"/>
+</head>
+<body>
+<div>
+<div style="display: inline-block; font: bold 72px 'ui-sans-serif'; font-synthesis: none;">HeJllo</div>
+</div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-18-notref.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-18-notref.html
new file mode 100644
index 00000000000..7829a0c5e19
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-18-notref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<head>
+<link rel="author" title="Myles C. Maxfield" href="mailto:mmaxfield@apple.com"/>
+<style>
+@font-face {
+ font-family: "AppleSystemUISansSerif";
+ src: local("ui-sans-serif");
+}
+</style>
+</head>
+<body>
+<div>
+<div style="display: inline-block; font: 72px 'AppleSystemUISansSerif'; font-synthesis: none;">HeJllo</div>
+</div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-18.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-18.html
new file mode 100644
index 00000000000..69e5cabd6ec
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-18.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html>
+<head>
+<link rel="author" title="Myles C. Maxfield" href="mailto:mmaxfield@apple.com"/>
+<link rel="help" href="https://drafts.csswg.org/css-fonts-4/#standard-font-families"/>
+<link rel="mismatch" href="standard-font-family-18-notref.html"/>
+<meta name="assert" content="ui-sans-serif's bold in @font-face isn't synthetic"/>
+<style>
+@font-face {
+ font-family: "AppleSystemUISansSerif";
+ src: local("ui-sans-serif");
+}
+</style>
+</head>
+<body>
+<div>
+<div style="display: inline-block; font: bold 72px 'AppleSystemUISansSerif'; font-synthesis: none;">HeJllo</div>
+</div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-19-notref.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-19-notref.html
new file mode 100644
index 00000000000..7e876ced313
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-19-notref.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html>
+<head>
+<link rel="author" title="Myles C. Maxfield" href="mailto:mmaxfield@apple.com"/>
+</head>
+<body>
+<div>
+<div style="display: inline-block; font-size: 72px;">HeJllo</div>
+</div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-19.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-19.html
new file mode 100644
index 00000000000..43dc24b1675
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-19.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<html>
+<head>
+<link rel="author" title="Myles C. Maxfield" href="mailto:mmaxfield@apple.com"/>
+<link rel="help" href="https://drafts.csswg.org/css-fonts-4/#standard-font-families"/>
+<link rel="mismatch" href="standard-font-family-19-notref.html"/>
+<meta name="assert" content="ui-sans-serif works"/>
+</head>
+<body>
+<div>
+<div style="display: inline-block; font: 72px 'ui-sans-serif';">HeJllo</div>
+</div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-2-ref.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-2-ref.html
index e19801ba770..a2fe8646e13 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-2-ref.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-2-ref.html
@@ -13,6 +13,7 @@ This test makes sure that the bold versions of the design system UI fonts work.
<div style="display: inline-block; font: bold 72px '.SF NS Mono';">HeJllo</div>
<div style="display: inline-block; font: bold 72px '.SF UI Mono';">HeJllo</div>
<div style="display: inline-block; font: bold 72px '.AppleSystemUIFontRounded';">HeJllo</div>
+<div style="display: inline-block; font: bold 72px '.AppleSystemUIFont';">HeJllo</div>
</div>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-2.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-2.html
index 4fbca52b659..2827c6c2cb8 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-2.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-2.html
@@ -16,6 +16,7 @@ This test makes sure that the bold versions of the design system UI fonts work.
<div style="display: inline-block; font: bold 72px '.SF NS Mono'; font-synthesis: none;">HeJllo</div>
<div style="display: inline-block; font: bold 72px '.SF UI Mono'; font-synthesis: none;">HeJllo</div>
<div style="display: inline-block; font: bold 72px '.AppleSystemUIFontRounded'; font-synthesis: none;">HeJllo</div>
+<div style="display: inline-block; font: bold 72px '.AppleSystemUIFont'; font-synthesis: none;">HeJllo</div>
</div>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-20-notref.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-20-notref.html
new file mode 100644
index 00000000000..7e876ced313
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-20-notref.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html>
+<head>
+<link rel="author" title="Myles C. Maxfield" href="mailto:mmaxfield@apple.com"/>
+</head>
+<body>
+<div>
+<div style="display: inline-block; font-size: 72px;">HeJllo</div>
+</div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-20.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-20.html
new file mode 100644
index 00000000000..7d0335e0616
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-20.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html>
+<head>
+<link rel="author" title="Myles C. Maxfield" href="mailto:mmaxfield@apple.com"/>
+<link rel="help" href="https://drafts.csswg.org/css-fonts-4/#standard-font-families"/>
+<link rel="mismatch" href="standard-font-family-20-notref.html"/>
+<meta name="assert" content="ui-sans-serif in @font-face works"/>
+<style>
+@font-face {
+ font-family: "AppleSystemUISansSerif";
+ src: local("ui-sans-serif");
+}
+</style>
+</head>
+<body>
+<div>
+<div style="display: inline-block; font: 72px 'AppleSystemUISansSerif';">HeJllo</div>
+</div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-6-ref.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-6-ref.html
index e9e24dfc62c..3c26321fffc 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-6-ref.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-6-ref.html
@@ -10,6 +10,7 @@ This test makes sure that the design system UI fonts don't work unless they are
<div style="display: inline-block; font-size: 72px;">HeJllo</div>
<div style="display: inline-block; font-size: 72px;">HeJllo</div>
<div style="display: inline-block; font-size: 72px;">HeJllo</div>
+<div style="display: inline-block; font-size: 72px;">HeJllo</div>
</div>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-6.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-6.html
index 9a5fd418bda..f6a0f158b94 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-6.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-6.html
@@ -22,6 +22,10 @@
font-family: "DotAppleSystemUIFontRounded";
src: local(".AppleSystemUIFontRounded");
}
+@font-face {
+ font-family: "DotAppleSystemUIFont";
+ src: local(".AppleSystemUIFont");
+}
</style>
</head>
<body>
@@ -31,6 +35,7 @@ This test makes sure that the design system UI fonts don't work unless they are
<div style="display: inline-block; font: 72px 'DotSFNSMono';">HeJllo</div>
<div style="display: inline-block; font: 72px 'DotSFUIMono';">HeJllo</div>
<div style="display: inline-block; font: 72px 'DotAppleSystemUIFontRounded';">HeJllo</div>
+<div style="display: inline-block; font: 72px 'DotAppleSystemUIFont';">HeJllo</div>
</div>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-7-ref.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-7-ref.html
index 4dad37fed3d..0e2df68c1e2 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-7-ref.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-7-ref.html
@@ -16,6 +16,10 @@
src: local("ui-rounded");
}
@font-face {
+ font-family: "AppleSystemUISansSerif";
+ src: local("ui-sans-serif");
+}
+@font-face {
font-family: "DotAppleSystemUIFontSerif";
src: local(".AppleSystemUIFontSerif");
}
@@ -31,6 +35,10 @@
font-family: "DotAppleSystemUIFontRounded";
src: local(".AppleSystemUIFontRounded");
}
+@font-face {
+ font-family: "DotAppleSystemUIFont";
+ src: local(".AppleSystemUIFont");
+}
</style>
</head>
<body>
@@ -39,10 +47,12 @@ This test makes sure that the bold versions of the design system UI fonts work i
<div style="display: inline-block; font: bold 72px 'AppleSystemUISerif';">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'AppleSystemUIMonospaced';">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'AppleSystemUIRounded';">HeJllo</div>
+<div style="display: inline-block; font: bold 72px 'AppleSystemUISansSerif';">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'DotAppleSystemUIFontSerif';">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'DotSFNSMono';">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'DotSFUIMono';">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'DotAppleSystemUIFontRounded';">HeJllo</div>
+<div style="display: inline-block; font: bold 72px 'DotAppleSystemUIFont';">HeJllo</div>
</div>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-7.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-7.html
index 68ebe0e04e6..11af83fc9e6 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-7.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-7.html
@@ -19,6 +19,10 @@
src: local("ui-rounded");
}
@font-face {
+ font-family: "AppleSystemUISansSerif";
+ src: local("ui-sans-serif");
+}
+@font-face {
font-family: "DotAppleSystemUIFontSerif";
src: local(".AppleSystemUIFontSerif");
}
@@ -34,6 +38,10 @@
font-family: "DotAppleSystemUIFontRounded";
src: local(".AppleSystemUIFontRounded");
}
+@font-face {
+ font-family: "DotAppleSystemUIFont";
+ src: local(".AppleSystemUIFont");
+}
</style>
</head>
<body>
@@ -42,10 +50,12 @@ This test makes sure that the bold versions of the design system UI fonts work i
<div style="display: inline-block; font: bold 72px 'AppleSystemUISerif'; font-synthesis: none;">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'AppleSystemUIMonospaced'; font-synthesis: none;">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'AppleSystemUIRounded'; font-synthesis: none;">HeJllo</div>
+<div style="display: inline-block; font: bold 72px 'AppleSystemUISansSerif'; font-synthesis: none;">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'DotAppleSystemUIFontSerif'; font-synthesis: none;">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'DotSFNSMono'; font-synthesis: none;">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'DotSFUIMono'; font-synthesis: none;">HeJllo</div>
<div style="display: inline-block; font: bold 72px 'DotAppleSystemUIFontRounded'; font-synthesis: none;">HeJllo</div>
+<div style="display: inline-block; font: bold 72px 'DotAppleSystemUIFont'; font-synthesis: none;">HeJllo</div>
</div>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-ref.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-ref.html
index e9e24dfc62c..3c26321fffc 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-ref.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family-ref.html
@@ -10,6 +10,7 @@ This test makes sure that the design system UI fonts don't work unless they are
<div style="display: inline-block; font-size: 72px;">HeJllo</div>
<div style="display: inline-block; font-size: 72px;">HeJllo</div>
<div style="display: inline-block; font-size: 72px;">HeJllo</div>
+<div style="display: inline-block; font-size: 72px;">HeJllo</div>
</div>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family.html b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family.html
index 907a437207c..b093ad442e1 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/standard-font-family.html
@@ -13,6 +13,7 @@ This test makes sure that the design system UI fonts don't work unless they are
<div style="display: inline-block; font: 72px '.SF NS Mono';">HeJllo</div>
<div style="display: inline-block; font: 72px '.SF UI Mono';">HeJllo</div>
<div style="display: inline-block; font: 72px '.AppleSystemUIFontRounded';">HeJllo</div>
+<div style="display: inline-block; font: 72px '.AppleSystemUIFont';">HeJllo</div>
</div>
</body>
</html>
diff --git a/tests/wpt/web-platform-tests/css/css-lists/animations/list-style-image-interpolation.html b/tests/wpt/web-platform-tests/css/css-lists/animations/list-style-image-interpolation.html
new file mode 100644
index 00000000000..b953d8c2215
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-lists/animations/list-style-image-interpolation.html
@@ -0,0 +1,147 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>list-style-image interpolation</title>
+<link rel="help" href="https://drafts.csswg.org/css-lists-3/#propdef-list-style-image">
+<meta name="assert" content="list-style-image supports animation">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/interpolation-testcommon.js"></script>
+
+<style>
+.parent {
+ list-style-image: url(../resources/blue-20.png);
+}
+.target {
+ background-color: black;
+ width: 100px;
+ list-style-image: url(../resources/green-20.png);
+}
+.expected {
+ background-color: green;
+}
+</style>
+
+<body>
+<template id="target-template">
+ <ul>
+ <li class="target"></li>
+ </ul>
+</template>
+<script>
+test_interpolation({
+ property: 'list-style-image',
+ from: neutralKeyframe,
+ to: 'url(../resources/stripes-20.png)',
+}, [
+ {at: -0.3, expect: 'url(../resources/green-20.png)'},
+ {at: 0, expect: 'url(../resources/green-20.png)'},
+ {at: 0.3, expect: 'url(../resources/green-20.png)'},
+ {at: 0.6, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1.5, expect: 'url(../resources/stripes-20.png)'},
+]);
+
+test_interpolation({
+ property: 'list-style-image',
+ from: 'initial',
+ to: 'url(../resources/stripes-20.png)',
+}, [
+ {at: -0.3, expect: 'none'},
+ {at: 0, expect: 'none'},
+ {at: 0.3, expect: 'none'},
+ {at: 0.6, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1.5, expect: 'url(../resources/stripes-20.png)'},
+]);
+
+test_interpolation({
+ property: 'list-style-image',
+ from: 'inherit',
+ to: 'url(../resources/stripes-20.png)',
+}, [
+ {at: -0.3, expect: 'url(../resources/blue-20.png)'},
+ {at: 0, expect: 'url(../resources/blue-20.png)'},
+ {at: 0.3, expect: 'url(../resources/blue-20.png)'},
+ {at: 0.6, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1.5, expect: 'url(../resources/stripes-20.png)'},
+]);
+
+test_interpolation({
+ property: 'list-style-image',
+ from: 'unset',
+ to: 'url(../resources/stripes-20.png)',
+}, [
+ {at: -0.3, expect: 'url(../resources/blue-20.png)'},
+ {at: 0, expect: 'url(../resources/blue-20.png)'},
+ {at: 0.3, expect: 'url(../resources/blue-20.png)'},
+ {at: 0.6, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1.5, expect: 'url(../resources/stripes-20.png)'},
+]);
+
+// Constant image
+test_no_interpolation({
+ property: 'list-style-image',
+ from: 'url(../resources/stripes-20.png)',
+ to: 'url(../resources/stripes-20.png)',
+});
+
+// None to image
+test_interpolation({
+ property: 'list-style-image',
+ from: 'none',
+ to: 'url(../resources/stripes-20.png)',
+}, [
+ {at: -0.3, expect: 'none'},
+ {at: 0, expect: 'none'},
+ {at: 0.3, expect: 'none'},
+ {at: 0.6, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1.5, expect: 'url(../resources/stripes-20.png)'},
+]);
+
+// Image to image
+test_interpolation({
+ property: 'list-style-image',
+ from: 'url(../resources/green-20.png)',
+ to: 'url(../resources/stripes-20.png)',
+}, [
+ {at: -0.3, expect: 'url(../resources/green-20.png)'},
+ {at: 0, expect: 'url(../resources/green-20.png)'},
+ {at: 0.3, expect: 'url(../resources/green-20.png)'},
+ {at: 0.6, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1.5, expect: 'url(../resources/stripes-20.png)'},
+]);
+
+// Image to gradient
+test_interpolation({
+ property: 'list-style-image',
+ from: 'url(../resources/green-20.png)',
+ to: 'linear-gradient(45deg, blue, orange)',
+}, [
+ {at: -0.3, expect: 'url(../resources/green-20.png)'},
+ {at: 0, expect: 'url(../resources/green-20.png)'},
+ {at: 0.3, expect: 'url(../resources/green-20.png)'},
+ {at: 0.6, expect: 'linear-gradient(45deg, blue, orange)'},
+ {at: 1, expect: 'linear-gradient(45deg, blue, orange)'},
+ {at: 1.5, expect: 'linear-gradient(45deg, blue, orange)'},
+]);
+
+// Gradient to gradient
+test_interpolation({
+ property: 'list-style-image',
+ from: 'linear-gradient(-45deg, red, yellow)',
+ to: 'linear-gradient(45deg, blue, orange)',
+}, [
+ {at: -0.3, expect: 'linear-gradient(-45deg, red, yellow)'},
+ {at: 0, expect: 'linear-gradient(-45deg, red, yellow)'},
+ {at: 0.3, expect: 'linear-gradient(-45deg, red, yellow)'},
+ {at: 0.6, expect: 'linear-gradient(45deg, blue, orange)'},
+ {at: 1, expect: 'linear-gradient(45deg, blue, orange)'},
+ {at: 1.5, expect: 'linear-gradient(45deg, blue, orange)'},
+]);
+</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/css/css-lists/resources/blue-20.png b/tests/wpt/web-platform-tests/css/css-lists/resources/blue-20.png
new file mode 100644
index 00000000000..c464c75eeca
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-lists/resources/blue-20.png
Binary files differ
diff --git a/tests/wpt/web-platform-tests/css/css-lists/resources/green-20.png b/tests/wpt/web-platform-tests/css/css-lists/resources/green-20.png
new file mode 100644
index 00000000000..738d1db8469
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-lists/resources/green-20.png
Binary files differ
diff --git a/tests/wpt/web-platform-tests/css/css-lists/resources/stripes-20.png b/tests/wpt/web-platform-tests/css/css-lists/resources/stripes-20.png
new file mode 100644
index 00000000000..de30887ea35
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-lists/resources/stripes-20.png
Binary files differ
diff --git a/tests/wpt/web-platform-tests/css/css-masking/animations/mask-image-interpolation.html b/tests/wpt/web-platform-tests/css/css-masking/animations/mask-image-interpolation.html
new file mode 100644
index 00000000000..beb9c9eaab0
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-masking/animations/mask-image-interpolation.html
@@ -0,0 +1,180 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>mask-image-interpolation</title>
+<link rel="help" href="https://drafts.fxtf.org/css-masking-1/#the-mask-image">
+<meta name="assert" content="mask-image supports animation">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/interpolation-testcommon.js"></script>
+
+<style>
+.parent {
+ mask-image: url(../resources/blue-20.png);
+}
+.target {
+ width: 20px;
+ height: 20px;
+ display: inline-block;
+ background-color: black;
+ mask-image: url(../resources/stripes-20.png);
+}
+.expected {
+ background-color: green;
+ margin-right: 10px;
+}
+</style>
+
+<body>
+<script>
+// neutral
+test_interpolation({
+ property: 'mask-image',
+ from: neutralKeyframe,
+ to: 'url(../resources/green-20.png)',
+}, [
+ {at: -0.3, expect: 'url(../resources/stripes-20.png)'},
+ {at: 0, expect: 'url(../resources/stripes-20.png)'},
+ {at: 0.3, expect: 'url(../resources/stripes-20.png)'},
+ {at: 0.6, expect: 'url(../resources/green-20.png)'},
+ {at: 1, expect: 'url(../resources/green-20.png)'},
+ {at: 1.5, expect: 'url(../resources/green-20.png)'},
+]);
+
+// initial
+test_interpolation({
+ property: 'mask-image',
+ from: 'initial',
+ to: 'url(../resources/green-20.png)',
+}, [
+ {at: -0.3, expect: 'none'},
+ {at: 0, expect: 'none'},
+ {at: 0.3, expect: 'none'},
+ {at: 0.6, expect: 'url(../resources/green-20.png)'},
+ {at: 1, expect: 'url(../resources/green-20.png)'},
+ {at: 1.5, expect: 'url(../resources/green-20.png)'},
+]);
+
+// inherit
+test_interpolation({
+ property: 'mask-image',
+ from: 'inherit',
+ to: 'url(../resources/green-20.png)',
+}, [
+ {at: -0.3, expect: 'url(../resources/blue-20.png)'},
+ {at: 0, expect: 'url(../resources/blue-20.png)'},
+ {at: 0.3, expect: 'url(../resources/blue-20.png)'},
+ {at: 0.6, expect: 'url(../resources/green-20.png)'},
+ {at: 1, expect: 'url(../resources/green-20.png)'},
+ {at: 1.5, expect: 'url(../resources/green-20.png)'},
+]);
+
+// unset
+test_interpolation({
+ property: 'mask-image',
+ from: 'unset',
+ to: 'url(../resources/stripes-20.png)',
+}, [
+ {at: -0.3, expect: 'none'},
+ {at: 0, expect: 'none'},
+ {at: 0.3, expect: 'none'},
+ {at: 0.6, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1, expect: 'url(../resources/stripes-20.png)'},
+ {at: 1.5, expect: 'url(../resources/stripes-20.png)'},
+]);
+
+// Image to image
+test_interpolation({
+ property: 'mask-image',
+ from: 'url(../resources/stripes-20.png)',
+ to: 'url(../resources/blue-20.png)',
+}, [
+ {at: -0.3, expect: 'url(../resources/stripes-20.png)'},
+ {at: 0, expect: 'url(../resources/stripes-20.png)'},
+ {at: 0.3, expect: 'url(../resources/stripes-20.png)'},
+ {at: 0.6, expect: 'url(../resources/blue-20.png)'},
+ {at: 1, expect: 'url(../resources/blue-20.png)'},
+ {at: 1.5, expect: 'url(../resources/blue-20.png)'},
+]);
+
+//Image to gradient
+test_interpolation({
+ property: 'mask-image',
+ from: 'url(../resources/stripes-20.png)',
+ to: 'linear-gradient(45deg, blue, transparent)'
+}, [
+ {at: -0.3, expect: 'url(../resources/stripes-20.png)'},
+ {at: 0, expect: 'url(../resources/stripes-20.png)'},
+ {at: 0.3, expect: 'url(../resources/stripes-20.png)'},
+ {at: 0.6, expect: 'linear-gradient(45deg, blue, transparent)'},
+ {at: 1, expect: 'linear-gradient(45deg, blue, transparent)'},
+ {at: 1.5, expect: 'linear-gradient(45deg, blue, transparent)'},
+]);
+
+// Keyword to image
+test_interpolation({
+ property: 'mask-image',
+ from: 'none',
+ to: 'url(../resources/green-20.png)',
+}, [
+ {at: -0.3, expect: 'none'},
+ {at: 0, expect: 'none'},
+ {at: 0.3, expect: 'none'},
+ {at: 0.6, expect: 'url(../resources/green-20.png)'},
+ {at: 1, expect: 'url(../resources/green-20.png)'},
+ {at: 1.5, expect: 'url(../resources/green-20.png)'},
+]);
+
+// Multiple to multiple
+var fromA = 'url(../resources/stripes-20.png)';
+var fromB = 'linear-gradient(-45deg, blue, transparent)';
+var toA = 'url(../resources/blue-20.png)';
+var toB = 'url(../resources/stripes-20.png)';
+var from = fromA + ', ' + fromB;
+var to = toA + ', ' + toB;
+test_interpolation({
+ property: 'mask-image',
+ from: from,
+ to: to,
+}, [
+ {at: -0.3, expect: from},
+ {at: 0, expect: from},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
+ {at: 1, expect: to},
+ {at: 1.5, expect: to},
+]);
+
+// Single to multiple
+from = 'url(../resources/blue-20.png)';
+toA = 'url(../resources/stripes-20.png)';
+toB = 'url(../resources/blue-20.png)';
+to = toA + ', ' + toB;
+test_interpolation({
+ property: 'mask-image',
+ from: from,
+ to: to,
+}, [
+ {at: -0.3, expect: from},
+ {at: 0, expect: from},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
+ {at: 1, expect: to},
+ {at: 1.5, expect: to},
+]);
+
+// Multiple mismatched types
+test_interpolation({
+ property: 'mask-image',
+ from: 'url(../resources/blue-20.png), none',
+ to: 'url(../resources/stripes-20.png), url(../resources/blue-20.png)',
+}, [
+ {at: -0.3, expect: from},
+ {at: 0, expect: from},
+ {at: 0.3, expect: from},
+ {at: 0.6, expect: to},
+ {at: 1, expect: to},
+ {at: 1.5, expect: to},
+]);
+</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/css/css-masking/resources/blue-20.png b/tests/wpt/web-platform-tests/css/css-masking/resources/blue-20.png
new file mode 100644
index 00000000000..c464c75eeca
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-masking/resources/blue-20.png
Binary files differ
diff --git a/tests/wpt/web-platform-tests/css/css-masking/resources/green-20.png b/tests/wpt/web-platform-tests/css/css-masking/resources/green-20.png
new file mode 100644
index 00000000000..738d1db8469
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-masking/resources/green-20.png
Binary files differ
diff --git a/tests/wpt/web-platform-tests/css/css-masking/resources/stripes-20.png b/tests/wpt/web-platform-tests/css/css-masking/resources/stripes-20.png
new file mode 100644
index 00000000000..de30887ea35
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-masking/resources/stripes-20.png
Binary files differ
diff --git a/tests/wpt/web-platform-tests/css/css-multicol/equal-gap-and-rule.html b/tests/wpt/web-platform-tests/css/css-multicol/equal-gap-and-rule.html
new file mode 100644
index 00000000000..bf6d6b9cefa
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-multicol/equal-gap-and-rule.html
@@ -0,0 +1,8 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/css-multicol-1/#column-gaps-and-rules">
+<link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div style="columns:8; column-fill:auto; column-gap:5px; column-rule:5px solid green; width:100px; height:100px; background:red;">
+ <div style="height:800px; background:green;"></div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-pseudo/first-line-and-marker-ref.html b/tests/wpt/web-platform-tests/css/css-pseudo/first-line-and-marker-ref.html
new file mode 100644
index 00000000000..8095d5ca015
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-pseudo/first-line-and-marker-ref.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<meta charset="utf-8" />
+<title>CSS Reftest Reference</title>
+<link rel="author" title="Oriol Brufau" href="mailto:obrufau@igalia.com" />
+<style>
+span {
+ background: cyan;
+}
+.none {
+ list-style-type: none;
+}
+.string {
+ list-style-type: "2. ";
+}
+.content::marker {
+ content: "3. ";
+}
+</style>
+<ol class="none">
+ <li><span>1. inside decimal</span></li>
+ <li><span>2. inside string</span></li>
+ <li><span>3. inside content</span></li>
+</ol>
+<ol class="outside">
+ <li class="decimal"><span>outside decimal</span></li>
+ <li class="string"><span>outside string</span></li>
+ <li class="content"><span>outside content</span></li>
+</ol>
diff --git a/tests/wpt/web-platform-tests/css/css-pseudo/first-line-and-marker.html b/tests/wpt/web-platform-tests/css/css-pseudo/first-line-and-marker.html
new file mode 100644
index 00000000000..f0a994438f1
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-pseudo/first-line-and-marker.html
@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Interaction of ::first-line and ::marker</title>
+<link rel="author" title="Oriol Brufau" href="mailto:obrufau@igalia.com" />
+<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#first-line-pseudo">
+<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#marker-pseudo">
+<link rel="match" href="first-line-and-marker-ref.html">
+<meta name="assert" content="Tests ::marker interaction with ::first-line pseudo element">
+<style>
+li::first-line {
+ background: cyan;
+}
+.inside {
+ list-style-position: inside;
+}
+.string {
+ list-style-type: "2. ";
+}
+.content::marker {
+ content: "3. ";
+}
+</style>
+<ol class="inside">
+ <li class="decimal">inside decimal</li>
+ <li class="string">inside string</li>
+ <li class="content">inside content</li>
+</ol>
+<ol class="outside">
+ <li class="decimal">outside decimal</li>
+ <li class="string">outside string</li>
+ <li class="content">outside content</li>
+</ol>
diff --git a/tests/wpt/web-platform-tests/css/css-pseudo/parsing/marker-supported-properties.html b/tests/wpt/web-platform-tests/css/css-pseudo/parsing/marker-supported-properties.html
index 451aac149db..a34fd76fea4 100644
--- a/tests/wpt/web-platform-tests/css/css-pseudo/parsing/marker-supported-properties.html
+++ b/tests/wpt/web-platform-tests/css/css-pseudo/parsing/marker-supported-properties.html
@@ -35,7 +35,7 @@ test_pseudo_computed_value("::marker", "font-weight", "900");
test_pseudo_computed_value("::marker", "color", "rgb(0, 100, 200)");
// ::marker supports `text-combine-upright`, `unicode-bidi` and `direction`
-test_pseudo_computed_value("::marker", "text-combine-upright", "none");
+test_pseudo_computed_value("::marker", "text-combine-upright", "all");
test_pseudo_computed_value("::marker", "unicode-bidi", "plaintext");
test_pseudo_computed_value("::marker", "direction", "rtl");
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/scroll-snap-stop-change.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/scroll-snap-stop-change.html
index 0a73ff1206d..10e90d3cff4 100644
--- a/tests/wpt/web-platform-tests/css/css-scroll-snap/scroll-snap-stop-change.html
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/scroll-snap-stop-change.html
@@ -8,20 +8,24 @@ div, html, body {
margin: 0;
padding: 0;
}
+
html {
scroll-snap-type: x mandatory;
overflow: scroll;
}
+
#scroller {
scroll-snap-type: x mandatory;
overflow: scroll;
- height: 300px;
- width: 300px;
+ height: 400px;
+ width: 400px;
}
+
.large_space {
width: 2000px;
height: 2000px;
}
+
.snap_area {
scroll-snap-align: none start;
width: 100px;
@@ -29,13 +33,20 @@ html {
background-color: blue;
}
+
.snap_area:nth-child(1) {
- margin-left: 100px;
+ margin-left: 0;
}
+
.snap_area:nth-child(2) {
- margin-left: 300px;
+ margin-left: 100px;
}
+
.snap_area:nth-child(3) {
+ margin-left: 300px;
+}
+
+.snap_area:nth-child(4) {
margin-left: 500px;
}
</style>
@@ -44,11 +55,13 @@ html {
<div class="snap_area"></div>
<div class="snap_area"></div>
<div class="snap_area"></div>
+<div class="snap_area"></div>
<div id="scroller">
<div class="snap_area"></div>
<div class="snap_area"></div>
<div class="snap_area"></div>
+ <div class="snap_area"></div>
<div class="large_space"></div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/direction-rtl.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/direction-rtl.html
new file mode 100644
index 00000000000..d10c013e1ee
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/direction-rtl.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html>
+<title>
+ Scrollers should snap to the closest snap point on initial layout (using 'direction: rtl')
+</title>
+<link rel="help" href="https://drafts.csswg.org/css-scroll-snap/#re-snap" />
+<link rel="match" href="snap-after-initial-layout-ref.html" />
+<style>
+div {
+ position: absolute;
+ margin: 0;
+}
+
+#scroller {
+ height: 500px;
+ width: 500px;
+ overflow: hidden;
+ scroll-snap-type: both mandatory;
+ direction: rtl;
+}
+
+#close-target {
+ width: 300px;
+ height: 300px;
+ top: 100px;
+ right: 200px;
+ background-color: green;
+ scroll-snap-align: start;
+}
+
+#far-target {
+ width: 300px;
+ height: 300px;
+ top: 100px;
+ right: 700px;
+ background-color: red;
+ scroll-snap-align: start;
+}
+
+.area {
+ width: 2000px;
+ height: 2000px;
+}
+</style>
+
+<div id="scroller">
+ <div class="area"></div>
+ <div id="close-target"></div>
+ <div id="far-target"></div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/snap-after-initial-layout-ref.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/snap-after-initial-layout-ref.html
new file mode 100644
index 00000000000..c8009b626cb
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/snap-after-initial-layout-ref.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<title>Reference</title>
+<style>
+div {
+ margin: 0;
+ position: absolute;
+}
+
+#target {
+ width: 300px;
+ height: 300px;
+ top: 0;
+ left: 200px;
+ background-color: green;
+}
+</style>
+
+<div>
+ <div id="target"></div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-horizontal-tb.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-horizontal-tb.html
new file mode 100644
index 00000000000..aa65dde1810
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-horizontal-tb.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<title>
+ Scrollers should snap to the closest snap point on initial layout
+ (using 'writing-mode: horizontal-tb')
+</title>
+<link rel="help" href="https://drafts.csswg.org/css-scroll-snap/#re-snap" />
+<link rel="match" href="snap-after-initial-layout-ref.html" />
+<style>
+div {
+ position: absolute;
+ margin: 0;
+}
+
+#scroller {
+ height: 500px;
+ width: 500px;
+ overflow: hidden;
+ scroll-snap-type: both mandatory;
+ writing-mode: horizontal-tb;
+}
+
+#close-target {
+ width: 300px;
+ height: 300px;
+ top: 100px;
+ left: 200px;
+ background-color: green;
+ scroll-snap-align: start end;
+}
+
+#far-target {
+ width: 300px;
+ height: 300px;
+ top: 100px;
+ left: 500px;
+ background-color: red;
+ scroll-snap-align: start end;
+}
+
+.area {
+ width: 2000px;
+ height: 2000px;
+}
+</style>
+
+<div id="scroller">
+ <div class="area"></div>
+ <div id="close-target"></div>
+ <div id="far-target"></div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-lr.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-lr.html
new file mode 100644
index 00000000000..898e64be619
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-lr.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<title>
+ Scrollers should snap to the closest snap point on initial layout
+ (using 'writing-mode: vertical-lr')
+</title>
+<link rel="help" href="https://drafts.csswg.org/css-scroll-snap/#re-snap" />
+<link rel="match" href="snap-after-initial-layout-ref.html" />
+<style>
+div {
+ position: absolute;
+ margin: 0;
+}
+
+#scroller {
+ height: 500px;
+ width: 500px;
+ overflow: hidden;
+ scroll-snap-type: both mandatory;
+ writing-mode: vertical-lr;
+}
+
+#close-target {
+ width: 300px;
+ height: 300px;
+ top: 100px;
+ left: 200px;
+ background-color: green;
+ scroll-snap-align: end start;
+}
+
+#far-target {
+ width: 300px;
+ height: 300px;
+ top: 100px;
+ left: 500px;
+ background-color: red;
+ scroll-snap-align: end start;
+}
+
+.area {
+ width: 2000px;
+ height: 2000px;
+}
+</style>
+
+<div id="scroller">
+ <div class="area"></div>
+ <div id="close-target"></div>
+ <div id="far-target"></div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-rl.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-rl.html
new file mode 100644
index 00000000000..b3141f03f3c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-initial-layout/writing-mode-vertical-rl.html
@@ -0,0 +1,53 @@
+<!DOCTYPE html>
+<title>
+ Scrollers should snap to the closest snap point on initial layout
+ (using 'writing-mode: vertical-rl')
+</title>
+<link rel="help" href="https://drafts.csswg.org/css-scroll-snap/#re-snap" />
+<link rel="match" href="snap-after-initial-layout-ref.html" />
+<style>
+div {
+ position: absolute;
+ margin: 0;
+}
+
+#scroller {
+ /* Chrome bug using 'position:absolute' with LayoutNG disabled */
+ position: relative;
+
+ height: 500px;
+ width: 500px;
+ overflow: hidden;
+ scroll-snap-type: both mandatory;
+ writing-mode: vertical-rl;
+}
+
+#close-target {
+ width: 300px;
+ height: 300px;
+ top: 100px;
+ left: 200px;
+ background-color: green;
+ scroll-snap-align: start;
+}
+
+#far-target {
+ width: 300px;
+ height: 300px;
+ top: 100px;
+ left: 500px;
+ background-color: red;
+ scroll-snap-align: start;
+}
+
+.area {
+ width: 2000px;
+ height: 2000px;
+}
+</style>
+
+<div id="scroller">
+ <div class="area"></div>
+ <div id="close-target"></div>
+ <div id="far-target"></div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/adding-only-snap-area.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/adding-only-snap-area.html
new file mode 100644
index 00000000000..53141707bb3
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/adding-only-snap-area.html
@@ -0,0 +1,55 @@
+<!DOCTYPE html>
+<title>
+ Adding a new snap area when there are none should make the scroller snap to it.
+</title>
+<link rel="help" href="https://drafts.csswg.org/css-scroll-snap/#re-snap" />
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+div {
+ position: absolute;
+ margin: 0;
+}
+
+#scroller {
+ height: 500px;
+ width: 500px;
+ overflow: hidden;
+ scroll-snap-type: both mandatory;
+}
+
+#target {
+ width: 300px;
+ height: 300px;
+ top: 100px;
+ left: 100px;
+ background-color: green;
+ scroll-snap-align: start;
+}
+
+.area {
+ width: 2000px;
+ height: 2000px;
+}
+</style>
+
+<div id="scroller">
+ <div class="area"></div>
+ <div id="target"></div>
+</div>
+
+<script>
+const target = document.getElementById("target");
+const scroller = document.getElementById("scroller");
+
+test(() => {
+ scroller.removeChild(target);
+ scroller.scrollTo(0,0);
+ assert_equals(scroller.scrollTop, 0);
+ assert_equals(scroller.scrollLeft, 0);
+
+ scroller.appendChild(target);
+ assert_equals(scroller.scrollTop, 100);
+ assert_equals(scroller.scrollLeft, 100);
+}, "Adding a new snap area when there are none should make the scroller snap to it.");
+</script>
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/adding-snap-area-while-snapped.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/adding-snap-area-while-snapped.html
new file mode 100644
index 00000000000..d26359658f4
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/adding-snap-area-while-snapped.html
@@ -0,0 +1,66 @@
+<!DOCTYPE html>
+<title>
+ Adding a new snap area while already snapped should not make the scroller snap to it.
+</title>
+<link rel="help" href="https://drafts.csswg.org/css-scroll-snap/#re-snap" />
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+div {
+ position: absolute;
+ margin: 0;
+}
+
+#scroller {
+ height: 500px;
+ width: 500px;
+ overflow: hidden;
+ scroll-snap-type: both mandatory;
+}
+
+#initial-target {
+ width: 300px;
+ height: 300px;
+ top: 100px;
+ left: 100px;
+ background-color: green;
+ scroll-snap-align: start;
+}
+
+#other-target {
+ width: 300px;
+ height: 300px;
+ top: 300px;
+ left: 300px;
+ background-color: red;
+ scroll-snap-align: start;
+}
+
+.area {
+ width: 2000px;
+ height: 2000px;
+}
+</style>
+
+<div id="scroller">
+ <div class="area"></div>
+ <div id="initial-target"></div>
+ <div id="other-target"></div>
+</div>
+
+<script>
+const initial_target = document.getElementById("initial-target");
+const other_target = document.getElementById("other-target");
+const scroller = document.getElementById("scroller");
+
+test(() => {
+ scroller.removeChild(other_target);
+ scroller.scrollTo(0,0);
+ assert_equals(scroller.scrollTop, 100);
+ assert_equals(scroller.scrollLeft, 100);
+
+ scroller.appendChild(other_target);
+ assert_equals(scroller.scrollTop, 100);
+ assert_equals(scroller.scrollLeft, 100);
+}, "Adding a new snap area while already snapped should not make the scroller snap to it.");
+</script>
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/move-current-target.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/move-current-target.html
new file mode 100644
index 00000000000..83c2c478bf5
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/move-current-target.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html>
+<title>
+ Moving the current snap target should make the scroller resnap to it.
+</title>
+<link rel="help" href="https://drafts.csswg.org/css-scroll-snap/#re-snap" />
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+div {
+ position: relative;
+ margin: 0;
+}
+
+#block {
+ height: 100px;
+ width: 100px;
+}
+
+#scroller {
+ height: 500px;
+ width: 500px;
+ overflow: hidden;
+ scroll-snap-type: both mandatory;
+}
+
+#initial-target {
+ width: 300px;
+ height: 300px;
+ left: 100px;
+ top: 0;
+ transform: none;
+ background-color: green;
+ scroll-snap-align: start;
+}
+
+#other-target {
+ width: 300px;
+ height: 300px;
+ left: 300px;
+ background-color: red;
+ scroll-snap-align: start;
+}
+
+.area {
+ width: 2000px;
+ height: 2000px;
+}
+</style>
+
+<div id="scroller">
+ <div id="block"></div>
+ <div id="initial-target"></div>
+ <div id="other-target"></div>
+ <div class="area"></div>
+</div>
+
+<script>
+const initial_target = document.getElementById("initial-target");
+const other_target = document.getElementById("other-target");
+const block = document.getElementById("block");
+const scroller = document.getElementById("scroller");
+
+function cleanup() {
+ initial_target.style.setProperty("transform", "none");
+ initial_target.style.setProperty("top", "0");
+ block.style.setProperty("height", "100px");
+}
+
+test(t => {
+ t.add_cleanup(cleanup);
+ scroller.scrollTo(0,0);
+ assert_equals(scroller.scrollTop, 100);
+ assert_equals(scroller.scrollLeft, 100);
+
+ initial_target.style.setProperty("top", "300px");
+ assert_equals(scroller.scrollTop, 400);
+ assert_equals(scroller.scrollLeft, 100);
+}, "Moving the current snap target should make the scroller resnap to it.");
+
+test(t => {
+ t.add_cleanup(cleanup);
+ scroller.scrollTo(0,0);
+ assert_equals(scroller.scrollTop, 100);
+ assert_equals(scroller.scrollLeft, 100);
+
+ block.style.setProperty("height", "200px");
+ assert_equals(scroller.scrollTop, 200);
+ assert_equals(scroller.scrollLeft, 100);
+}, "Changing the layout of other elements should be able to cause resnapping to \
+the target.");
+
+test(t => {
+ t.add_cleanup(cleanup);
+ scroller.scrollTo(0,0);
+ assert_equals(scroller.scrollTop, 100);
+ assert_equals(scroller.scrollLeft, 100);
+
+ // TODO(alsan): Chrome currently doesn't correctly re-snap due to transform.
+ // It seems to be an invalidation issue. http://crbug.com/1028316
+ initial_target.style.setProperty("transform", "translate(0,100px)");
+ assert_equals(scroller.scrollTop, 200);
+ assert_equals(scroller.scrollLeft, 100);
+}, "Transforming the current snap target should make the scroller resnap to it.");
+
+test(t => {
+ t.add_cleanup(cleanup);
+ initial_target.style.setProperty("top", "100px");
+ scroller.scrollTo(0,0);
+ assert_equals(scroller.scrollTop, 200);
+ assert_equals(scroller.scrollLeft, 100);
+
+ initial_target.style.setProperty("transform", "translate(0,100px)");
+ initial_target.style.setProperty("top", "0");
+ assert_equals(scroller.scrollTop, 200);
+ assert_equals(scroller.scrollLeft, 100);
+}, "Applying two property changes that do not change the visual offset of the \
+target should not change the scroll offset.");
+</script>
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/remove-current-target.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/remove-current-target.html
new file mode 100644
index 00000000000..82bddf80748
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/remove-current-target.html
@@ -0,0 +1,65 @@
+<!DOCTYPE html>
+<title>
+ Removing the current snap target should make the scroller snap to a new target.
+</title>
+<link rel="help" href="https://drafts.csswg.org/css-scroll-snap/#re-snap" />
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+div {
+ position: absolute;
+ margin: 0;
+}
+
+#scroller {
+ height: 500px;
+ width: 500px;
+ overflow: hidden;
+ scroll-snap-type: both mandatory;
+}
+
+#initial-target {
+ width: 300px;
+ height: 300px;
+ top: 100px;
+ left: 100px;
+ background-color: red;
+ scroll-snap-align: start;
+}
+
+#other-target {
+ width: 300px;
+ height: 300px;
+ top: 300px;
+ left: 300px;
+ background-color: green;
+ scroll-snap-align: start;
+}
+
+.area {
+ width: 2000px;
+ height: 2000px;
+}
+</style>
+
+<div id="scroller">
+ <div class="area"></div>
+ <div id="initial-target"></div>
+ <div id="other-target"></div>
+</div>
+
+<script>
+const initial_target = document.getElementById("initial-target");
+const other_target = document.getElementById("other-target");
+const scroller = document.getElementById("scroller");
+
+test(() => {
+ scroller.scrollTo(0,0);
+ assert_equals(scroller.scrollTop, 100);
+ assert_equals(scroller.scrollLeft, 100);
+
+ scroller.removeChild(initial_target);
+ assert_equals(scroller.scrollTop, 300);
+ assert_equals(scroller.scrollLeft, 300);
+}, "Removing the current snap target should make the scroller snap to a new target.");
+</script>
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/snap-to-different-targets.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/snap-to-different-targets.html
new file mode 100644
index 00000000000..6ceab295e4c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-after-relayout/snap-to-different-targets.html
@@ -0,0 +1,92 @@
+<!DOCTYPE html>
+<title>
+ The scroller should try to resnap to targets for both axes if possible.
+</title>
+<link rel="help" href="https://drafts.csswg.org/css-scroll-snap/#re-snap" />
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+div {
+ position: absolute;
+ margin: 0;
+}
+
+#scroller {
+ height: 500px;
+ width: 500px;
+ overflow: hidden;
+ scroll-snap-type: both mandatory;
+}
+
+#x-axis-target {
+ scroll-snap-align: none start;
+ background-color: blue;
+ width: 100px;
+ height: 100px;
+ top: 400px;
+ left: 200px;
+}
+
+#y-axis-target {
+ scroll-snap-align: start none;
+ background-color: green;
+ width: 100px;
+ height: 100px;
+ top: 200px;
+ left: 400px;
+}
+
+#far-x-axis-target {
+ scroll-snap-align: none start;
+ background-color: blue;
+ width: 100px;
+ height: 100px;
+ top: 1200px;
+ left: 300px;
+}
+
+#far-y-axis-target {
+ scroll-snap-align: start none;
+ background-color: green;
+ width: 100px;
+ height: 100px;
+ top: 300px;
+ left: 1200px;
+}
+
+.area {
+ width: 2000px;
+ height: 2000px;
+}
+</style>
+
+<div id="scroller">
+ <div class="area"></div>
+ <div id="x-axis-target"></div>
+ <div id="y-axis-target"></div>
+ <div id="far-x-axis-target"></div>
+ <div id="far-y-axis-target"></div>
+</div>
+
+<script>
+
+const x_target = document.getElementById("x-axis-target");
+const y_target = document.getElementById("y-axis-target");
+const scroller = document.getElementById("scroller");
+
+test(() => {
+ // The scroller should be snapped to the two closest points on first layout.
+ assert_equals(scroller.scrollTop, 200);
+ assert_equals(scroller.scrollLeft, 200);
+ x_target.style.setProperty("left", "1000px");
+ y_target.style.setProperty("top", "1000px");
+
+ // The style change makes it impossible for the scroller to snap to both
+ // targets, but at least one of the targets should be preserved. The scroller
+ // should then re-evaluate the snap point for the other axis.
+ const snapped_to_x = scroller.scrollLeft == 1000 && scroller.scrollTop == 300;
+ const snapped_to_y = scroller.scrollTop == 1000 && scroller.scrollLeft == 300;
+ assert_true(snapped_to_x || snapped_to_y);
+}, "Scroller should snap to at least one of the targets if unable to snap to\
+both after a layout change.");
+</script>
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-area-caputring-add-scroll-container.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-area-capturing-add-scroll-container.html
index d0453676392..15f44ed8b7b 100644
--- a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-area-caputring-add-scroll-container.html
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-area-capturing-add-scroll-container.html
@@ -89,7 +89,7 @@ const document_scroller = document.scrollingElement;
test(() => {
// Confirm that the document-level scroller is the snap container for all of
// the snap areas.
- document_scroller.scrollBy(0, 10);
+ document_scroller.scrollTo(0, 10);
assert_equals(document_scroller.scrollTop, 500);
// Snaps to the inner snap area.
document_scroller.scrollBy(0, 75);
@@ -121,9 +121,13 @@ test(() => {
// Test that attaching a new snap container also properly assigns snap areas.
test(() => {
+ // All containers should capture snap areas.
+ middle_scroller.style.setProperty("overflow", "scroll");
+ inner_scroller.style.setProperty("overflow", "scroll");
+
// Sanity check that the scrollers still snap to the snap areas.
- document_scroller.scrollBy(0, 10);
- inner_scroller.scrollBy(0,10);
+ document_scroller.scrollTo(0, 10);
+ inner_scroller.scrollTo(0,10);
assert_equals(inner_scroller.scrollTop, 300);
assert_equals(document_scroller.scrollTop, 500);
@@ -142,7 +146,7 @@ test(() => {
assert_equals(document_scroller.scrollTop, 400);
// Inserted scroller snaps.
- inserted_scroller.scrollBy(0, 10);
+ inserted_scroller.scrollTo(0, 10);
assert_equals(inserted_scroller.scrollTop, 500);
}, "Attaching a new element that is scrollable should assign the correct snap\
areas to it.");
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-area-capturing-remove-scroll-container.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-area-capturing-remove-scroll-container.html
index 9b824071599..d3750abdd7e 100644
--- a/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-area-capturing-remove-scroll-container.html
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/snap-area-capturing-remove-scroll-container.html
@@ -80,16 +80,14 @@ test(() => {
const middle_scroller = document.getElementById("middle-scroller");
const document_scroller = document.scrollingElement;
+ // Inner scroller should snap to its captured area.
// Middle scroller doesn't snap.
// Document scroller should snap to its only captured area.
- document_scroller.scrollBy(0, 100);
+ inner_scroller.scrollBy(0,10);
middle_scroller.scrollBy(0, 10);
- assert_equals(inner_scroller.scrollTop, 0);
- assert_equals(middle_scroller.scrollTop, 10);
- assert_equals(document_scroller.scrollTop, 500);
-
- // Inner scroller snaps.
- inner_scroller.scrollBy(0, 10);
+ // Scroll to (0,600), where we would expect the inner snap area to be relative
+ // to the document scroller.
+ document_scroller.scrollTo(0, 600);
assert_equals(inner_scroller.scrollTop, 300);
assert_equals(middle_scroller.scrollTop, 10);
assert_equals(document_scroller.scrollTop, 500);
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-001-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-001-ref.html
deleted file mode 100644
index d4f0281ae48..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-001-ref.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: unsized div</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#target {
- background: lightblue;
- height: 222px;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-001.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-001.html
deleted file mode 100644
index 4d17602a95f..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-001.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: unsized div</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-001-ref.html">
-<meta name="assert" content="intrinsic-size is used to size the div as if it had a single child of this size">
-
-<style>
-#target {
- background: lightblue;
- intrinsic-size: 111px 222px;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-002-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-002-ref.html
deleted file mode 100644
index ab847fc36e5..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-002-ref.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: div with max-content parent</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#border {
- width: max-content;
- border: 1px solid black;
-}
-#target {
- background: lightblue;
- width: 111px;
- height: 222px;
-}
-</style>
-
-<div id=border>
- <div id=target></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-002.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-002.html
deleted file mode 100644
index 55f20949412..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-002.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: div with max-content parent</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-002-ref.html">
-<meta name="assert" content="intrinsic-size is used to size the div, with parent's max-content width respecting it">
-
-<style>
-#border {
- width: max-content;
- border: 1px solid black;
-}
-#target {
- background: lightblue;
- intrinsic-size: 111px 222px;
-}
-</style>
-
-<div id=border>
- <div id=target></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-003-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-003-ref.html
deleted file mode 100644
index 6a2d0514989..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-003-ref.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: width specified</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#target {
- background: lightblue;
- width: 50px;
- height: 222px;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-003.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-003.html
deleted file mode 100644
index 3dd41ba1d2c..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-003.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: width specified</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-003-ref.html">
-<meta name="assert" content="intrinsic-size's width is ignored if width is specified">
-
-<style>
-#target {
- background: lightblue;
- intrinsic-size: 111px 222px;
- width: 50px;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-004-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-004-ref.html
deleted file mode 100644
index 6e710943de9..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-004-ref.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: width is min-content</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#target {
- background: lightblue;
- width: 111px;
- height: 222px;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-004.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-004.html
deleted file mode 100644
index 9cce7ae25fc..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-004.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: width is min-content</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-004-ref.html">
-<meta name="assert" content="div is sized to intrinsic-width if width is min-content">
-
-<style>
-#target {
- background: lightblue;
- intrinsic-size: 111px 222px;
- width: min-content;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-005-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-005-ref.html
deleted file mode 100644
index 950f7190cac..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-005-ref.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: width is max-content</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#target {
- background: lightblue;
- width: 111px;
- height: 222px;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-005.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-005.html
deleted file mode 100644
index 92b777d22e0..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-005.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: width is max-content</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-004-ref.html">
-<meta name="assert" content="div is sized to intrinsic-width if width is max-content">
-
-<style>
-#target {
- background: lightblue;
- intrinsic-size: 111px 222px;
- width: max-content;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-006-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-006-ref.html
deleted file mode 100644
index d545093e2db..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-006-ref.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: unsized div, intrinsic-size is small</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#target {
- background: lightblue;
- height: 6px;
- contain: size;
-}
-</style>
-
-<div id=target>Lorem ipsum</div>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-006.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-006.html
deleted file mode 100644
index 82c6e8eef85..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-006.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: unsized div, intrinsic-size is small</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-006-ref.html">
-<meta name="assert" content="content dimensions are ignored if intrinsic-size is specified">
-
-<style>
-#target {
- background: lightblue;
- intrinsic-size: 5px 6px;
-}
-</style>
-
-<div id=target>Lorem ipsum</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-007-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-007-ref.html
deleted file mode 100644
index 6b3f63685ac..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-007-ref.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: div with border</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#border {
- border: 1px solid blue;
- width: max-content;
-}
-
-#target {
- background: lightblue;
- box-sizing: content-box;
- width: 55px;
- height: 66px;
-
- border-style: solid;
- border-color: black;
- border-width: 2px 3px 5px 7px;
-}
-</style>
-
-<div id=border>
- <div id=target></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-007.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-007.html
deleted file mode 100644
index 85fcae6cd91..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-007.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: div with border</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-007-ref.html">
-<meta name="assert" content="intrinsic-size sizes the content box, not the border box">
-
-<style>
-#border {
- border: 1px solid blue;
- width: max-content;
-}
-
-#target {
- background: lightblue;
- intrinsic-size: 55px 66px;
- border-style: solid;
- border-color: black;
- border-width: 2px 3px 5px 7px;
-}
-</style>
-
-<div id=border>
- <div id=target></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-008-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-008-ref.html
deleted file mode 100644
index 5c6186fd48c..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-008-ref.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: writing modes</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-.border {
- border: 1px solid blue;
- width: max-content;
- margin: 5px;
-}
-
-.box {
- background: lightblue;
- box-sizing: content-box;
- width: 55px;
- height: 66px;
- border-style: solid;
- border-color: black;
- border-width: 2px 3px 5px 7px;
- padding: 11px 13px 17px 19px;
-}
-.verticalrl {
- writing-mode: vertical-rl;
-}
-.verticallr {
- writing-mode: vertical-lr;
-}
-.horizontaltb {
- writing-mode: horizontal-tb;
-}
-</style>
-
-<div class=border><div class="box verticalrl">Lorem</div></div>
-<div class=border><div class="box verticallr">Ipsum</div></div>
-<div class=border><div class="box horizontaltb">Dolor</div></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-008.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-008.html
deleted file mode 100644
index f3b344f6b0a..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-008.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: writing modes</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-008-ref.html">
-<meta name="assert" content="intrinsic-size specifies physical dimensions, and respects writing modes">
-
-<style>
-.border {
- border: 1px solid blue;
- width: max-content;
- margin: 5px;
-}
-
-.box {
- background: lightblue;
- intrinsic-size: 55px 66px;
- border-style: solid;
- border-color: black;
- border-width: 2px 3px 5px 7px;
- padding: 11px 13px 17px 19px;
-}
-.verticalrl {
- writing-mode: vertical-rl;
-}
-.verticallr {
- writing-mode: vertical-lr;
-}
-.horizontaltb {
- writing-mode: horizontal-tb;
-}
-</style>
-
-<div class=border><div class="box verticalrl">Lorem</div></div>
-<div class=border><div class="box verticallr">Ipsum</div></div>
-<div class=border><div class="box horizontaltb">Dolor</div></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-009-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-009-ref.html
deleted file mode 100644
index 223e0c8a33a..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-009-ref.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: select multiple</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-.border {
- border: 1px solid blue;
- width: max-content;
- margin: 5px;
-}
-
-select {
- background: lightblue;
- box-sizing: content-box;
- width: 55px;
- height: 66px;
- overflow: visible;
-}
-</style>
-
-<select multiple></select>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-009.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-009.html
deleted file mode 100644
index 06a02fe78bd..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-009.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: select multiple</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-009-ref.html">
-<meta name="assert" content="intrinsic-size sizes select multiple">
-
-<style>
-.border {
- border: 1px solid blue;
- width: max-content;
- margin: 5px;
-}
-
-select {
- intrinsic-size: 55px 66px;
- background: lightblue;
- overflow: visible;
-}
-</style>
-
-<select multiple></select>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-010-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-010-ref.html
deleted file mode 100644
index eaaa0977f13..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-010-ref.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: flex row</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#flex {
- display: flex;
- flex-direction: row;
- width: 500px;
- height: 100px;
-}
-.item {
- border: 1px solid black;
- box-sizing: content-box;
-}
-#one {
- background: lightblue;
- width: 55px;
- flex-grow: 3;
-}
-#two {
- background: lightgreen;
- width: 66px;
- flex-grow: 2;
-}
-#three {
- background: lightgrey;
- width: 77px;
- flex-grow: 1;
-}
-</style>
-
-<div id=flex>
- <div class=item id=one></div>
- <div class=item id=two></div>
- <div class=item id=three></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-010.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-010.html
deleted file mode 100644
index eea76ffb073..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-010.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: flex row</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-010-ref.html">
-<meta name="assert" content="items are flexed correctly when they are sized by intrinsic-size in a flex row">
-
-<style>
-#flex {
- display: flex;
- flex-direction: row;
- width: 500px;
- height: 100px;
-}
-.item {
- border: 1px solid black;
-}
-#one {
- background: lightblue;
- intrinsic-size: 55px 11px;
- flex-grow: 3;
-}
-#two {
- background: lightgreen;
- intrinsic-size: 66px 22px;
- flex-grow: 2;
-}
-#three {
- background: lightgrey;
- intrinsic-size: 77px 33px;
- flex-grow: 1;
-}
-</style>
-
-<div id=flex>
- <div class=item id=one></div>
- <div class=item id=two></div>
- <div class=item id=three></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-011-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-011-ref.html
deleted file mode 100644
index 29d1f4e2d1a..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-011-ref.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: flex column</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#flex {
- display: flex;
- flex-direction: column;
- width: 100px;
- height: 200px;
-}
-.item {
- border: 1px solid black;
- box-sizing: content-box;
-}
-#one {
- background: lightblue;
- height: 11px;
- flex-grow: 3;
-}
-#two {
- background: lightgreen;
- height: 22px;
- flex-grow: 2;
-}
-#three {
- background: lightgrey;
- height: 33px;
- flex-grow: 1;
-}
-</style>
-
-<div id=flex>
- <div class=item id=one></div>
- <div class=item id=two></div>
- <div class=item id=three></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-011.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-011.html
deleted file mode 100644
index c7888f906f8..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-011.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: flex column</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-011-ref.html">
-<meta name="assert" content="items are flexed correctly when they are sized by intrinsic-size in a flex column">
-
-<style>
-#flex {
- display: flex;
- flex-direction: column;
- width: 100px;
- height: 200px;
-}
-.item {
- border: 1px solid black;
-}
-#one {
- background: lightblue;
- intrinsic-size: 55px 11px;
- flex-grow: 3;
-}
-#two {
- background: lightgreen;
- intrinsic-size: 66px 22px;
- flex-grow: 2;
-}
-#three {
- background: lightgrey;
- intrinsic-size: 77px 33px;
- flex-grow: 1;
-}
-</style>
-
-<div id=flex>
- <div class=item id=one></div>
- <div class=item id=two></div>
- <div class=item id=three></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-012-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-012-ref.html
deleted file mode 100644
index ed9857aa256..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-012-ref.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: replaced content</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#target {
- width: 100px;
- height: 200px;
-}
-</style>
-
-<img id=target src="resources/dice.png"></img>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-012.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-012.html
deleted file mode 100644
index 889b07ace92..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-012.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: replaced content</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-012-ref.html">
-<meta name="assert" content="intrinsic-size overrides replaced content's intrinsic dimensions">
-
-<style>
-#target {
- intrinsic-size: 100px 200px;
-}
-</style>
-
-<img id=target src="resources/dice.png"></img>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-013-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-013-ref.html
deleted file mode 100644
index 9f8334c03d5..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-013-ref.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: intrinsic-size changes</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#border {
- width: max-content;
- border: 1px solid black;
-}
-#border > div {
- width: 77px;
- height: 88px;
-}
-</style>
-
-<div id=border><div id=target></div></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-013.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-013.html
deleted file mode 100644
index 1082100012f..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-013.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!doctype html>
-<html class="reftest-wait">
-<meta charset="utf8">
-<title>CSS intrinsic-size: intrinsic-size changes.</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-013-ref.html">
-<meta name="assert" content="changes in intrinsic-size cause reflow">
-<script src="/common/reftest-wait.js"></script>
-
-<style>
-#border {
- width: max-content;
- border: 1px solid black;
-}
-#border > div {
- intrinsic-size: 55px 66px;
-}
-</style>
-
-<div id=border><div id=target></div></div>
-
-<script>
-function changeStyle() {
- document.getElementById("target").style = "intrinsic-size: 77px 88px;";
- requestAnimationFrame(takeScreenshot);
-}
-
-onload = () => requestAnimationFrame(() => requestAnimationFrame(changeStyle));
-
-</script>
-</html>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-014-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-014-ref.html
deleted file mode 100644
index 66c10824893..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-014-ref.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: fieldset</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-fieldset {
- box-sizing: content-box;
- width: 111px;
- height: 222px;
-}
-</style>
-
-<fieldset>
- <legend>This is a legend</legend>
- This is some content.
-</fieldset>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-014.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-014.html
deleted file mode 100644
index 4dd45a2da40..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-014.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: fieldset</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-014-ref.html">
-<meta name="assert" content="intrinsic-size sizes fieldsets">
-
-<style>
-fieldset {
- width: max-content;
- intrinsic-size: 111px 222px;
-}
-</style>
-
-<fieldset>
- <legend>This is a legend</legend>
- This is some content.
-</fieldset>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-015-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-015-ref.html
deleted file mode 100644
index ae65a3b5ca5..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-015-ref.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>CSS intrinsic-size: inline flex</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-contain-1/#containment-size">
-<style>
-div {
- display: inline-flex;
- border: 5px solid green;
- width: 111px;
- height: 222px;
- box-sizing: content-box;
-}
-</style>
-
-<div></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-015.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-015.html
deleted file mode 100644
index 5ca5e49992e..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-015.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>CSS intrinsic-size: inline flex</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-contain-1/#containment-size">
-<link rel="match" href="intrinsic-size-015-ref.html">
-<meta name="assert" content="intrinsic-size sizes an inline-flex element">
-<style>
-div {
- display: inline-flex;
- border: 5px solid green;
- intrinsic-size: 111px 222px;
- color: transparent;
-}
-</style>
-
-<div>test</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-016-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-016-ref.html
deleted file mode 100644
index f80510f6306..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-016-ref.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: flex row, items with size containment (ref)</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#flex {
- display: flex;
- flex-direction: row;
- width: 500px;
- height: 100px;
-}
-.item {
- border: 1px solid black;
- box-sizing: content-box;
-}
-#one {
- background: lightblue;
- width: 55px;
- flex-grow: 3;
-}
-#two {
- background: lightgreen;
- width: 66px;
- flex-grow: 2;
-}
-#three {
- background: lightgrey;
- width: 77px;
- flex-grow: 1;
-}
-</style>
-
-<div id=flex>
- <div class=item id=one></div>
- <div class=item id=two></div>
- <div class=item id=three></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-016.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-016.html
deleted file mode 100644
index ce6ac5c56e4..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-016.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: flex row, items with size containment</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-016-ref.html">
-<meta name="assert" content="intrinsic-size take 'priority' over size-containment in flex">
-
-<style>
-#flex {
- display: flex;
- flex-direction: row;
- width: 500px;
- height: 100px;
-}
-.item {
- border: 1px solid black;
- contain: size;
-}
-#one {
- background: lightblue;
- intrinsic-size: 55px 11px;
- flex-grow: 3;
-}
-#two {
- background: lightgreen;
- intrinsic-size: 66px 22px;
- flex-grow: 2;
-}
-#three {
- background: lightgrey;
- intrinsic-size: 77px 33px;
- flex-grow: 1;
-}
-</style>
-
-<div id=flex>
- <div class=item id=one></div>
- <div class=item id=two></div>
- <div class=item id=three></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-017-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-017-ref.html
deleted file mode 100644
index 553451a7075..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-017-ref.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: replaced content (vertical-lr)</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-body {
- writing-mode: vertical-lr;
-}
-#target {
- width: 100px;
- height: 200px;
-}
-</style>
-
-<img id=target src="resources/dice.png"></img>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-017.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-017.html
deleted file mode 100644
index 5e2122f34ec..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-017.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: replaced content (vertical-lr)</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-017-ref.html">
-<meta name="assert" content="intrinsic-size specifies physical dimensions on replaced content">
-
-<style>
-body {
- writing-mode: vertical-lr;
-}
-#target {
- intrinsic-size: 100px 200px;
- inline-size: min-content;
- block-size: auto;
-}
-</style>
-
-<img id=target src="resources/dice.png"></img>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-018-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-018-ref.html
deleted file mode 100644
index 17261caa8af..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-018-ref.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: sized div</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#target {
- background: lightblue;
- width: 55px;
- height: 66px;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-018.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-018.html
deleted file mode 100644
index 68931834d63..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-018.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: sized div</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-018-ref.html">
-<meta name="assert" content="width / height ignore intrinsic-size">
-
-<style>
-#target {
- background: lightblue;
- width: 55px;
- height: 66px;
- intrinsic-size: 111px 222px;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-019-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-019-ref.html
deleted file mode 100644
index 8e55d7b02f9..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-019-ref.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: div with fit-content width</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#target {
- background: lightblue;
- width: 111px;
- height: 222px;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-019.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-019.html
deleted file mode 100644
index cae8e0739fe..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-019.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: div with fit-content width</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-019-ref.html">
-<meta name="assert" content="div is sized to intrinsic-width when width is fit-content">
-
-<style>
-#target {
- background: lightblue;
- intrinsic-size: 111px 222px;
- width: fit-content;
-}
-</style>
-
-<div id=target></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-020-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-020-ref.html
deleted file mode 100644
index 1ee5ba8376d..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-020-ref.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: replaced content (min-content)</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#target {
- width: 100px;
- height: 200px;
-}
-</style>
-
-<img id=target src="resources/dice.png"></img>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-020.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-020.html
deleted file mode 100644
index a7286ce1054..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-020.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: replaced content (min-content)</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-020-ref.html">
-<meta name="assert" content="replaced content is sized to intrinsic-width when width is min-content">
-
-<style>
-#target {
- intrinsic-size: 100px 200px;
- inline-size: min-content;
- block-size: auto;
-}
-</style>
-
-<img id=target src="resources/dice.png"></img>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-021-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-021-ref.html
deleted file mode 100644
index 35db43fcf44..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-021-ref.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: flex row, flex height based on children</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#flex {
- display: flex;
- flex-direction: row;
- flex-wrap: wrap;
- align-items: flex-start;
- width: 250px;
-}
-.item {
- border: 1px solid black;
- box-sizing: content-box;
-}
-#one {
- background: lightblue;
- width: 55px;
- height: 21px;
-}
-#two {
- background: lightgreen;
- width: 66px;
- height: 42px;
-}
-#three {
- background: lightgrey;
- align-self: stretch;
- width: 77px;
- height: 63px;
-}
-</style>
-
-<div id=flex>
- <div class=item id=one></div>
- <div class=item id=two></div>
- <div class=item id=three></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-021.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-021.html
deleted file mode 100644
index 04591924f65..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-021.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: flex row, flex height based on children</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-021-ref.html">
-<meta name="assert" content="flex container is sized by the largest intrinsic-height of content, even with align-self: stretch">
-
-<style>
-#flex {
- display: flex;
- flex-direction: row;
- flex-wrap: wrap;
- align-items: flex-start;
- width: 250px;
-}
-.item {
- border: 1px solid black;
-}
-#one {
- background: lightblue;
- intrinsic-size: 55px 21px;
-}
-#two {
- background: lightgreen;
- intrinsic-size: 66px 42px;
-}
-#three {
- background: lightgrey;
- align-self: stretch;
- intrinsic-size: 77px 63px;
-}
-</style>
-
-<div id=flex>
- <div class=item id=one></div>
- <div class=item id=two></div>
- <div class=item id=three></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-022-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-022-ref.html
deleted file mode 100644
index b0df1992834..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-022-ref.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid definite size</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#grid {
- border: 3px solid black;
- display: grid;
- grid-template: 55px 66px / 77px 88px;
- box-sizing: content-box;
- width: 70px;
- height: 80px;
- background: lightblue;
- grid-gap: 5px;
-}
-.item {
- background: lightgreen;
- opacity: 0.5;
- height: 100%;
-}
-</style>
-
-<div id=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-022.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-022.html
deleted file mode 100644
index 3593b9cce38..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-022.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid definite size</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-022-ref.html">
-<meta name="assert" content="grid container is sized by intrinsic-size, even if definite track sizes overflow">
-
-<style>
-#grid {
- border: 3px solid black;
- display: grid;
- grid-template: 55px 66px / 77px 88px;
- intrinsic-size: 70px 80px;
- width: max-content;
- background: lightblue;
- grid-gap: 5px;
-}
-.item {
- background: lightgreen;
- opacity: 0.5;
- height: 100%;
-}
-</style>
-
-<div id=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-023-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-023-ref.html
deleted file mode 100644
index 800e4ae7064..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-023-ref.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid indefinite size</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#grid {
- border: 3px solid black;
- display: grid;
- grid-template: 1fr 2fr / 3fr 4fr;
- box-sizing: content-box;
- width: 70px;
- height: 80px;
- background: lightblue;
- grid-gap: 5px;
-}
-.item {
- background: lightgreen;
- height: 100%;
-}
-</style>
-
-<div id=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-023.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-023.html
deleted file mode 100644
index c64ef66a03f..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-023.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid indefinite size</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-023-ref.html">
-<meta name="assert" content="grid container is sized by intrinsic-size, with fr-tracks using that space">
-
-<style>
-#grid {
- border: 3px solid black;
- display: grid;
- grid-template: 1fr 2fr / 3fr 4fr;
- intrinsic-size: 70px 80px;
- width: max-content;
- background: lightblue;
- grid-gap: 5px;
-}
-.item {
- background: lightgreen;
- height: 100%;
-}
-</style>
-
-<div id=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-024-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-024-ref.html
deleted file mode 100644
index 02ec85a0084..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-024-ref.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid definite size, large size</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#grid {
- border: 3px solid black;
- display: grid;
- grid-template: 55px 66px / 77px 88px;
- box-sizing: content-box;
- width: 200px;
- height: 300px;
- background: lightblue;
- grid-gap: 5px;
-}
-.item {
- background: lightgreen;
- opacity: 0.5;
- height: 100%;
-}
-</style>
-
-<div id=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-024.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-024.html
deleted file mode 100644
index b11317d96b0..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-024.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid definite size, large size</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-024-ref.html">
-<meta name="assert" content="intrinsic-size sizes grid container, even if definite tracks are smaller">
-
-<style>
-#grid {
- border: 3px solid black;
- display: grid;
- grid-template: 55px 66px / 77px 88px;
- intrinsic-size: 200px 300px;
- width: max-content;
- background: lightblue;
- grid-gap: 5px;
-}
-.item {
- background: lightgreen;
- opacity: 0.5;
- height: 100%;
-}
-</style>
-
-<div id=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-025-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-025-ref.html
deleted file mode 100644
index 60d5cc9cd9a..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-025-ref.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid indefinite size, auto-fit</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-.grid {
- border: 3px solid black;
- display: grid;
- width: 70px;
- height: 80px;
- box-sizing: content-box;
- background: lightblue;
- grid-gap: 5px;
-}
-.one {
- grid-template: repeat(auto-fit, 10px) / 3fr 4fr;
-}
-.two {
- grid-template: 1fr 2fr / repeat(auto-fit, 15px);
-}
-.three {
- grid-template: repeat(auto-fit, 10px) / repeat(auto-fit, 15px);
-}
-
-.item {
- background: green;
- height: 100%;
-}
-</style>
-
-<div class="grid one">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid two">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid three">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-025.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-025.html
deleted file mode 100644
index ab9c56fc528..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-025.html
+++ /dev/null
@@ -1,57 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid indefinite size, auto-fit</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-025-ref.html">
-<meta name="assert" content="definite size auto-fit uses intrinsic-size for the available space">
-
-<style>
-.grid {
- border: 3px solid black;
- display: grid;
- intrinsic-size: 70px 80px;
- width: max-content;
- background: lightblue;
- grid-gap: 5px;
-}
-.one {
- grid-template: repeat(auto-fit, 10px) / 3fr 4fr;
-}
-.two {
- grid-template: 1fr 2fr / repeat(auto-fit, 15px);
-}
-.three {
- grid-template: repeat(auto-fit, 10px) / repeat(auto-fit, 15px);
-}
-
-.item {
- background: green;
- height: 100%;
-}
-</style>
-
-<div class="grid one">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid two">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid three">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-026-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-026-ref.html
deleted file mode 100644
index 2e456b43422..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-026-ref.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid auto-fit, min- max- size interactions</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-.grid {
- display: inline-grid;
- border: 1px solid black;
- grid-template-columns: repeat(auto-fit, 100px);
-}
-.one {
- width: 200px;
-}
-.two {
- width: 200px;
-}
-.three {
- width: 200px;
-}
-.four {
- width: 150px;
-}
-.item {
- background: green;
- height: 100%;
-}
-</style>
-
-<p>min-width larger than intrinsic-width:
-<div class="grid one">
- <div class="item">one</div>
- <div class="item">two</div>
-</div>
-
-<p>min-width smaller than intrinsic-width:
-<div class="grid two">
- <div class="item">one</div>
- <div class="item">two</div>
-</div>
-
-<p>max-width ignored since min-width is larger:
-<div class="grid three">
- <div class="item">one</div>
- <div class="item">two</div>
-</div>
-
-<p>min-width shrinks grid since it overrides intrinsic-width:
-<div class="grid four">
- <div class="item">one</div>
- <div class="item">two</div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-026.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-026.html
deleted file mode 100644
index 100f542b783..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-026.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid auto-fit, min- max- size interactions</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-026-ref.html">
-<meta name="assert" content="auto-fit columns, with intrinsic-size interacting with min- and max- width">
-
-<style>
-.grid {
- display: inline-grid;
- border: 1px solid black;
- grid-template-columns: repeat(auto-fit, 100px);
-}
-.one {
- intrinsic-width: 100px;
- min-width: 200px;
-}
-.two {
- intrinsic-width: 200px;
- min-width: 100px;
-}
-.three {
- intrinsic-width: 100px;
- min-width: 200px;
- max-width: 150px;
-}
-.four {
- intrinsic-width: 200px;
- min-width: 100px;
- max-width: 150px;
-}
-.item {
- background: green;
- height: 100%;
-}
-</style>
-
-<p>min-width larger than intrinsic-width:
-<div class="grid one">
- <div class="item">one</div>
- <div class="item">two</div>
-</div>
-
-<p>min-width smaller than intrinsic-width:
-<div class="grid two">
- <div class="item">one</div>
- <div class="item">two</div>
-</div>
-
-<p>max-width ignored since min-width is larger:
-<div class="grid three">
- <div class="item">one</div>
- <div class="item">two</div>
-</div>
-
-<p>min-width shrinks grid since it overrides intrinsic-width:
-<div class="grid four">
- <div class="item">one</div>
- <div class="item">two</div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001-ref.html
deleted file mode 100644
index 99e86d0c38f..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001-ref.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: intrinsic-width auto</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-body > div {
- box-sizing: content-box;
- border: 1px solid black;
- width: max-content;
- height: 111px;
-}
-#one {
- overflow: hidden;
- width: 0px;
-}
-#two {
- overflow-x: scroll;
- height: auto;
-}
-#two > div {
- height: 111px;
-}
-#three {
- height: auto;
-}
-#three > div {
- height: 111px;
-}
-</style>
-
-<div id=one></div>
-<br>
-<div id=two><div></div></div>
-<br>
-<div id=three><div>Lorem ipsum</div></div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001.html
deleted file mode 100644
index 9c2dac07da2..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-001.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: intrinsic-width auto</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-with-auto-001-ref.html">
-<meta name="assert" content="intrinsic-size auto is treated as 0 when overflow is not 'visible'">
-
-<style>
-div {
- width: max-content;
- intrinsic-size: auto 111px;
- border: 1px solid black;
-}
-#one {
- overflow: hidden;
-}
-#two {
- overflow-x: scroll;
-}
-/* We can't have overflow-x: visible without overflow-y not being visible and vice versa
- (see Computed value in https://www.w3.org/TR/css-overflow-3/#overflow-properties).
- Hence, we set both overflow directions.
-*/
-#three {
- overflow: visible;
-}
-</style>
-
-<div id=one>Lorem ipsum</div>
-<br>
-<div id=two>Lorem ipsum</div>
-<br>
-<div id=three>Lorem ipsum</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002-ref.html
deleted file mode 100644
index 70a245469b7..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002-ref.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: intrinsic-width auto</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-body > div {
- box-sizing: content-box;
- border: 1px solid black;
- width: 111px;
-}
-#one {
- overflow: hidden;
- height: 0px;
-}
-#two {
- overflow-y: scroll;
- width: max-content;
-}
-#two > div {
- width: 111px;
-}
-</style>
-
-<div id=one></div>
-<br>
-<div id=two><div></div></div>
-<br>
-<div id=three>Lorem ipsum</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002.html
deleted file mode 100644
index 5b3902455bd..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-002.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: intrinsic-width auto</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-with-auto-002-ref.html">
-<meta name="assert" content="intrinsic-size auto is treated as 0 when overflow is not 'visible'">
-
-<style>
-div {
- width: max-content;
- intrinsic-size: 111px auto;
- border: 1px solid black;
-}
-#one {
- overflow: hidden;
-}
-#two {
- overflow-y: scroll;
-}
-/* We can't have overflow-x: visible without overflow-y not being visible and vice versa
- (see Computed value in https://www.w3.org/TR/css-overflow-3/#overflow-properties).
- Hence, we set both overflow directions.
-*/
-#three {
- overflow: visible;
-}
-</style>
-
-<div id=one>Lorem ipsum</div>
-<br>
-<div id=two>Lorem ipsum</div>
-<br>
-<div id=three>Lorem ipsum</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003-ref.html
deleted file mode 100644
index 246a5bad51e..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003-ref.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: replaced content with auto</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-img {
- border: 1px solid black;
- box-sizing: content-box;
-}
-#target1 {
- height: 200px;
- /* the source img is 320x240, and the intrinsic size only adjusted the height */
- width: 320px;
-}
-#target2 {
- width: 100px;
- /* the source img is 320x240, and the intrinsic size only adjusted the width */
- height: 240px;
-}
-#target3 {
- width: 0px;
- height: 200px;
- overflow: hidden;
-}
-#target4 {
- width: 100px;
- height: 0px;
- overflow: hidden;
-}
-</style>
-
-<img id=target1 src="resources/dice.png"></img>
-<img id=target2 src="resources/dice.png"></img>
-<img id=target3 src="resources/dice.png"></img>
-<img id=target4 src="resources/dice.png"></img>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003.html
deleted file mode 100644
index 07ec0326787..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-auto-003.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: replaced content with auto</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-with-auto-003-ref.html">
-<meta name="assert" content="intrinsic-size auto is treated as 0 when overflow is not 'visible'">
-
-<style>
-img {
- border: 1px solid black;
-}
-#target1 {
- intrinsic-size: auto 200px;
-}
-#target2 {
- intrinsic-size: 100px auto;
-}
-#target3 {
- intrinsic-size: auto 200px;
- overflow: hidden;
-}
-#target4 {
- intrinsic-size: 100px auto;
- overflow: hidden;
-}
-</style>
-
-<img id=target1 src="resources/dice.png"></img>
-<img id=target2 src="resources/dice.png"></img>
-<img id=target3 src="resources/dice.png"></img>
-<img id=target4 src="resources/dice.png"></img>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001-ref.html
deleted file mode 100644
index 39c6abdcf8e..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001-ref.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: intrinsic-width legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#target {
- background: lightblue;
- width: max-content;
- height: 222px;
-}
-</style>
-
-<div id=target>Lorem ipsum</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001.html
deleted file mode 100644
index df662e5c7f1..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-001.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: intrinsic-width legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-with-legacy-001-ref.html">
-<meta name="assert" content="intrinsic-size legacy is treated the same as if it was not specified.">
-
-<style>
-#target {
- background: lightblue;
- width: max-content;
- intrinsic-size: legacy 222px;
-}
-</style>
-
-<div id=target>Lorem ipsum</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002-ref.html
deleted file mode 100644
index 535915a7a7b..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002-ref.html
+++ /dev/null
@@ -1,41 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: flex with legacy intrinsic dimensions</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#flex {
- display: flex;
- flex-direction: column;
- height: 500px;
-}
-.item {
- width: max-content;
-}
-#one {
- background: lightblue;
- flex-grow: 3;
-}
-#one > div {
- height: 222px;
-}
-#two {
- background: lightgreen;
- width: 333px;
- flex-grow: 2;
-}
-#three {
- background: lightgrey;
- flex-grow: 1;
-}
-#three > div {
- height: 444px;
-}
-</style>
-
-<div id=flex>
- <div class=item id=one><div>Lorem ipsum</div></div>
- <div class=item id=two>dolor sit amet</div>
- <div class=item id=three><div>consectetur adipiscing elit</div></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002.html
deleted file mode 100644
index 66d008ce6ce..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-002.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: flex with legacy intrinsic dimensions</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-with-legacy-002-ref.html">
-<meta name="assert" content="intrinsic-size legacy is treated the same as if it was not specified.">
-
-<style>
-#flex {
- display: flex;
- flex-direction: column;
- height: 500px;
-}
-.item {
- width: max-content;
-}
-#one {
- background: lightblue;
- intrinsic-size: legacy 222px;
- flex-grow: 3;
-}
-#two {
- background: lightgreen;
- intrinsic-size: 333px legacy;
- flex-grow: 2;
-}
-#three {
- background: lightgrey;
- intrinsic-size: legacy 444px;
- flex-grow: 1;
-}
-</style>
-
-<div id=flex>
- <div class=item id=one>Lorem ipsum</div>
- <div class=item id=two>dolor sit amet</div>
- <div class=item id=three>consectetur adipiscing elit</div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003-ref.html
deleted file mode 100644
index eb6394fe284..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003-ref.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: select multiple with legacy sizing</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-#one {
- box-sizing: content-box;
- height: 222px;
-}
-#two {
- box-sizing: content-box;
- width: 111px;
- overflow: visible;
-}
-</style>
-
-<select multiple id=one></select>
-<select multiple id=two></select>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003.html
deleted file mode 100644
index 90e4f53bf64..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-003.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: select multiple with legacy sizing</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-with-legacy-003-ref.html">
-<meta name="assert" content="intrinsic-size legacy is treated the same as if it was not specified.">
-
-<style>
-#one {
- intrinsic-size: legacy 222px;
-}
-#two {
- intrinsic-size: 111px legacy;
- overflow: visible;
-}
-</style>
-
-<select multiple id=one></select>
-<select multiple id=two></select>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004-ref.html
deleted file mode 100644
index d5e7c9ff9bb..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004-ref.html
+++ /dev/null
@@ -1,25 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: replaced content with legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-img {
- border: 1px solid black;
- box-sizing: content-box;
-}
-#target1 {
- height: 200px;
- /* the source img is 320x240, and the intrinsic size only adjusted the height */
- width: 320px;
-}
-#target2 {
- width: 100px;
- /* the source img is 320x240, and the intrinsic size only adjusted the width */
- height: 240px;
-}
-</style>
-
-<img id=target1 src="resources/dice.png"></img>
-<img id=target2 src="resources/dice.png"></img>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004.html
deleted file mode 100644
index dfeed45d73b..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-004.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: replaced content with legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-with-legacy-004-ref.html">
-<meta name="assert" content="intrinsic-size legacy is treated the same as if it was not specified.">
-
-<style>
-img {
- border: 1px solid black;
-}
-#target1 {
- intrinsic-size: legacy 200px;
-}
-#target2 {
- intrinsic-size: 100px legacy;
-}
-</style>
-
-<img id=target1 src="resources/dice.png"></img>
-<img id=target2 src="resources/dice.png"></img>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005-ref.html
deleted file mode 100644
index c23984f5f1a..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005-ref.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid definite size with legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-.grid {
- border: 3px solid black;
- display: grid;
- grid-template: 55px 66px / 77px 88px;
- box-sizing: content-box;
- width: 70px;
- height: 80px;
- background: lightblue;
- grid-gap: 5px;
-}
-.item {
- background: lightgreen;
- opacity: 0.5;
- height: 100%;
-}
-</style>
-
-<div class=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005.html
deleted file mode 100644
index baf9bef3aca..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-005.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid definite size with legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-with-legacy-005-ref.html">
-<meta name="assert" content="intrinsic-size legacy is treated the same as if it was not specified.">
-
-<style>
-.grid {
- border: 3px solid black;
- display: grid;
- grid-template: 55px 66px / 77px 88px;
- background: lightblue;
- grid-gap: 5px;
-}
-.one {
- intrinsic-size: legacy 80px;
- width: 70px;
-}
-.two {
- intrinsic-size: 70px legacy;
- height: 80px;
- width: min-content;
-}
-.item {
- background: lightgreen;
- opacity: 0.5;
- height: 100%;
-}
-</style>
-
-<div class="grid one">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid two">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006-ref.html
deleted file mode 100644
index 9b9e25d3c8d..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006-ref.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid indefinite size with legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-.grid {
- border: 3px solid black;
- display: grid;
- grid-template: 1fr 2fr / 3fr 4fr;
- box-sizing: content-box;
- width: 70px;
- height: 80px;
- background: lightblue;
- grid-gap: 5px;
-}
-.item {
- background: lightgreen;
- height: 100%;
-}
-</style>
-
-<div class=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006.html
deleted file mode 100644
index 41ef1fddc19..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-006.html
+++ /dev/null
@@ -1,43 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid indefinite size with legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-with-legacy-006-ref.html">
-<meta name="assert" content="intrinsic-size legacy is treated the same as if it was not specified.">
-
-<style>
-.grid {
- border: 3px solid black;
- display: grid;
- grid-template: 1fr 2fr / 3fr 4fr;
- background: lightblue;
- grid-gap: 5px;
-}
-.one {
- intrinsic-size: legacy 80px;
- width: 70px;
-}
-.two {
- intrinsic-size: 70px legacy;
- width: min-content;
- height: 80px;
-}
-.item {
- background: lightgreen;
- height: 100%;
-}
-</style>
-
-<div class="grid one">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid two">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007-ref.html
deleted file mode 100644
index 6894b4643ad..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007-ref.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid definite size, large size with legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-.grid {
- border: 3px solid black;
- display: grid;
- grid-template: 55px 66px / 77px 88px;
- box-sizing: content-box;
- width: 200px;
- height: 300px;
- background: lightblue;
- grid-gap: 5px;
-}
-.item {
- background: lightgreen;
- height: 100%;
-}
-</style>
-
-<div class=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class=grid>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007.html
deleted file mode 100644
index df2c57b5d8a..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-007.html
+++ /dev/null
@@ -1,43 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid definite size, large size with legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-with-legacy-007-ref.html">
-<meta name="assert" content="intrinsic-size legacy is treated the same as if it was not specified.">
-
-<style>
-.grid {
- border: 3px solid black;
- display: grid;
- grid-template: 55px 66px / 77px 88px;
- background: lightblue;
- grid-gap: 5px;
-}
-.one {
- intrinsic-size: legacy 300px;
- width: 200px;
-}
-.two {
- intrinsic-size: 200px legacy;
- width: max-content;
- height: 300px;
-}
-.item {
- background: lightgreen;
- height: 100%;
-}
-</style>
-
-<div class="grid one">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid two">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008-ref.html
deleted file mode 100644
index 5cce1902759..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008-ref.html
+++ /dev/null
@@ -1,80 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid indefinite size, auto-fit with legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-
-<style>
-.grid {
- border: 3px solid black;
- display: grid;
- width: 70px;
- height: 80px;
- box-sizing: content-box;
- background: lightblue;
- grid-gap: 5px;
-}
-.one {
- grid-template: repeat(auto-fit, 10px) / 3fr 4fr;
-}
-.two {
- grid-template: 1fr 2fr / repeat(auto-fit, 15px);
-}
-.three {
- grid-template: repeat(auto-fit, 10px) / repeat(auto-fit, 15px);
-}
-
-.item {
- background: green;
- height: 100%;
-}
-</style>
-
-<div class="grid one">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid two">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid three">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid one">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid two">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid three">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008.html
deleted file mode 100644
index 45b8fbdd244..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/intrinsic-size-with-legacy-008.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>CSS intrinsic-size: grid indefinite size, auto-fit with legacy</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<link rel="match" href="intrinsic-size-with-legacy-008-ref.html">
-<meta name="assert" content="intrinsic-size legacy is treated the same as if it was not specified.">
-
-<style>
-.grid {
- border: 3px solid black;
- display: grid;
- background: lightblue;
- grid-gap: 5px;
-}
-.one {
- grid-template: repeat(auto-fit, 10px) / 3fr 4fr;
-}
-.two {
- grid-template: 1fr 2fr / repeat(auto-fit, 15px);
-}
-.three {
- grid-template: repeat(auto-fit, 10px) / repeat(auto-fit, 15px);
-}
-.width {
- intrinsic-size: 70px legacy;
- width: max-content;
- height: 80px;
-}
-.height {
- intrinsic-size: legacy 80px;
- width: 70px;
-}
-.item {
- background: green;
- height: 100%;
-}
-</style>
-
-<div class="grid one width">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid two width">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid three width">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid one height">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid two height">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
-<div class="grid three height">
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
- <div class=item></div>
-</div>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-computed.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-computed.html
deleted file mode 100644
index e9a073ca2aa..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-computed.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-block-size with computed values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-block-size supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/computed-testcommon.js"></script>
-</head>
-<body>
-<div id=target></div>
-<div id=scratch></div>
-<script>
-
-function length_ref(length) {
- document.getElementById("scratch").style.width = length;
- return getComputedStyle(document.getElementById("scratch")).getPropertyValue("width");
-}
-
-test_computed_value("intrinsic-block-size", "auto");
-test_computed_value("intrinsic-block-size", "legacy");
-test_computed_value("intrinsic-block-size", "1px");
-test_computed_value("intrinsic-block-size", "2vw", length_ref("2vw"));
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-invalid.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-invalid.html
deleted file mode 100644
index 1b6cba20f88..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-invalid.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-block-size with invalid values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-block-size supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-</head>
-<body>
-<script>
-test_invalid_value("intrinsic-block-size", "none");
-test_invalid_value("intrinsic-block-size", "10%");
-test_invalid_value("intrinsic-block-size", "-1px");
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-valid.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-valid.html
deleted file mode 100644
index b34c73b230f..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-block-size-valid.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-block-size with valid values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-block-size supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-</head>
-<body>
-<script>
-test_valid_value("intrinsic-block-size", "auto");
-test_valid_value("intrinsic-block-size", "legacy");
-test_valid_value("intrinsic-block-size", "1px");
-test_valid_value("intrinsic-block-size", "2vw");
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-computed.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-computed.html
deleted file mode 100644
index 6f95274c637..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-computed.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-height with computed values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-height supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/computed-testcommon.js"></script>
-</head>
-<body>
-<div id=target></div>
-<div id=scratch></div>
-<script>
-
-function length_ref(length) {
- document.getElementById("scratch").style.width = length;
- return getComputedStyle(document.getElementById("scratch")).getPropertyValue("width");
-}
-
-test_computed_value("intrinsic-height", "auto");
-test_computed_value("intrinsic-height", "legacy");
-test_computed_value("intrinsic-height", "1px");
-test_computed_value("intrinsic-height", "2vw", length_ref("2vw"));
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-invalid.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-invalid.html
deleted file mode 100644
index 1f801124a2b..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-invalid.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-height with invalid values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-height supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-</head>
-<body>
-<script>
-test_invalid_value("intrinsic-height", "none");
-test_invalid_value("intrinsic-height", "10%");
-test_invalid_value("intrinsic-height", "-1px");
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-valid.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-valid.html
deleted file mode 100644
index e4614762118..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-height-valid.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-height with valid values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-height supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-</head>
-<body>
-<script>
-test_valid_value("intrinsic-height", "auto");
-test_valid_value("intrinsic-height", "legacy");
-test_valid_value("intrinsic-height", "1px");
-test_valid_value("intrinsic-height", "2vw");
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-computed.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-computed.html
deleted file mode 100644
index c53a77e5631..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-computed.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-inline-size with computed values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-inline-size supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/computed-testcommon.js"></script>
-</head>
-<body>
-<div id=target></div>
-<div id=scratch></div>
-<script>
-
-function length_ref(length) {
- document.getElementById("scratch").style.width = length;
- return getComputedStyle(document.getElementById("scratch")).getPropertyValue("width");
-}
-
-test_computed_value("intrinsic-inline-size", "auto");
-test_computed_value("intrinsic-inline-size", "legacy");
-test_computed_value("intrinsic-inline-size", "1px");
-test_computed_value("intrinsic-inline-size", "2vw", length_ref("2vw"));
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-invalid.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-invalid.html
deleted file mode 100644
index 6ad224d11d3..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-invalid.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-inline-size with invalid values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-inline-size supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-</head>
-<body>
-<script>
-test_invalid_value("intrinsic-inline-size", "none");
-test_invalid_value("intrinsic-inline-size", "10%");
-test_invalid_value("intrinsic-inline-size", "-1px");
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-valid.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-valid.html
deleted file mode 100644
index ad5aef95dca..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-inline-size-valid.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-inline-size with valid values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-inline-size supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-</head>
-<body>
-<script>
-test_valid_value("intrinsic-inline-size", "auto");
-test_valid_value("intrinsic-inline-size", "legacy");
-test_valid_value("intrinsic-inline-size", "1px");
-test_valid_value("intrinsic-inline-size", "2vw");
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-computed.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-computed.html
deleted file mode 100644
index 29be33d4a3d..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-computed.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-size with computed values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-size supports the full grammar '[auto | legacy | <length>]{1,2}'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/computed-testcommon.js"></script>
-</head>
-<body>
-<div id=target></div>
-<div id=scratch></div>
-<script>
-
-function length_ref(length) {
- document.getElementById("scratch").style.width = length;
- return getComputedStyle(document.getElementById("scratch")).getPropertyValue("width");
-}
-
-test_computed_value("intrinsic-size", "auto");
-test_computed_value("intrinsic-size", "legacy");
-test_computed_value("intrinsic-size", "legacy auto");
-test_computed_value("intrinsic-size", "auto legacy");
-test_computed_value("intrinsic-size", "1px");
-test_computed_value("intrinsic-size", "1px auto");
-test_computed_value("intrinsic-size", "1px legacy");
-test_computed_value("intrinsic-size", "auto 1px");
-test_computed_value("intrinsic-size", "legacy 1px");
-test_computed_value("intrinsic-size", "2vw 3px", length_ref("2vw") + " 3px");
-test_computed_value("intrinsic-size", "2px 3vh", "2px " + length_ref("3vh"));
-test_computed_value("intrinsic-size", "5px 5px", "5px");
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-invalid.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-invalid.html
deleted file mode 100644
index b4cb2dbffd2..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-invalid.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-size with invalid values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-size supports the full grammar '[auto | legacy | <length>]{1,2}'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-</head>
-<body>
-<script>
-test_invalid_value("intrinsic-size", "auto legacy auto");
-test_invalid_value("intrinsic-size", "10%");
-test_invalid_value("intrinsic-size", "2em 3px 5px");
-test_invalid_value("intrinsic-size", "1px 1%");
-test_invalid_value("intrinsic-size", "1px auto auto");
-test_invalid_value("intrinsic-size", "-1px");
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-sets-computed-dimensions.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-sets-computed-dimensions.html
deleted file mode 100644
index e70c3179223..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-sets-computed-dimensions.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-size sets component dimensions.</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-size sets component dimensions.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/computed-testcommon.js"></script>
-<style>
-#horizontal-target {
- writing-mode: horizontal-tb;
-}
-#vertical-target {
- writing-mode: vertical-rl;
-}
-</style>
-</head>
-<body>
-<div id=horizontal-target></div>
-<div id=vertical-target></div>
-<script>
-
-const horizontal = document.getElementById("horizontal-target");
-const vertical = document.getElementById("vertical-target");
-
-function runTest() {
- const horizontal_style = getComputedStyle(horizontal);
- const vertical_style = getComputedStyle(vertical);
- test(() => {
- assert_equals(horizontal_style["intrinsic-width"], "1px");
- assert_equals(vertical_style["intrinsic-width"], "1px");
- }, 'intrinsic-width set correctly');
-
- test(() => {
- assert_equals(horizontal_style["intrinsic-height"], "2px");
- assert_equals(vertical_style["intrinsic-height"], "2px");
- }, 'intrinsic-height set correctly');
-
- test(() => {
- assert_equals(horizontal_style["intrinsic-inline-size"], "1px");
- assert_equals(vertical_style["intrinsic-inline-size"], "2px");
- }, 'intrinsic-inline-size set correctly');
-
- test(() => {
- assert_equals(horizontal_style["intrinsic-block-size"], "2px");
- assert_equals(vertical_style["intrinsic-block-size"], "1px");
- }, 'intrinsic-block-size set correctly');
-}
-
-window.onload = () => {
- horizontal.style["intrinsic-size"] = "1px 2px";
- vertical.style["intrinsic-size"] = "1px 2px";
- runTest();
-};
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-valid.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-valid.html
deleted file mode 100644
index 7ab13c7d798..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-size-valid.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-size with valid values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-size supports the full grammar '[auto | legacy | <length>]{1,2}'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-</head>
-<body>
-<script>
-test_valid_value("intrinsic-size", "auto");
-test_valid_value("intrinsic-size", "legacy");
-test_valid_value("intrinsic-size", "auto legacy");
-test_valid_value("intrinsic-size", "auto auto", "auto");
-test_valid_value("intrinsic-size", "legacy legacy", "legacy");
-test_valid_value("intrinsic-size", "1px");
-test_valid_value("intrinsic-size", "2em 3px");
-test_valid_value("intrinsic-size", "5px 5px", "5px");
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-computed.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-computed.html
deleted file mode 100644
index 08602e5347f..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-computed.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-width with computed values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-width supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/computed-testcommon.js"></script>
-</head>
-<body>
-<div id=target></div>
-<div id=scratch></div>
-<script>
-
-function length_ref(length) {
- document.getElementById("scratch").style.width = length;
- return getComputedStyle(document.getElementById("scratch")).getPropertyValue("width");
-}
-
-test_computed_value("intrinsic-width", "auto");
-test_computed_value("intrinsic-width", "legacy");
-test_computed_value("intrinsic-width", "1px");
-test_computed_value("intrinsic-width", "2vw", length_ref("2vw"));
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-invalid.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-invalid.html
deleted file mode 100644
index b89f6567ae2..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-invalid.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-width with invalid values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-width supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-</head>
-<body>
-<script>
-test_invalid_value("intrinsic-width", "none");
-test_invalid_value("intrinsic-width", "10%");
-test_invalid_value("intrinsic-width", "-1px");
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-valid.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-valid.html
deleted file mode 100644
index e2d23eabe5d..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/parsing/intrinsic-width-valid.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>CSS Intrinsic Size Test: intrinsic-width with valid values</title>
-<link rel="author" title="Vladimir Levin" href="mailto:vmpstr@chromium.org">
-<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#intrinsic-size-override">
-<meta name="assert" content="intrinsic-width supports the full grammar 'auto | legacy | <length>'.">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/css/support/parsing-testcommon.js"></script>
-</head>
-<body>
-<script>
-test_valid_value("intrinsic-width", "auto");
-test_valid_value("intrinsic-width", "legacy");
-test_valid_value("intrinsic-width", "1px");
-test_valid_value("intrinsic-width", "2vw");
-</script>
-</body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/resources/dice.png b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/resources/dice.png
deleted file mode 100644
index c82d01517cd..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size/resources/dice.png
+++ /dev/null
Binary files differ
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/percentage-resolution-001-ref.html b/tests/wpt/web-platform-tests/css/css-sizing/percentage-resolution-001-ref.html
deleted file mode 100644
index a4e7f1ece46..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/percentage-resolution-001-ref.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>CSS Sizing: Test that percentages don't resolve against min-content</title>
-<link rel="author" title="Google Inc." href="https://www.google.com/" />
-
-<style>
-.inner {
- background-color: green;
-}
-</style>
-
-<body>
- <div class="outer">
- <div class="inner">This should be a single-line green background with no red visible.</div>
- </div>
-</body>
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/percentage-resolution-001.html b/tests/wpt/web-platform-tests/css/css-sizing/percentage-resolution-001.html
deleted file mode 100644
index b2cc727ca7a..00000000000
--- a/tests/wpt/web-platform-tests/css/css-sizing/percentage-resolution-001.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>CSS Sizing: Test that percentages don't resolve against min-content</title>
-<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#percentage-sizing" />
-<link rel="author" title="Google Inc." href="https://www.google.com/" />
-<link rel="match" href="percentage-resolution-001-ref.html" />
-
-<style>
-.outer {
- min-height: min-content;
- max-height: min-content;
- height: 500px;
- background-color: red;
-}
-
-.inner {
- height: 50%;
- background-color: green;
-}
-</style>
-
-<body>
- <div class="outer">
- <div class="inner">This should be a single-line green background with no red visible.</div>
- </div>
-</body>
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-overflow-001.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-overflow-001.html
index 4154e5e1181..948b728254a 100644
--- a/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-overflow-001.html
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-overflow-001.html
@@ -9,7 +9,6 @@ div {
font-size: 10px;
font-family: Ahem;
width: 5.1ch;
- border: 1px solid blue;
}
</style>
<body>
@@ -19,7 +18,4 @@ div {
<div>1234&shy;xx</div>
<div>12345&shy;xx</div>
<div>123456&shy;xx</div>
-
- <div style="width: 10ch"><span>ren&shy;for&shy;cer</span>99999</div>
- <div><span>00&shy;1</span>222</div>
</body>
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-overflow-001-ref.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-overflow-001-ref.html
index db002ce45d8..08d521d3396 100644
--- a/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-overflow-001-ref.html
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-overflow-001-ref.html
@@ -4,8 +4,6 @@
div {
font-size: 10px;
font-family: Ahem;
- width: 5.1ch;
- border: 1px solid blue;
}
</style>
<body>
@@ -15,7 +13,4 @@ div {
<div>1234-<br>xx</div>
<div>12345-<br>xx</div>
<div>123456-<br>xx</div>
-
- <div style="width: 10ch">renfor-<br>cer99999</div>
- <div>00-<br>1222</div>
</body>
diff --git a/tests/wpt/web-platform-tests/css/css-values/animations/calc-interpolation.html b/tests/wpt/web-platform-tests/css/css-values/animations/calc-interpolation.html
new file mode 100644
index 00000000000..de76386e0da
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-values/animations/calc-interpolation.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>calc interpolation</title>
+<link rel="help" href="https://drafts.csswg.org/css-values-3/#calc-notation">
+<meta name="assert" content="calc supports animation by computed value">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/interpolation-testcommon.js"></script>
+
+<style>
+.container {
+ position: relative;
+ width: 50px;
+ height: 50px;
+ border: black solid 2px;
+ display: inline-block;
+ margin-left: 10px;
+ margin-right: 10px;
+ background-color: white;
+}
+.target {
+ position: absolute;
+ width: 10px;
+ height: 50px;
+ background-color: black;
+}
+.expected {
+ background-color: green;
+}
+</style>
+
+<body>
+<template id="target-template">
+ <div class="container">
+ <div class="target"></div>
+ </div>
+</template>
+<script>
+test_interpolation({
+ property: 'left',
+ from: 'calc(50% - 25px)',
+ to: 'calc(100% - 10px)'
+}, [
+ {at: -0.25, expect: '-10px'},
+ {at: 0, expect: '0px'},
+ {at: 0.25, expect: '10px'},
+ {at: 0.5, expect: '20px'},
+ {at: 0.75, expect: '30px'},
+ {at: 1, expect: '40px'},
+ {at: 1.25, expect: '50px'}
+]);
+
+test_interpolation({
+ property: 'text-indent',
+ from: 'calc(50% - 25px)',
+ to: 'calc(100% - 10px)'
+}, [
+ {at: -0.25, expect: 'calc(((50% - 25px) * 1.25) + ((100% - 10px) * -0.25))'},
+ {at: 0, expect: 'calc(50% - 25px)'},
+ {at: 0.25, expect: 'calc(((50% - 25px) * 0.75) + ((100% - 10px) * 0.25))'},
+ {at: 0.5, expect: 'calc(((50% - 25px) * 0.5) + ((100% - 10px) * 0.5))'},
+ {at: 0.75, expect: 'calc(((50% - 25px) * 0.25) + ((100% - 10px) * 0.75))'},
+ {at: 1, expect: 'calc(100% - 10px)'},
+ {at: 1.25, expect: 'calc(((50% - 25px) * -0.25) + ((100% - 10px) * 1.25))'}
+]);
+
+test_interpolation({
+ property: 'text-indent',
+ from: '0em',
+ to: '100px'
+}, [
+ {at: -0.25, expect: '-25px'},
+ {at: 0, expect: '0em'},
+ {at: 0.25, expect: '25px'},
+ {at: 0.5, expect: '50px'},
+ {at: 0.75, expect: '75px'},
+ {at: 1, expect: '100px'},
+ {at: 1.25, expect: '125px'}
+]);
+
+test_interpolation({
+ property: 'text-indent',
+ from: '0%',
+ to: '100px'
+}, [
+ {at: -0.25, expect: 'calc(0% + -25px)'},
+ {at: 0, expect: '0%'},
+ {at: 0.25, expect: 'calc(0% + 25px)'},
+ {at: 0.5, expect: 'calc(0% + 50px)'},
+ {at: 0.75, expect: 'calc(0% + 75px)'},
+ {at: 1, expect: 'calc(0% + 100px)'},
+ {at: 1.25, expect: 'calc(0% + 125px)'}
+]);
+
+</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/css/support/interpolation-testcommon.js b/tests/wpt/web-platform-tests/css/support/interpolation-testcommon.js
index 3c9754c6941..d1cb7cfbeb0 100644
--- a/tests/wpt/web-platform-tests/css/support/interpolation-testcommon.js
+++ b/tests/wpt/web-platform-tests/css/support/interpolation-testcommon.js
@@ -18,6 +18,7 @@
var cssAnimationsInterpolation = {
name: 'CSS Animations',
+ isSupported: function() {return true;},
supportsProperty: function() {return true;},
supportsValue: function() {return true;},
setup: function() {},
@@ -43,6 +44,7 @@
var cssTransitionsInterpolation = {
name: 'CSS Transitions',
+ isSupported: function() {return true;},
supportsProperty: function() {return true;},
supportsValue: function() {return true;},
setup: function(property, from, target) {
@@ -64,6 +66,7 @@
var cssTransitionAllInterpolation = {
name: 'CSS Transitions with transition: all',
+ isSupported: function() {return true;},
// The 'all' value doesn't cover custom properties.
supportsProperty: function(property) {return property.indexOf('--') !== 0;},
supportsValue: function() {return true;},
@@ -86,6 +89,7 @@
var webAnimationsInterpolation = {
name: 'Web Animations',
+ isSupported: function() {return 'animate' in Element.prototype;},
supportsProperty: function(property) {return true;},
supportsValue: function(value) {return value !== '';},
setup: function() {},
@@ -96,6 +100,10 @@
this.interpolateComposite(property, from, 'replace', to, 'replace', at, target);
},
interpolateComposite: function(property, from, fromComposite, to, toComposite, at, target) {
+ // This case turns into a test error later on.
+ if (!this.isSupported())
+ return;
+
// Convert standard properties to camelCase.
if (!property.startsWith('--')) {
for (var i = property.length - 2; i > 0; --i) {
@@ -272,6 +280,8 @@
target.measure = function() {
var expectedValue = getComputedStyle(expectedTargetContainer.target).getPropertyValue(property);
test(function() {
+ assert_true(interpolationMethod.isSupported(), `${interpolationMethod.name} should be supported`);
+
if (from && from !== neutralKeyframe) {
assert_true(CSS.supports(property, from), '\'from\' value should be supported');
}
diff --git a/tests/wpt/web-platform-tests/docs/writing-tests/reftests.md b/tests/wpt/web-platform-tests/docs/writing-tests/reftests.md
index 845d6f8dc4f..6dbe3a1aa9d 100644
--- a/tests/wpt/web-platform-tests/docs/writing-tests/reftests.md
+++ b/tests/wpt/web-platform-tests/docs/writing-tests/reftests.md
@@ -96,16 +96,31 @@ leaf nodes.)
## Controlling When Comparison Occurs
-By default reftest screenshots are taken after the `load` event has
-fired, and web fonts (if any) are loaded. In some cases it is
-necessary to delay the screenshot later than this, for example because
-some DOM manipulation is required to set up the desired test
-conditions. To enable this, the test may have a `class="reftest-wait"`
-attribute specified on the root element. This will cause the
-screenshot to be delayed until the `load` event has fired and the
-`reftest-wait` class has been removed from the root element. Note that
-in neither case is exact timing of the screenshot guaranteed: it is
-only guaranteed to be after those events.
+By default, reftest screenshots are taken after the following
+conditions are met:
+
+* The `load` event has fired
+* Web fonts (if any) are loaded
+* Pending paints have completed
+
+In some cases it is necessary to delay the screenshot later than this,
+for example because some DOM manipulation is required to set up the
+desired test conditions. To enable this, the test may have a
+`class="reftest-wait"` attribute specified on the root element. In
+this case the harness will run the following sequence of steps:
+
+* Wait for the `load` event to fire and fonts to load.
+* Wait for pending paints to complete.
+* Fire an event named `TestRendered` at the root element, with the
+ `bubbles` attribute set to true.
+* Wait for the `reftest-wait` class to be removed from the root
+ element.
+* Wait for pending paints to complete.
+* Screenshot the viewport.
+
+The `TestRendered` event provides a hook for tests to make
+modifications to the test document that are not batched into the
+initial layout/paint.
## Fuzzy Matching
diff --git a/tests/wpt/web-platform-tests/document-policy/echo-policy-nested.html b/tests/wpt/web-platform-tests/document-policy/echo-policy-nested.html
new file mode 100644
index 00000000000..d572dcb0465
--- /dev/null
+++ b/tests/wpt/web-platform-tests/document-policy/echo-policy-nested.html
@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<body>
+<script>
+// This document will contain an iframe which will either host echo-policy.py,
+// or will host another copy of this document, with the nesting level reduced
+// by one. This way, an arbitrary nesting depth can be achieved, with the
+// final inner-most frame reporting back the advertised required policy.
+
+// The 'id' URL parameter will be passed to the nested document.
+// The 'level' URL paramater will be reduced by 1 and passed to the nested
+// document if it was at least 1. (If it was 0, then echo-policy.py will be
+// nested instead, and the level parameter will not be passed.)
+
+// This document is served with a Document Policy header that should satisfy
+// any requests that include a required policy for the
+// 'unoptimized-lossless-images' feature.
+const params = new URLSearchParams(window.location.search);
+const id = params.get('id');
+const level = params.get('level');
+
+const iframe = document.createElement('iframe');
+var hostname;
+if (level >= 1) {
+ params.set('level',level-1);
+ hostname = document.location.pathname + "?" + params.toString();
+} else {
+ params.delete('level');
+ hostname = "/document-policy/echo-policy.py?" + params.toString();
+}
+iframe.src = hostname;
+document.body.appendChild(iframe);
+</script>
diff --git a/tests/wpt/web-platform-tests/document-policy/echo-policy-nested.html.headers b/tests/wpt/web-platform-tests/document-policy/echo-policy-nested.html.headers
new file mode 100644
index 00000000000..fe839ef5bb6
--- /dev/null
+++ b/tests/wpt/web-platform-tests/document-policy/echo-policy-nested.html.headers
@@ -0,0 +1 @@
+Document-Policy: unoptimized-lossless-images;bpp=0.0
diff --git a/tests/wpt/web-platform-tests/document-policy/echo-policy.py b/tests/wpt/web-platform-tests/document-policy/echo-policy.py
new file mode 100644
index 00000000000..52a2bf97124
--- /dev/null
+++ b/tests/wpt/web-platform-tests/document-policy/echo-policy.py
@@ -0,0 +1,28 @@
+# This will echo the 'Sec-Required-Document-Policy' request header in the body
+# of the response, as well as in the 'Document-Policy' response header (to
+# ensure the response is loaded by a user agent which is implementing document
+# policy.)
+import json
+
+def main(request, response):
+ msg = {}
+ headers = [('Content-Type', 'text/html')]
+
+ srdp = request.headers.get('Sec-Required-Document-Policy')
+ if srdp:
+ msg['requiredPolicy'] = srdp
+ headers.append(('Document-Policy', srdp))
+
+ frameId = request.GET.first('id',None)
+ if frameId:
+ msg['id'] = frameId
+
+ content = """<!DOCTYPE html>
+<script>
+top.postMessage(%s, "*");
+</script>
+%s
+""" % (json.dumps(msg), srdp)
+
+ return (200, 'OK'), headers, content
+
diff --git a/tests/wpt/web-platform-tests/document-policy/required-policy/document-policy.html b/tests/wpt/web-platform-tests/document-policy/required-policy/document-policy.html
new file mode 100644
index 00000000000..d6bf3e9a6d4
--- /dev/null
+++ b/tests/wpt/web-platform-tests/document-policy/required-policy/document-policy.html
@@ -0,0 +1,54 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>Test advertised required document policy</title>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script> </head>
+ <body>
+ <h1>Test advertised required document policy</h1>
+<script>
+// The top-level document has a document policy, but not a required document
+// policy. A request for a document in a frame should not include a
+// `Sec-Required-Document-Policy` header, unless that frame requires it
+// explicitly through the `policy` attribute.
+
+callbacks = {};
+
+window.addEventListener('message', ev => {
+ var id = ev.data.id;
+ if (id && callbacks[id]) {
+ callbacks[id](ev.data.requiredPolicy || null);
+ }
+});
+
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy.py?id=1";
+ callbacks["1"] = t.step_func_done(result => {
+ assert_equals(result, null);
+ });
+ document.body.appendChild(iframe);
+}, "Top-level document's policy should not affect child frame requests");
+
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy.py?id=2";
+ iframe.policy = "no-font-display-late-swap";
+ callbacks["2"] = t.step_func_done(result => {
+ assert_equals(result, "no-font-display-late-swap");
+ });
+ document.body.appendChild(iframe);
+}, "Child frame can have a required policy independent of the parent document.");
+
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy.py?id=3";
+ iframe.policy = "unoptimized-lossless-images;bpp=4";
+ callbacks["3"] = t.step_func_done(result => {
+ assert_equals(result, "unoptimized-lossless-images;bpp=4");
+ });
+ document.body.appendChild(iframe);
+}, "Child frame can have a required policy which is less strict than the parent document's policy.");
+ </script>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/document-policy/required-policy/document-policy.html.headers b/tests/wpt/web-platform-tests/document-policy/required-policy/document-policy.html.headers
new file mode 100644
index 00000000000..d321c265d15
--- /dev/null
+++ b/tests/wpt/web-platform-tests/document-policy/required-policy/document-policy.html.headers
@@ -0,0 +1 @@
+Document-Policy: unoptimized-lossless-images;bpp=1.1
diff --git a/tests/wpt/web-platform-tests/document-policy/required-policy/no-document-policy.html b/tests/wpt/web-platform-tests/document-policy/required-policy/no-document-policy.html
new file mode 100644
index 00000000000..9af2e51c2ac
--- /dev/null
+++ b/tests/wpt/web-platform-tests/document-policy/required-policy/no-document-policy.html
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>Test advertised required document policy</title>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script> </head>
+ <body>
+ <h1>Test advertised required document policy</h1>
+<script>
+// The top-level document does not have any document-policy-related headers.
+// A request for a document in a frame should not include a
+// `Sec-Required-Document-Policy` header, unless that frame requires it
+// explicitly through the `policy` attribute.
+
+callbacks = {};
+
+window.addEventListener('message', ev => {
+ var id = ev.data.id;
+ if (id && callbacks[id]) {
+ callbacks[id](ev.data.requiredPolicy || null);
+ }
+});
+
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy.py?id=1";
+ callbacks["1"] = t.step_func_done(result => {
+ assert_equals(result, null);
+ });
+ document.body.appendChild(iframe);
+}, "Child frame should have no required policy by default.");
+
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy.py?id=2";
+ iframe.policy = "no-font-display-late-swap";
+ callbacks["2"] = t.step_func_done(result => {
+ assert_equals(result, "no-font-display-late-swap");
+ });
+ document.body.appendChild(iframe);
+}, "Child frame can have an explicit required policy.");
+ </script>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy-nested.html b/tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy-nested.html
new file mode 100644
index 00000000000..39e2a92f773
--- /dev/null
+++ b/tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy-nested.html
@@ -0,0 +1,65 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>Test advertised required document policy</title>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script> </head>
+ <body>
+ <h1>Test advertised required document policy</h1>
+<script>
+// The top-level document has no required document policy. Its child frames may,
+// though, and those policies should be set for any subframes.
+
+callbacks = {};
+
+window.addEventListener('message', ev => {
+ var id = ev.data.id;
+ if (id && callbacks[id]) {
+ callbacks[id](ev.data.requiredPolicy || null);
+ }
+});
+
+// Frame tree should be:
+// Top:
+// <iframe>
+// <iframe>
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy-nested.html?id=1";
+ callbacks["1"] = t.step_func_done(result => {
+ assert_equals(result, null);
+ });
+ document.body.appendChild(iframe);
+}, "test nested required document policy");
+
+// Frame tree should be:
+// Top:
+// <iframe policy="unoptimized-lossless-images;bpp=1.1">
+// <iframe>
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy-nested.html?id=2";
+ iframe.policy = "unoptimized-lossless-images;bpp=1.1";
+ callbacks["2"] = t.step_func_done(result => {
+ assert_equals(result, "unoptimized-lossless-images;bpp=1.1");
+ });
+ document.body.appendChild(iframe);
+}, "test nested required document policy when set by nested frame");
+
+// Frame tree should be:
+// Top:
+// <iframe policy="unoptimized-lossless-images;bpp=1.1">
+// <iframe>
+// <iframe>
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy-nested.html?id=3&level=1";
+ iframe.policy = "unoptimized-lossless-images;bpp=1.1";
+ callbacks["3"] = t.step_func_done(result => {
+ assert_equals(result, "unoptimized-lossless-images;bpp=1.1");
+ });
+ document.body.appendChild(iframe);
+}, "test nested required document policy when set by intermediate nested frame");
+ </script>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy.html b/tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy.html
new file mode 100644
index 00000000000..12cebdd292a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy.html
@@ -0,0 +1,65 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>Test advertised required document policy</title>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script> </head>
+ <body>
+ <h1>Test advertised required document policy</h1>
+<script>
+// The top-level document has a required document policy. Any requests for
+// documents in child frames must be sent with a required policy header
+// indicating a required policy at least as strict. (In this case, "at least as
+// strict" means that the 'bpp' parameter must be less than or equal to the
+// parent document's required value.)
+
+callbacks = {};
+
+window.addEventListener('message', ev => {
+ var id = ev.data.id;
+ if (id && callbacks[id]) {
+ callbacks[id](ev.data.requiredPolicy || null);
+ }
+});
+
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy.py?id=1";
+ callbacks["1"] = t.step_func_done(result => {
+ assert_equals(result, "unoptimized-lossless-images;bpp=1.1");
+ });
+ document.body.appendChild(iframe);
+}, "Child frame with no explicit policy should have the same required policy as its parent.");
+
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy.py?id=2";
+ iframe.policy = "unoptimized-lossless-images;bpp=4";
+ callbacks["2"] = t.step_func_done(result => {
+ assert_equals(result, "unoptimized-lossless-images;bpp=1.1");
+ });
+ document.body.appendChild(iframe);
+}, "Child frame with a less strict required policy should have the stricter value from the parent's policy applied.");
+
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy.py?id=3";
+ iframe.policy = "unoptimized-lossless-images;bpp=1.0";
+ callbacks["3"] = t.step_func_done(result => {
+ assert_equals(result, "unoptimized-lossless-images;bpp=1.0");
+ });
+ document.body.appendChild(iframe);
+}, "Child frame may have a stricter policy than the parent.");
+
+async_test(t => {
+ var iframe = document.createElement('iframe');
+ iframe.src = "/document-policy/echo-policy.py?id=4";
+ iframe.policy = "no-font-display-late-swap";
+ callbacks["4"] = t.step_func_done(result => {
+ assert_equals(result, "no-font-display-late-swap, unoptimized-lossless-images;bpp=1.1");
+ });
+ document.body.appendChild(iframe);
+}, "Any unrelated policy directives should combine with the parent's required policy.");
+ </script>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy.html.headers b/tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy.html.headers
new file mode 100644
index 00000000000..066c0f8339e
--- /dev/null
+++ b/tests/wpt/web-platform-tests/document-policy/required-policy/required-document-policy.html.headers
@@ -0,0 +1 @@
+Required-Document-Policy: unoptimized-lossless-images;bpp=1.1
diff --git a/tests/wpt/web-platform-tests/dom/events/Event-dispatch-redispatch.html b/tests/wpt/web-platform-tests/dom/events/Event-dispatch-redispatch.html
index 4027587bff4..dc180c61567 100644
--- a/tests/wpt/web-platform-tests/dom/events/Event-dispatch-redispatch.html
+++ b/tests/wpt/web-platform-tests/dom/events/Event-dispatch-redispatch.html
@@ -3,26 +3,128 @@
<title>EventTarget#dispatchEvent(): redispatching a native event</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<button>click me!</button>
<div id=log></div>
<script>
-async_test(function() {
- var event;
- document.addEventListener("DOMContentLoaded", this.step_func(function(e) {
- assert_true(e.isTrusted, "Should be trusted when first handled");
- event = e;
- }), true);
-
- window.onload = this.step_func_done(function() {
- var received = 0;
- var target = document.createElement("span");
- target.addEventListener("DOMContentLoaded", this.step_func(function(e) {
- assert_false(e.isTrusted, "Should not be trusted during redispatching");
- ++received;
- }), true);
- assert_true(event.isTrusted, "Should be trusted before redispatching");
- target.dispatchEvent(event);
- assert_false(event.isTrusted, "Should not be trusted after redispatching");
- assert_equals(received, 1);
- });
+var test_contentLoaded_redispatching = async_test("Redispatching DOMContentLoaded event after being dispatched");
+var test_mouseup_redispatching = async_test("Redispatching mouseup event whose default action dispatches a click event");
+var test_redispatching_of_dispatching_event = async_test("Redispatching event which is being dispatched");
+
+var buttonElement = document.querySelector("button");
+var contentLoadedEvent;
+
+var waitForLoad = new Promise(resolve => {
+ window.addEventListener("load", () => { requestAnimationFrame(resolve); }, {capture: false, once: true});
});
+
+document.addEventListener("DOMContentLoaded", event => {
+ contentLoadedEvent = event;
+ test_redispatching_of_dispatching_event.step(() => {
+ assert_throws("InvalidStateError", () => {
+ document.dispatchEvent(contentLoadedEvent);
+ }, "Trusted DOMContentLoaded event");
+ });
+}, {capture: true, once: true});
+
+window.addEventListener("load", loadEvent => {
+ let untrustedContentLoadedEvent;
+ buttonElement.addEventListener("DOMContentLoaded", event => {
+ untrustedContentLoadedEvent = event;
+ test_contentLoaded_redispatching.step(() => {
+ assert_false(untrustedContentLoadedEvent.isTrusted, "Redispatched DOMContentLoaded event shouldn't be trusted");
+ });
+ test_redispatching_of_dispatching_event.step(() => {
+ assert_throws("InvalidStateError", () => {
+ document.dispatchEvent(untrustedContentLoadedEvent);
+ }, "Untrusted DOMContentLoaded event");
+ });
+ });
+
+ test_contentLoaded_redispatching.step(() => {
+ assert_true(contentLoadedEvent.isTrusted, "Received DOMContentLoaded event should be trusted before redispatching");
+ buttonElement.dispatchEvent(contentLoadedEvent);
+ assert_false(contentLoadedEvent.isTrusted, "Received DOMContentLoaded event shouldn't be trusted after redispatching");
+ assert_true(untrustedContentLoadedEvent !== undefined, "Untrusted DOMContentLoaded event should've been fired");
+ test_contentLoaded_redispatching.done();
+ });
+}, {capture: true, once: true});
+
+async function testMouseUpAndClickEvent() {
+ let mouseupEvent;
+ buttonElement.addEventListener("mouseup", event => {
+ mouseupEvent = event;
+ test_mouseup_redispatching.step(() => {
+ assert_true(mouseupEvent.isTrusted, "First mouseup event should be trusted");
+ });
+ test_redispatching_of_dispatching_event.step(() => {
+ assert_throws("InvalidStateError", () => {
+ buttonElement.dispatchEvent(mouseupEvent);
+ }, "Trusted mouseup event");
+ });
+ }, {once: true});
+
+ let clickEvent;
+ buttonElement.addEventListener("click", event => {
+ clickEvent = event;
+ test_mouseup_redispatching.step(() => {
+ assert_true(clickEvent.isTrusted, "First click event should be trusted");
+ });
+ test_redispatching_of_dispatching_event.step(() => {
+ assert_throws("InvalidStateError", function() {
+ buttonElement.dispatchEvent(event);
+ }, "Trusted click event");
+ });
+ buttonElement.addEventListener("mouseup", event => {
+ test_mouseup_redispatching.step(() => {
+ assert_false(event.isTrusted, "Redispatched mouseup event shouldn't be trusted");
+ });
+ test_redispatching_of_dispatching_event.step(() => {
+ assert_throws("InvalidStateError", function() {
+ buttonElement.dispatchEvent(event);
+ }, "Untrusted mouseup event");
+ });
+ }, {once: true});
+ function onClick() {
+ test_mouseup_redispatching.step(() => {
+ assert_true(false, "click event shouldn't be fired for dispatched mouseup event");
+ });
+ }
+ test_mouseup_redispatching.step(() => {
+ assert_true(mouseupEvent.isTrusted, "Received mouseup event should be trusted before redispatching from click event listener");
+ buttonElement.addEventListener("click", onClick);
+ buttonElement.dispatchEvent(mouseupEvent);
+ buttonElement.removeEventListener("click", onClick);
+ assert_false(mouseupEvent.isTrusted, "Received mouseup event shouldn't be trusted after redispatching");
+ assert_true(clickEvent.isTrusted, "First click event should still be trusted even after redispatching mouseup event");
+ });
+ }, {once: true});
+
+ await waitForLoad;
+ let bounds = buttonElement.getBoundingClientRect();
+ test(() => { assert_true(true); }, `Synthesizing click on button... (button width / height: ${bounds.width} / ${bounds.height})`);
+ new test_driver.Actions()
+ .pointerMove(Math.floor(bounds.width / 5),
+ Math.floor(bounds.height / 2),
+ {origin: buttonElement})
+ .pointerDown({button: test_driver.Actions.prototype.ButtonType.LEFT})
+ .pointerUp({button: test_driver.Actions.prototype.ButtonType.LEFT})
+ .send()
+ .then(() => {
+ test_mouseup_redispatching.step(() => {
+ assert_true(clickEvent !== undefined, "mouseup and click events should've been fired");
+ });
+ test_mouseup_redispatching.done();
+ test_redispatching_of_dispatching_event.done();
+ }, (reason) => {
+ test_mouseup_redispatching.step(() => {
+ assert_true(false, `Failed to send mouse click due to ${reason}`);
+ });
+ test_mouseup_redispatching.done();
+ test_redispatching_of_dispatching_event.done();
+ });
+}
+testMouseUpAndClickEvent();
</script>
diff --git a/tests/wpt/web-platform-tests/fetch/api/cors/cors-preflight-redirect.any.js b/tests/wpt/web-platform-tests/fetch/api/cors/cors-preflight-redirect.any.js
index 5d4de7ebaad..ade38e9ac7b 100644
--- a/tests/wpt/web-platform-tests/fetch/api/cors/cors-preflight-redirect.any.js
+++ b/tests/wpt/web-platform-tests/fetch/api/cors/cors-preflight-redirect.any.js
@@ -18,7 +18,7 @@ function corsPreflightRedirect(desc, redirectUrl, redirectLocation, redirectStat
urlParameters += "&allow_headers=x-force-preflight";
promise_test(function(test) {
- fetch(RESOURCES_DIR + "clean-stash.py?token=" + uuid_token).then(function(resp) {
+ return fetch(RESOURCES_DIR + "clean-stash.py?token=" + uuid_token).then(function(resp) {
assert_equals(resp.status, 200, "Clean stash response's status is 200");
return promise_rejects(test, new TypeError(), fetch(url + urlParameters, requestInit));
});
diff --git a/tests/wpt/web-platform-tests/fetch/api/idlharness.any.js b/tests/wpt/web-platform-tests/fetch/api/idlharness.any.js
index ccd4d2c0b46..7b3c694e16a 100644
--- a/tests/wpt/web-platform-tests/fetch/api/idlharness.any.js
+++ b/tests/wpt/web-platform-tests/fetch/api/idlharness.any.js
@@ -1,6 +1,7 @@
// META: global=window,worker
// META: script=/resources/WebIDLParser.js
// META: script=/resources/idlharness.js
+// META: timeout=long
idl_test(
['fetch'],
diff --git a/tests/wpt/web-platform-tests/fetch/metadata/appcache.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/metadata/appcache.tentative.https.sub.html
index 8912548ab1c..5e35472fcfd 100644
--- a/tests/wpt/web-platform-tests/fetch/metadata/appcache.tentative.https.sub.html
+++ b/tests/wpt/web-platform-tests/fetch/metadata/appcache.tentative.https.sub.html
@@ -8,16 +8,27 @@
<body></body>
<script>
async_test(t => {
- window.applicationCache.oncached = window.applicationCache.onnoupdate = window.applicationCache.onerror = t.step_func(e => {
- fetch("/fetch/metadata/resources/record-header.py?retrieve=true&file=appcache-manifest{{$id}}")
- .then(t.step_func(response => response.text()))
- .then(t.step_func_done(text => assert_header_equals(text, {
- "site": "same-origin",
- "user": "",
- "mode": "no-cors",
- "dest": ""
- })))
- .catch(t.unreached_func("Fetching and verifying the results should succeed."));
-});
-}, "Appcache!");
+ const expected = {"site": "same-origin", "user": "", "mode": "no-cors", "dest": "empty"};
+ window.applicationCache.oncached = window.applicationCache.onnoupdate = window.applicationCache.onerror = t.step_func(async e => {
+ try {
+ let response = await fetch(
+ "/fetch/metadata/resources/record-header.py?retrieve=true&file=appcache-manifest{{$id}}");
+ let text = await response.text();
+ assert_header_equals(text, expected, "Appcache manifest");
+
+ response = await fetch(
+ "/fetch/metadata/resources/record-header.py?retrieve=true&file=appcache-resource{{$id}}");
+ text = await response.text();
+ assert_header_equals(text, expected, "Appcache resource");
+ } catch (e) {
+ t.step_func(e => {
+ if (e instanceof AssertionError) {
+ throw e;
+ }
+ assert_unreached(`Unhandled rejection with value: ${e}`);
+ });
+ }
+ t.done();
+ });
+ }, "Appcache!");
</script>
diff --git a/tests/wpt/web-platform-tests/fetch/metadata/navigation.https.sub.html b/tests/wpt/web-platform-tests/fetch/metadata/navigation.tentative.https.sub.html
index 32c9cf77f90..32c9cf77f90 100644
--- a/tests/wpt/web-platform-tests/fetch/metadata/navigation.https.sub.html
+++ b/tests/wpt/web-platform-tests/fetch/metadata/navigation.tentative.https.sub.html
diff --git a/tests/wpt/web-platform-tests/fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html b/tests/wpt/web-platform-tests/fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html
new file mode 100644
index 00000000000..e2715a65854
--- /dev/null
+++ b/tests/wpt/web-platform-tests/fetch/metadata/redirect/multiple-redirect-https-downgrade-upgrade-prefetch.optional.tentative.sub.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<html>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/fetch/metadata/resources/helper.js></script>
+<script src=/fetch/metadata/resources/redirectTestHelper.sub.js></script>
+<body>
+<script>
+ "use strict";
+ let nonce = "{{uuid()}}";
+ let expected = {"site": "cross-site", "user": "", "mode": "cors", "dest": ""};
+
+ testPrefetch(nonce, "Https downgrade-upgrade", MultipleRedirectTo, expected);
+</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/fetch/metadata/redirect/redirect-http-upgrade-prefetch.optional.tentative.sub.html b/tests/wpt/web-platform-tests/fetch/metadata/redirect/redirect-http-upgrade-prefetch.optional.tentative.sub.html
new file mode 100644
index 00000000000..45fd4efaace
--- /dev/null
+++ b/tests/wpt/web-platform-tests/fetch/metadata/redirect/redirect-http-upgrade-prefetch.optional.tentative.sub.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<html>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/fetch/metadata/resources/helper.js></script>
+<script src=/fetch/metadata/resources/redirectTestHelper.sub.js></script>
+<body>
+<script>
+ "use strict";
+ let nonce = "{{uuid()}}";
+ let expected = {"site": "cross-site", "user": "", "mode": "cors", "dest": ""};
+
+ testPrefetch(nonce, "Http upgrade", upgradeRedirectTo, expected);
+</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/fetch/metadata/redirect/redirect-https-downgrade-prefetch.optional.tentative.sub.html b/tests/wpt/web-platform-tests/fetch/metadata/redirect/redirect-https-downgrade-prefetch.optional.tentative.sub.html
new file mode 100644
index 00000000000..a446cbad840
--- /dev/null
+++ b/tests/wpt/web-platform-tests/fetch/metadata/redirect/redirect-https-downgrade-prefetch.optional.tentative.sub.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<html>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<script src=/fetch/metadata/resources/helper.js></script>
+<script src=/fetch/metadata/resources/redirectTestHelper.sub.js></script>
+<body>
+<script>
+ "use strict";
+ let nonce = "{{uuid()}}";
+ let expected = {"site": "", "user": "", "mode": "", "dest": ""};
+
+ testPrefetch(nonce, "Https downgrade", downgradeRedirectTo, expected);
+</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/fetch/metadata/resources/helper.js b/tests/wpt/web-platform-tests/fetch/metadata/resources/helper.js
index a344c94106a..608a5297881 100644
--- a/tests/wpt/web-platform-tests/fetch/metadata/resources/helper.js
+++ b/tests/wpt/web-platform-tests/fetch/metadata/resources/helper.js
@@ -1,7 +1,3 @@
-function wrap_by_tag(tag, text) {
- return tag ? `${tag}: ${text}`: text;
-}
-
function validate_expectations(key, expected, tag) {
return fetch("/fetch/metadata/resources/record-header.py?retrieve=true&file=" + key)
.then(response => response.text())
diff --git a/tests/wpt/web-platform-tests/fetch/metadata/resources/record-header.py b/tests/wpt/web-platform-tests/fetch/metadata/resources/record-header.py
index 99115475683..3bfb1fcdfaa 100644
--- a/tests/wpt/web-platform-tests/fetch/metadata/resources/record-header.py
+++ b/tests/wpt/web-platform-tests/fetch/metadata/resources/record-header.py
@@ -117,6 +117,20 @@ def main(request, response):
response.headers.set("Content-Type", "application/javascript")
return "self.postMessage('loaded');"
+ ## Return an appcache manifest
+ if key.startswith("appcache-manifest"):
+ response.headers.set("Content-Type", "text/cache-manifest")
+ return """CACHE MANIFEST
+/fetch/metadata/resources/record-header.py?file=appcache-resource%s
+
+NETWORK:
+*""" % key[17:]
+
+ ## Return an appcache resource
+ if key.startswith("appcache-resource"):
+ response.headers.set("Content-Type", "text/html")
+ return "<html>Appcache!</html>"
+
## Return a valid XSLT
if key.startswith("xslt"):
response.headers.set("Content-Type", "text/xsl")
@@ -128,4 +142,3 @@ def main(request, response):
</xsl:copy>
</xsl:template>
</xsl:stylesheet>"""
-
diff --git a/tests/wpt/web-platform-tests/fetch/metadata/resources/redirectTestHelper.sub.js b/tests/wpt/web-platform-tests/fetch/metadata/resources/redirectTestHelper.sub.js
index c40b5a5e17e..e5547e7ac79 100644
--- a/tests/wpt/web-platform-tests/fetch/metadata/resources/redirectTestHelper.sub.js
+++ b/tests/wpt/web-platform-tests/fetch/metadata/resources/redirectTestHelper.sub.js
@@ -38,6 +38,34 @@ function downgradeRedirectTo(partialPath) {
return secureRedirectURL + encodeURIComponent(insecureTestURL + partialPath);
}
+// Helper to test the behavior of the `prefetch` Link type [1]. Because the the
+// behavior under test is optional [2], this function should only be used in
+// tests which have been denoted as "optional" [3].
+//
+// [1] https://html.spec.whatwg.org/#link-type-prefetch
+// [2] https://w3c.github.io/resource-hints/#load-and-error-events
+// [3] https://web-platform-tests.org/writing-tests/file-names.html
+function testPrefetch(nonce, testNamePrefix, urlHelperMethod, expectedResults) {
+ async_test(t => {
+ let key = 'prefetch' + nonce;
+ let e = document.createElement('link');
+ e.rel = 'prefetch';
+ e.crossOrigin = 'anonymous';
+ e.href = urlHelperMethod('resources/record-header.py?file=' + key) + '&simple=true';
+ e.onload = t.step_func(e => {
+ let expectation = { ...expectedResults };
+ if (expectation['mode'] != '')
+ expectation['mode'] = 'cors';
+ fetch('/fetch/metadata/resources/record-header.py?retrieve=true&file=' + key)
+ .then(t.step_func(response => response.text()))
+ .then(t.step_func_done(text => assert_header_equals(text, expectation, testNamePrefix + ' prefetch => No headers')))
+ .catch(t.unreached_func('Fetching and verifying the results should succeed.'));
+ });
+ e.onerror = t.unreached_func();
+ document.head.appendChild(e);
+ }, testNamePrefix + ' prefetch => No headers');
+}
+
// Helper to run common redirect test cases that don't require special setup on
// the test page itself.
function RunCommonRedirectTests(testNamePrefix, urlHelperMethod, expectedResults) {
@@ -124,27 +152,6 @@ function RunCommonRedirectTests(testNamePrefix, urlHelperMethod, expectedResults
});
}, testNamePrefix + ' object');
- if (document.createElement('link').relList.supports('prefetch')) {
- async_test(t => {
- let key = 'prefetch' + nonce;
- let e = document.createElement('link');
- e.rel = 'prefetch';
- e.crossOrigin = 'anonymous';
- e.href = urlHelperMethod('resources/record-header.py?file=' + key) + '&simple=true';
- e.onload = t.step_func(e => {
- let expectation = { ...expectedResults };
- if (expectation['mode'] != '')
- expectation['mode'] = 'cors';
- fetch('/fetch/metadata/resources/record-header.py?retrieve=true&file=' + key)
- .then(t.step_func(response => response.text()))
- .then(t.step_func_done(text => assert_header_equals(text, expectation, testNamePrefix + ' prefetch => No headers')))
- .catch(t.unreached_func('Fetching and verifying the results should succeed.'));
- });
- e.onerror = t.unreached_func();
- document.head.appendChild(e);
- }, testNamePrefix + ' prefetch => No headers');
- }
-
if (document.createElement('link').relList.supports('preload')) {
async_test(t => {
let key = 'preload' + nonce;
diff --git a/tests/wpt/web-platform-tests/fetch/stale-while-revalidate/fetch.html b/tests/wpt/web-platform-tests/fetch/stale-while-revalidate/fetch.html
index 73390c7ad59..41ece6826ed 100644
--- a/tests/wpt/web-platform-tests/fetch/stale-while-revalidate/fetch.html
+++ b/tests/wpt/web-platform-tests/fetch/stale-while-revalidate/fetch.html
@@ -1,6 +1,6 @@
<!DOCTYPE html>
<meta charset="utf-8">
-<title>Tests Stale While Revalidate is not executed for fetch API</title>
+<title>Tests Stale While Revalidate is executed for fetch API</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/utils.js"></script>
diff --git a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-closed.html b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-closed.html
index 7c939bc7746..106c3f97cb2 100644
--- a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-closed.html
+++ b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-closed.html
@@ -2,7 +2,7 @@
<meta charset="utf-8">
<html>
<head>
- <title>Auxiliary Browing Contexts: window.opener when Opener Removed/Closed</title>
+ <title>Auxiliary Browsing Contexts: window.opener when Opener Removed/Closed</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/PrefixedLocalStorage.js"></script>
diff --git a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-multiple.html b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-multiple.html
index eb356c55972..e71d4dc8687 100644
--- a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-multiple.html
+++ b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-multiple.html
@@ -1,7 +1,7 @@
<!doctype html>
<html>
<head>
- <title>Auxiliary Browing Contexts: window.opener, multiple</title>
+ <title>Auxiliary Browsing Contexts: window.opener, multiple</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/PrefixedLocalStorage.js"></script>
diff --git a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-noopener.html b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-noopener.html
index fff10248fed..086a96442dd 100644
--- a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-noopener.html
+++ b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-noopener.html
@@ -1,7 +1,7 @@
<!doctype html>
<html>
<head>
- <title>Auxiliary Browing Contexts: window.opener noopener</title>
+ <title>Auxiliary Browsing Contexts: window.opener noopener</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/PrefixedLocalStorage.js"></script>
diff --git a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-noreferrer.html b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-noreferrer.html
index f82aa6f0abe..b8226bd2b93 100644
--- a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-noreferrer.html
+++ b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-noreferrer.html
@@ -1,7 +1,7 @@
<!doctype html>
<html>
<head>
- <title>Auxiliary Browing Contexts: window.opener noreferrer</title>
+ <title>Auxiliary Browsing Contexts: window.opener noreferrer</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/PrefixedLocalStorage.js"></script>
diff --git a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-setter.html b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-setter.html
index e6ff4a19d0d..ac6e47b846b 100644
--- a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-setter.html
+++ b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener-setter.html
@@ -1,7 +1,7 @@
<!doctype html>
<html>
<head>
- <title>Auxiliary Browing Contexts: window.opener setter</title>
+ <title>Auxiliary Browsing Contexts: window.opener setter</title>
<meta name=timeout content=long>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
diff --git a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener.html b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener.html
index 5bbaee6a378..c43d3bd3bfb 100644
--- a/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener.html
+++ b/tests/wpt/web-platform-tests/html/browsers/windows/auxiliary-browsing-contexts/opener.html
@@ -1,7 +1,7 @@
<!doctype html>
<html>
<head>
- <title>Auxiliary Browing Contexts: window.opener</title>
+ <title>Auxiliary Browsing Contexts: window.opener</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/PrefixedLocalStorage.js"></script>
diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-video-element/resize-during-playback.html b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-video-element/resize-during-playback.html
new file mode 100644
index 00000000000..3ade1effc4b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-video-element/resize-during-playback.html
@@ -0,0 +1,39 @@
+<!doctype html>
+<html>
+<head>
+<title>video element resizing during playback</title>
+<link rel="help" href="https://html.spec.whatwg.org/multipage/media.html#concept-video-intrinsic-width">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+</head>
+<body>
+<div id="log"></div>
+<script>
+for (const format of ['mp4', 'webm']) {
+ promise_test(async (t) => {
+ const video = document.createElement('video');
+ assert_precondition(video.canPlayType(`video/${format}`), `${format} supported`);
+
+ // Load the video and wait for initial resize event.
+ video.src = `/media/400x300-red-resize-200x150-green.${format}`;
+ video.muted = true;
+ video.preload = 'auto';
+ document.body.appendChild(video);
+ const eventWatcher = new EventWatcher(t, video, ['resize', 'playing', 'error', 'ended']);
+ await eventWatcher.wait_for(['resize']);
+ assert_equals(video.videoWidth, 400, 'width after first resize event');
+ assert_equals(video.videoHeight, 300, 'height after first resize event');
+
+ // Now play and wait for a second resize event.
+ const playPromise = video.play();
+ if (playPromise) {
+ playPromise.catch(t.unreached_func("play rejected"));
+ }
+ await eventWatcher.wait_for(['playing', 'resize']);
+ assert_equals(video.videoWidth, 200, 'width after second resize event');
+ assert_equals(video.videoHeight, 150, 'height after second resize event');
+ }, `${format} video`);
+}
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/constraints/infinite_backtracking.html b/tests/wpt/web-platform-tests/html/semantics/forms/constraints/infinite_backtracking.html
new file mode 100644
index 00000000000..52f6e316b1f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/semantics/forms/constraints/infinite_backtracking.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>The infinite pattern validation test</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<input type=text id=badinput value="12345678901234567890123456789123456789z" pattern="(\d+)*$">
+<script>
+ test(function(){
+ var elements = document.querySelectorAll(":invalid");
+ assert_array_equals(elements, [document.getElementById('badinput')]);
+ }, "Infinite backtracking pattern terminates");
+</script>
diff --git a/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPoints.html.ini b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPoints.html.ini
index 4a4f5946fad..1d63261c554 100644
--- a/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPoints.html.ini
+++ b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPoints.html.ini
@@ -3,4 +3,4 @@
if product == "firefox" or product == "safari" or product == "epiphany" or product == "webkit": ERROR
[TestDriver actions: two touch points with one moving one pause]
expected:
- if product == "chrome": FAIL
+ if product == "chrome" and os != "mac": FAIL
diff --git a/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_wait_TestRendered.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_wait_TestRendered.html
new file mode 100644
index 00000000000..4316d338b5c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_wait_TestRendered.html
@@ -0,0 +1,14 @@
+<html class="reftest-wait">
+<title>Test with reftest-wait</title>
+<link rel=match href=green.html>
+<style>
+:root {background-color:red}
+</style>
+<script>
+document.addEventListener("TestRendered",
+ function() {
+ document.documentElement.style.backgroundColor = "green";
+ document.documentElement.className = "";
+ });
+</script>
+</html>
diff --git a/tests/wpt/web-platform-tests/interfaces/cookie-store.idl b/tests/wpt/web-platform-tests/interfaces/cookie-store.idl
index 3e1a90ab63f..f6a413e54a2 100644
--- a/tests/wpt/web-platform-tests/interfaces/cookie-store.idl
+++ b/tests/wpt/web-platform-tests/interfaces/cookie-store.idl
@@ -19,12 +19,6 @@ interface CookieStore : EventTarget {
Promise<void> delete(USVString name);
Promise<void> delete(CookieStoreDeleteOptions options);
- [Exposed=ServiceWorker]
- Promise<void> subscribeToChanges(sequence<CookieStoreGetOptions> subscriptions);
-
- [Exposed=ServiceWorker]
- Promise<sequence<CookieStoreGetOptions>> getChangeSubscriptions();
-
[Exposed=Window]
attribute EventHandler onchange;
};
@@ -77,8 +71,7 @@ dictionary CookieListItem {
typedef sequence<CookieListItem> CookieList;
-[Exposed=Window,
- SecureContext]
+[Exposed=Window, SecureContext]
interface CookieChangeEvent : Event {
constructor(DOMString type, optional CookieChangeEventInit eventInitDict = {});
readonly attribute CookieList changed;
@@ -90,8 +83,8 @@ dictionary CookieChangeEventInit : EventInit {
CookieList deleted;
};
-[Exposed=ServiceWorker
-] interface ExtendableCookieChangeEvent : ExtendableEvent {
+[Exposed=ServiceWorker]
+interface ExtendableCookieChangeEvent : ExtendableEvent {
constructor(DOMString type, optional ExtendableCookieChangeEventInit eventInitDict = {});
readonly attribute CookieList changed;
readonly attribute CookieList deleted;
@@ -102,6 +95,13 @@ dictionary ExtendableCookieChangeEventInit : ExtendableEventInit {
CookieList deleted;
};
+[Exposed=(ServiceWorker,Window), SecureContext]
+interface CookieStoreManager {
+ Promise<void> subscribe(sequence<CookieStoreGetOptions> subscriptions);
+ Promise<sequence<CookieStoreGetOptions>> getSubscriptions();
+ Promise<void> unsubscribe(sequence<CookieStoreGetOptions> subscriptions);
+};
+
[SecureContext]
partial interface Window {
[Replaceable, SameObject] readonly attribute CookieStore cookieStore;
@@ -109,6 +109,10 @@ partial interface Window {
partial interface ServiceWorkerGlobalScope {
[Replaceable, SameObject] readonly attribute CookieStore cookieStore;
-
attribute EventHandler oncookiechange;
};
+
+[Exposed=(ServiceWorker,Window), SecureContext]
+partial interface ServiceWorkerRegistration {
+ readonly attribute CookieStoreManager cookies;
+};
diff --git a/tests/wpt/web-platform-tests/interfaces/resize-observer.idl b/tests/wpt/web-platform-tests/interfaces/resize-observer.idl
index 9ac157a6328..d53e9da55ee 100644
--- a/tests/wpt/web-platform-tests/interfaces/resize-observer.idl
+++ b/tests/wpt/web-platform-tests/interfaces/resize-observer.idl
@@ -21,7 +21,7 @@ interface ResizeObserver {
callback ResizeObserverCallback = void (sequence<ResizeObserverEntry> entries, ResizeObserver observer);
-[Exposed=Window, Constructor(Element target)]
+[Exposed=Window]
interface ResizeObserverEntry {
readonly attribute Element target;
readonly attribute DOMRectReadOnly contentRect;
diff --git a/tests/wpt/web-platform-tests/interfaces/wasm-js-api.idl b/tests/wpt/web-platform-tests/interfaces/wasm-js-api.idl
index 828729071e4..cc943610145 100644
--- a/tests/wpt/web-platform-tests/interfaces/wasm-js-api.idl
+++ b/tests/wpt/web-platform-tests/interfaces/wasm-js-api.idl
@@ -39,15 +39,17 @@ dictionary ModuleImportDescriptor {
required ImportExportKind kind;
};
-[LegacyNamespace=WebAssembly, Constructor(BufferSource bytes), Exposed=(Window,Worker,Worklet)]
+[LegacyNamespace=WebAssembly, Exposed=(Window,Worker,Worklet)]
interface Module {
+ constructor(BufferSource bytes);
static sequence<ModuleExportDescriptor> exports(Module moduleObject);
static sequence<ModuleImportDescriptor> imports(Module moduleObject);
static sequence<ArrayBuffer> customSections(Module moduleObject, DOMString sectionName);
};
-[LegacyNamespace=WebAssembly, Constructor(Module module, optional object importObject), Exposed=(Window,Worker,Worklet)]
+[LegacyNamespace=WebAssembly, Exposed=(Window,Worker,Worklet)]
interface Instance {
+ constructor(Module module, optional object importObject);
readonly attribute object exports;
};
@@ -56,8 +58,9 @@ dictionary MemoryDescriptor {
[EnforceRange] unsigned long maximum;
};
-[LegacyNamespace=WebAssembly, Constructor(MemoryDescriptor descriptor), Exposed=(Window,Worker,Worklet)]
+[LegacyNamespace=WebAssembly, Exposed=(Window,Worker,Worklet)]
interface Memory {
+ constructor(MemoryDescriptor descriptor);
unsigned long grow([EnforceRange] unsigned long delta);
readonly attribute ArrayBuffer buffer;
};
@@ -74,8 +77,9 @@ dictionary TableDescriptor {
[EnforceRange] unsigned long maximum;
};
-[LegacyNamespace=WebAssembly, Constructor(TableDescriptor descriptor), Exposed=(Window,Worker,Worklet)]
+[LegacyNamespace=WebAssembly, Exposed=(Window,Worker,Worklet)]
interface Table {
+ constructor(TableDescriptor descriptor);
unsigned long grow([EnforceRange] unsigned long delta);
Function? get([EnforceRange] unsigned long index);
void set([EnforceRange] unsigned long index, Function? value);
@@ -94,8 +98,9 @@ dictionary GlobalDescriptor {
boolean mutable = false;
};
-[LegacyNamespace=WebAssembly, Constructor(GlobalDescriptor descriptor, optional any v), Exposed=(Window,Worker,Worklet)]
+[LegacyNamespace=WebAssembly, Exposed=(Window,Worker,Worklet)]
interface Global {
+ constructor(GlobalDescriptor descriptor, optional any v);
any valueOf();
attribute any value;
};
diff --git a/tests/wpt/web-platform-tests/interfaces/web-nfc.idl b/tests/wpt/web-platform-tests/interfaces/web-nfc.idl
index 455720c641e..de23fac0c11 100644
--- a/tests/wpt/web-platform-tests/interfaces/web-nfc.idl
+++ b/tests/wpt/web-platform-tests/interfaces/web-nfc.idl
@@ -13,6 +13,8 @@ dictionary NDEFMessageInit {
required sequence<NDEFRecordInit> records;
};
+typedef (DOMString or BufferSource or NDEFMessageInit) NDEFRecordDataSource;
+
[Exposed=Window]
interface NDEFRecord {
constructor(NDEFRecordInit recordInit);
@@ -36,7 +38,7 @@ dictionary NDEFRecordInit {
USVString encoding;
USVString lang;
- any data;
+ NDEFRecordDataSource data;
};
typedef (DOMString or BufferSource or NDEFMessageInit) NDEFMessageSource;
diff --git a/tests/wpt/web-platform-tests/layout-instability/pointerdown-becomes-scroll.html b/tests/wpt/web-platform-tests/layout-instability/pointerdown-becomes-scroll.html
new file mode 100644
index 00000000000..4fe5c6b7e7c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/layout-instability/pointerdown-becomes-scroll.html
@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<title>Layout Instability: shift in pointerdown becoming scroll</title>
+<link rel="help" href="https://wicg.github.io/layout-instability/" />
+<style>
+
+body { margin: 0; height: 2000px; }
+#box {
+ left: 0px;
+ top: 0px;
+ width: 400px;
+ height: 500px;
+ background: yellow;
+ position: relative;
+}
+
+</style>
+<div id="box"></div>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="resources/util.js"></script>
+<script>
+
+const box = document.querySelector("#box");
+box.addEventListener("pointerdown", (e) => {
+ // Generate a layout shift before we know what type of input this pointer
+ // event sequence will become.
+ box.style.top = "100px";
+ e.preventDefault();
+});
+
+generateScrollSequence = () => new test_driver.Actions()
+ .addPointer("tp1", "touch")
+ .pointerMove(0, 100, {sourceName: "tp1"})
+ .pointerDown({sourceName: "tp1"})
+ .pointerMove(0, 0, {sourceName: "tp1"})
+ .pause(100)
+ .pointerUp({sourceName: "tp1"})
+ .pause(100);
+
+promise_test(async () => {
+ const watcher = new ScoreWatcher;
+
+ // Wait for the initial render to complete.
+ await waitForAnimationFrames(2);
+
+ // Send pointer events for a touch scroll.
+ await generateScrollSequence().send();
+
+ // The box is 400 x 500 and moves by 100px.
+ const expectedScore = computeExpectedScore(400 * (500 + 100), 100);
+
+ // Both scores should increase (scroll doesn't count as input for the purpose
+ // of the LayoutShift.hadRecentInput bit).
+ assert_equals(watcher.score, expectedScore);
+ assert_equals(watcher.scoreWithInputExclusion, expectedScore);
+
+}, "Shift in pointerdown reported when it becomes a scroll.");
+
+</script>
diff --git a/tests/wpt/web-platform-tests/layout-instability/pointerdown-becomes-tap.html b/tests/wpt/web-platform-tests/layout-instability/pointerdown-becomes-tap.html
new file mode 100644
index 00000000000..e2e7a911dc0
--- /dev/null
+++ b/tests/wpt/web-platform-tests/layout-instability/pointerdown-becomes-tap.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html>
+<title>Layout Instability: shift in pointerdown becoming tap</title>
+<link rel="help" href="https://wicg.github.io/layout-instability/" />
+<style>
+
+body { margin: 0; height: 2000px; }
+#box {
+ left: 0px;
+ top: 0px;
+ width: 400px;
+ height: 500px;
+ background: yellow;
+ position: relative;
+}
+
+</style>
+<div id="box"></div>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-actions.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+<script src="resources/util.js"></script>
+<script>
+
+const box = document.querySelector("#box");
+box.addEventListener("pointerdown", (e) => {
+ // Generate a layout shift before we know what type of input this pointer
+ // event sequence will become.
+ box.style.top = "100px";
+ e.preventDefault();
+});
+
+generateTapSequence = () => new test_driver.Actions()
+ .addPointer("tp1", "touch")
+ .pointerMove(0, 0, {sourceName: "tp1"})
+ .pointerDown({sourceName: "tp1"})
+ .pause(100)
+ .pointerUp({sourceName: "tp1"})
+ .pause(100);
+
+promise_test(async () => {
+ const watcher = new ScoreWatcher;
+
+ // Wait for the initial render to complete.
+ await waitForAnimationFrames(2);
+
+ // Send pointer events for a tap.
+ await generateTapSequence().send();
+
+ // The box is 400 x 500 and moves by 100px.
+ const expectedExcludedScore = computeExpectedScore(400 * (500 + 100), 100);
+
+ // Only the score that ignores hadRecentInput should increase.
+ assert_equals(watcher.score, expectedExcludedScore);
+ assert_equals(watcher.scoreWithInputExclusion, 0);
+
+}, "Shift in pointerdown excluded when it becomes a tap.");
+
+</script>
diff --git a/tests/wpt/web-platform-tests/layout-instability/resources/util.js b/tests/wpt/web-platform-tests/layout-instability/resources/util.js
index ca430d0a9e2..515914e11fa 100644
--- a/tests/wpt/web-platform-tests/layout-instability/resources/util.js
+++ b/tests/wpt/web-platform-tests/layout-instability/resources/util.js
@@ -47,6 +47,7 @@ ScoreWatcher = function() {
if (PerformanceObserver.supportedEntryTypes.indexOf("layout-shift") == -1)
throw new Error("Layout Instability API not supported");
this.score = 0;
+ this.scoreWithInputExclusion = 0;
const resetPromise = () => {
this.promise = new Promise(resolve => {
this.resolve = () => {
@@ -59,6 +60,8 @@ ScoreWatcher = function() {
const observer = new PerformanceObserver(list => {
list.getEntries().forEach(entry => {
this.score += entry.value;
+ if (!entry.hadRecentInput)
+ this.scoreWithInputExclusion += entry.value;
this.resolve();
});
});
diff --git a/tests/wpt/web-platform-tests/lint.whitelist b/tests/wpt/web-platform-tests/lint.whitelist
index 48d7e9d6a74..4f2ef9c005b 100644
--- a/tests/wpt/web-platform-tests/lint.whitelist
+++ b/tests/wpt/web-platform-tests/lint.whitelist
@@ -201,6 +201,7 @@ SET TIMEOUT: shadow-dom/slotchange-event.html
SET TIMEOUT: trusted-types/block-string-assignment-to-DOMWindowTimers-setTimeout-setInterval.tentative.html
SET TIMEOUT: trusted-types/DOMWindowTimers-setTimeout-setInterval.tentative.html
SET TIMEOUT: user-timing/*
+SET TIMEOUT: web-animations/timing-model/animations/*
SET TIMEOUT: webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/mediaElementAudioSourceToScriptProcessorTest.html
SET TIMEOUT: webauthn/*timeout.https.html
SET TIMEOUT: webdriver/*
diff --git a/tests/wpt/web-platform-tests/media/400x300-red-resize-200x150-green.mp4 b/tests/wpt/web-platform-tests/media/400x300-red-resize-200x150-green.mp4
new file mode 100644
index 00000000000..1058c1bf26a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/media/400x300-red-resize-200x150-green.mp4
Binary files differ
diff --git a/tests/wpt/web-platform-tests/media/400x300-red-resize-200x150-green.webm b/tests/wpt/web-platform-tests/media/400x300-red-resize-200x150-green.webm
new file mode 100644
index 00000000000..53b6517849f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/media/400x300-red-resize-200x150-green.webm
Binary files differ
diff --git a/tests/wpt/web-platform-tests/portals/portals-adopt-predecessor.html b/tests/wpt/web-platform-tests/portals/portals-adopt-predecessor.html
index 70545458b46..96d0be9a401 100644
--- a/tests/wpt/web-platform-tests/portals/portals-adopt-predecessor.html
+++ b/tests/wpt/web-platform-tests/portals/portals-adopt-predecessor.html
@@ -62,4 +62,14 @@
});
window.open(`resources/portals-adopt-predecessor.html?test=${test}`);
}, "Tests that the adopted predecessor is destroyed if it isn't inserted");
+
+ async_test(t => {
+ var test = "adopt-to-disconnected-node";
+ var bc = new BroadcastChannel(`test-${test}`);
+ bc.onmessage = t.step_func_done(function(e) {
+ assert_equals(e.data, "passed");
+ bc.close();
+ });
+ window.open(`resources/portals-adopt-predecessor.html?test=${test}`);
+ }, "Tests that an adopted portal can be inserted into a disconnected node.");
</script>
diff --git a/tests/wpt/web-platform-tests/portals/resources/portals-adopt-predecessor-portal.html b/tests/wpt/web-platform-tests/portals/resources/portals-adopt-predecessor-portal.html
index b7eb3b96779..48e162b9714 100644
--- a/tests/wpt/web-platform-tests/portals/resources/portals-adopt-predecessor-portal.html
+++ b/tests/wpt/web-platform-tests/portals/resources/portals-adopt-predecessor-portal.html
@@ -64,5 +64,14 @@
});
});
}
+ if (test == "adopt-to-disconnected-node") {
+ var portal = e.adoptPredecessor();
+ document.body.appendChild(portal);
+ var node = document.createElement("div");
+ node.appendChild(portal);
+ var bc_test = new BroadcastChannel(`test-${test}`);
+ bc_test.postMessage("passed");
+ bc_test.close();
+ }
}
</script>
diff --git a/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html b/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html
new file mode 100644
index 00000000000..6ca92476195
--- /dev/null
+++ b/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-worker-timing-frame.tentative.https.html
@@ -0,0 +1,225 @@
+<!DOCTYPE html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/test-helpers.sub.js"></script>
+<script>
+// This is tentative because currently this feature only has an explainer and
+// no formal spec.
+// https://github.com/wanderview/fetchevent-worker-timing/blob/master/explainer.md
+
+async function wait_for_performance_entries(url, performance, entry_type) {
+ const entries = await performance.getEntriesByName(url);
+ if (entries.length > 0) {
+ return entries;
+ }
+ return new Promise((resolve) => {
+ new PerformanceObserver((list, observer) => {
+ const entries = list.getEntriesByName(url);
+ if (entries.length > 0) {
+ observer.disconnect();
+ resolve(entries);
+ }
+ }).observe({ entryTypes: [entry_type] });
+ });
+}
+
+function load_image(target_document, url) {
+ return new Promise((resolve, reject) => {
+ const image = target_document.createElement('img');
+ image.onload = () => { resolve(image); }
+ image.onerror = () => { reject(`Failed to load: ${url}`); };
+ image.src = url;
+ });
+}
+
+promise_test(async (t) => {
+ const registration = await service_worker_unregister_and_register(
+ t, 'resources/fetch-event-worker-timing.js', 'resources/');
+ promise_test(async (t) => registration.unregister(),
+ 'Unregister service worker');
+ await wait_for_state(t, registration.installing, 'activated');
+}, 'Set up an active service worker');
+
+promise_test(async (t) => {
+ const frame = await with_iframe('resources/empty.html?fallback');
+ t.add_cleanup(() => frame.remove());
+
+ const performance = frame.contentWindow.performance;
+
+ const entries = await wait_for_performance_entries(
+ frame.src, performance, 'navigation');
+ assert_equals(entries.length, 1, 'PerformanceNavigationTiming is observed');
+
+ const worker_timings = await entries[0].workerTiming;
+ const expected_worker_timings = [
+ {
+ name: "network-fallback mark 1",
+ entryType: "mark",
+ detail: { foo: 'foo' }
+ },
+ {
+ name: "network-fallback mark 2",
+ entryType: "mark",
+ detail: { bar: 'bar' }
+ },
+ {
+ name: "network-fallback measure",
+ entryType: "measure",
+ detail: { baz: 'baz' }
+ }
+ ];
+ assert_equals(worker_timings.length, expected_worker_timings.length,
+ 'workerTiming is completed when PerformanceResourceTiming is observed');
+
+ for (let i = 0; i < workerTimings.length; i++) {
+ assert_equals(worker_timings[i].name,
+ expected_worker_timings[i].name, 'entry name');
+ assert_equals(worker_timings[i].entryType,
+ expected_worker_timings[i].entryType, 'entry type');
+ assert_object_equals(worker_timings[i].detail,
+ expected_worker_timings[i].detail, 'entry detail');
+ }
+}, 'workerTiming for navigation in a frame with network fallback');
+
+promise_test(async (t) => {
+ const frame= await with_iframe('resources/empty.html?fetch-event');
+ t.add_cleanup(() => frame.remove());
+
+ const performance = frame.contentWindow.performance;
+
+ const entries = await wait_for_performance_entries(
+ frame.src, performance, 'navigation');
+ assert_equals(entries.length, 1, 'PerformanceNavigationTiming is observed');
+
+ const worker_timings = await entries[0].workerTiming;
+ const expected_worker_timings = [
+ {
+ name: "fetch-event mark 1",
+ entryType: "mark",
+ detail: { foo: 'foo' }
+ },
+ {
+ name: "fetch-event mark 2",
+ entryType: "mark",
+ detail: { bar: 'bar' }
+ },
+ {
+ name: "fetch-event measure",
+ entryType: "measure",
+ detail: { baz: 'baz' }
+ }
+ ];
+ assert_equals(worker_timings.length, expected_worker_timings.length,
+ 'workerTiming is completed when PerformanceResourceTiming is observed');
+
+ for (let i = 0; i < workerTimings.length; i++) {
+ assert_equals(worker_timings[i].name,
+ expected_worker_timings[i].name, 'entry name');
+ assert_equals(worker_timings[i].entryType,
+ expected_worker_timings[i].entryType, 'entry type');
+ assert_object_equals(worker_timings[i].detail,
+ expected_worker_timings[i].detail, 'entry detail');
+ }
+}, 'workerTiming for navigation in a frame for a response from a fetch ' +
+ 'handler');
+
+promise_test(async (t) => {
+ const frame = await with_iframe('resources/empty.html');
+ t.add_cleanup(() => frame.remove());
+
+ const performance = frame.contentWindow.performance;
+
+ const image_path = base_path() + 'resources/square.png?fallback';
+ const image_url = get_host_info()['HTTPS_ORIGIN'] + image_path;
+
+ let entries = await performance.getEntriesByName(image_url);
+ assert_equals(entries.length, 0, 'No PerformanceResourceTiming');
+
+ const image = await load_image(frame.contentDocument,
+ 'square.png?fetch-event');
+ entries = await wait_for_performance_entries(
+ image.src, performance, 'resource');
+ assert_equals(entries.length, 1, 'PerformanceResourceTiming is observed');
+
+ const worker_timings = await entries[0].workerTiming;
+ const expected_worker_timings = [
+ {
+ name: "network-fallback mark 1",
+ entryType: "mark",
+ detail: { foo: 'foo' }
+ },
+ {
+ name: "network-fallback mark 2",
+ entryType: "mark",
+ detail: { bar: 'bar' }
+ },
+ {
+ name: "network-fallback measure",
+ entryType: "measure",
+ detail: { baz: 'baz' }
+ }
+ ];
+ assert_equals(worker_timings.length, expected_worker_timings.length,
+ 'workerTiming is completed when PerformanceResourceTiming is observed');
+
+ for (let i = 0; i < workerTimings.length; i++) {
+ assert_equals(worker_timings[i].name,
+ expected_worker_timings[i].name, 'entry name');
+ assert_equals(worker_timings[i].entryType,
+ expected_worker_timings[i].entryType, 'entry type');
+ assert_object_equals(worker_timings[i].detail,
+ expected_worker_timings[i].detail, 'entry detail');
+ }
+}, 'workerTiming for subresources in a frame with network fallback');
+
+promise_test(async (t) => {
+ const frame = await with_iframe('resources/empty.html');
+ t.add_cleanup(() => frame.remove());
+
+ const performance = frame.contentWindow.performance;
+
+ const image_path = base_path() + 'resources/square.png?fetch-event';
+ const image_url = get_host_info()['HTTPS_ORIGIN'] + image_path;
+
+ let entries = await performance.getEntriesByName(image_url);
+ assert_equals(entries.length, 0, 'No PerformanceResourceTiming');
+
+ const image = await load_image(frame.contentDocument,
+ 'square.png?fetch-event');
+ entries = await wait_for_performance_entries(
+ image.src, performance, 'resource');
+ assert_equals(entries.length, 1, 'PerformanceResourceTiming is observed');
+
+ const worker_timings = await entries[0].workerTiming;
+ const expected_worker_timings = [
+ {
+ name: "fetch-event mark 1",
+ entryType: "mark",
+ detail: { foo: 'foo' }
+ },
+ {
+ name: "fetch-event mark 2",
+ entryType: "mark",
+ detail: { bar: 'bar' }
+ },
+ {
+ name: "fetch-event measure",
+ entryType: "measure",
+ detail: { baz: 'baz' }
+ }
+ ];
+ assert_equals(worker_timings.length, expected_worker_timings.length,
+ 'workerTiming is completed when PerformanceResourceTiming is observed');
+
+ for (let i = 0; i < workerTimings.length; i++) {
+ assert_equals(worker_timings[i].name,
+ expected_worker_timings[i].name, 'entry name');
+ assert_equals(worker_timings[i].entryType,
+ expected_worker_timings[i].entryType, 'entry type');
+ assert_object_equals(worker_timings[i].detail,
+ expected_worker_timings[i].detail, 'entry detail');
+ }
+}, 'workerTiming for subresources in a frame for a response from a fetch' +
+ 'handler');
+</script>
diff --git a/tests/wpt/web-platform-tests/service-workers/service-worker/resources/fetch-event-worker-timing.js b/tests/wpt/web-platform-tests/service-workers/service-worker/resources/fetch-event-worker-timing.js
new file mode 100644
index 00000000000..7f3b201ef76
--- /dev/null
+++ b/tests/wpt/web-platform-tests/service-workers/service-worker/resources/fetch-event-worker-timing.js
@@ -0,0 +1,39 @@
+importScripts("/resources/testharness.js");
+
+self.addEventListener('fetch', event => {
+ if (event.request.url.indexOf('fallback') >= 0) {
+ event.addPerformanceEntry(
+ performance.mark("network-fallback mark 1",
+ { detail: { foo: 'foo' } }));
+ event.addPerformanceEntry(
+ performance.mark("network-fallback mark 2",
+ { detail: { bar: 'bar' } }));
+ event.addPerformanceEntry(performance.measure("network-fallback measure",
+ {
+ start: "network-fallback mark 1", end: "network-fallback mark 2",
+ detail: { baz: 'baz' }
+ }));
+ return;
+ } else if (event.request.url.indexOf('fetch-event') >= 0) {
+ event.respondWith((async () => {
+ event.addPerformanceEntry(performance.mark("fetch-event mark 1",
+ { detail: { foo: 'foo' } }));
+ const response = await fetch(event.request);
+
+ event.waitUntil(new Promise((resolve) => {
+ // Add performance entries after settling a promise for respondWith().
+ step_timeout(() => {
+ event.addPerformanceEntry(performance.mark("fetch-event mark 2",
+ { detail: { bar: 'bar' } }));
+ event.addPerformanceEntry(performance.measure("fetch-event measure",
+ {
+ start: "fetch-event mark 1", end: "fetch-event mark 2",
+ detail: { baz: 'baz' }
+ }));
+ resolve();
+ }, 100);
+ }));
+ return response;
+ })());
+ }
+});
diff --git a/tests/wpt/web-platform-tests/storage-access-api/META.yml b/tests/wpt/web-platform-tests/storage-access-api/META.yml
index cb059fe6bb1..83f07857538 100644
--- a/tests/wpt/web-platform-tests/storage-access-api/META.yml
+++ b/tests/wpt/web-platform-tests/storage-access-api/META.yml
@@ -1,2 +1,5 @@
+spec: https://github.com/whatwg/html/issues/3338
suggested_reviewers:
- Brandr0id
+ - ehsan
+ - johnwilander
diff --git a/tests/wpt/web-platform-tests/svg/META.yml b/tests/wpt/web-platform-tests/svg/META.yml
index 0836892864f..ee0fff087c4 100644
--- a/tests/wpt/web-platform-tests/svg/META.yml
+++ b/tests/wpt/web-platform-tests/svg/META.yml
@@ -6,3 +6,4 @@ suggested_reviewers:
- AmeliaBR
- svgeesus
- dirkschulze
+ - fsoder
diff --git a/tests/wpt/web-platform-tests/svg/painting/marker-009-ref.svg b/tests/wpt/web-platform-tests/svg/painting/marker-009-ref.svg
new file mode 100644
index 00000000000..968eba091c5
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/painting/marker-009-ref.svg
@@ -0,0 +1,19 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="500" height="500">
+ <path d="M50,50 h100 v100 z m150,0 h100 v100 z m150,0 h100 v100 z"
+ fill="none" stroke="black" stroke-width="10"
+ />
+ <circle cx="50" cy="50" r="25" fill="green"/>
+ <circle cx="50" cy="50" r="20" fill="skyblue" opacity="0.9"/>
+ <circle cx="150" cy="50" r="20" fill="skyblue" opacity="0.9"/>
+ <circle cx="150" cy="150" r="20" fill="skyblue" opacity="0.9"/>
+
+ <circle cx="200" cy="50" r="20" fill="skyblue" opacity="0.9"/>
+ <circle cx="200" cy="50" r="20" fill="skyblue" opacity="0.9"/>
+ <circle cx="300" cy="50" r="20" fill="skyblue" opacity="0.9"/>
+ <circle cx="300" cy="150" r="20" fill="skyblue" opacity="0.9"/>
+
+ <circle cx="350" cy="50" r="20" fill="skyblue" opacity="0.9"/>
+ <circle cx="350" cy="50" r="15" fill="maroon" opacity="0.85"/>
+ <circle cx="450" cy="50" r="20" fill="skyblue" opacity="0.9"/>
+ <circle cx="450" cy="150" r="20" fill="skyblue" opacity="0.9"/>
+</svg>
diff --git a/tests/wpt/web-platform-tests/svg/painting/marker-009.svg b/tests/wpt/web-platform-tests/svg/painting/marker-009.svg
new file mode 100644
index 00000000000..9e6fe21d917
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/painting/marker-009.svg
@@ -0,0 +1,23 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:html="http://www.w3.org/1999/xhtml" width="500" height="500">
+ <html:link rel="help" href="https://www.w3.org/TR/2016/CR-SVG2-20160915/painting.html#OrientAttribute"/>
+ <html:link rel="match" href="marker-009-ref.svg"/>
+ <html:meta name="assert" content="Tests correct number of markers are drawn on multiple sub-paths"/>
+ <defs>
+ <marker id="m1" markerUnits="userSpaceOnUse" overflow="visible">
+ <circle cx="0" cy="0" r="25" fill="green"/>
+ </marker>
+ <marker id="m2" markerUnits="userSpaceOnUse" overflow="visible">
+ <circle cx="0" cy="0" r="20" fill="skyblue" opacity="0.9"/>
+ </marker>
+ <marker id="m3" markerUnits="userSpaceOnUse" overflow="visible">
+ <circle cx="0" cy="0" r="15" fill="maroon" opacity="0.85"/>
+ </marker>
+ </defs>
+
+ <path d="M50,50 h100 v100 z m150,0 h100 v100 z m150,0 h100 v100 z"
+ fill="none" stroke="black" stroke-width="10"
+ marker-start="url(#m1)"
+ marker-mid="url(#m2)"
+ marker-end="url(#m3)"
+ />
+</svg>
diff --git a/tests/wpt/web-platform-tests/svg/painting/marker-orient-001-ref.svg b/tests/wpt/web-platform-tests/svg/painting/marker-orient-001-ref.svg
new file mode 100644
index 00000000000..e328aa05462
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/painting/marker-orient-001-ref.svg
@@ -0,0 +1,31 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="500" height="500">
+ <defs>
+ <marker id="arrowNW" orient="225" markerUnits="userSpaceOnUse" style="overflow:visible">
+ <path d="M25,0 L 0,-25 L0,25 z" fill="green"/>
+ </marker>
+ <marker id="arrowNE" orient="315" markerUnits="userSpaceOnUse" style="overflow:visible">
+ <path d="M25,0 L 0,-25 L0,25 z" fill="green"/>
+ </marker>
+ <marker id="arrowSE" orient="45" markerUnits="userSpaceOnUse" style="overflow:visible">
+ <path d="M25,0 L 0,-25 L0,25 z" fill="green"/>
+ </marker>
+ <marker id="arrowSW" orient="135" markerUnits="userSpaceOnUse" style="overflow:visible">
+ <path d="M25,0 L 0,-25 L0,25 z" fill="green"/>
+ </marker>
+ <marker id="arrowW" orient="180" markerUnits="userSpaceOnUse" style="overflow:visible">
+ <path d="M25,0 L 0,-25 L0,25 z" fill="green"/>
+ </marker>
+ <marker id="arrowS" orient="90" markerUnits="userSpaceOnUse" style="overflow:visible">
+ <path d="M25,0 L 0,-25 L0,25 z" fill="green"/>
+ </marker>
+ <marker id="arrowAuto" orient="auto" markerUnits="userSpaceOnUse" style="overflow:visible">
+ <path d="M25,0 L 0,-25 L0,25 z" fill="green"/>
+ </marker>
+ </defs>
+ <!-- Test path, with markers -->
+ <path d="M 40,40 l140,140 240,240" marker-start="url(#arrowNW)" marker-mid="url(#arrowSE)" marker-end="url(#arrowSE)" stroke="black" stroke-width="2"/>
+ <path d="M 40,400 l100,-100 100,-100" marker-start="url(#arrowSW)" marker-mid="url(#arrowNE)" marker-end="url(#arrowNE)" stroke="black" stroke-width="2"/>
+ <path d="M 160,40 c40,0 40,0 40,40" marker-start="url(#arrowW)" marker-end="url(#arrowS)" stroke="black" fill="none" stroke-width="2"/>
+ <path d="M 260,140 a 100,100 0 1 1 100,100" marker-start="url(#arrowS)" marker-end="url(#arrowW)" stroke="black" fill="none" stroke-width="2"/>
+ <path d="M 340,100 h50 v50 h-50 z" marker-start="url(#arrowSW)" marker-mid="url(#arrowAuto)" marker-end="url(#arrowNE)" stroke="black" fill="none" stroke-width="2"/>
+</svg>
diff --git a/tests/wpt/web-platform-tests/svg/painting/marker-orient-001.svg b/tests/wpt/web-platform-tests/svg/painting/marker-orient-001.svg
new file mode 100644
index 00000000000..eefb1068391
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/painting/marker-orient-001.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:html="http://www.w3.org/1999/xhtml" width="500" height="500">
+ <html:link rel="help" href="https://www.w3.org/TR/2016/CR-SVG2-20160915/painting.html#OrientAttribute"/>
+ <html:link rel="match" href="marker-orient-001-ref.svg"/>
+ <html:meta name="assert" content="Ensure orientation of auto and auto-start-reverse markers is correct."/>
+ <defs>
+ <marker id="arrow" orient="auto-start-reverse" markerUnits="userSpaceOnUse" style="overflow:visible">
+ <path d="M25,0 L 0,-25 L0,25 z" fill="green"/>
+ </marker>
+ </defs>
+ <!-- Test path, with markers -->
+ <path d="M 40,40 l140,140 240,240" marker-start="url(#arrow)" marker-mid="url(#arrow)" marker-end="url(#arrow)" stroke="black" stroke-width="2"/>
+ <path d="M 40,400 l100,-100 100,-100" marker-start="url(#arrow)" marker-mid="url(#arrow)" marker-end="url(#arrow)" stroke="black" stroke-width="2"/>
+ <path d="M 160,40 c40,0 40,0 40,40" marker-start="url(#arrow)" marker-mid="url(#arrow)" marker-end="url(#arrow)" stroke="black" fill="none" stroke-width="2"/>
+ <path d="M 260,140 a 100,100 0 1 1 100,100" marker-start="url(#arrow)" marker-mid="url(#arrow)" marker-end="url(#arrow)" stroke="black" fill="none" stroke-width="2"/>
+ <path d="M 340,100 h50 v50 h-50 z" marker-start="url(#arrow)" marker-mid="url(#arrow)" marker-end="url(#arrow)" stroke="black" fill="none" stroke-width="2"/>
+</svg>
diff --git a/tests/wpt/web-platform-tests/svg/render/foreignObject-in-non-rendered-getComputedStyle.html b/tests/wpt/web-platform-tests/svg/render/foreignObject-in-non-rendered-getComputedStyle.html
new file mode 100644
index 00000000000..409f1044a33
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/render/foreignObject-in-non-rendered-getComputedStyle.html
@@ -0,0 +1,20 @@
+<!doctype html>
+<title>SVG Test: Resolved width inside non-rendered foreignObject</title>
+<link rel="help" href="https://www.w3.org/TR/SVG2/render.html#Rendered-vs-NonRendered">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<svg>
+ <radialGradient>
+ <pattern>
+ <foreignObject id="foreignObject">
+ <div id="foRoot"></div>
+ </foreignObject>
+ </pattern>
+ </radialGradient>
+</svg>
+<script>
+ test(() => {
+ assert_equals(getComputedStyle(foreignObject).width, "auto", "Non-rendered foreignObject should have width computed to 'auto'.");
+ assert_equals(getComputedStyle(foRoot).width, "auto", "Non-rendered block inside foreignObject should have width computed to 'auto'.");
+ }, "Test that we don't generated boxes for foreignObject in non-rendered SVG.");
+</script>
diff --git a/tests/wpt/web-platform-tests/tools/ci/azure/install_safari.yml b/tests/wpt/web-platform-tests/tools/ci/azure/install_safari.yml
index 10466e3278f..a8641465ac8 100644
--- a/tests/wpt/web-platform-tests/tools/ci/azure/install_safari.yml
+++ b/tests/wpt/web-platform-tests/tools/ci/azure/install_safari.yml
@@ -5,7 +5,7 @@ parameters:
steps:
- ${{ if eq(parameters.channel, 'preview') }}:
- script: |
- HOMEBREW_NO_AUTO_UPDATE=1 brew cask install https://raw.githubusercontent.com/Homebrew/homebrew-cask-versions/master/Casks/safari-technology-preview.rb
+ HOMEBREW_NO_AUTO_UPDATE=1 brew cask install tools/ci/azure/safari-technology-preview.rb
sudo "/Applications/Safari Technology Preview.app/Contents/MacOS/safaridriver" --enable
defaults write com.apple.SafariTechnologyPreview WebKitJavaScriptCanOpenWindowsAutomatically 1
defaults write com.apple.SafariTechnologyPreview ExperimentalServerTimingEnabled 1
diff --git a/tests/wpt/web-platform-tests/tools/ci/azure/safari-technology-preview.rb b/tests/wpt/web-platform-tests/tools/ci/azure/safari-technology-preview.rb
new file mode 100644
index 00000000000..b32739be58a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/tools/ci/azure/safari-technology-preview.rb
@@ -0,0 +1,33 @@
+cask 'safari-technology-preview' do
+ if MacOS.version <= :mojave
+ version '96,061-44056-20191120-ac7bb196-2724-4840-bce9-6c83ecdbfb2c'
+ sha256 'e80ceacdff7e75218365993e5af1c81c9bcc4785291ae00abba3d14ac5614317'
+ else
+ version '96,061-47718-20191120-02bc7569-ee6b-4c28-9ec4-0ceeda3c3c3a'
+ sha256 'bbfcdc36bf9b55aec5838d66e34c41dd3f6a64091406bc38f45c888360f191fe'
+ end
+
+ url "https://secure-appldnld.apple.com/STP/#{version.after_comma}/SafariTechnologyPreview.dmg"
+ appcast 'https://developer.apple.com/safari/download/'
+ name 'Safari Technology Preview'
+ homepage 'https://developer.apple.com/safari/download/'
+
+ auto_updates true
+ depends_on macos: '>= :mojave'
+
+ pkg 'Safari Technology Preview.pkg'
+
+ uninstall delete: '/Applications/Safari Technology Preview.app'
+
+ zap trash: [
+ '~/Library/Application Support/com.apple.sharedfilelist/com.apple.LSSharedFileList.ApplicationRecentDocuments/com.apple.safaritechnologypreview.sfl*',
+ '~/Library/Caches/com.apple.SafariTechnologyPreview',
+ '~/Library/Preferences/com.apple.SafariTechnologyPreview.plist',
+ '~/Library/SafariTechnologyPreview',
+ '~/Library/Saved Application State/com.apple.SafariTechnologyPreview.savedState',
+ '~/Library/SyncedPreferences/com.apple.SafariTechnologyPreview-com.apple.Safari.UserRequests.plist',
+ '~/Library/SyncedPreferences/com.apple.SafariTechnologyPreview-com.apple.Safari.WebFeedSubscriptions.plist',
+ '~/Library/SyncedPreferences/com.apple.SafariTechnologyPreview.plist',
+ '~/Library/WebKit/com.apple.SafariTechnologyPreview',
+ ]
+end
diff --git a/tests/wpt/web-platform-tests/tools/ci/commands.json b/tests/wpt/web-platform-tests/tools/ci/commands.json
index 841fd855c80..c9cd7c45898 100644
--- a/tests/wpt/web-platform-tests/tools/ci/commands.json
+++ b/tests/wpt/web-platform-tests/tools/ci/commands.json
@@ -14,7 +14,7 @@
"virtualenv": false
},
"tc-download": {
- "path": "tcdownload.py",
+ "path": "tc/download.py",
"script": "run",
"parser": "get_parser",
"parse_known": true,
@@ -24,5 +24,27 @@
"requests",
"pygithub"
]
+ },
+ "tc-taskgraph": {
+ "path": "tc/taskgraph.py",
+ "script": "run",
+ "help": "Build the taskgraph",
+ "virtualenv": true,
+ "install": [
+ "requests",
+ "pyyaml"
+ ]
+ },
+ "tc-decision": {
+ "path": "tc/decision.py",
+ "parser": "get_parser",
+ "script": "run",
+ "help": "Run the decision task",
+ "virtualenv": true,
+ "install": [
+ "requests",
+ "pyyaml",
+ "taskcluster"
+ ]
}
}
diff --git a/tests/wpt/web-platform-tests/tools/ci/run_tc.py b/tests/wpt/web-platform-tests/tools/ci/run_tc.py
index be7dbe082a1..b4cb2b01b97 100755
--- a/tests/wpt/web-platform-tests/tools/ci/run_tc.py
+++ b/tests/wpt/web-platform-tests/tools/ci/run_tc.py
@@ -38,7 +38,6 @@ the serialization of a GitHub event payload.
import argparse
import json
import os
-import re
import subprocess
import sys
import tempfile
@@ -99,8 +98,12 @@ def get_parser():
help="Start xvfb")
p.add_argument("--checkout",
help="Revision to checkout before starting job")
- p.add_argument("job",
- help="Name of the job associated with the current event")
+ p.add_argument("--install-certificates", action="store_true", default=None,
+ help="Install web-platform.test certificates to UA store")
+ p.add_argument("--no-install-certificates", action="store_false", default=None,
+ help="Don't install web-platform.test certificates to UA store")
+ p.add_argument("--rev",
+ help="Revision that the task_head ref is expected to point to")
p.add_argument("script",
help="Script to run for the job")
p.add_argument("script_args",
@@ -116,11 +119,17 @@ def start_userspace_oom_killer():
def make_hosts_file():
- subprocess.check_call(["sudo", "sh", "-c", "./wpt make-hosts-file >> /etc/hosts"])
+ run(["sudo", "sh", "-c", "./wpt make-hosts-file >> /etc/hosts"])
def checkout_revision(rev):
- subprocess.check_call(["git", "checkout", "--quiet", rev])
+ run(["git", "checkout", "--quiet", rev])
+
+
+def install_certificates():
+ run(["sudo", "cp", "tools/certs/cacert.pem",
+ "/usr/local/share/ca-certificates/cacert.crt"])
+ run(["sudo", "update-ca-certificates"])
def install_chrome(channel):
@@ -213,29 +222,6 @@ def start_xvfb():
start(["sudo", "fluxbox", "-display", os.environ["DISPLAY"]])
-def get_extra_jobs(event):
- body = None
- jobs = set()
- if "commits" in event and event["commits"]:
- body = event["commits"][0]["message"]
- elif "pull_request" in event:
- body = event["pull_request"]["body"]
-
- if not body:
- return jobs
-
- regexp = re.compile(r"\s*tc-jobs:(.*)$")
-
- for line in body.splitlines():
- m = regexp.match(line)
- if m:
- items = m.group(1)
- for item in items.split(","):
- jobs.add(item.strip())
- break
- return jobs
-
-
def set_variables(event):
# Set some variables that we use to get the commits on the current branch
ref_prefix = "refs/heads/"
@@ -256,23 +242,13 @@ def set_variables(event):
os.environ["GITHUB_BRANCH"] = branch
-def include_job(job):
- # Special case things that unconditionally run on pushes,
- # assuming a higher layer is filtering the required list of branches
- if (os.environ["GITHUB_PULL_REQUEST"] == "false" and
- job == "run-all"):
- return True
-
- jobs_str = run([os.path.join(root, "wpt"),
- "test-jobs"], return_stdout=True)
- print(jobs_str)
- return job in set(jobs_str.splitlines())
-
-
def setup_environment(args):
if args.hosts_file:
make_hosts_file()
+ if args.install_certificates:
+ install_certificates()
+
if "chrome" in args.browser:
assert args.channel is not None
install_chrome(args.channel)
@@ -337,9 +313,33 @@ def fetch_event_data():
return json.loads(event_data)
+def include_job(job):
+ # Only for supporting pre decision-task PRs
+ # Special case things that unconditionally run on pushes,
+ # assuming a higher layer is filtering the required list of branches
+ if "GITHUB_PULL_REQUEST" not in os.environ:
+ return True
+
+ if (os.environ["GITHUB_PULL_REQUEST"] == "false" and
+ job == "run-all"):
+ return True
+
+ jobs_str = run([os.path.join(root, "wpt"),
+ "test-jobs"], return_stdout=True)
+ print(jobs_str)
+ return job in set(jobs_str.splitlines())
+
+
def main():
args = get_parser().parse_args()
+ if args.rev is not None:
+ task_head = run(["git", "rev-parse", "task_head"], return_stdout=True).strip()
+ if task_head != args.rev:
+ print("CRITICAL: task_head points at %s, expected %s. "
+ "This may be because the branch was updated" % (task_head, args.rev))
+ sys.exit(1)
+
if "TASK_EVENT" in os.environ:
event = json.loads(os.environ["TASK_EVENT"])
else:
@@ -350,24 +350,15 @@ def main():
setup_repository()
- extra_jobs = get_extra_jobs(event)
-
- job = args.job
-
- print("Job %s" % job)
-
- run_if = [(lambda: job == "all", "job set to 'all'"),
- (lambda:"all" in extra_jobs, "Manually specified jobs includes 'all'"),
- (lambda:job in extra_jobs, "Manually specified jobs includes '%s'" % job),
- (lambda:include_job(job), "CI required jobs includes '%s'" % job)]
-
- for fn, msg in run_if:
- if fn():
- print(msg)
- break
- else:
- print("Job not scheduled for this push")
- return
+ # Hack for backwards compatibility
+ if args.script in ["run-all", "lint", "update_built", "tools_unittest",
+ "wpt_integration", "resources_unittest",
+ "wptrunner_infrastructure", "stability", "affected_tests"]:
+ job = args.script
+ if not include_job(job):
+ return
+ args.script = args.script_args[0]
+ args.script_args = args.script_args[1:]
# Run the job
setup_environment(args)
diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/README.md b/tests/wpt/web-platform-tests/tools/ci/tc/README.md
new file mode 100644
index 00000000000..11f367f986f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/README.md
@@ -0,0 +1,235 @@
+# Taskgraph Setup
+
+The taskgraph is built from a YAML file. This file has two top-level
+properties: `components` and `tasks`. The full list of tasks is
+defined by the `tasks` object; each task is an object with a single
+property representing the task with the corresponding value an object
+representing the task properties. Each task requires the following
+top-level properties:
+
+* `provisionerId`: String. Name of Taskcluster provisioner
+* `schedulerId`: String. Name of Taskcluster scheduler
+* `deadline`: String. Time until the task expires
+* `image`: String. Name of docker image to use for task
+* `maxRunTime`: Number. Maximum time in seconds for which the task can
+ run.
+* `artifacts`: Object. List of artifacts and directories to upload; see
+ Taskcluster documentation.
+* `command`: String. Command to run. This is automatically wrapped in a
+ run_tc command
+* `options`: Optional Object. Options to pass into run_tc
+ - xvfb: Boolean. Enable Xvfb for run
+ - oom-killer: Boolean. Enable xvfb for run
+ - hosts: Boolean. Update hosts file with wpt hosts before run
+ - install-certificates: Boolean. Install wpt certs into OS
+ certificate store for run
+ - browser: List. List of browser names for run
+ - channel: String. Browser channel for run
+* `trigger`: Object. Conditions on which to consider task. One or more
+ of following properties:
+ - branch: List. List of branch names on which to trigger.
+ - pull-request: No value. Trigger for pull request actions
+* `schedule-if`: Optional Object. Conditions on which task should be
+ scheduled given it meets the trigger conditions.
+ - `run-job`: List. Job names for which this task should be considered,
+ matching the output from `./wpt test-jobs`
+* `env`: Optional Object. Environment variables to set when running task.
+* `depends-on`: Optional list. List of task names that must be complete
+ before the current task is scheduled.
+* `description`: String. Task description.
+* `name`: Optional String. Name to use for the task overriding the
+ property name. This is useful in combination with substitutions
+ described below.
+
+## Task Expansions
+
+Using the above syntax it's possble to describe each task
+directly. But typically in a taskgraph there are many common
+properties between tasks so it's tedious and error prone to repeat
+information that's common to multiple tasks. Therefore the taskgraph
+format provides several mechanisms to reuse partial task definitions
+across multiple tasks.
+
+### Components
+
+The other top-level property in the taskgraph format is
+`components`. The value of this property is an object containing named
+partial task definitions. Each task definition may contain a property called
+`use` which is a list of components to use as the basis for the task
+definition. The components list is evaluated in order. If a property
+is not previously defined in the output it is added to the output. If
+it was previously defined, the value is updated according to the type:
+ * Strings and numbers are replaced with a new value
+ * Lists are extended with the additional values
+ * Objects are updated recursively following the above rules
+This means that types must always match between components and the
+final value.
+
+For example
+```
+components:
+ example-1:
+ list_prop:
+ - first
+ - second
+ object_prop:
+ key1: value1
+ key2: base_value
+ example-2:
+ list_prop:
+ - third
+ - fourth
+ object_prop:
+ key3:
+ - value3-1
+
+tasks:
+ - example-task:
+ use:
+ - example-1
+ - example-2
+ object_prop:
+ key2: value2
+ key3:
+ - value3-2
+```
+
+will evaluate to the following task:
+
+```
+example-task:
+ list_prop:
+ - first
+ - second
+ - third
+ - fourth
+ object_prop:
+ key1: value1
+ key2: value2
+ key3:
+ - value3-1
+ - value3-2
+```
+
+Note that components cannot currently define `use` properties of their own.
+
+## Substitutions
+
+Components and tasks can define a property `vars` that holds variables
+which are later substituted into the task definition using the syntax
+`${vars.property-name}`. For example:
+
+```
+components:
+ generic-component:
+ prop: ${vars.value}
+
+tasks:
+ - first:
+ use:
+ - generic-component
+ vars:
+ value: value1
+ - second:
+ use:
+ - generic-component
+ vars:
+ value: value2
+```
+
+Results in the following tasks:
+
+```
+first:
+ prop: value1
+second:
+ prop: value2
+```
+
+## Maps
+
+Instead of defining a task directly, an item in the tasks property may
+be an object with a single property `$map`. This object itself has two
+child properties; `for` and `do`. The value of `for` is a list of
+objects, and the value of `do` is either an object or a list of
+objects. For each object in the `for` property, a set of tasks is
+created by taking a copy of that object for each task in the `do`
+property, updating the object with the properties from the
+corresponding `do` object, using the same rules as for components
+above, and then processing as for a normal task. `$map` rules can also
+be nested.
+
+Note: Although `$map` shares a name with the `$map` used in json-e
+(used. in `.taskcluster.yml`), the semantics are different.
+
+For example
+
+```
+components: {}
+tasks:
+ $map:
+ for:
+ - vars:
+ example: value1
+ - vars:
+ example: value2
+ do:
+ example-${vars.example}
+ prop: ${vars.example}
+```
+
+Results in the tasks
+
+```
+example-value1:
+ prop: value1
+example-value2:
+ prop: value2
+```
+
+Note that in combination with `$map`, variable substitutions are
+applied *twice*; once after the `$map` is evaluated and once after the
+`use` statements are evaluated.
+
+## Chunks
+
+A common requirements for tasks is that they are "chunked" into N
+partial tasks. This is handled specially in the syntax. A top level
+property `chunks` can be used to define the number of individual
+chunks to create for a specific task. Each chunked task is created
+with a `chunks` property set to an object containing an `id` property
+containing the one-based index of the chunk an a `total` property
+containing the total number of chunks. These can be substituted into
+the task definition using the same syntax as for `vars` above
+e.g. `${chunks.id}`. Note that because task names must be unique, it's
+common to specify a `name` property on the task that will override the
+property name e.g.
+
+```
+components: {}
+tasks:
+ - chunked-task:
+ chunks:2
+ command: "task-run --chunk=${chunks.id} --totalChunks=${chunks.total}"
+ name: task-chunk-${chunks.id}
+```
+
+creates tasks:
+
+```
+task-chunk-1:
+ command: "task-run --chunk=1 --totalChunks=2"
+task-chunk-2:
+ command: "task-run --chunk=2 --totalChunks=2"
+```
+
+# Overall processing model
+
+The overall processing model for tasks is as follows:
+ * Evaluate maps
+ * Perform subsitutions
+ * Evaluate use statements
+ * Expand chunks
+ * Perform subsitutions
+
+At each point after maps are evaluated tasks must have a unique name.
diff --git a/tests/wpt/web-platform-tests/tools/taskcluster/__init__.py b/tests/wpt/web-platform-tests/tools/ci/tc/__init__.py
index e69de29bb2d..e69de29bb2d 100644
--- a/tests/wpt/web-platform-tests/tools/taskcluster/__init__.py
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/__init__.py
diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/decision.py b/tests/wpt/web-platform-tests/tools/ci/tc/decision.py
new file mode 100644
index 00000000000..a3c47aa4049
--- /dev/null
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/decision.py
@@ -0,0 +1,323 @@
+import argparse
+import json
+import logging
+import os
+import re
+import subprocess
+from collections import OrderedDict
+
+import taskcluster
+from six import iteritems, itervalues
+
+from . import taskgraph
+
+
+here = os.path.abspath(os.path.dirname(__file__))
+
+
+logging.basicConfig()
+logger = logging.getLogger()
+
+
+def get_triggers(event):
+ # Set some variables that we use to get the commits on the current branch
+ ref_prefix = "refs/heads/"
+ is_pr = "pull_request" in event
+ branch = None
+ if not is_pr and "ref" in event:
+ branch = event["ref"]
+ if branch.startswith(ref_prefix):
+ branch = branch[len(ref_prefix):]
+
+ return is_pr, branch
+
+
+def fetch_event_data(queue):
+ try:
+ task_id = os.environ["TASK_ID"]
+ except KeyError:
+ logger.warning("Missing TASK_ID environment variable")
+ # For example under local testing
+ return None
+
+ task_data = queue.task(task_id)
+
+ return task_data.get("extra", {}).get("github_event")
+
+
+def filter_triggers(event, all_tasks):
+ is_pr, branch = get_triggers(event)
+ triggered = {}
+ for name, task in iteritems(all_tasks):
+ if "trigger" in task:
+ if is_pr and "pull-request" in task["trigger"]:
+ triggered[name] = task
+ elif branch is not None and "branch" in task["trigger"]:
+ for trigger_branch in task["trigger"]["branch"]:
+ if (trigger_branch == branch or
+ trigger_branch.endswith("*") and branch.startswith(trigger_branch[:-1])):
+ triggered[name] = task
+ logger.info("Triggers match tasks:\n * %s" % "\n * ".join(triggered.keys()))
+ return triggered
+
+
+def get_run_jobs(event):
+ from tools.ci import jobs
+ revish = "%s..%s" % (event["pull_request"]["base"]["sha"]
+ if "pull_request" in event
+ else event["before"],
+ event["pull_request"]["head"]["sha"]
+ if "pull_request" in event
+ else event["after"])
+ logger.info("Looking for changes in range %s" % revish)
+ paths = jobs.get_paths(revish=revish)
+ logger.info("Found changes in paths:%s" % "\n".join(paths))
+ path_jobs = jobs.get_jobs(paths)
+ all_jobs = path_jobs | get_extra_jobs(event)
+ logger.info("Including jobs:\n * %s" % "\n * ".join(all_jobs))
+ return all_jobs
+
+
+def get_extra_jobs(event):
+ body = None
+ jobs = set()
+ if "commits" in event and event["commits"]:
+ body = event["commits"][0]["message"]
+ elif "pull_request" in event:
+ body = event["pull_request"]["body"]
+
+ if not body:
+ return jobs
+
+ regexp = re.compile(r"\s*tc-jobs:(.*)$")
+
+ for line in body.splitlines():
+ m = regexp.match(line)
+ if m:
+ items = m.group(1)
+ for item in items.split(","):
+ jobs.add(item.strip())
+ break
+ return jobs
+
+
+def filter_schedule_if(event, tasks):
+ scheduled = {}
+ run_jobs = None
+ for name, task in iteritems(tasks):
+ if "schedule-if" in task:
+ if "run-job" in task["schedule-if"]:
+ if run_jobs is None:
+ run_jobs = get_run_jobs(event)
+ if "all" in run_jobs or any(item in run_jobs for item in task["schedule-if"]["run-job"]):
+ scheduled[name] = task
+ else:
+ scheduled[name] = task
+ logger.info("Scheduling rules match tasks:\n * %s" % "\n * ".join(scheduled.keys()))
+ return scheduled
+
+
+def get_fetch_rev(event):
+ is_pr, _ = get_triggers(event)
+ if is_pr:
+ # Try to get the actual rev so that all non-decision tasks are pinned to that
+ ref = "refs/pull/%s/merge" % event["pull_request"]["number"]
+ try:
+ output = subprocess.check_output(["git", "ls-remote", "origin", ref])
+ except subprocess.CalledProcessError:
+ import traceback
+ logger.error(traceback.format_exc())
+ logger.error("Failed to get merge commit sha1")
+ return ref, None
+ if not output:
+ logger.error("Failed to get merge commit")
+ return ref, None
+ return ref, output.split()[0]
+ else:
+ return event["ref"], event["after"]
+
+
+def build_full_command(event, task):
+ fetch_ref, fetch_sha = get_fetch_rev(event)
+ cmd_args = {
+ "task_name": task["name"],
+ "repo_url": event["repository"]["clone_url"],
+ "fetch_ref": fetch_ref,
+ "task_cmd": task["command"],
+ "install_str": "",
+ }
+
+ options = task.get("options", {})
+ options_args = []
+ if fetch_sha is not None:
+ options_args.append("--rev=%s" % fetch_sha)
+ if options.get("oom-killer"):
+ options_args.append("--oom-killer")
+ if options.get("xvfb"):
+ options_args.append("--xvfb")
+ if not options.get("hosts"):
+ options_args.append("--no-hosts")
+ else:
+ options_args.append("--hosts")
+ # Check out the expected SHA unless it is overridden (e.g. to base_head).
+ if options.get("checkout"):
+ options_args.append("--checkout=%s" % options["checkout"])
+ else:
+ options_args.append("--checkout=%s" % fetch_sha)
+ for browser in options.get("browser", []):
+ options_args.append("--browser=%s" % browser)
+ if options.get("channel"):
+ options_args.append("--channel=%s" % options["channel"])
+ if options.get("install-certificates"):
+ options_args.append("--install-certificates")
+
+ cmd_args["options_str"] = " ".join(str(item) for item in options_args)
+
+ install_packages = task.get("install")
+ if install_packages:
+ install_items = ["apt update -qqy"]
+ install_items.extend("apt install -qqy %s" % item
+ for item in install_packages)
+ cmd_args["install_str"] = "\n".join("sudo %s;" % item for item in install_items)
+
+ return ["/bin/bash",
+ "--login",
+ "-c",
+ """
+~/start.sh \
+ %(repo_url)s \
+ %(fetch_ref)s;
+%(install_str)s
+cd web-platform-tests;
+./tools/ci/run_tc.py %(options_str)s -- %(task_cmd)s;
+""" % cmd_args]
+
+
+def get_owner(event):
+ pusher = event.get("pusher", {}).get("email", "")
+ if "@" in pusher:
+ return pusher
+ return "web-platform-tests@users.noreply.github.com"
+
+
+def create_tc_task(event, task, taskgroup_id, depends_on_ids):
+ command = build_full_command(event, task)
+ task_id = taskcluster.slugId()
+ task_data = {
+ "taskGroupId": taskgroup_id,
+ "created": taskcluster.fromNowJSON(""),
+ "deadline": taskcluster.fromNowJSON(task["deadline"]),
+ "provisionerId": task["provisionerId"],
+ "schedulerId": task["schedulerId"],
+ "workerType": task["workerType"],
+ "metadata": {
+ "name": task["name"],
+ "description": task.get("description", ""),
+ "owner": get_owner(event),
+ "source": event["repository"]["clone_url"]
+ },
+ "payload": {
+ "artifacts": task.get("artifacts"),
+ "command": command,
+ "image": task.get("image"),
+ "maxRunTime": task.get("maxRunTime"),
+ "env": task.get("env", {}),
+ },
+ "extra": {
+ "github_event": json.dumps(event)
+ }
+ }
+ if depends_on_ids:
+ task_data["dependencies"] = depends_on_ids
+ task_data["requires"] = "all-completed"
+ return task_id, task_data
+
+
+def build_task_graph(event, all_tasks, tasks):
+ task_id_map = OrderedDict()
+ taskgroup_id = os.environ.get("TASK_ID", taskcluster.slugId())
+
+ def add_task(task_name, task):
+ depends_on_ids = []
+ if "depends-on" in task:
+ for depends_name in task["depends-on"]:
+ if depends_name not in task_id_map:
+ add_task(depends_name,
+ all_tasks[depends_name])
+ depends_on_ids.append(task_id_map[depends_name][0])
+ task_id, task_data = create_tc_task(event, task, taskgroup_id, depends_on_ids)
+ task_id_map[task_name] = (task_id, task_data)
+
+ for task_name, task in iteritems(tasks):
+ add_task(task_name, task)
+
+ return task_id_map
+
+
+def create_tasks(queue, task_id_map):
+ for (task_id, task_data) in itervalues(task_id_map):
+ queue.createTask(task_id, task_data)
+
+
+def get_event(queue, event_path):
+ if event_path is not None:
+ try:
+ with open(event_path) as f:
+ event_str = f.read()
+ except IOError:
+ logger.error("Missing event file at path %s" % event_path)
+ raise
+ elif "TASK_EVENT" in os.environ:
+ event_str = os.environ["TASK_EVENT"]
+ else:
+ event_str = fetch_event_data(queue)
+ if not event_str:
+ raise ValueError("Can't find GitHub event definition; for local testing pass --event-path")
+ try:
+ return json.loads(event_str)
+ except ValueError:
+ logger.error("Event was not valid JSON")
+ raise
+
+
+def decide(event):
+ all_tasks = taskgraph.load_tasks_from_path(os.path.join(here, "tasks", "test.yml"))
+
+ triggered_tasks = filter_triggers(event, all_tasks)
+ scheduled_tasks = filter_schedule_if(event, triggered_tasks)
+
+ logger.info("UNSCHEDULED TASKS:\n %s" % "\n ".join(sorted(set(all_tasks.keys()) -
+ set(scheduled_tasks.keys()))))
+ logger.info("SCHEDULED TASKS:\n %s" % "\n ".join(sorted(scheduled_tasks.keys())))
+
+ task_id_map = build_task_graph(event, all_tasks, scheduled_tasks)
+ return task_id_map
+
+
+def get_parser():
+ parser = argparse.ArgumentParser()
+ parser.add_argument("--event-path",
+ help="Path to file containing serialized GitHub event")
+ parser.add_argument("--dry-run", action="store_true",
+ help="Don't actually create the tasks, just output the tasks that "
+ "would be created")
+ parser.add_argument("--tasks-path",
+ help="Path to file in which to write payload for all scheduled tasks")
+ return parser
+
+
+def run(venv, **kwargs):
+ queue = taskcluster.Queue({'rootUrl': os.environ['TASKCLUSTER_PROXY_URL']})
+ event = get_event(queue, event_path=kwargs["event_path"])
+
+ task_id_map = decide(event)
+
+ try:
+ if not kwargs["dry_run"]:
+ create_tasks(queue, task_id_map)
+ else:
+ print(json.dumps(task_id_map, indent=2))
+ finally:
+ if kwargs["tasks_path"]:
+ with open(kwargs["tasks_path"], "w") as f:
+ json.dump(task_id_map, f, indent=2)
diff --git a/tests/wpt/web-platform-tests/tools/ci/tcdownload.py b/tests/wpt/web-platform-tests/tools/ci/tc/download.py
index 256726da7b5..359ec334050 100644
--- a/tests/wpt/web-platform-tests/tools/ci/tcdownload.py
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/download.py
@@ -15,6 +15,7 @@ logger = logging.getLogger("tc-download")
# be https://community-tc.services.mozilla.com)
TASKCLUSTER_ROOT_URL = 'https://taskcluster.net'
+
def get_parser():
parser = argparse.ArgumentParser()
parser.add_argument("--ref", action="store", default="master",
diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/taskgraph.py b/tests/wpt/web-platform-tests/tools/ci/tc/taskgraph.py
new file mode 100644
index 00000000000..6a6cb497f2d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/taskgraph.py
@@ -0,0 +1,170 @@
+import json
+import os
+import re
+from copy import deepcopy
+
+import six
+import yaml
+from six import iteritems
+
+here = os.path.dirname(__file__)
+
+
+def first(iterable):
+ # First item from a list or iterator
+ if not hasattr(iterable, "next"):
+ if hasattr(iterable, "__iter__"):
+ iterable = iter(iterable)
+ else:
+ raise ValueError("Object isn't iterable")
+ return next(iterable)
+
+
+def load_task_file(path):
+ with open(path) as f:
+ return yaml.safe_load(f)
+
+
+def update_recursive(data, update_data):
+ for key, value in iteritems(update_data):
+ if key not in data:
+ data[key] = value
+ else:
+ initial_value = data[key]
+ if isinstance(value, dict):
+ if not isinstance(initial_value, dict):
+ raise ValueError("Variable %s has inconsistent types "
+ "(expected object)" % key)
+ update_recursive(initial_value, value)
+ elif isinstance(value, list):
+ if not isinstance(initial_value, list):
+ raise ValueError("Variable %s has inconsistent types "
+ "(expected list)" % key)
+ initial_value.extend(value)
+ else:
+ data[key] = value
+
+
+def resolve_use(task_data, templates):
+ rv = {}
+ if "use" in task_data:
+ for template_name in task_data["use"]:
+ update_recursive(rv, deepcopy(templates[template_name]))
+ update_recursive(rv, task_data)
+ rv.pop("use", None)
+ return rv
+
+
+def resolve_name(task_data, default_name):
+ if "name" not in task_data:
+ task_data["name"] = default_name
+ return task_data
+
+
+def resolve_chunks(task_data):
+ if "chunks" not in task_data:
+ return [task_data]
+ rv = []
+ total_chunks = task_data["chunks"]
+ for i in range(1, total_chunks + 1):
+ chunk_data = deepcopy(task_data)
+ chunk_data["chunks"] = {"id": i,
+ "total": total_chunks}
+ rv.append(chunk_data)
+ return rv
+
+
+def replace_vars(input_string, variables):
+ # TODO: support replacing as a non-string type?
+ variable_re = re.compile(r"(?<!\\)\${([^}]+)}")
+
+ def replacer(m):
+ var = m.group(1).split(".")
+ repl = variables
+ for part in var:
+ try:
+ repl = repl[part]
+ except Exception:
+ # Don't substitute
+ return m.group(0)
+ return str(repl)
+
+ return variable_re.sub(replacer, input_string)
+
+
+def sub_variables(data, variables):
+ if isinstance(data, six.string_types):
+ return replace_vars(data, variables)
+ if isinstance(data, list):
+ return [sub_variables(item, variables) for item in data]
+ if isinstance(data, dict):
+ return {key: sub_variables(value, variables)
+ for key, value in iteritems(data)}
+ return data
+
+
+def substitute_variables(task):
+ variables = {"vars": task.get("vars", {}),
+ "chunks": task.get("chunks", {})}
+
+ return sub_variables(task, variables)
+
+
+def expand_maps(task):
+ name = first(task.keys())
+ if name != "$map":
+ return [task]
+
+ map_data = task["$map"]
+ if set(map_data.keys()) != set(["for", "do"]):
+ raise ValueError("$map objects must have exactly two properties named 'for' "
+ "and 'do' (got %s)" % ("no properties" if not map_data.keys()
+ else ", ". join(map_data.keys())))
+ rv = []
+ for for_data in map_data["for"]:
+ do_items = map_data["do"]
+ if not isinstance(do_items, list):
+ do_items = expand_maps(do_items)
+ for do_data in do_items:
+ task_data = deepcopy(for_data)
+ if len(do_data.keys()) != 1:
+ raise ValueError("Each item in the 'do' list must be an object "
+ "with a single property")
+ name = first(do_data.keys())
+ update_recursive(task_data, deepcopy(do_data[name]))
+ rv.append({name: task_data})
+ return rv
+
+
+def load_tasks(tasks_data):
+ map_resolved_tasks = {}
+ tasks = []
+
+ for task in tasks_data["tasks"]:
+ if len(task.keys()) != 1:
+ raise ValueError("Each task must be an object with a single property")
+ for task in expand_maps(task):
+ if len(task.keys()) != 1:
+ raise ValueError("Each task must be an object with a single property")
+ name = first(task.keys())
+ data = task[name]
+ new_name = sub_variables(name, {"vars": data.get("vars", {})})
+ if new_name in map_resolved_tasks:
+ raise ValueError("Got duplicate task name %s" % new_name)
+ map_resolved_tasks[new_name] = substitute_variables(data)
+
+ for task_default_name, data in iteritems(map_resolved_tasks):
+ task = resolve_use(data, tasks_data["components"])
+ task = resolve_name(task, task_default_name)
+ tasks.extend(resolve_chunks(task))
+
+ tasks = [substitute_variables(task_data) for task_data in tasks]
+ return {task["name"]: task for task in tasks}
+
+
+def load_tasks_from_path(path):
+ return load_tasks(load_task_file(path))
+
+
+def run(venv, **kwargs):
+ print(json.dumps(load_tasks_from_path(os.path.join(here, "tasks", "test.yml")), indent=2))
diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml b/tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml
new file mode 100644
index 00000000000..a64ef374921
--- /dev/null
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml
@@ -0,0 +1,370 @@
+components:
+ wpt-base:
+ provisionerId: proj-wpt
+ workerType: ci
+ schedulerId: taskcluster-github
+ deadline: "24 hours"
+ image: harjgam/web-platform-tests:0.33
+ maxRunTime: 7200
+ artifacts:
+ public/results:
+ path: /home/test/artifacts
+ type: directory
+
+ wpt-testharness:
+ chunks: 16
+ vars:
+ test-type: testharness
+
+ wpt-reftest:
+ chunks: 5
+ vars:
+ test-type: reftest
+
+ wpt-wdspec:
+ chunks: 1
+ vars:
+ test-type: wdspec
+
+ run-options:
+ options:
+ xvfb: true
+ oom-killer: true
+ hosts: true
+ install-certificates: true
+
+ wpt-run:
+ name: wpt-${vars.browser}-${vars.channel}-${vars.suite}-${chunks.id}
+ options:
+ browser:
+ - ${vars.browser}
+ channel: ${vars.channel}
+ command: >-
+ ./tools/ci/taskcluster-run.py
+ ${vars.browser}
+ --
+ --channel=${vars.channel}
+ --log-wptreport=../artifacts/wpt_report.json
+ --log-wptscreenshot=../artifacts/wpt_screenshot.txt
+ --no-fail-on-unexpected
+ --this-chunk=${chunks.id}
+ --total-chunks=${chunks.total}
+ --test-type=${vars.suite}
+ trigger-master:
+ trigger:
+ branch:
+ - master
+
+ trigger-push:
+ trigger:
+ branch:
+ - triggers/${vars.browser}_${vars.channel}
+
+ trigger-daily:
+ trigger:
+ branch:
+ - epochs/daily
+
+ trigger-weekly:
+ trigger:
+ branch:
+ - epochs/weekly
+
+ trigger-pr:
+ trigger:
+ pull-request:
+
+ browser-firefox:
+ depends-on:
+ - download-firefox-${vars.channel}
+
+ browser-webkitgtk_minibrowser: {}
+
+ browser-chrome: {}
+
+ tox-python2:
+ env:
+ TOXENV: py27
+ PY_COLORS: 0
+
+ tox-python3:
+ env:
+ TOXENV: py36
+ PY_COLORS: 0
+ install:
+ - python3-pip
+
+ tests-affected:
+ options:
+ browser:
+ - ${vars.browser}
+ channel: ${vars.channel}
+ schedule-if:
+ run-job:
+ - affected_tests
+
+tasks:
+ # Run full suites on push
+ - $map:
+ for:
+ - vars:
+ suite: testharness
+ - vars:
+ suite: reftest
+ - vars:
+ suite: wdspec
+ do:
+ $map:
+ for:
+ - vars:
+ browser: firefox
+ channel: nightly
+ use:
+ - trigger-master
+ - trigger-push
+ - vars:
+ browser: firefox
+ channel: beta
+ use:
+ - trigger-weekly
+ - trigger-push
+ - vars:
+ browser: firefox
+ channel: stable
+ use:
+ - trigger-daily
+ - trigger-push
+ - vars:
+ browser: chrome
+ channel: dev
+ use:
+ - trigger-master
+ - trigger-push
+ - vars:
+ browser: chrome
+ channel: beta
+ use:
+ - trigger-weekly
+ - trigger-push
+ - vars:
+ browser: chrome
+ channel: stable
+ use:
+ - trigger-daily
+ - trigger-push
+ - vars:
+ browser: webkitgtk_minibrowser
+ channel: nightly
+ use:
+ - trigger-daily
+ - trigger-push
+ - vars:
+ browser: webkitgtk_minibrowser
+ channel: stable
+ use:
+ - trigger-weekly
+ - trigger-push
+
+ do:
+ - ${vars.browser}-${vars.channel}-${vars.suite}:
+ use:
+ - wpt-base
+ - run-options
+ - wpt-run
+ - browser-${vars.browser}
+ - wpt-${vars.suite}
+ description: >-
+ A subset of WPT's "${vars.suite}" tests (chunk number ${chunks.id}
+ of ${chunks.total}), run in the ${vars.channel} release of
+ ${vars.browser}.
+
+ - $map:
+ for:
+ - vars:
+ browser: firefox
+ channel: nightly
+ - vars:
+ browser: chrome
+ channel: dev
+ do:
+ - wpt-${vars.browser}-${vars.channel}-stability:
+ use:
+ - wpt-base
+ - run-options
+ - browser-${vars.browser}
+ - trigger-pr
+ - tests-affected
+ description: >-
+ Verify that all tests affected by a pull request are stable
+ when executed in ${vars.browser}.
+ command: >-
+ ./tools/ci/taskcluster-run.py
+ --commit-range base_head
+ ${vars.browser}
+ --
+ --channel=${vars.channel}
+ --verify
+
+ - wpt-${vars.browser}-${vars.channel}-results:
+ use:
+ - wpt-base
+ - run-options
+ - browser-${vars.browser}
+ - trigger-pr
+ - tests-affected
+ description: >-
+ Collect results for all tests affected by a pull request in
+ ${vars.browser}.
+ command: >-
+ ./tools/ci/taskcluster-run.py
+ --commit-range base_head
+ ${vars.browser}
+ --
+ --channel=${vars.channel}
+ --no-fail-on-unexpected
+ --log-wptreport=../artifacts/wpt_report.json
+ --log-wptscreenshot=../artifacts/wpt_screenshot.txt
+
+ - wpt-${vars.browser}-${vars.channel}-results-without-changes:
+ use:
+ - wpt-base
+ - run-options
+ - browser-${vars.browser}
+ - trigger-pr
+ - tests-affected
+ options:
+ checkout: base_head
+ description: >-
+ Collect results for all tests affected by a pull request in
+ ${vars.browser} but without the changes in the PR.
+ command: >-
+ ./tools/ci/taskcluster-run.py
+ --commit-range task_head
+ ${vars.browser}
+ --
+ --channel=${vars.channel}
+ --no-fail-on-unexpected
+ --log-wptreport=../artifacts/wpt_report.json
+ --log-wptscreenshot=../artifacts/wpt_screenshot.txt
+ - $map:
+ for:
+ - vars:
+ channel: nightly
+ - vars:
+ channel: beta
+ - vars:
+ channel: stable
+ do:
+ download-firefox-${vars.channel}:
+ use:
+ - wpt-base
+ command: "./wpt install --download-only --destination /home/test/artifacts/ --channel=${vars.channel} firefox browser"
+
+ - lint:
+ use:
+ - wpt-base
+ - trigger-master
+ - trigger-pr
+ description: >-
+ Lint for wpt-specific requirements
+ command: "./wpt lint --all"
+
+ - update-built:
+ use:
+ - wpt-base
+ - trigger-pr
+ schedule-if:
+ run-job:
+ - update_built
+ command: "./tools/ci/ci_built_diff.sh"
+
+ - tools/ unittests (Python 2):
+ use:
+ - wpt-base
+ - trigger-pr
+ - tox-python2
+ description: >-
+ Unit tests for tools running under Python 2.7, excluding wptrunner
+ command: ./tools/ci/ci_tools_unittest.sh
+ env:
+ HYPOTHESIS_PROFILE: ci
+ schedule-if:
+ run-job:
+ - tools_unittest
+
+ - tools/ unittests (Python 3):
+ description: >-
+ Unit tests for tools running under Python 3, excluding wptrunner
+ use:
+ - wpt-base
+ - trigger-pr
+ - tox-python3
+ command: ./tools/ci/ci_tools_unittest.sh
+ env:
+ HYPOTHESIS_PROFILE: ci
+ schedule-if:
+ run-job:
+ - tools_unittest
+
+ - tools/wpt/ tests:
+ description: >-
+ Integration tests for wpt commands
+ use:
+ - wpt-base
+ - trigger-pr
+ - tox-python2
+ command: ./tools/ci/ci_wpt.sh
+ install:
+ - libnss3-tools
+ options:
+ oom-killer: true
+ browser:
+ - firefox
+ - chrome
+ channel: experimental
+ xvfb: true
+ hosts: true
+ schedule-if:
+ run-job:
+ - wpt_integration
+
+ - resources/ tests:
+ description: >-
+ Tests for testharness.js and other files in resources/
+ use:
+ - wpt-base
+ - trigger-pr
+ - tox-python2
+ command: ./tools/ci/ci_resources_unittest.sh
+ options:
+ browser:
+ - firefox
+ xvfb: true
+ hosts: true
+ schedule-if:
+ run-job:
+ - resources_unittest
+
+ - infrastructure/ tests:
+ description: >-
+ Smoketests for wptrunner
+ use:
+ - wpt-base
+ - trigger-pr
+ - tox-python2
+ command: ./tools/ci/ci_wptrunner_infrastructure.sh
+ install:
+ - libnss3-tools
+ - libappindicator1
+ - fonts-liberation
+ options:
+ oom-killer: true
+ browser:
+ - firefox
+ - chrome
+ channel: experimental
+ xvfb: true
+ hosts: false
+ schedule-if:
+ run-job:
+ - wptrunner_infrastructure
diff --git a/tests/wpt/web-platform-tests/tools/taskcluster/testdata/master_push_event.json b/tests/wpt/web-platform-tests/tools/ci/tc/testdata/master_push_event.json
index 8e79f753734..8e79f753734 100644
--- a/tests/wpt/web-platform-tests/tools/taskcluster/testdata/master_push_event.json
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/testdata/master_push_event.json
diff --git a/tests/wpt/web-platform-tests/tools/taskcluster/testdata/pr_event.json b/tests/wpt/web-platform-tests/tools/ci/tc/testdata/pr_event.json
index 5acc1a60102..5acc1a60102 100644
--- a/tests/wpt/web-platform-tests/tools/taskcluster/testdata/pr_event.json
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/testdata/pr_event.json
diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/testdata/pr_event_tests_affected.json b/tests/wpt/web-platform-tests/tools/ci/tc/testdata/pr_event_tests_affected.json
new file mode 100644
index 00000000000..792ea1bccce
--- /dev/null
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/testdata/pr_event_tests_affected.json
@@ -0,0 +1,505 @@
+{
+ "action": "synchronize",
+ "number": 20378,
+ "pull_request": {
+ "url": "https://api.github.com/repos/web-platform-tests/wpt/pulls/20378",
+ "id": 344287920,
+ "node_id": "MDExOlB1bGxSZXF1ZXN0MzQ0Mjg3OTIw",
+ "html_url": "https://github.com/web-platform-tests/wpt/pull/20378",
+ "diff_url": "https://github.com/web-platform-tests/wpt/pull/20378.diff",
+ "patch_url": "https://github.com/web-platform-tests/wpt/pull/20378.patch",
+ "issue_url": "https://api.github.com/repos/web-platform-tests/wpt/issues/20378",
+ "number": 20378,
+ "state": "open",
+ "locked": false,
+ "title": "Migrate more layout instability tests to WPT.",
+ "user": {
+ "login": "chromium-wpt-export-bot",
+ "id": 25752892,
+ "node_id": "MDQ6VXNlcjI1NzUyODky",
+ "avatar_url": "https://avatars1.githubusercontent.com/u/25752892?v=4",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/chromium-wpt-export-bot",
+ "html_url": "https://github.com/chromium-wpt-export-bot",
+ "followers_url": "https://api.github.com/users/chromium-wpt-export-bot/followers",
+ "following_url": "https://api.github.com/users/chromium-wpt-export-bot/following{/other_user}",
+ "gists_url": "https://api.github.com/users/chromium-wpt-export-bot/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/chromium-wpt-export-bot/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/chromium-wpt-export-bot/subscriptions",
+ "organizations_url": "https://api.github.com/users/chromium-wpt-export-bot/orgs",
+ "repos_url": "https://api.github.com/users/chromium-wpt-export-bot/repos",
+ "events_url": "https://api.github.com/users/chromium-wpt-export-bot/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/chromium-wpt-export-bot/received_events",
+ "type": "User",
+ "site_admin": false
+ },
+ "body": "Bug: 984109\nChange-Id: Ie31c63995f63f8acbfa26d97966ffe30016edd3c\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1925447\nCommit-Queue: Steve Kobes \\<skobes@chromium.org>\nReviewed-by: Nicolás Peña Moreno \\<npm@chromium.org>\nCr-Commit-Position: refs/heads/master@{#718648}\n\n",
+ "created_at": "2019-11-21T23:53:58Z",
+ "updated_at": "2019-11-25T15:54:19Z",
+ "closed_at": null,
+ "merged_at": null,
+ "merge_commit_sha": "36726e3e992a83e80608acf47c886fc440390691",
+ "assignee": null,
+ "assignees": [
+
+ ],
+ "requested_reviewers": [
+
+ ],
+ "requested_teams": [
+
+ ],
+ "labels": [
+ {
+ "id": 490891502,
+ "node_id": "MDU6TGFiZWw0OTA4OTE1MDI=",
+ "url": "https://api.github.com/repos/web-platform-tests/wpt/labels/chromium-export",
+ "name": "chromium-export",
+ "color": "4788f4",
+ "default": false,
+ "description": null
+ },
+ {
+ "id": 1363199651,
+ "node_id": "MDU6TGFiZWwxMzYzMTk5NjUx",
+ "url": "https://api.github.com/repos/web-platform-tests/wpt/labels/layout-instability",
+ "name": "layout-instability",
+ "color": "ededed",
+ "default": false,
+ "description": null
+ }
+ ],
+ "milestone": null,
+ "commits_url": "https://api.github.com/repos/web-platform-tests/wpt/pulls/20378/commits",
+ "review_comments_url": "https://api.github.com/repos/web-platform-tests/wpt/pulls/20378/comments",
+ "review_comment_url": "https://api.github.com/repos/web-platform-tests/wpt/pulls/comments{/number}",
+ "comments_url": "https://api.github.com/repos/web-platform-tests/wpt/issues/20378/comments",
+ "statuses_url": "https://api.github.com/repos/web-platform-tests/wpt/statuses/7df84e3f87f05860a2b86d0b80dc3eb06d8e7103",
+ "head": {
+ "label": "web-platform-tests:chromium-export-cl-1925447",
+ "ref": "chromium-export-cl-1925447",
+ "sha": "7df84e3f87f05860a2b86d0b80dc3eb06d8e7103",
+ "user": {
+ "login": "web-platform-tests",
+ "id": 37226233,
+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjM3MjI2MjMz",
+ "avatar_url": "https://avatars0.githubusercontent.com/u/37226233?v=4",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/web-platform-tests",
+ "html_url": "https://github.com/web-platform-tests",
+ "followers_url": "https://api.github.com/users/web-platform-tests/followers",
+ "following_url": "https://api.github.com/users/web-platform-tests/following{/other_user}",
+ "gists_url": "https://api.github.com/users/web-platform-tests/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/web-platform-tests/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/web-platform-tests/subscriptions",
+ "organizations_url": "https://api.github.com/users/web-platform-tests/orgs",
+ "repos_url": "https://api.github.com/users/web-platform-tests/repos",
+ "events_url": "https://api.github.com/users/web-platform-tests/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/web-platform-tests/received_events",
+ "type": "Organization",
+ "site_admin": false
+ },
+ "repo": {
+ "id": 3618133,
+ "node_id": "MDEwOlJlcG9zaXRvcnkzNjE4MTMz",
+ "name": "wpt",
+ "full_name": "web-platform-tests/wpt",
+ "private": false,
+ "owner": {
+ "login": "web-platform-tests",
+ "id": 37226233,
+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjM3MjI2MjMz",
+ "avatar_url": "https://avatars0.githubusercontent.com/u/37226233?v=4",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/web-platform-tests",
+ "html_url": "https://github.com/web-platform-tests",
+ "followers_url": "https://api.github.com/users/web-platform-tests/followers",
+ "following_url": "https://api.github.com/users/web-platform-tests/following{/other_user}",
+ "gists_url": "https://api.github.com/users/web-platform-tests/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/web-platform-tests/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/web-platform-tests/subscriptions",
+ "organizations_url": "https://api.github.com/users/web-platform-tests/orgs",
+ "repos_url": "https://api.github.com/users/web-platform-tests/repos",
+ "events_url": "https://api.github.com/users/web-platform-tests/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/web-platform-tests/received_events",
+ "type": "Organization",
+ "site_admin": false
+ },
+ "html_url": "https://github.com/web-platform-tests/wpt",
+ "description": "Test suites for Web platform specs — including WHATWG, W3C, and others",
+ "fork": false,
+ "url": "https://api.github.com/repos/web-platform-tests/wpt",
+ "forks_url": "https://api.github.com/repos/web-platform-tests/wpt/forks",
+ "keys_url": "https://api.github.com/repos/web-platform-tests/wpt/keys{/key_id}",
+ "collaborators_url": "https://api.github.com/repos/web-platform-tests/wpt/collaborators{/collaborator}",
+ "teams_url": "https://api.github.com/repos/web-platform-tests/wpt/teams",
+ "hooks_url": "https://api.github.com/repos/web-platform-tests/wpt/hooks",
+ "issue_events_url": "https://api.github.com/repos/web-platform-tests/wpt/issues/events{/number}",
+ "events_url": "https://api.github.com/repos/web-platform-tests/wpt/events",
+ "assignees_url": "https://api.github.com/repos/web-platform-tests/wpt/assignees{/user}",
+ "branches_url": "https://api.github.com/repos/web-platform-tests/wpt/branches{/branch}",
+ "tags_url": "https://api.github.com/repos/web-platform-tests/wpt/tags",
+ "blobs_url": "https://api.github.com/repos/web-platform-tests/wpt/git/blobs{/sha}",
+ "git_tags_url": "https://api.github.com/repos/web-platform-tests/wpt/git/tags{/sha}",
+ "git_refs_url": "https://api.github.com/repos/web-platform-tests/wpt/git/refs{/sha}",
+ "trees_url": "https://api.github.com/repos/web-platform-tests/wpt/git/trees{/sha}",
+ "statuses_url": "https://api.github.com/repos/web-platform-tests/wpt/statuses/{sha}",
+ "languages_url": "https://api.github.com/repos/web-platform-tests/wpt/languages",
+ "stargazers_url": "https://api.github.com/repos/web-platform-tests/wpt/stargazers",
+ "contributors_url": "https://api.github.com/repos/web-platform-tests/wpt/contributors",
+ "subscribers_url": "https://api.github.com/repos/web-platform-tests/wpt/subscribers",
+ "subscription_url": "https://api.github.com/repos/web-platform-tests/wpt/subscription",
+ "commits_url": "https://api.github.com/repos/web-platform-tests/wpt/commits{/sha}",
+ "git_commits_url": "https://api.github.com/repos/web-platform-tests/wpt/git/commits{/sha}",
+ "comments_url": "https://api.github.com/repos/web-platform-tests/wpt/comments{/number}",
+ "issue_comment_url": "https://api.github.com/repos/web-platform-tests/wpt/issues/comments{/number}",
+ "contents_url": "https://api.github.com/repos/web-platform-tests/wpt/contents/{+path}",
+ "compare_url": "https://api.github.com/repos/web-platform-tests/wpt/compare/{base}...{head}",
+ "merges_url": "https://api.github.com/repos/web-platform-tests/wpt/merges",
+ "archive_url": "https://api.github.com/repos/web-platform-tests/wpt/{archive_format}{/ref}",
+ "downloads_url": "https://api.github.com/repos/web-platform-tests/wpt/downloads",
+ "issues_url": "https://api.github.com/repos/web-platform-tests/wpt/issues{/number}",
+ "pulls_url": "https://api.github.com/repos/web-platform-tests/wpt/pulls{/number}",
+ "milestones_url": "https://api.github.com/repos/web-platform-tests/wpt/milestones{/number}",
+ "notifications_url": "https://api.github.com/repos/web-platform-tests/wpt/notifications{?since,all,participating}",
+ "labels_url": "https://api.github.com/repos/web-platform-tests/wpt/labels{/name}",
+ "releases_url": "https://api.github.com/repos/web-platform-tests/wpt/releases{/id}",
+ "deployments_url": "https://api.github.com/repos/web-platform-tests/wpt/deployments",
+ "created_at": "2012-03-04T12:58:11Z",
+ "updated_at": "2019-11-25T15:40:59Z",
+ "pushed_at": "2019-11-25T15:54:18Z",
+ "git_url": "git://github.com/web-platform-tests/wpt.git",
+ "ssh_url": "git@github.com:web-platform-tests/wpt.git",
+ "clone_url": "https://github.com/web-platform-tests/wpt.git",
+ "svn_url": "https://github.com/web-platform-tests/wpt",
+ "homepage": "https://web-platform-tests.org/",
+ "size": 329278,
+ "stargazers_count": 2536,
+ "watchers_count": 2536,
+ "language": "HTML",
+ "has_issues": true,
+ "has_projects": true,
+ "has_downloads": true,
+ "has_wiki": true,
+ "has_pages": true,
+ "forks_count": 1837,
+ "mirror_url": null,
+ "archived": false,
+ "disabled": false,
+ "open_issues_count": 1576,
+ "license": {
+ "key": "other",
+ "name": "Other",
+ "spdx_id": "NOASSERTION",
+ "url": null,
+ "node_id": "MDc6TGljZW5zZTA="
+ },
+ "forks": 1837,
+ "open_issues": 1576,
+ "watchers": 2536,
+ "default_branch": "master"
+ }
+ },
+ "base": {
+ "label": "web-platform-tests:master",
+ "ref": "master",
+ "sha": "90ebe5c33c44090271759f8e9dc43d0b5bd0f8f7",
+ "user": {
+ "login": "web-platform-tests",
+ "id": 37226233,
+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjM3MjI2MjMz",
+ "avatar_url": "https://avatars0.githubusercontent.com/u/37226233?v=4",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/web-platform-tests",
+ "html_url": "https://github.com/web-platform-tests",
+ "followers_url": "https://api.github.com/users/web-platform-tests/followers",
+ "following_url": "https://api.github.com/users/web-platform-tests/following{/other_user}",
+ "gists_url": "https://api.github.com/users/web-platform-tests/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/web-platform-tests/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/web-platform-tests/subscriptions",
+ "organizations_url": "https://api.github.com/users/web-platform-tests/orgs",
+ "repos_url": "https://api.github.com/users/web-platform-tests/repos",
+ "events_url": "https://api.github.com/users/web-platform-tests/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/web-platform-tests/received_events",
+ "type": "Organization",
+ "site_admin": false
+ },
+ "repo": {
+ "id": 3618133,
+ "node_id": "MDEwOlJlcG9zaXRvcnkzNjE4MTMz",
+ "name": "wpt",
+ "full_name": "web-platform-tests/wpt",
+ "private": false,
+ "owner": {
+ "login": "web-platform-tests",
+ "id": 37226233,
+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjM3MjI2MjMz",
+ "avatar_url": "https://avatars0.githubusercontent.com/u/37226233?v=4",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/web-platform-tests",
+ "html_url": "https://github.com/web-platform-tests",
+ "followers_url": "https://api.github.com/users/web-platform-tests/followers",
+ "following_url": "https://api.github.com/users/web-platform-tests/following{/other_user}",
+ "gists_url": "https://api.github.com/users/web-platform-tests/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/web-platform-tests/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/web-platform-tests/subscriptions",
+ "organizations_url": "https://api.github.com/users/web-platform-tests/orgs",
+ "repos_url": "https://api.github.com/users/web-platform-tests/repos",
+ "events_url": "https://api.github.com/users/web-platform-tests/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/web-platform-tests/received_events",
+ "type": "Organization",
+ "site_admin": false
+ },
+ "html_url": "https://github.com/web-platform-tests/wpt",
+ "description": "Test suites for Web platform specs — including WHATWG, W3C, and others",
+ "fork": false,
+ "url": "https://api.github.com/repos/web-platform-tests/wpt",
+ "forks_url": "https://api.github.com/repos/web-platform-tests/wpt/forks",
+ "keys_url": "https://api.github.com/repos/web-platform-tests/wpt/keys{/key_id}",
+ "collaborators_url": "https://api.github.com/repos/web-platform-tests/wpt/collaborators{/collaborator}",
+ "teams_url": "https://api.github.com/repos/web-platform-tests/wpt/teams",
+ "hooks_url": "https://api.github.com/repos/web-platform-tests/wpt/hooks",
+ "issue_events_url": "https://api.github.com/repos/web-platform-tests/wpt/issues/events{/number}",
+ "events_url": "https://api.github.com/repos/web-platform-tests/wpt/events",
+ "assignees_url": "https://api.github.com/repos/web-platform-tests/wpt/assignees{/user}",
+ "branches_url": "https://api.github.com/repos/web-platform-tests/wpt/branches{/branch}",
+ "tags_url": "https://api.github.com/repos/web-platform-tests/wpt/tags",
+ "blobs_url": "https://api.github.com/repos/web-platform-tests/wpt/git/blobs{/sha}",
+ "git_tags_url": "https://api.github.com/repos/web-platform-tests/wpt/git/tags{/sha}",
+ "git_refs_url": "https://api.github.com/repos/web-platform-tests/wpt/git/refs{/sha}",
+ "trees_url": "https://api.github.com/repos/web-platform-tests/wpt/git/trees{/sha}",
+ "statuses_url": "https://api.github.com/repos/web-platform-tests/wpt/statuses/{sha}",
+ "languages_url": "https://api.github.com/repos/web-platform-tests/wpt/languages",
+ "stargazers_url": "https://api.github.com/repos/web-platform-tests/wpt/stargazers",
+ "contributors_url": "https://api.github.com/repos/web-platform-tests/wpt/contributors",
+ "subscribers_url": "https://api.github.com/repos/web-platform-tests/wpt/subscribers",
+ "subscription_url": "https://api.github.com/repos/web-platform-tests/wpt/subscription",
+ "commits_url": "https://api.github.com/repos/web-platform-tests/wpt/commits{/sha}",
+ "git_commits_url": "https://api.github.com/repos/web-platform-tests/wpt/git/commits{/sha}",
+ "comments_url": "https://api.github.com/repos/web-platform-tests/wpt/comments{/number}",
+ "issue_comment_url": "https://api.github.com/repos/web-platform-tests/wpt/issues/comments{/number}",
+ "contents_url": "https://api.github.com/repos/web-platform-tests/wpt/contents/{+path}",
+ "compare_url": "https://api.github.com/repos/web-platform-tests/wpt/compare/{base}...{head}",
+ "merges_url": "https://api.github.com/repos/web-platform-tests/wpt/merges",
+ "archive_url": "https://api.github.com/repos/web-platform-tests/wpt/{archive_format}{/ref}",
+ "downloads_url": "https://api.github.com/repos/web-platform-tests/wpt/downloads",
+ "issues_url": "https://api.github.com/repos/web-platform-tests/wpt/issues{/number}",
+ "pulls_url": "https://api.github.com/repos/web-platform-tests/wpt/pulls{/number}",
+ "milestones_url": "https://api.github.com/repos/web-platform-tests/wpt/milestones{/number}",
+ "notifications_url": "https://api.github.com/repos/web-platform-tests/wpt/notifications{?since,all,participating}",
+ "labels_url": "https://api.github.com/repos/web-platform-tests/wpt/labels{/name}",
+ "releases_url": "https://api.github.com/repos/web-platform-tests/wpt/releases{/id}",
+ "deployments_url": "https://api.github.com/repos/web-platform-tests/wpt/deployments",
+ "created_at": "2012-03-04T12:58:11Z",
+ "updated_at": "2019-11-25T15:40:59Z",
+ "pushed_at": "2019-11-25T15:54:18Z",
+ "git_url": "git://github.com/web-platform-tests/wpt.git",
+ "ssh_url": "git@github.com:web-platform-tests/wpt.git",
+ "clone_url": "https://github.com/web-platform-tests/wpt.git",
+ "svn_url": "https://github.com/web-platform-tests/wpt",
+ "homepage": "https://web-platform-tests.org/",
+ "size": 329278,
+ "stargazers_count": 2536,
+ "watchers_count": 2536,
+ "language": "HTML",
+ "has_issues": true,
+ "has_projects": true,
+ "has_downloads": true,
+ "has_wiki": true,
+ "has_pages": true,
+ "forks_count": 1837,
+ "mirror_url": null,
+ "archived": false,
+ "disabled": false,
+ "open_issues_count": 1576,
+ "license": {
+ "key": "other",
+ "name": "Other",
+ "spdx_id": "NOASSERTION",
+ "url": null,
+ "node_id": "MDc6TGljZW5zZTA="
+ },
+ "forks": 1837,
+ "open_issues": 1576,
+ "watchers": 2536,
+ "default_branch": "master"
+ }
+ },
+ "_links": {
+ "self": {
+ "href": "https://api.github.com/repos/web-platform-tests/wpt/pulls/20378"
+ },
+ "html": {
+ "href": "https://github.com/web-platform-tests/wpt/pull/20378"
+ },
+ "issue": {
+ "href": "https://api.github.com/repos/web-platform-tests/wpt/issues/20378"
+ },
+ "comments": {
+ "href": "https://api.github.com/repos/web-platform-tests/wpt/issues/20378/comments"
+ },
+ "review_comments": {
+ "href": "https://api.github.com/repos/web-platform-tests/wpt/pulls/20378/comments"
+ },
+ "review_comment": {
+ "href": "https://api.github.com/repos/web-platform-tests/wpt/pulls/comments{/number}"
+ },
+ "commits": {
+ "href": "https://api.github.com/repos/web-platform-tests/wpt/pulls/20378/commits"
+ },
+ "statuses": {
+ "href": "https://api.github.com/repos/web-platform-tests/wpt/statuses/7df84e3f87f05860a2b86d0b80dc3eb06d8e7103"
+ }
+ },
+ "author_association": "COLLABORATOR",
+ "draft": false,
+ "merged": false,
+ "mergeable": null,
+ "rebaseable": null,
+ "mergeable_state": "unknown",
+ "merged_by": null,
+ "comments": 0,
+ "review_comments": 0,
+ "maintainer_can_modify": false,
+ "commits": 1,
+ "additions": 431,
+ "deletions": 0,
+ "changed_files": 11
+ },
+ "before": "86742511fa37e1e2c1635b77431bd46958ecfb92",
+ "after": "7df84e3f87f05860a2b86d0b80dc3eb06d8e7103",
+ "repository": {
+ "id": 3618133,
+ "node_id": "MDEwOlJlcG9zaXRvcnkzNjE4MTMz",
+ "name": "wpt",
+ "full_name": "web-platform-tests/wpt",
+ "private": false,
+ "owner": {
+ "login": "web-platform-tests",
+ "id": 37226233,
+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjM3MjI2MjMz",
+ "avatar_url": "https://avatars0.githubusercontent.com/u/37226233?v=4",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/web-platform-tests",
+ "html_url": "https://github.com/web-platform-tests",
+ "followers_url": "https://api.github.com/users/web-platform-tests/followers",
+ "following_url": "https://api.github.com/users/web-platform-tests/following{/other_user}",
+ "gists_url": "https://api.github.com/users/web-platform-tests/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/web-platform-tests/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/web-platform-tests/subscriptions",
+ "organizations_url": "https://api.github.com/users/web-platform-tests/orgs",
+ "repos_url": "https://api.github.com/users/web-platform-tests/repos",
+ "events_url": "https://api.github.com/users/web-platform-tests/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/web-platform-tests/received_events",
+ "type": "Organization",
+ "site_admin": false
+ },
+ "html_url": "https://github.com/web-platform-tests/wpt",
+ "description": "Test suites for Web platform specs — including WHATWG, W3C, and others",
+ "fork": false,
+ "url": "https://api.github.com/repos/web-platform-tests/wpt",
+ "forks_url": "https://api.github.com/repos/web-platform-tests/wpt/forks",
+ "keys_url": "https://api.github.com/repos/web-platform-tests/wpt/keys{/key_id}",
+ "collaborators_url": "https://api.github.com/repos/web-platform-tests/wpt/collaborators{/collaborator}",
+ "teams_url": "https://api.github.com/repos/web-platform-tests/wpt/teams",
+ "hooks_url": "https://api.github.com/repos/web-platform-tests/wpt/hooks",
+ "issue_events_url": "https://api.github.com/repos/web-platform-tests/wpt/issues/events{/number}",
+ "events_url": "https://api.github.com/repos/web-platform-tests/wpt/events",
+ "assignees_url": "https://api.github.com/repos/web-platform-tests/wpt/assignees{/user}",
+ "branches_url": "https://api.github.com/repos/web-platform-tests/wpt/branches{/branch}",
+ "tags_url": "https://api.github.com/repos/web-platform-tests/wpt/tags",
+ "blobs_url": "https://api.github.com/repos/web-platform-tests/wpt/git/blobs{/sha}",
+ "git_tags_url": "https://api.github.com/repos/web-platform-tests/wpt/git/tags{/sha}",
+ "git_refs_url": "https://api.github.com/repos/web-platform-tests/wpt/git/refs{/sha}",
+ "trees_url": "https://api.github.com/repos/web-platform-tests/wpt/git/trees{/sha}",
+ "statuses_url": "https://api.github.com/repos/web-platform-tests/wpt/statuses/{sha}",
+ "languages_url": "https://api.github.com/repos/web-platform-tests/wpt/languages",
+ "stargazers_url": "https://api.github.com/repos/web-platform-tests/wpt/stargazers",
+ "contributors_url": "https://api.github.com/repos/web-platform-tests/wpt/contributors",
+ "subscribers_url": "https://api.github.com/repos/web-platform-tests/wpt/subscribers",
+ "subscription_url": "https://api.github.com/repos/web-platform-tests/wpt/subscription",
+ "commits_url": "https://api.github.com/repos/web-platform-tests/wpt/commits{/sha}",
+ "git_commits_url": "https://api.github.com/repos/web-platform-tests/wpt/git/commits{/sha}",
+ "comments_url": "https://api.github.com/repos/web-platform-tests/wpt/comments{/number}",
+ "issue_comment_url": "https://api.github.com/repos/web-platform-tests/wpt/issues/comments{/number}",
+ "contents_url": "https://api.github.com/repos/web-platform-tests/wpt/contents/{+path}",
+ "compare_url": "https://api.github.com/repos/web-platform-tests/wpt/compare/{base}...{head}",
+ "merges_url": "https://api.github.com/repos/web-platform-tests/wpt/merges",
+ "archive_url": "https://api.github.com/repos/web-platform-tests/wpt/{archive_format}{/ref}",
+ "downloads_url": "https://api.github.com/repos/web-platform-tests/wpt/downloads",
+ "issues_url": "https://api.github.com/repos/web-platform-tests/wpt/issues{/number}",
+ "pulls_url": "https://api.github.com/repos/web-platform-tests/wpt/pulls{/number}",
+ "milestones_url": "https://api.github.com/repos/web-platform-tests/wpt/milestones{/number}",
+ "notifications_url": "https://api.github.com/repos/web-platform-tests/wpt/notifications{?since,all,participating}",
+ "labels_url": "https://api.github.com/repos/web-platform-tests/wpt/labels{/name}",
+ "releases_url": "https://api.github.com/repos/web-platform-tests/wpt/releases{/id}",
+ "deployments_url": "https://api.github.com/repos/web-platform-tests/wpt/deployments",
+ "created_at": "2012-03-04T12:58:11Z",
+ "updated_at": "2019-11-25T15:40:59Z",
+ "pushed_at": "2019-11-25T15:54:18Z",
+ "git_url": "git://github.com/web-platform-tests/wpt.git",
+ "ssh_url": "git@github.com:web-platform-tests/wpt.git",
+ "clone_url": "https://github.com/web-platform-tests/wpt.git",
+ "svn_url": "https://github.com/web-platform-tests/wpt",
+ "homepage": "https://web-platform-tests.org/",
+ "size": 329278,
+ "stargazers_count": 2536,
+ "watchers_count": 2536,
+ "language": "HTML",
+ "has_issues": true,
+ "has_projects": true,
+ "has_downloads": true,
+ "has_wiki": true,
+ "has_pages": true,
+ "forks_count": 1837,
+ "mirror_url": null,
+ "archived": false,
+ "disabled": false,
+ "open_issues_count": 1576,
+ "license": {
+ "key": "other",
+ "name": "Other",
+ "spdx_id": "NOASSERTION",
+ "url": null,
+ "node_id": "MDc6TGljZW5zZTA="
+ },
+ "forks": 1837,
+ "open_issues": 1576,
+ "watchers": 2536,
+ "default_branch": "master"
+ },
+ "organization": {
+ "login": "web-platform-tests",
+ "id": 37226233,
+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjM3MjI2MjMz",
+ "url": "https://api.github.com/orgs/web-platform-tests",
+ "repos_url": "https://api.github.com/orgs/web-platform-tests/repos",
+ "events_url": "https://api.github.com/orgs/web-platform-tests/events",
+ "hooks_url": "https://api.github.com/orgs/web-platform-tests/hooks",
+ "issues_url": "https://api.github.com/orgs/web-platform-tests/issues",
+ "members_url": "https://api.github.com/orgs/web-platform-tests/members{/member}",
+ "public_members_url": "https://api.github.com/orgs/web-platform-tests/public_members{/member}",
+ "avatar_url": "https://avatars0.githubusercontent.com/u/37226233?v=4",
+ "description": ""
+ },
+ "sender": {
+ "login": "chromium-wpt-export-bot",
+ "id": 25752892,
+ "node_id": "MDQ6VXNlcjI1NzUyODky",
+ "avatar_url": "https://avatars1.githubusercontent.com/u/25752892?v=4",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/chromium-wpt-export-bot",
+ "html_url": "https://github.com/chromium-wpt-export-bot",
+ "followers_url": "https://api.github.com/users/chromium-wpt-export-bot/followers",
+ "following_url": "https://api.github.com/users/chromium-wpt-export-bot/following{/other_user}",
+ "gists_url": "https://api.github.com/users/chromium-wpt-export-bot/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/chromium-wpt-export-bot/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/chromium-wpt-export-bot/subscriptions",
+ "organizations_url": "https://api.github.com/users/chromium-wpt-export-bot/orgs",
+ "repos_url": "https://api.github.com/users/chromium-wpt-export-bot/repos",
+ "events_url": "https://api.github.com/users/chromium-wpt-export-bot/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/chromium-wpt-export-bot/received_events",
+ "type": "User",
+ "site_admin": false
+ }
+}
diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_decision.py b/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_decision.py
new file mode 100644
index 00000000000..425b5829edd
--- /dev/null
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_decision.py
@@ -0,0 +1,54 @@
+import mock
+import pytest
+
+from tools.ci.tc import decision
+from six import iteritems
+
+
+@pytest.mark.parametrize("run_jobs,tasks,expected", [
+ ([], {"task-no-schedule-if": {}}, ["task-no-schedule-if"]),
+ ([], {"task-schedule-if-no-run-job": {"schedule-if": {}}}, []),
+ (["job"],
+ {"job-present": {"schedule-if": {"run-job": ["other-job", "job"]}}},
+ ["job-present"]),
+ (["job"], {"job-missing": {"schedule-if": {"run-job": ["other-job"]}}}, []),
+ (["all"], {"job-all": {"schedule-if": {"run-job": ["other-job"]}}}, ["job-all"]),
+ (["job"],
+ {"job-1": {"schedule-if": {"run-job": ["job"]}},
+ "job-2": {"schedule-if": {"run-job": ["other-job"]}}},
+ ["job-1"]),
+])
+def test_filter_schedule_if(run_jobs, tasks, expected):
+ with mock.patch("tools.ci.tc.decision.get_run_jobs",
+ return_value=run_jobs) as get_run_jobs:
+ assert (decision.filter_schedule_if({}, tasks) ==
+ {name: tasks[name] for name in expected})
+ get_run_jobs.call_count in (0, 1)
+
+
+@pytest.mark.parametrize("msg,expected", [
+ ("Some initial line\n\ntc-jobs:foo,bar", {"foo", "bar"}),
+ ("Some initial line\n\ntc-jobs:foo, bar", {"foo", "bar"}),
+ ("tc-jobs:foo, bar \nbaz", {"foo", "bar"}),
+ ("tc-jobs:all", {"all"}),
+ ("", set()),
+ ("tc-jobs:foo\ntc-jobs:bar", {"foo"})])
+@pytest.mark.parametrize("event", [
+ {"commits": [{"message": "<message>"}]},
+ {"pull_request": {"body": "<message>"}}
+])
+def test_extra_jobs_pr(msg, expected, event):
+ def sub(obj):
+ """Copy obj, except if it's a string with the value <message>
+ replace it with the value of the msg argument"""
+ if isinstance(obj, dict):
+ return {key: sub(value) for (key, value) in iteritems(obj)}
+ elif isinstance(obj, list):
+ return [sub(value) for value in obj]
+ elif obj == "<message>":
+ return msg
+ return obj
+
+ event = sub(event)
+
+ assert decision.get_extra_jobs(event) == expected
diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_taskgraph.py b/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_taskgraph.py
new file mode 100644
index 00000000000..dd8535bb647
--- /dev/null
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_taskgraph.py
@@ -0,0 +1,146 @@
+import pytest
+import yaml
+
+from tools.ci.tc import taskgraph
+
+@pytest.mark.parametrize("data, update_data, expected", [
+ ({"a": 1}, {"b": 2}, {"a": 1, "b": 2}),
+ ({"a": 1}, {"a": 2}, {"a": 2}),
+ ({"a": [1]}, {"a": [2]}, {"a": [1, 2]}),
+ ({"a": {"b": 1, "c": 2}}, {"a": {"b": 2, "d": 3}}, {"a": {"b": 2, "c": 2, "d": 3}}),
+ ({"a": {"b": [1]}}, {"a": {"b": [2]}}, {"a": {"b": [1, 2]}}),
+]
+)
+def test_update_recursive(data, update_data, expected):
+ taskgraph.update_recursive(data, update_data)
+ assert data == expected
+
+
+def test_use():
+ data = """
+components:
+ component1:
+ a: 1
+ b: [1]
+ c: "c"
+ component2:
+ a: 2
+ b: [2]
+ d: "d"
+tasks:
+ - task1:
+ use:
+ - component1
+ - component2
+ b: [3]
+ c: "e"
+"""
+ tasks_data = yaml.safe_load(data)
+ assert taskgraph.load_tasks(tasks_data) == {
+ "task1": {
+ "a": 2,
+ "b": [1,2,3],
+ "c": "e",
+ "d": "d",
+ "name": "task1"
+ }
+ }
+
+
+def test_var():
+ data = """
+components:
+ component1:
+ a: ${vars.value}
+tasks:
+ - task1:
+ use:
+ - component1
+ vars:
+ value: 1
+"""
+ tasks_data = yaml.safe_load(data)
+ assert taskgraph.load_tasks(tasks_data) == {
+ "task1": {
+ "a": "1",
+ "vars": {"value": 1},
+ "name": "task1"
+ }
+ }
+
+
+def test_map():
+ data = """
+components: {}
+tasks:
+ - $map:
+ for:
+ - vars:
+ a: 1
+ b: [1]
+ - vars:
+ a: 2
+ b: [2]
+ do:
+ - task1-${vars.a}:
+ a: ${vars.a}
+ b: [3]
+ - task2-${vars.a}:
+ a: ${vars.a}
+ b: [4]
+"""
+ tasks_data = yaml.safe_load(data)
+ assert taskgraph.load_tasks(tasks_data) == {
+ "task1-1": {
+ "a": "1",
+ "b": [1, 3],
+ "vars": {"a": 1},
+ "name": "task1-1"
+ },
+ "task1-2": {
+ "a": "2",
+ "b": [2, 3],
+ "vars": {"a": 2},
+ "name": "task1-2"
+ },
+ "task2-1": {
+ "a": "1",
+ "b": [1, 4],
+ "vars": {"a": 1},
+ "name": "task2-1"
+ },
+ "task2-2": {
+ "a": "2",
+ "b": [2, 4],
+ "vars": {"a": 2},
+ "name": "task2-2"
+ },
+
+ }
+
+
+def test_chunks():
+ data = """
+components: {}
+tasks:
+ - task1:
+ name: task1-${chunks.id}
+ chunks: 2
+"""
+ tasks_data = yaml.safe_load(data)
+ assert taskgraph.load_tasks(tasks_data) == {
+ "task1-1": {
+ "name": "task1-1",
+ "chunks": {
+ "id": 1,
+ "total": 2
+ }
+ },
+ "task1-2": {
+ "name": "task1-2",
+ "chunks": {
+ "id": 2,
+ "total": 2
+ }
+ }
+ }
diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py b/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py
new file mode 100644
index 00000000000..9480178206d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py
@@ -0,0 +1,152 @@
+import json
+import os
+
+import jsone
+import mock
+import pytest
+import requests
+import sys
+import yaml
+from jsonschema import validate
+
+from tools.ci.tc import decision
+
+here = os.path.dirname(__file__)
+root = os.path.abspath(os.path.join(here, "..", "..", "..", ".."))
+
+
+def data_path(filename):
+ return os.path.join(here, "..", "testdata", filename)
+
+
+@pytest.mark.xfail(sys.version_info.major == 2,
+ reason="taskcluster library has an encoding bug "
+ "https://github.com/taskcluster/json-e/issues/338")
+def test_verify_taskcluster_yml():
+ """Verify that the json-e in the .taskcluster.yml is valid"""
+ with open(os.path.join(root, ".taskcluster.yml")) as f:
+ template = yaml.safe_load(f)
+
+ events = [("pr_event.json", "github-pull-request", "Pull Request"),
+ ("master_push_event.json", "github-push", "Push to master")]
+
+ for filename, tasks_for, title in events:
+ with open(data_path(filename)) as f:
+ event = json.load(f)
+
+ context = {"tasks_for": tasks_for,
+ "event": event,
+ "as_slugid": lambda x: x}
+
+ jsone.render(template, context)
+
+
+def test_verify_payload():
+ """Verify that the decision task produces tasks with a valid payload"""
+ from tools.ci.tc.decision import decide
+
+ create_task_schema = requests.get(
+ "https://raw.githubusercontent.com/taskcluster/taskcluster/blob/master/services/queue/schemas/v1/create-task-request.yml")
+ create_task_schema = yaml.safe_load(create_task_schema.content)
+
+ payload_schema = requests.get("https://raw.githubusercontent.com/taskcluster/docker-worker/master/schemas/v1/payload.json").json()
+
+ jobs = ["lint",
+ "manifest_upload",
+ "resources_unittest",
+ "tools_unittest",
+ "wpt_integration",
+ "wptrunner_infrastructure",
+ "wptrunner_unittest"]
+
+ for filename in ["pr_event.json", "master_push_event.json"]:
+ with open(data_path(filename)) as f:
+ event = json.load(f)
+
+ with mock.patch("tools.ci.tc.decision.get_fetch_rev", return_value=(event["after"], None)):
+ with mock.patch("tools.ci.tc.decision.get_run_jobs", return_value=set(jobs)):
+ task_id_map = decide(event)
+ for name, (task_id, task_data) in task_id_map.items():
+ try:
+ validate(instance=task_data, schema=create_task_schema)
+ validate(instance=task_data["payload"], schema=payload_schema)
+ except Exception as e:
+ print("Validation failed for task '%s':\n%s" % (name, json.dumps(task_data, indent=2)))
+ raise e
+
+
+@pytest.mark.parametrize("event_path,is_pr,files_changed,expected", [
+ ("master_push_event.json", False, None,
+ {'download-firefox-nightly',
+ 'wpt-firefox-nightly-testharness-1',
+ 'wpt-firefox-nightly-testharness-2',
+ 'wpt-firefox-nightly-testharness-3',
+ 'wpt-firefox-nightly-testharness-4',
+ 'wpt-firefox-nightly-testharness-5',
+ 'wpt-firefox-nightly-testharness-6',
+ 'wpt-firefox-nightly-testharness-7',
+ 'wpt-firefox-nightly-testharness-8',
+ 'wpt-firefox-nightly-testharness-9',
+ 'wpt-firefox-nightly-testharness-10',
+ 'wpt-firefox-nightly-testharness-11',
+ 'wpt-firefox-nightly-testharness-12',
+ 'wpt-firefox-nightly-testharness-13',
+ 'wpt-firefox-nightly-testharness-14',
+ 'wpt-firefox-nightly-testharness-15',
+ 'wpt-firefox-nightly-testharness-16',
+ 'wpt-chrome-dev-testharness-1',
+ 'wpt-chrome-dev-testharness-2',
+ 'wpt-chrome-dev-testharness-3',
+ 'wpt-chrome-dev-testharness-4',
+ 'wpt-chrome-dev-testharness-5',
+ 'wpt-chrome-dev-testharness-6',
+ 'wpt-chrome-dev-testharness-7',
+ 'wpt-chrome-dev-testharness-8',
+ 'wpt-chrome-dev-testharness-9',
+ 'wpt-chrome-dev-testharness-10',
+ 'wpt-chrome-dev-testharness-11',
+ 'wpt-chrome-dev-testharness-12',
+ 'wpt-chrome-dev-testharness-13',
+ 'wpt-chrome-dev-testharness-14',
+ 'wpt-chrome-dev-testharness-15',
+ 'wpt-chrome-dev-testharness-16',
+ 'wpt-firefox-nightly-reftest-1',
+ 'wpt-firefox-nightly-reftest-2',
+ 'wpt-firefox-nightly-reftest-3',
+ 'wpt-firefox-nightly-reftest-4',
+ 'wpt-firefox-nightly-reftest-5',
+ 'wpt-chrome-dev-reftest-1',
+ 'wpt-chrome-dev-reftest-2',
+ 'wpt-chrome-dev-reftest-3',
+ 'wpt-chrome-dev-reftest-4',
+ 'wpt-chrome-dev-reftest-5',
+ 'wpt-firefox-nightly-wdspec-1',
+ 'wpt-chrome-dev-wdspec-1',
+ 'lint'}),
+ ("pr_event.json", True, {".taskcluster.yml",".travis.yml","tools/ci/start.sh"},
+ {'lint',
+ 'tools/ unittests (Python 2)',
+ 'tools/ unittests (Python 3)',
+ 'tools/wpt/ tests',
+ 'resources/ tests',
+ 'infrastructure/ tests'}),
+ # More tests are affected in the actual PR but it shouldn't affect the scheduled tasks
+ ("pr_event_tests_affected.json", True, {"layout-instability/clip-negative-bottom-margin.html",
+ "layout-instability/composited-element-movement.html"},
+ {'download-firefox-nightly',
+ 'wpt-firefox-nightly-stability',
+ 'wpt-firefox-nightly-results',
+ 'wpt-firefox-nightly-results-without-changes',
+ 'wpt-chrome-dev-stability',
+ 'wpt-chrome-dev-results',
+ 'wpt-chrome-dev-results-without-changes',
+ 'lint'}),
+])
+def test_schedule_tasks(event_path, is_pr, files_changed, expected):
+ with mock.patch("tools.ci.tc.decision.get_fetch_rev", return_value=(is_pr, None)):
+ with mock.patch("tools.wpt.testfiles.repo_files_changed",
+ return_value=files_changed):
+ with open(data_path(event_path)) as event_file:
+ event = json.load(event_file)
+ scheduled = decision.decide(event)
+ assert set(scheduled.keys()) == expected
diff --git a/tests/wpt/web-platform-tests/tools/ci/tests/test_run_tc.py b/tests/wpt/web-platform-tests/tools/ci/tests/test_run_tc.py
deleted file mode 100644
index a72dcfe5cfd..00000000000
--- a/tests/wpt/web-platform-tests/tools/ci/tests/test_run_tc.py
+++ /dev/null
@@ -1,33 +0,0 @@
-import pytest
-
-from six import iteritems
-
-from tools.ci import run_tc
-
-
-@pytest.mark.parametrize("msg,expected", [
- ("Some initial line\n\ntc-jobs:foo,bar", {"foo", "bar"}),
- ("Some initial line\n\ntc-jobs:foo, bar", {"foo", "bar"}),
- ("tc-jobs:foo, bar \nbaz", {"foo", "bar"}),
- ("tc-jobs:all", {"all"}),
- ("", set()),
- ("tc-jobs:foo\ntc-jobs:bar", {"foo"})])
-@pytest.mark.parametrize("event", [
- {"commits": [{"message": "<message>"}]},
- {"pull_request": {"body": "<message>"}}
-])
-def test_extra_jobs_pr(msg, expected, event):
- def sub(obj):
- """Copy obj, except if it's a string with the value <message>
- replace it with the value of the msg argument"""
- if isinstance(obj, dict):
- return {key: sub(value) for (key, value) in iteritems(obj)}
- elif isinstance(obj, list):
- return [sub(value) for value in obj]
- elif obj == "<message>":
- return msg
- return obj
-
- event = sub(event)
-
- assert run_tc.get_extra_jobs(event) == expected
diff --git a/tests/wpt/web-platform-tests/tools/docker/frontend.py b/tests/wpt/web-platform-tests/tools/docker/frontend.py
index c4a20734582..976156cf65a 100644
--- a/tests/wpt/web-platform-tests/tools/docker/frontend.py
+++ b/tests/wpt/web-platform-tests/tools/docker/frontend.py
@@ -29,6 +29,8 @@ def run(*args, **kwargs):
build()
args = ["docker", "run"]
+ args.extend(["--security-opt", "seccomp:%s" %
+ os.path.join(wpt_root, "tools", "docker", "seccomp.json")])
if kwargs["privileged"]:
args.append("--privileged")
if kwargs["checkout"]:
diff --git a/tests/wpt/web-platform-tests/tools/docker/seccomp.json b/tests/wpt/web-platform-tests/tools/docker/seccomp.json
new file mode 100644
index 00000000000..8e8274ce328
--- /dev/null
+++ b/tests/wpt/web-platform-tests/tools/docker/seccomp.json
@@ -0,0 +1,798 @@
+{
+ "defaultAction": "SCMP_ACT_ERRNO",
+ "archMap": [
+ {
+ "architecture": "SCMP_ARCH_X86_64",
+ "subArchitectures": [
+ "SCMP_ARCH_X86",
+ "SCMP_ARCH_X32"
+ ]
+ },
+ {
+ "architecture": "SCMP_ARCH_AARCH64",
+ "subArchitectures": [
+ "SCMP_ARCH_ARM"
+ ]
+ },
+ {
+ "architecture": "SCMP_ARCH_MIPS64",
+ "subArchitectures": [
+ "SCMP_ARCH_MIPS",
+ "SCMP_ARCH_MIPS64N32"
+ ]
+ },
+ {
+ "architecture": "SCMP_ARCH_MIPS64N32",
+ "subArchitectures": [
+ "SCMP_ARCH_MIPS",
+ "SCMP_ARCH_MIPS64"
+ ]
+ },
+ {
+ "architecture": "SCMP_ARCH_MIPSEL64",
+ "subArchitectures": [
+ "SCMP_ARCH_MIPSEL",
+ "SCMP_ARCH_MIPSEL64N32"
+ ]
+ },
+ {
+ "architecture": "SCMP_ARCH_MIPSEL64N32",
+ "subArchitectures": [
+ "SCMP_ARCH_MIPSEL",
+ "SCMP_ARCH_MIPSEL64"
+ ]
+ },
+ {
+ "architecture": "SCMP_ARCH_S390X",
+ "subArchitectures": [
+ "SCMP_ARCH_S390"
+ ]
+ }
+ ],
+ "syscalls": [
+ {
+ "names": [
+ "accept",
+ "accept4",
+ "access",
+ "adjtimex",
+ "alarm",
+ "bind",
+ "brk",
+ "capget",
+ "capset",
+ "chdir",
+ "chmod",
+ "chown",
+ "chown32",
+ "clock_getres",
+ "clock_gettime",
+ "clock_nanosleep",
+ "clone",
+ "close",
+ "connect",
+ "copy_file_range",
+ "creat",
+ "dup",
+ "dup2",
+ "dup3",
+ "epoll_create",
+ "epoll_create1",
+ "epoll_ctl",
+ "epoll_ctl_old",
+ "epoll_pwait",
+ "epoll_wait",
+ "epoll_wait_old",
+ "eventfd",
+ "eventfd2",
+ "execve",
+ "execveat",
+ "exit",
+ "exit_group",
+ "faccessat",
+ "fadvise64",
+ "fadvise64_64",
+ "fallocate",
+ "fanotify_mark",
+ "fchdir",
+ "fchmod",
+ "fchmodat",
+ "fchown",
+ "fchown32",
+ "fchownat",
+ "fcntl",
+ "fcntl64",
+ "fdatasync",
+ "fgetxattr",
+ "flistxattr",
+ "flock",
+ "fork",
+ "fremovexattr",
+ "fsetxattr",
+ "fstat",
+ "fstat64",
+ "fstatat64",
+ "fstatfs",
+ "fstatfs64",
+ "fsync",
+ "ftruncate",
+ "ftruncate64",
+ "futex",
+ "futimesat",
+ "getcpu",
+ "getcwd",
+ "getdents",
+ "getdents64",
+ "getegid",
+ "getegid32",
+ "geteuid",
+ "geteuid32",
+ "getgid",
+ "getgid32",
+ "getgroups",
+ "getgroups32",
+ "getitimer",
+ "getpeername",
+ "getpgid",
+ "getpgrp",
+ "getpid",
+ "getppid",
+ "getpriority",
+ "getrandom",
+ "getresgid",
+ "getresgid32",
+ "getresuid",
+ "getresuid32",
+ "getrlimit",
+ "get_robust_list",
+ "getrusage",
+ "getsid",
+ "getsockname",
+ "getsockopt",
+ "get_thread_area",
+ "gettid",
+ "gettimeofday",
+ "getuid",
+ "getuid32",
+ "getxattr",
+ "inotify_add_watch",
+ "inotify_init",
+ "inotify_init1",
+ "inotify_rm_watch",
+ "io_cancel",
+ "ioctl",
+ "io_destroy",
+ "io_getevents",
+ "io_pgetevents",
+ "ioprio_get",
+ "ioprio_set",
+ "io_setup",
+ "io_submit",
+ "io_uring_enter",
+ "io_uring_register",
+ "io_uring_setup",
+ "ipc",
+ "kill",
+ "lchown",
+ "lchown32",
+ "lgetxattr",
+ "link",
+ "linkat",
+ "listen",
+ "listxattr",
+ "llistxattr",
+ "_llseek",
+ "lremovexattr",
+ "lseek",
+ "lsetxattr",
+ "lstat",
+ "lstat64",
+ "madvise",
+ "memfd_create",
+ "mincore",
+ "mkdir",
+ "mkdirat",
+ "mknod",
+ "mknodat",
+ "mlock",
+ "mlock2",
+ "mlockall",
+ "mmap",
+ "mmap2",
+ "mprotect",
+ "mq_getsetattr",
+ "mq_notify",
+ "mq_open",
+ "mq_timedreceive",
+ "mq_timedsend",
+ "mq_unlink",
+ "mremap",
+ "msgctl",
+ "msgget",
+ "msgrcv",
+ "msgsnd",
+ "msync",
+ "munlock",
+ "munlockall",
+ "munmap",
+ "nanosleep",
+ "newfstatat",
+ "_newselect",
+ "open",
+ "openat",
+ "pause",
+ "pipe",
+ "pipe2",
+ "poll",
+ "ppoll",
+ "prctl",
+ "pread64",
+ "preadv",
+ "preadv2",
+ "prlimit64",
+ "pselect6",
+ "pwrite64",
+ "pwritev",
+ "pwritev2",
+ "read",
+ "readahead",
+ "readlink",
+ "readlinkat",
+ "readv",
+ "recv",
+ "recvfrom",
+ "recvmmsg",
+ "recvmsg",
+ "remap_file_pages",
+ "removexattr",
+ "rename",
+ "renameat",
+ "renameat2",
+ "restart_syscall",
+ "rmdir",
+ "rt_sigaction",
+ "rt_sigpending",
+ "rt_sigprocmask",
+ "rt_sigqueueinfo",
+ "rt_sigreturn",
+ "rt_sigsuspend",
+ "rt_sigtimedwait",
+ "rt_tgsigqueueinfo",
+ "sched_getaffinity",
+ "sched_getattr",
+ "sched_getparam",
+ "sched_get_priority_max",
+ "sched_get_priority_min",
+ "sched_getscheduler",
+ "sched_rr_get_interval",
+ "sched_setaffinity",
+ "sched_setattr",
+ "sched_setparam",
+ "sched_setscheduler",
+ "sched_yield",
+ "seccomp",
+ "select",
+ "semctl",
+ "semget",
+ "semop",
+ "semtimedop",
+ "send",
+ "sendfile",
+ "sendfile64",
+ "sendmmsg",
+ "sendmsg",
+ "sendto",
+ "setfsgid",
+ "setfsgid32",
+ "setfsuid",
+ "setfsuid32",
+ "setgid",
+ "setgid32",
+ "setgroups",
+ "setgroups32",
+ "setitimer",
+ "setpgid",
+ "setpriority",
+ "setregid",
+ "setregid32",
+ "setresgid",
+ "setresgid32",
+ "setresuid",
+ "setresuid32",
+ "setreuid",
+ "setreuid32",
+ "setrlimit",
+ "set_robust_list",
+ "setsid",
+ "setsockopt",
+ "set_thread_area",
+ "set_tid_address",
+ "setuid",
+ "setuid32",
+ "setxattr",
+ "shmat",
+ "shmctl",
+ "shmdt",
+ "shmget",
+ "shutdown",
+ "sigaltstack",
+ "signalfd",
+ "signalfd4",
+ "sigprocmask",
+ "sigreturn",
+ "socket",
+ "socketcall",
+ "socketpair",
+ "splice",
+ "stat",
+ "stat64",
+ "statfs",
+ "statfs64",
+ "statx",
+ "symlink",
+ "symlinkat",
+ "sync",
+ "sync_file_range",
+ "syncfs",
+ "sysinfo",
+ "tee",
+ "tgkill",
+ "time",
+ "timer_create",
+ "timer_delete",
+ "timerfd_create",
+ "timerfd_gettime",
+ "timerfd_settime",
+ "timer_getoverrun",
+ "timer_gettime",
+ "timer_settime",
+ "times",
+ "tkill",
+ "truncate",
+ "truncate64",
+ "ugetrlimit",
+ "umask",
+ "uname",
+ "unlink",
+ "unlinkat",
+ "unshare",
+ "utime",
+ "utimensat",
+ "utimes",
+ "vfork",
+ "vmsplice",
+ "wait4",
+ "waitid",
+ "waitpid",
+ "write",
+ "writev"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": null,
+ "excludes": null
+ },
+ {
+ "names": [
+ "ptrace"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": null,
+ "comment": "",
+ "includes": {
+ "minKernel": "4.8"
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "personality"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [
+ {
+ "index": 0,
+ "value": 0,
+ "valueTwo": 0,
+ "op": "SCMP_CMP_EQ"
+ }
+ ],
+ "comment": "",
+ "includes": null,
+ "excludes": null
+ },
+ {
+ "names": [
+ "personality"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [
+ {
+ "index": 0,
+ "value": 8,
+ "valueTwo": 0,
+ "op": "SCMP_CMP_EQ"
+ }
+ ],
+ "comment": "",
+ "includes": null,
+ "excludes": null
+ },
+ {
+ "names": [
+ "personality"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [
+ {
+ "index": 0,
+ "value": 131072,
+ "valueTwo": 0,
+ "op": "SCMP_CMP_EQ"
+ }
+ ],
+ "comment": "",
+ "includes": null,
+ "excludes": null
+ },
+ {
+ "names": [
+ "personality"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [
+ {
+ "index": 0,
+ "value": 131080,
+ "valueTwo": 0,
+ "op": "SCMP_CMP_EQ"
+ }
+ ],
+ "comment": "",
+ "includes": null,
+ "excludes": null
+ },
+ {
+ "names": [
+ "personality"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [
+ {
+ "index": 0,
+ "value": 4294967295,
+ "valueTwo": 0,
+ "op": "SCMP_CMP_EQ"
+ }
+ ],
+ "comment": "",
+ "includes": null,
+ "excludes": null
+ },
+ {
+ "names": [
+ "sync_file_range2"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "arches": [
+ "ppc64le"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "arm_fadvise64_64",
+ "arm_sync_file_range",
+ "sync_file_range2",
+ "breakpoint",
+ "cacheflush",
+ "set_tls"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "arches": [
+ "arm",
+ "arm64"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "arch_prctl"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "arches": [
+ "amd64",
+ "x32"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "modify_ldt"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "arches": [
+ "amd64",
+ "x32",
+ "x86"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "s390_pci_mmio_read",
+ "s390_pci_mmio_write",
+ "s390_runtime_instr"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "arches": [
+ "s390",
+ "s390x"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "open_by_handle_at"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_DAC_READ_SEARCH"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "bpf",
+ "fanotify_init",
+ "lookup_dcookie",
+ "mount",
+ "name_to_handle_at",
+ "perf_event_open",
+ "quotactl",
+ "setdomainname",
+ "sethostname",
+ "setns",
+ "syslog",
+ "umount",
+ "umount2"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_SYS_ADMIN"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "clone"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [
+ {
+ "index": 0,
+ "value": 2114060288,
+ "valueTwo": 0,
+ "op": "SCMP_CMP_MASKED_EQ"
+ }
+ ],
+ "comment": "",
+ "includes": null,
+ "excludes": {
+ "caps": [
+ "CAP_SYS_ADMIN"
+ ],
+ "arches": [
+ "s390",
+ "s390x"
+ ]
+ }
+ },
+ {
+ "names": [
+ "clone"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [
+ {
+ "index": 1,
+ "value": 2114060288,
+ "valueTwo": 0,
+ "op": "SCMP_CMP_MASKED_EQ"
+ }
+ ],
+ "comment": "s390 parameter ordering for clone is different",
+ "includes": {
+ "arches": [
+ "s390",
+ "s390x"
+ ]
+ },
+ "excludes": {
+ "caps": [
+ "CAP_SYS_ADMIN"
+ ]
+ }
+ },
+ {
+ "names": [
+ "reboot"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_SYS_BOOT"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "chroot"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_SYS_CHROOT"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "delete_module",
+ "init_module",
+ "finit_module",
+ "query_module"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_SYS_MODULE"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "acct"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_SYS_PACCT"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "kcmp",
+ "process_vm_readv",
+ "process_vm_writev",
+ "ptrace"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_SYS_PTRACE"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "iopl",
+ "ioperm"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_SYS_RAWIO"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "settimeofday",
+ "stime",
+ "clock_settime"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_SYS_TIME"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "vhangup"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_SYS_TTY_CONFIG"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "get_mempolicy",
+ "mbind",
+ "set_mempolicy"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_SYS_NICE"
+ ]
+ },
+ "excludes": null
+ },
+ {
+ "names": [
+ "syslog"
+ ],
+ "action": "SCMP_ACT_ALLOW",
+ "args": [],
+ "comment": "",
+ "includes": {
+ "caps": [
+ "CAP_SYSLOG"
+ ]
+ },
+ "excludes": null
+ }
+ ]
+}
diff --git a/tests/wpt/web-platform-tests/tools/lint/lint.py b/tests/wpt/web-platform-tests/tools/lint/lint.py
index 7689c359928..c7c0197213c 100644
--- a/tests/wpt/web-platform-tests/tools/lint/lint.py
+++ b/tests/wpt/web-platform-tests/tools/lint/lint.py
@@ -844,6 +844,7 @@ def create_parser():
help="Output markdown")
parser.add_argument("--repo-root", help="The WPT directory. Use this"
"option if the lint script exists outside the repository")
+ parser.add_argument("--ignore-glob", help="Additional file glob to ignore.")
parser.add_argument("--all", action="store_true", help="If no paths are passed, try to lint the whole "
"working directory, not just files that changed")
return parser
@@ -867,17 +868,22 @@ def main(**kwargs):
paths = lint_paths(kwargs, repo_root)
- return lint(repo_root, paths, output_format)
+ ignore_glob = kwargs.get(str("ignore_glob")) or str()
+ return lint(repo_root, paths, output_format, str(ignore_glob))
-def lint(repo_root, paths, output_format):
- # type: (str, List[str], str) -> int
+
+def lint(repo_root, paths, output_format, ignore_glob=str()):
+ # type: (str, List[str], str, str) -> int
error_count = defaultdict(int) # type: Dict[Text, int]
last = None
with open(os.path.join(repo_root, "lint.whitelist")) as f:
whitelist, ignored_files = parse_whitelist(f)
+ if ignore_glob:
+ ignored_files.add(ignore_glob)
+
output_errors = {"json": output_errors_json,
"markdown": output_errors_markdown,
"normal": output_errors_text}[output_format]
diff --git a/tests/wpt/web-platform-tests/tools/lint/tests/test_lint.py b/tests/wpt/web-platform-tests/tools/lint/tests/test_lint.py
index dbd4708cdc9..af2b7d3d4aa 100644
--- a/tests/wpt/web-platform-tests/tools/lint/tests/test_lint.py
+++ b/tests/wpt/web-platform-tests/tools/lint/tests/test_lint.py
@@ -398,6 +398,29 @@ def test_check_css_globally_unique_ignored_dir(caplog):
assert caplog.text == ""
+def test_ignore_glob(caplog):
+ # Lint two files in the ref/ directory, and pass in ignore_glob to omit one
+ # of them.
+ # When we omit absolute.html, no lint errors appear since the other file is
+ # clean.
+ with _mock_lint("check_path") as mocked_check_path:
+ with _mock_lint("check_file_contents") as mocked_check_file_contents:
+ rv = lint(_dummy_repo, ["ref/absolute.html", "ref/existent_relative.html"], "normal", "*solu*")
+ assert rv == 0
+ # Also confirm that only one file is checked
+ assert mocked_check_path.call_count == 1
+ assert mocked_check_file_contents.call_count == 1
+ assert caplog.text == ""
+ # However, linting the same two files without ignore_glob yields lint errors.
+ with _mock_lint("check_path") as mocked_check_path:
+ with _mock_lint("check_file_contents") as mocked_check_file_contents:
+ rv = lint(_dummy_repo, ["ref/absolute.html", "ref/existent_relative.html"], "normal")
+ assert rv == 1
+ assert mocked_check_path.call_count == 2
+ assert mocked_check_file_contents.call_count == 2
+ assert "ABSOLUTE-URL-REF" in caplog.text
+
+
def test_all_filesystem_paths():
with mock.patch(
'tools.lint.lint.walk',
@@ -443,7 +466,8 @@ def test_main_with_args():
m.assert_called_once_with(repo_root,
[os.path.relpath(os.path.join(os.getcwd(), x), repo_root)
for x in ['a', 'b', 'c']],
- "normal")
+ "normal",
+ str())
finally:
sys.argv = orig_argv
@@ -455,7 +479,7 @@ def test_main_no_args():
with _mock_lint('lint', return_value=True) as m:
with _mock_lint('changed_files', return_value=['foo', 'bar']):
lint_mod.main(**vars(create_parser().parse_args()))
- m.assert_called_once_with(repo_root, ['foo', 'bar'], "normal")
+ m.assert_called_once_with(repo_root, ['foo', 'bar'], "normal", str())
finally:
sys.argv = orig_argv
@@ -467,6 +491,6 @@ def test_main_all():
with _mock_lint('lint', return_value=True) as m:
with _mock_lint('all_filesystem_paths', return_value=['foo', 'bar']):
lint_mod.main(**vars(create_parser().parse_args()))
- m.assert_called_once_with(repo_root, ['foo', 'bar'], "normal")
+ m.assert_called_once_with(repo_root, ['foo', 'bar'], "normal", str())
finally:
sys.argv = orig_argv
diff --git a/tests/wpt/web-platform-tests/tools/taskcluster/commands.json b/tests/wpt/web-platform-tests/tools/taskcluster/commands.json
deleted file mode 100644
index dcbd8961fc2..00000000000
--- a/tests/wpt/web-platform-tests/tools/taskcluster/commands.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "tc-verify": {"path": "verify.py", "script": "run", "parser": "create_parser", "help": "Verify .taskcluster.yml file is parsable",
- "virtualenv": true, "install": ["json-e", "pyyaml"]}
-}
diff --git a/tests/wpt/web-platform-tests/tools/taskcluster/verify.py b/tests/wpt/web-platform-tests/tools/taskcluster/verify.py
deleted file mode 100644
index b37e45ec74c..00000000000
--- a/tests/wpt/web-platform-tests/tools/taskcluster/verify.py
+++ /dev/null
@@ -1,37 +0,0 @@
-import argparse
-import json
-import os
-
-import jsone
-import yaml
-
-here = os.path.dirname(__file__)
-root = os.path.abspath(os.path.join(here, "..", ".."))
-
-
-def create_parser():
- return argparse.ArgumentParser()
-
-
-def run(venv, **kwargs):
- with open(os.path.join(root, ".taskcluster.yml")) as f:
- template = yaml.safe_load(f)
-
- events = [("pr_event.json", "github-pull-request", "Pull Request"),
- ("master_push_event.json", "github-push", "Push to master")]
-
- for filename, tasks_for, title in events:
- with open(os.path.join(here, "testdata", filename)) as f:
- event = json.load(f)
-
- context = {"tasks_for": tasks_for,
- "event": event,
- "as_slugid": lambda x: x}
-
- data = jsone.render(template, context)
- heading = "Got %s tasks for %s" % (len(data["tasks"]), title)
- print(heading)
- print("=" * len(heading))
- for item in data["tasks"]:
- print(json.dumps(item, indent=2))
- print("")
diff --git a/tests/wpt/web-platform-tests/tools/tox.ini b/tests/wpt/web-platform-tests/tools/tox.ini
index 7a5c1eb648a..e8673db0a69 100644
--- a/tests/wpt/web-platform-tests/tools/tox.ini
+++ b/tests/wpt/web-platform-tests/tools/tox.ini
@@ -8,8 +8,11 @@ deps =
pytest-cov
mock
hypothesis
- # `requests` is required by `pr_preview.py`
requests
+ taskcluster
+ pyyaml
+ json-e
+ jsonschema
commands = pytest {posargs}
diff --git a/tests/wpt/web-platform-tests/tools/wpt/browser.py b/tests/wpt/web-platform-tests/tools/wpt/browser.py
index e7d57d8638c..a94d5509cc8 100644
--- a/tests/wpt/web-platform-tests/tools/wpt/browser.py
+++ b/tests/wpt/web-platform-tests/tools/wpt/browser.py
@@ -48,6 +48,11 @@ class Browser(object):
self.logger = logger
@abstractmethod
+ def download(self, dest=None, channel=None):
+ """Download a package or installer for the browser"""
+ return NotImplemented
+
+ @abstractmethod
def install(self, dest=None):
"""Install the browser."""
return NotImplemented
@@ -116,11 +121,19 @@ class Firefox(Browser):
return "%s%s" % (self.platform, bits)
- def install(self, dest=None, channel="nightly"):
- """Install Firefox."""
+ def _get_dest(self, dest, channel):
+ if dest is None:
+ # os.getcwd() doesn't include the venv path
+ dest = os.path.join(os.getcwd(), "_venv")
- import mozinstall
+ dest = os.path.join(dest, "browsers", channel)
+ if not os.path.exists(dest):
+ os.makedirs(dest)
+
+ return dest
+
+ def download(self, dest=None, channel="nightly"):
product = {
"nightly": "firefox-nightly-latest-ssl",
"beta": "firefox-beta-latest-ssl",
@@ -136,21 +149,15 @@ class Firefox(Browser):
}
os_key = (self.platform, uname[4])
+ if dest is None:
+ dest = self._get_dest(None, channel)
+
if channel not in product:
raise ValueError("Unrecognised release channel: %s" % channel)
if os_key not in os_builds:
raise ValueError("Unsupported platform: %s %s" % os_key)
- if dest is None:
- # os.getcwd() doesn't include the venv path
- dest = os.path.join(os.getcwd(), "_venv")
-
- dest = os.path.join(dest, "browsers", channel)
-
- if not os.path.exists(dest):
- os.makedirs(dest)
-
url = "https://download.mozilla.org/?product=%s&os=%s&lang=en-US" % (product[channel],
os_builds[os_key])
self.logger.info("Downloading Firefox from %s" % url)
@@ -175,6 +182,18 @@ class Firefox(Browser):
with open(installer_path, "wb") as f:
f.write(resp.content)
+ return installer_path
+
+ def install(self, dest=None, channel="nightly"):
+ """Install Firefox."""
+ import mozinstall
+
+ dest = self._get_dest(dest, channel)
+
+ filename = os.path.basename(dest)
+
+ installer_path = self.download(dest, channel)
+
try:
mozinstall.install(installer_path, dest)
except mozinstall.mozinstall.InstallError:
@@ -422,7 +441,7 @@ class FirefoxAndroid(Browser):
product = "firefox_android"
requirements = "requirements_firefox.txt"
- def install(self, dest=None, channel=None):
+ def download(self, dest=None, channel=None):
if dest is None:
dest = os.pwd
@@ -452,6 +471,9 @@ class FirefoxAndroid(Browser):
return apk_path
+ def install(self, dest=None, channel=None):
+ return self.download(dest, channel)
+
def install_prefs(self, binary, dest=None, channel=None):
fx_browser = Firefox(self.logger)
return fx_browser.install_prefs(binary, dest, channel)
@@ -478,6 +500,9 @@ class Chrome(Browser):
product = "chrome"
requirements = "requirements_chrome.txt"
+ def download(self, dest=None, channel=None):
+ raise NotImplementedError
+
def install(self, dest=None, channel=None):
raise NotImplementedError
@@ -633,6 +658,9 @@ class ChromeAndroidBase(Browser):
super(ChromeAndroidBase, self).__init__(logger)
self.device_serial = None
+ def download(self, dest=None, channel=None):
+ raise NotImplementedError
+
def install(self, dest=None, channel=None):
raise NotImplementedError
@@ -724,6 +752,9 @@ class ChromeiOS(Browser):
product = "chrome_ios"
requirements = "requirements_chrome_ios.txt"
+ def download(self, dest=None, channel=None):
+ raise NotImplementedError
+
def install(self, dest=None, channel=None):
raise NotImplementedError
@@ -757,6 +788,9 @@ class Opera(Browser):
self.logger.warning("Unable to find the browser binary.")
return None
+ def download(self, dest=None, channel=None):
+ raise NotImplementedError
+
def install(self, dest=None, channel=None):
raise NotImplementedError
@@ -826,6 +860,9 @@ class EdgeChromium(Browser):
edgedriver_name = "msedgedriver"
requirements = "requirements_edge_chromium.txt"
+ def download(self, dest=None, channel=None):
+ raise NotImplementedError
+
def install(self, dest=None, channel=None):
raise NotImplementedError
@@ -922,6 +959,9 @@ class Edge(Browser):
product = "edge"
requirements = "requirements_edge.txt"
+ def download(self, dest=None, channel=None):
+ raise NotImplementedError
+
def install(self, dest=None, channel=None):
raise NotImplementedError
@@ -953,6 +993,9 @@ class InternetExplorer(Browser):
product = "ie"
requirements = "requirements_ie.txt"
+ def download(self, dest=None, channel=None):
+ raise NotImplementedError
+
def install(self, dest=None, channel=None):
raise NotImplementedError
@@ -978,6 +1021,9 @@ class Safari(Browser):
product = "safari"
requirements = "requirements_safari.txt"
+ def download(self, dest=None, channel=None):
+ raise NotImplementedError
+
def install(self, dest=None, channel=None):
raise NotImplementedError
@@ -1037,17 +1083,33 @@ class Servo(Browser):
return (platform, extension, decompress)
- def install(self, dest=None, channel="nightly"):
- """Install latest Browser Engine."""
+ def _get(self, channel="nightly"):
if channel != "nightly":
raise ValueError("Only nightly versions of Servo are available")
+
+ platform, extension, _ = self.platform_components()
+ url = "https://download.servo.org/nightly/%s/servo-latest%s" % (platform, extension)
+ return get(url)
+
+ def download(self, dest=None, channel="nightly"):
if dest is None:
dest = os.pwd
- platform, extension, decompress = self.platform_components()
- url = "https://download.servo.org/nightly/%s/servo-latest%s" % (platform, extension)
+ resp = self._get(dest, channel)
+ _, extension, _ = self.platform_components()
+
+ with open(os.path.join(dest, "servo-latest%s" % (extension,)), "w") as f:
+ f.write(resp.content)
+
+ def install(self, dest=None, channel="nightly"):
+ """Install latest Browser Engine."""
+ if dest is None:
+ dest = os.pwd
+
+ _, _, decompress = self.platform_components()
- decompress(get(url).raw, dest=dest)
+ resp = self._get(dest, channel)
+ decompress(resp.raw, dest=dest)
path = find_executable("servo", os.path.join(dest, "servo"))
st = os.stat(path)
os.chmod(path, st.st_mode | stat.S_IEXEC)
@@ -1083,6 +1145,9 @@ class Sauce(Browser):
product = "sauce"
requirements = "requirements_sauce.txt"
+ def download(self, dest=None, channel=None):
+ raise NotImplementedError
+
def install(self, dest=None, channel=None):
raise NotImplementedError
@@ -1105,6 +1170,9 @@ class WebKit(Browser):
product = "webkit"
requirements = "requirements_webkit.txt"
+ def download(self, dest=None, channel=None):
+ raise NotImplementedError
+
def install(self, dest=None, channel=None):
raise NotImplementedError
@@ -1168,6 +1236,9 @@ class Epiphany(Browser):
product = "epiphany"
requirements = "requirements_epiphany.txt"
+ def download(self, dest=None, channel=None):
+ raise NotImplementedError
+
def install(self, dest=None, channel=None):
raise NotImplementedError
diff --git a/tests/wpt/web-platform-tests/tools/wpt/install.py b/tests/wpt/web-platform-tests/tools/wpt/install.py
index 8215dfe0916..24915f0c98d 100644
--- a/tests/wpt/web-platform-tests/tools/wpt/install.py
+++ b/tests/wpt/web-platform-tests/tools/wpt/install.py
@@ -42,6 +42,8 @@ def get_parser():
'the latest available development release. For WebDriver installs, '
'we attempt to select an appropriate, compatible, version for the '
'latest browser release on the selected channel.')
+ parser.add_argument('--download-only', action="store_true",
+ help="Download the selected component but don't install it")
parser.add_argument('-d', '--destination',
help='filesystem directory to place the component')
return parser
@@ -73,21 +75,22 @@ def run(venv, **kwargs):
raise argparse.ArgumentError(None,
"No --destination argument, and no default for the environment")
- install(browser, kwargs["component"], destination, channel)
+ install(browser, kwargs["component"], destination, channel,
+ download_only=kwargs["download_only"])
-def install(name, component, destination, channel="nightly", logger=None):
+def install(name, component, destination, channel="nightly", logger=None, download_only=False):
if logger is None:
import logging
logger = logging.getLogger("install")
- if component == 'webdriver':
- method = 'install_webdriver'
- else:
- method = 'install'
+ prefix = "download" if download_only else "install"
+ suffix = "_webdriver" if component == 'webdriver' else ""
+
+ method = prefix + suffix
subclass = getattr(browser, name.title())
sys.stdout.write('Now installing %s %s...\n' % (name, component))
path = getattr(subclass(logger), method)(dest=destination, channel=channel)
if path:
- sys.stdout.write('Binary installed as %s\n' % (path,))
+ sys.stdout.write('Binary %s as %s\n' % ("downloaded" if download_only else "installed", path,))
diff --git a/tests/wpt/web-platform-tests/tools/wpt/paths b/tests/wpt/web-platform-tests/tools/wpt/paths
index 093a7156892..35867c4ccbf 100644
--- a/tests/wpt/web-platform-tests/tools/wpt/paths
+++ b/tests/wpt/web-platform-tests/tools/wpt/paths
@@ -3,5 +3,4 @@ tools/docker/
tools/lint/
tools/manifest/
tools/serve/
-tools/taskcluster/
tools/wpt/
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/docs/expectation.rst b/tests/wpt/web-platform-tests/tools/wptrunner/docs/expectation.rst
index 2f7467c0912..77938abe03d 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/docs/expectation.rst
+++ b/tests/wpt/web-platform-tests/tools/wptrunner/docs/expectation.rst
@@ -287,7 +287,7 @@ A more complex manifest with conditional properties might be::
[canvas_test.html]
expected:
- if os == "osx": FAIL
+ if os == "mac": FAIL
if os == "windows" and version == "XP": FAIL
PASS
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/requirements_firefox.txt b/tests/wpt/web-platform-tests/tools/wptrunner/requirements_firefox.txt
index f49102b8a89..4cbb7a5ec02 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/requirements_firefox.txt
+++ b/tests/wpt/web-platform-tests/tools/wptrunner/requirements_firefox.txt
@@ -8,4 +8,4 @@ mozprocess==1.0.0
mozprofile==2.4.0
mozrunner==7.7.0
mozversion==2.2.0
-psutil==5.6.5
+psutil==5.6.7
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/base.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/base.py
index f20f735528c..713d8500113 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/base.py
+++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/base.py
@@ -7,6 +7,7 @@ import os
import threading
import traceback
import socket
+import sys
from six.moves.urllib.parse import urljoin, urlsplit, urlunsplit
from abc import ABCMeta, abstractmethod
@@ -15,10 +16,6 @@ from .protocol import Protocol, BaseProtocolPart
here = os.path.split(__file__)[0]
-# Extra timeout to use after internal test timeout at which the harness
-# should force a timeout
-extra_timeout = 5 # seconds
-
def executor_kwargs(test_type, server_config, cache_manager, run_info_data,
**kwargs):
@@ -130,6 +127,61 @@ class ExecutorException(Exception):
self.message = message
+class TimedRunner(object):
+ def __init__(self, logger, func, protocol, url, timeout, extra_timeout):
+ self.func = func
+ self.result = None
+ self.protocol = protocol
+ self.url = url
+ self.timeout = timeout
+ self.extra_timeout = extra_timeout
+ self.result_flag = threading.Event()
+
+ def run(self):
+ if self.set_timeout() is Stop:
+ return Stop
+
+ if self.before_run() is Stop:
+ return Stop
+
+ executor = threading.Thread(target=self.run_func)
+ executor.start()
+
+ # Add twice the timeout multiplier since the called function is expected to
+ # wait at least self.timeout + self.extra_timeout and this gives some leeway
+ finished = self.result_flag.wait(self.timeout + 2 * self.extra_timeout)
+ if self.result is None:
+ if finished:
+ # flag is True unless we timeout; this *shouldn't* happen, but
+ # it can if self.run_func fails to set self.result due to raising
+ self.result = False, ("INTERNAL-ERROR", "%s.run_func didn't set a result" %
+ self.__class__.__name__)
+ else:
+ message = "Executor hit external timeout (this may indicate a hang)\n"
+ # get a traceback for the current stack of the executor thread
+ message += "".join(traceback.format_stack(sys._current_frames()[executor.ident]))
+ self.result = False, ("EXTERNAL-TIMEOUT", message)
+ elif self.result[1] is None:
+ # We didn't get any data back from the test, so check if the
+ # browser is still responsive
+ if self.protocol.is_alive:
+ self.result = False, ("INTERNAL-ERROR", None)
+ else:
+ self.logger.info("Browser not responding, setting status to CRASH")
+ self.result = False, ("CRASH", None)
+
+ return self.result
+
+ def set_timeout(self):
+ raise NotImplementedError
+
+ def before_run(self):
+ pass
+
+ def run_func(self):
+ raise NotImplementedError
+
+
class TestExecutor(object):
"""Abstract Base class for object that actually executes the tests in a
specific browser. Typically there will be a different TestExecutor
@@ -148,6 +200,10 @@ class TestExecutor(object):
convert_result = None
supports_testdriver = False
supports_jsshell = False
+ # Extra timeout to use after internal test timeout at which the harness
+ # should force a timeout
+ extra_timeout = 5 # seconds
+
def __init__(self, browser, server_config, timeout_multiplier=1,
debug_info=None, **kwargs):
@@ -441,7 +497,7 @@ class WdspecExecutor(TestExecutor):
pass
def do_test(self, test):
- timeout = test.timeout * self.timeout_multiplier + extra_timeout
+ timeout = test.timeout * self.timeout_multiplier + self.extra_timeout
success, data = WdspecRun(self.do_wdspec,
self.protocol.session_config,
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executormarionette.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executormarionette.py
index 7a936592f88..b165e8cd93d 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executormarionette.py
+++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executormarionette.py
@@ -16,9 +16,9 @@ from .base import (CallbackHandler,
RefTestExecutor,
RefTestImplementation,
TestharnessExecutor,
+ TimedRunner,
WdspecExecutor,
WebDriverProtocol,
- extra_timeout,
strip_server)
from .protocol import (ActionSequenceProtocolPart,
AssertsProtocolPart,
@@ -566,27 +566,14 @@ class MarionetteProtocol(Protocol):
self.prefs.set(name, value)
-class ExecuteAsyncScriptRun(object):
- def __init__(self, logger, func, protocol, url, timeout):
- self.logger = logger
- self.result = (None, None)
- self.protocol = protocol
- self.func = func
- self.url = url
- self.timeout = timeout
- self.result_flag = threading.Event()
-
- def run(self):
- index = self.url.rfind("/storage/")
- if index != -1:
- # Clear storage
- self.protocol.storage.clear_origin(self.url)
+class ExecuteAsyncScriptRun(TimedRunner):
+ def set_timeout(self):
timeout = self.timeout
try:
if timeout is not None:
- self.protocol.base.set_timeout(timeout + extra_timeout)
+ self.protocol.base.set_timeout(timeout + self.extra_timeout)
else:
# We just want it to never time out, really, but marionette doesn't
# make that possible. It also seems to time out immediately if the
@@ -596,33 +583,13 @@ class ExecuteAsyncScriptRun(object):
self.logger.error("Lost marionette connection before starting test")
return Stop
- if timeout is not None:
- wait_timeout = timeout + 2 * extra_timeout
- else:
- wait_timeout = None
-
- timer = threading.Timer(wait_timeout, self._timeout)
- timer.start()
-
- self._run()
-
- self.result_flag.wait()
- timer.cancel()
-
- if self.result == (None, None):
- self.logger.debug("Timed out waiting for a result")
- self.result = False, ("EXTERNAL-TIMEOUT", None)
- elif self.result[1] is None:
- # We didn't get any data back from the test, so check if the
- # browser is still responsive
- if self.protocol.is_alive:
- self.result = False, ("INTERNAL-ERROR", None)
- else:
- self.logger.info("Browser not responding, setting status to CRASH")
- self.result = False, ("CRASH", None)
- return self.result
+ def before_run(self):
+ index = self.url.rfind("/storage/")
+ if index != -1:
+ # Clear storage
+ self.protocol.storage.clear_origin(self.url)
- def _run(self):
+ def run_func(self):
try:
self.result = True, self.func(self.protocol, self.url, self.timeout)
except errors.ScriptTimeoutException:
@@ -650,10 +617,6 @@ class ExecuteAsyncScriptRun(object):
finally:
self.result_flag.set()
- def _timeout(self):
- self.result = False, ("EXTERNAL-TIMEOUT", None)
- self.result_flag.set()
-
class MarionetteTestharnessExecutor(TestharnessExecutor):
supports_testdriver = True
@@ -703,7 +666,8 @@ class MarionetteTestharnessExecutor(TestharnessExecutor):
self.do_testharness,
self.protocol,
self.test_url(test),
- timeout).run()
+ timeout,
+ self.extra_timeout).run()
# The format of data depends on whether the test ran to completion or not
# For asserts we only care about the fact that if it didn't complete, the
# status is in the first field.
@@ -782,7 +746,7 @@ class MarionetteRefTestExecutor(RefTestExecutor):
with open(os.path.join(here, "reftest.js")) as f:
self.script = f.read()
- with open(os.path.join(here, "reftest-wait_marionette.js")) as f:
+ with open(os.path.join(here, "reftest-wait_webdriver.js")) as f:
self.wait_script = f.read()
def setup(self, runner):
@@ -853,7 +817,8 @@ class MarionetteRefTestExecutor(RefTestExecutor):
self._screenshot,
self.protocol,
test_url,
- timeout).run()
+ timeout,
+ self.extra_timeout).run()
def _screenshot(self, protocol, url, timeout):
protocol.marionette.navigate(url)
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorselenium.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorselenium.py
index 913a5e6d542..d6745018279 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorselenium.py
+++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorselenium.py
@@ -11,7 +11,7 @@ from .base import (CallbackHandler,
RefTestExecutor,
RefTestImplementation,
TestharnessExecutor,
- extra_timeout,
+ TimedRunner,
strip_server)
from .protocol import (BaseProtocolPart,
TestharnessProtocolPart,
@@ -237,39 +237,17 @@ class SeleniumProtocol(Protocol):
self.testharness.load_runner(self.executor.last_environment["protocol"])
-class SeleniumRun(object):
- def __init__(self, func, protocol, url, timeout):
- self.func = func
- self.result = None
- self.protocol = protocol
- self.url = url
- self.timeout = timeout
- self.result_flag = threading.Event()
-
- def run(self):
+class SeleniumRun(TimedRunner):
+ def set_timeout(self):
timeout = self.timeout
try:
- self.protocol.base.set_timeout(timeout + extra_timeout)
+ self.protocol.base.set_timeout(timeout + self.extra_timeout)
except exceptions.ErrorInResponseException:
self.logger.error("Lost WebDriver connection")
return Stop
- executor = threading.Thread(target=self._run)
- executor.start()
-
- flag = self.result_flag.wait(timeout + 2 * extra_timeout)
- if self.result is None:
- if flag:
- # flag is True unless we timeout; this *shouldn't* happen, but
- # it can if self._run fails to set self.result due to raising
- self.result = False, ("INTERNAL-ERROR", "self._run didn't set a result")
- else:
- self.result = False, ("EXTERNAL-TIMEOUT", None)
-
- return self.result
-
- def _run(self):
+ def run_func(self):
try:
self.result = True, self.func(self.protocol, self.url, self.timeout)
except exceptions.TimeoutException:
@@ -312,10 +290,12 @@ class SeleniumTestharnessExecutor(TestharnessExecutor):
def do_test(self, test):
url = self.test_url(test)
- success, data = SeleniumRun(self.do_testharness,
+ success, data = SeleniumRun(self.logger,
+ self.do_testharness,
self.protocol,
url,
- test.timeout * self.timeout_multiplier).run()
+ test.timeout * self.timeout_multiplier,
+ self.extra_timeout).run()
if success:
return self.convert_result(test, data)
@@ -387,10 +367,12 @@ class SeleniumRefTestExecutor(RefTestExecutor):
assert viewport_size is None
assert dpi is None
- return SeleniumRun(self._screenshot,
+ return SeleniumRun(self.logger,
+ self._screenshot,
self.protocol,
self.test_url(test),
- test.timeout).run()
+ test.timeout,
+ self.extra_timeout).run()
def _screenshot(self, protocol, url, timeout):
webdriver = protocol.webdriver
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py
index eaea0981632..365a1a08653 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py
+++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py
@@ -24,7 +24,6 @@ from ..webdriver_server import ServoDriverServer
pytestrunner = None
webdriver = None
-extra_timeout = 5 # seconds
def write_hosts_file(config):
hosts_fd, hosts_path = tempfile.mkstemp()
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservodriver.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservodriver.py
index 67a433d9a58..bd377d0d595 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservodriver.py
+++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservodriver.py
@@ -1,8 +1,6 @@
import json
import os
import socket
-import threading
-import time
import traceback
from .base import (Protocol,
@@ -10,6 +8,7 @@ from .base import (Protocol,
RefTestExecutor,
RefTestImplementation,
TestharnessExecutor,
+ TimedRunner,
strip_server)
from ..testrunner import Stop
from ..webdriver_server import wait_for_service
@@ -19,8 +18,6 @@ ServoCommandExtensions = None
here = os.path.join(os.path.split(__file__)[0])
-extra_timeout = 5
-
def do_delayed_imports():
global webdriver
@@ -131,29 +128,13 @@ class ServoWebDriverProtocol(Protocol):
break
-class ServoWebDriverRun(object):
- def __init__(self, func, session, url, timeout, current_timeout=None):
- self.func = func
- self.result = None
- self.session = session
- self.url = url
- self.timeout = timeout
- self.result_flag = threading.Event()
-
- def run(self):
- executor = threading.Thread(target=self._run)
- executor.start()
-
- flag = self.result_flag.wait(self.timeout + extra_timeout)
- if self.result is None:
- assert not flag
- self.result = False, ("EXTERNAL-TIMEOUT", None)
-
- return self.result
+class ServoWebDriverRun(TimedRunner):
+ def set_timeout(self):
+ pass
- def _run(self):
+ def run_func(self):
try:
- self.result = True, self.func(self.session, self.url, self.timeout)
+ self.result = True, self.func(self.protocol.session, self.url, self.timeout)
except webdriver.TimeoutException:
self.result = False, ("EXTERNAL-TIMEOUT", None)
except (socket.timeout, IOError):
@@ -168,14 +149,6 @@ class ServoWebDriverRun(object):
self.result_flag.set()
-def timeout_func(timeout):
- if timeout:
- t0 = time.time()
- return lambda: time.time() - t0 > timeout + extra_timeout
- else:
- return lambda: False
-
-
class ServoWebDriverTestharnessExecutor(TestharnessExecutor):
supports_testdriver = True
@@ -198,7 +171,7 @@ class ServoWebDriverTestharnessExecutor(TestharnessExecutor):
def do_test(self, test):
url = self.test_url(test)
- timeout = test.timeout * self.timeout_multiplier + extra_timeout
+ timeout = test.timeout * self.timeout_multiplier + self.extra_timeout
if timeout != self.timeout:
try:
@@ -208,10 +181,12 @@ class ServoWebDriverTestharnessExecutor(TestharnessExecutor):
self.logger.error("Lost webdriver connection")
return Stop
- success, data = ServoWebDriverRun(self.do_testharness,
- self.protocol.session,
+ success, data = ServoWebDriverRun(self.logger,
+ self.do_testharness,
+ self.protocol,
url,
- timeout).run()
+ timeout,
+ self.extra_timeout).run()
if success:
return self.convert_result(test, data)
@@ -286,7 +261,7 @@ class ServoWebDriverRefTestExecutor(RefTestExecutor):
assert viewport_size is None
assert dpi is None
- timeout = (test.timeout * self.timeout_multiplier + extra_timeout
+ timeout = (test.timeout * self.timeout_multiplier + self.extra_timeout
if self.debug_info is None else None)
if self.timeout != timeout:
@@ -297,10 +272,12 @@ class ServoWebDriverRefTestExecutor(RefTestExecutor):
self.logger.error("Lost webdriver connection")
return Stop
- return ServoWebDriverRun(self._screenshot,
+ return ServoWebDriverRun(self.logger,
+ self._screenshot,
self.protocol.session,
self.test_url(test),
- timeout).run()
+ timeout,
+ self.extra_timeout).run()
def _screenshot(self, session, url, timeout):
session.url = url
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py
index 344debf8aa6..39346e805d7 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py
+++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py
@@ -1,7 +1,6 @@
import json
import os
import socket
-import sys
import threading
import time
import traceback
@@ -12,7 +11,7 @@ from .base import (CallbackHandler,
RefTestExecutor,
RefTestImplementation,
TestharnessExecutor,
- extra_timeout,
+ TimedRunner,
strip_server)
from .protocol import (BaseProtocolPart,
TestharnessProtocolPart,
@@ -256,7 +255,6 @@ class WebDriverProtocol(Protocol):
self.webdriver = client.Session(host, port, capabilities=capabilities)
self.webdriver.start()
-
def teardown(self):
self.logger.debug("Hanging up on WebDriver session")
try:
@@ -281,42 +279,15 @@ class WebDriverProtocol(Protocol):
self.testharness.load_runner(self.executor.last_environment["protocol"])
-class WebDriverRun(object):
- def __init__(self, func, protocol, url, timeout):
- self.func = func
- self.result = None
- self.protocol = protocol
- self.url = url
- self.timeout = timeout
- self.result_flag = threading.Event()
-
- def run(self):
- timeout = self.timeout
-
+class WebDriverRun(TimedRunner):
+ def set_timeout(self):
try:
- self.protocol.base.set_timeout(timeout + extra_timeout)
+ self.protocol.base.set_timeout(self.timeout + self.extra_timeout)
except client.UnknownErrorException:
self.logger.error("Lost WebDriver connection")
return Stop
- executor = threading.Thread(target=self._run)
- executor.start()
-
- flag = self.result_flag.wait(timeout + 2 * extra_timeout)
- if self.result is None:
- if flag:
- # flag is True unless we timeout; this *shouldn't* happen, but
- # it can if self._run fails to set self.result due to raising
- self.result = False, ("INTERNAL-ERROR", "self._run didn't set a result")
- else:
- message = "Waiting on browser:\n"
- # get a traceback for the current stack of the executor thread
- message += "".join(traceback.format_stack(sys._current_frames()[executor.ident]))
- self.result = False, ("EXTERNAL-TIMEOUT", message)
-
- return self.result
-
- def _run(self):
+ def run_func(self):
try:
self.result = True, self.func(self.protocol, self.url, self.timeout)
except (client.TimeoutException, client.ScriptTimeoutException):
@@ -366,10 +337,12 @@ class WebDriverTestharnessExecutor(TestharnessExecutor):
def do_test(self, test):
url = self.test_url(test)
- success, data = WebDriverRun(self.do_testharness,
- self.protocol,
- url,
- test.timeout * self.timeout_multiplier).run()
+ success, data = WebDriverRun(self.logger,
+ self.do_testharness,
+ self.protocol,
+ url,
+ test.timeout * self.timeout_multiplier,
+ self.extra_timeout).run()
if success:
return self.convert_result(test, data)
@@ -485,10 +458,12 @@ class WebDriverRefTestExecutor(RefTestExecutor):
assert viewport_size is None
assert dpi is None
- return WebDriverRun(self._screenshot,
- self.protocol,
- self.test_url(test),
- test.timeout).run()
+ return WebDriverRun(self.logger,
+ self._screenshot,
+ self.protocol,
+ self.test_url(test),
+ test.timeout,
+ self.extra_timeout).run()
def _screenshot(self, protocol, url, timeout):
webdriver = protocol.webdriver
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/reftest-wait_marionette.js b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/reftest-wait_marionette.js
deleted file mode 100644
index 194e192c2f4..00000000000
--- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/reftest-wait_marionette.js
+++ /dev/null
@@ -1,19 +0,0 @@
-var callback = arguments[arguments.length - 1];
-
-function test(x) {
- if (!root.classList.contains("reftest-wait")) {
- observer.disconnect();
- callback();
- }
-}
-
-var root = document.documentElement;
-var observer = new MutationObserver(test);
-
-observer.observe(root, {attributes: true});
-
-if (document.readyState != "complete") {
- addEventListener('load', test);
-} else {
- test();
-}
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/reftest-wait_webdriver.js b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/reftest-wait_webdriver.js
index a7486b6594d..f86edacdef2 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/reftest-wait_webdriver.js
+++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/reftest-wait_webdriver.js
@@ -1,21 +1,20 @@
var callback = arguments[arguments.length - 1];
+var observer = null;
+var root = document.documentElement;
-function root_wait() {
- if (!root.classList.contains("reftest-wait")) {
- observer.disconnect();
-
- if (Document.prototype.hasOwnProperty("fonts")) {
- document.fonts.ready.then(ready_for_screenshot);
- } else {
- // This might take the screenshot too early, depending on whether the
- // load event is blocked on fonts being loaded. See:
- // https://github.com/w3c/csswg-drafts/issues/1088
- ready_for_screenshot();
- }
+function wait_load() {
+ if (Document.prototype.hasOwnProperty("fonts")) {
+ document.fonts.ready.then(wait_paints);
+ } else {
+ // This might take the screenshot too early, depending on whether the
+ // load event is blocked on fonts being loaded. See:
+ // https://github.com/w3c/csswg-drafts/issues/1088
+ wait_paints();
}
}
-function ready_for_screenshot() {
+
+function wait_paints() {
// As of 2017-04-05, the Chromium web browser exhibits a rendering bug
// (https://bugs.chromium.org/p/chromium/issues/detail?id=708757) that
// produces instability during screen capture. The following use of
@@ -27,18 +26,29 @@ function ready_for_screenshot() {
requestAnimationFrame(function() {
requestAnimationFrame(function() {
- callback();
+ screenshot_if_ready();
});
});
}
-var root = document.documentElement;
-var observer = new MutationObserver(root_wait);
+function screenshot_if_ready() {
+ if (root.classList.contains("reftest-wait") &&
+ observer === null) {
+ observer = new MutationObserver(wait_paints);
+ observer.observe(root, {attributes: true});
+ var event = new Event("TestRendered", {bubbles: true});
+ root.dispatchEvent(event);
+ return;
+ }
+ if (observer !== null) {
+ observer.disconnect();
+ }
+ callback();
+}
-observer.observe(root, {attributes: true});
if (document.readyState != "complete") {
- addEventListener('load', root_wait);
+ addEventListener('load', wait_load);
} else {
- root_wait();
+ wait_load();
}
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testrunner.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testrunner.py
index 1b02fc622be..8dece20a8e9 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testrunner.py
+++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testrunner.py
@@ -334,6 +334,8 @@ class TestRunnerManager(threading.Thread):
# This may not really be what we want
self.daemon = True
+ self.timer = None
+
self.max_restarts = 5
self.browser = None
@@ -559,7 +561,22 @@ class TestRunnerManager(threading.Thread):
self.logger.info("Run %d/%d" % (self.run_count, self.rerun))
self.send_message("reset")
self.run_count += 1
+ # Factor of 3 on the extra timeout here is based on allowing the executor
+ # at least test.timeout + 2 * extra_timeout to complete,
+ # which in turn is based on having several layers of timeout inside the executor
+ wait_timeout = (self.state.test.timeout * self.executor_kwargs['timeout_multiplier'] +
+ 3 * self.executor_cls.extra_timeout)
+ self.timer = threading.Timer(wait_timeout, self._timeout)
self.send_message("run_test", self.state.test)
+ self.timer.start()
+
+ def _timeout(self):
+ self.logger.info("Got timeout in harness")
+ test = self.state.test
+ self.test_ended(test,
+ (test.result_cls("EXTERNAL-TIMEOUT",
+ "TestRunner hit external timeout "
+ "(this may indicate a hang)"), []))
def test_ended(self, test, results):
"""Handle the end of a test.
@@ -569,6 +586,7 @@ class TestRunnerManager(threading.Thread):
"""
assert isinstance(self.state, RunnerManagerState.running)
assert test == self.state.test
+ self.timer.cancel()
# Write the result of each subtest
file_result, test_results = results
subtest_unexpected = False
diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation-ref.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation-ref.html
new file mode 100644
index 00000000000..0aaa0443649
--- /dev/null
+++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<title>Reference for reverse running animation</title>
+<style>
+ #box {
+ background: blue;
+ height: 40px;
+ width: 40px;
+ transform: translateX(100px);
+ will-change: transform;
+ }
+</style>
+<body>
+ <div id="box"></div>
+ <p>This test reverses the animation shortly after the box starts moving. If
+ the box doesn't move back to its original position, the test has failed.
+ </p>
+</body>
diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation.html
new file mode 100644
index 00000000000..584aa0029ea
--- /dev/null
+++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation.html
@@ -0,0 +1,41 @@
+
+<!DOCTYPE html>
+<html class="reftest-wait">
+<meta charset="UTF-8">
+<title>reverse running animation</title>
+<link rel="match" href="reverse-running-animation-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+ #box {
+ background: blue;
+ height: 40px;
+ width: 40px;
+ }
+</style>
+
+<body>
+ <div id="box"></div>
+ <p>This test reverses the animation shortly after the box starts moving. If
+ the box doesn't move back to its original position, the test has failed.
+ </p>
+</body>
+<script>
+ onload = function() {
+ const elem = document.getElementById('box');
+ const anim = elem.animate([
+ { transform: 'translateX(100px)' },
+ { transform: 'translateX(100px)' },
+ { transform: 'translateX(200px)' },
+ { transform: 'translateX(200px)' }
+ ], {
+ duration: 1000
+ });
+
+ anim.ready.then(() => {
+ setTimeout(() => {
+ anim.reverse();
+ }, 500);
+ takeScreenshotDelayed(900);
+ });
+ };
+</script>
diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/sync-start-times-ref.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/sync-start-times-ref.html
new file mode 100644
index 00000000000..fc843a132f2
--- /dev/null
+++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/sync-start-times-ref.html
@@ -0,0 +1,20 @@
+
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>Reference for sync start times</title>
+<style>
+ #notes {
+ position: absolute;
+ left: 0px;
+ top: 100px;
+ }
+</style>
+
+<body>
+ <p id="notes">
+ This test creates a pair of animations, starts the first animation and then
+ syncs the second animation to align with the first. The test passes if the
+ box associated with the first animation is completely occluded by the
+ second.
+ </p>
+</body>
diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/sync-start-times.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/sync-start-times.html
new file mode 100644
index 00000000000..06dcf030563
--- /dev/null
+++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/sync-start-times.html
@@ -0,0 +1,68 @@
+
+<!DOCTYPE html>
+<html class="reftest-wait">
+<meta charset="UTF-8">
+<title>sync start times</title>
+<link rel="match" href="sync-start-times-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+ #box-1, #box-2 {
+ border: 1px solid white;
+ height: 40px;
+ left: 40px;
+ position: absolute;
+ top: 40px;
+ width: 40px;
+ }
+ #box-1 {
+ background: blue;
+ z-index: 1;
+ }
+ #box-2 {
+ background: white;
+ z-index: 2;
+ }
+ #notes {
+ position: absolute;
+ left: 0px;
+ top: 100px;
+ }
+</style>
+
+<body>
+ <div id="box-1"></div>
+ <div id="box-2"></div>
+ <p id="notes">
+ This test creates a pair of animations, starts the first animation and then
+ syncs the second animation to align with the first. The test passes if the
+ box associated with the first animation is completely occluded by the
+ second.
+ </p>
+</body>
+<script>
+ onload = function() {
+ function createAnimation(elementId) {
+ const elem = document.getElementById(elementId);
+ const keyframes = [
+ { transform: 'translateX(0px)' },
+ { transform: 'translateX(200px)' }
+ ];
+ const anim = elem.animate(keyframes, { duration: 1000 });
+ anim.pause();
+ return anim;
+ };
+
+ const anim1 = createAnimation('box-1');
+ const anim2 = createAnimation('box-2');
+
+ anim1.currentTime = 500;
+ anim1.play();
+
+ anim1.ready.then(() => {
+ anim2.startTime = anim1.startTime;
+ requestAnimationFrame(() => {
+ takeScreenshot();
+ });
+ });
+ };
+</script>
diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-fast-ref.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-fast-ref.html
new file mode 100644
index 00000000000..af69b26100a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-fast-ref.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<title>Reference for update playback rate zero</title>
+<style>
+ #notes {
+ position: absolute;
+ left: 0px;
+ top: 100px;
+ }
+ body {
+ background: white;
+ }
+</style>
+<body>
+ <div id="box"></div>
+ <p id="notes">
+ This test creates a running animation and changes its playback rate
+ part way through. The animation finishes ahead of the screenshot.
+ If any blue pixels appear in the screenshot, the test fails.
+ </p>
+</body>
diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-fast.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-fast.html
new file mode 100644
index 00000000000..63a76ba84a6
--- /dev/null
+++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-fast.html
@@ -0,0 +1,62 @@
+
+<!DOCTYPE html>
+<html class="reftest-wait">
+<meta charset="UTF-8">
+<title>Update playback rate zero</title>
+<link rel="match" href="update-playback-rate-fast-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+ #box-1, #box-2 {
+ border: 1px solid white;
+ height: 40px;
+ left: 40px;
+ position: absolute;
+ top: 40px;
+ width: 40px;
+ }
+ #box-1 {
+ background: blue;
+ z-index: 1;
+ }
+ #box-2 {
+ background: white;
+ transform: translateX(0px);
+ z-index: 2;
+ }
+ #notes {
+ position: absolute;
+ left: 0px;
+ top: 100px;
+ }
+ body {
+ background: white;
+ }
+</style>
+
+<body>
+ <div id="box-1"></div>
+ <div id="box-2"></div>
+ <p id="notes">
+ This test creates a running animation and changes its playback rate
+ part way through. The animation finishes ahead of the screenshot.
+ If any blue pixels appear in the screenshot, the test fails.
+ </p>
+</body>
+<script>
+ onload = function() {
+ const elem = document.getElementById('box-1');
+ const anim = elem.animate([
+ { transform: 'translateX(100px)' },
+ { transform: 'translateX(100px)' },
+ { transform: 'translateX(200px)' },
+ { transform: 'translateX(200px)' }
+ ], {
+ duration: 1000
+ });
+
+ anim.ready.then(() => {
+ anim.updatePlaybackRate(2);
+ takeScreenshotDelayed(750);
+ });
+ };
+</script>
diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-slow-ref.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-slow-ref.html
new file mode 100644
index 00000000000..11b87deecca
--- /dev/null
+++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-slow-ref.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<title>Reference for update playback rate zero</title>
+<style>
+ #notes {
+ position: absolute;
+ left: 0px;
+ top: 100px;
+ }
+</style>
+<body>
+ <div id="box"></div>
+ <p id="notes">
+ This test creates a running animation and changes its playback rate
+ part way through. The animation slows down so that it does not finish
+ before the screenshot. If any blue pixels appear in the screenshot,
+ the test fails.
+ </p>
+</body>
diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-slow.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-slow.html
new file mode 100644
index 00000000000..db449f2ca59
--- /dev/null
+++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-slow.html
@@ -0,0 +1,62 @@
+
+<!DOCTYPE html>
+<html class="reftest-wait">
+<meta charset="UTF-8">
+<title>Update playback rate zero</title>
+<link rel="match" href="update-playback-rate-slow-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+ #box-1, #box-2 {
+ border: 1px solid white;
+ height: 40px;
+ left: 40px;
+ position: absolute;
+ top: 40px;
+ width: 40px;
+ }
+ #box-1 {
+ background: blue;
+ z-index: 1;
+ }
+ #box-2 {
+ background: white;
+ transform: translateX(200px);
+ z-index: 2;
+ }
+ #notes {
+ position: absolute;
+ left: 0px;
+ top: 100px;
+ }
+</style>
+
+<body>
+ <div id="box-1"></div>
+ <div id="box-2"></div>
+ <p id="notes">
+ This test creates a running animation and changes its playback rate
+ part way through. The animation slows down so that it does not finish
+ before the screenshot. If any blue pixels appear in the screenshot,
+ the test fails.
+ </p>
+</body>
+<script>
+ onload = function() {
+ const elem = document.getElementById('box-1');
+ const anim = elem.animate([
+ { transform: 'translateX(100px)' },
+ { transform: 'translateX(100px)' },
+ { transform: 'translateX(200px)' },
+ { transform: 'translateX(200px)' }
+ ], {
+ duration: 1000
+ });
+
+ anim.ready.then(() => {
+ setTimeout(() => {
+ anim.updatePlaybackRate(0.5);
+ }, 500);
+ takeScreenshotDelayed(1000);
+ });
+ };
+</script>
diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-zero-ref.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-zero-ref.html
new file mode 100644
index 00000000000..26293a3aebb
--- /dev/null
+++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-zero-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<title>Reference for update playback rate zero</title>
+<style>
+ #notes {
+ position: absolute;
+ left: 0px;
+ top: 100px;
+ }
+</style>
+<body>
+ <div id="box"></div>
+ <p id="notes">
+ This test creates a running animation and changes its playback rate
+ part way through. The animation should stop behind an occluding rectangle.
+ If not fully occluded, the test fails.
+ </p>
+</body>
diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-zero.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-zero.html
new file mode 100644
index 00000000000..bed08d630ca
--- /dev/null
+++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/update-playback-rate-zero.html
@@ -0,0 +1,61 @@
+
+<!DOCTYPE html>
+<html class="reftest-wait">
+<meta charset="UTF-8">
+<title>Update playback rate zero</title>
+<link rel="match" href="update-playback-rate-zero-ref.html">
+<script src="/common/reftest-wait.js"></script>
+<style>
+ #box-1, #box-2 {
+ border: 1px solid white;
+ height: 40px;
+ left: 40px;
+ position: absolute;
+ top: 40px;
+ width: 40px;
+ }
+ #box-1 {
+ background: blue;
+ z-index: 1;
+ }
+ #box-2 {
+ background: white;
+ transform: translateX(200px);
+ z-index: 2;
+ }
+ #notes {
+ position: absolute;
+ left: 0px;
+ top: 100px;
+ }
+</style>
+
+<body>
+ <div id="box-1"></div>
+ <div id="box-2"></div>
+ <p id="notes">
+ This test creates a running animation and changes its playback rate
+ part way through. The animation should stop behind an occluding rectangle.
+ If not fully occluded, the test fails.
+ </p>
+</body>
+<script>
+ onload = function() {
+ const elem = document.getElementById('box-1');
+ const anim = elem.animate([
+ { transform: 'translateX(100px)' },
+ { transform: 'translateX(100px)' },
+ { transform: 'translateX(200px)' },
+ { transform: 'translateX(200px)' }
+ ], {
+ duration: 1000
+ });
+
+ anim.ready.then(() => {
+ setTimeout(() => {
+ anim.updatePlaybackRate(0);
+ }, 750);
+ takeScreenshotDelayed(1200);
+ });
+ };
+</script>
diff --git a/tests/wpt/web-platform-tests/web-nfc/NDEFReader_options.https.html b/tests/wpt/web-platform-tests/web-nfc/NDEFReader_scan_filter.https.html
index 6901e5cdcb2..4c1e7de4400 100644
--- a/tests/wpt/web-platform-tests/web-nfc/NDEFReader_options.https.html
+++ b/tests/wpt/web-platform-tests/web-nfc/NDEFReader_scan_filter.https.html
@@ -1,6 +1,6 @@
<!DOCTYPE html>
<meta charset=utf-8>
-<title>Web NFC: NDEFReader option tests</title>
+<title>Web NFC: NDEFReader.scan() filter tests</title>
<link rel="author" title="Intel" href="http://www.intel.com"/>
<link rel="help" href="https://w3c.github.io/web-nfc/"/>
<script src="/resources/testharness.js"></script>
@@ -10,7 +10,7 @@
'use strict';
-const NDEFReaderOptionTests =
+const multiScanOptionsTests =
[
{
desc: "Test that reading data succeed when NDEFScanOptions'" +
@@ -78,7 +78,7 @@ const NDEFReaderOptionTests =
}
];
-const ReadMultiMessagesTests =
+const multiMessagesTests =
[
{
desc: "Test that filtering 'empty' record from different messages" +
@@ -147,21 +147,53 @@ const ReadMultiMessagesTests =
}
];
-for (let NDEFReaderOptionTest of NDEFReaderOptionTests) {
- testNDEFScanOptions(
- NDEFReaderOptionTest.message,
- NDEFReaderOptionTest.scanOptions,
- NDEFReaderOptionTest.unmatchedScanOptions,
- NDEFReaderOptionTest.desc
+for (let multiScanOptionsTest of multiScanOptionsTests) {
+ testMultiScanOptions(
+ multiScanOptionsTest.message,
+ multiScanOptionsTest.scanOptions,
+ multiScanOptionsTest.unmatchedScanOptions,
+ multiScanOptionsTest.desc
);
}
-for (let readMultiMessagesTest of ReadMultiMessagesTests) {
- testReadingMultiMessages(
- readMultiMessagesTest.message,
- readMultiMessagesTest.scanOptions,
- readMultiMessagesTest.unmatchedMessage,
- readMultiMessagesTest.desc
+for (let multiMessagesTest of multiMessagesTests) {
+ testMultiMessages(
+ multiMessagesTest.message,
+ multiMessagesTest.scanOptions,
+ multiMessagesTest.unmatchedMessage,
+ multiMessagesTest.desc
);
}
+
+nfc_test(async (t, mockNFC) => {
+ const reader = new NDEFReader();
+ const controller = new AbortController();
+ const signal = controller.signal;
+ const textMsg = createMessage([createTextRecord(test_text_data)]);
+ const urlMsg = createMessage([createUrlRecord(test_url_data)]);
+ const mimeMsg = createMessage([createMimeRecord(test_buffer_data)]);
+
+ const readerWatcher = new EventWatcher(t, reader, ["reading", "error"]);
+ const promise = readerWatcher.wait_for("reading").then(event => {
+ controller.abort();
+ assertWebNDEFMessagesEqual(event.message, new NDEFMessage(mimeMsg));
+ });
+
+ const scanOptions1 = { recordType: "text", signal: signal };
+ const scanOptions2 = {recordType: "url", signal: signal };
+ const scanOptions3 = {recordType: "mime", signal: signal };
+
+ await reader.scan(scanOptions1);
+ await reader.scan(scanOptions2);
+ // There is maximum one filter for an NDEFReader object,
+ // last filter will replace all previous ones.
+ await reader.scan(scanOptions3);
+
+ mockNFC.setReadingMessage(textMsg);
+ mockNFC.setReadingMessage(urlMsg);
+ mockNFC.setReadingMessage(mimeMsg);
+ await promise;
+}, "Multiple scan() from the same NDEFReader object with new options should \
+replace existing filters.");
+
</script>
diff --git a/tests/wpt/web-platform-tests/web-nfc/NDEFReadingEvent_constructor.https.html b/tests/wpt/web-platform-tests/web-nfc/NDEFReadingEvent_constructor.https.html
index 15ef6e466aa..3d734105e9c 100644
--- a/tests/wpt/web-platform-tests/web-nfc/NDEFReadingEvent_constructor.https.html
+++ b/tests/wpt/web-platform-tests/web-nfc/NDEFReadingEvent_constructor.https.html
@@ -37,4 +37,24 @@
assertWebNDEFMessagesEqual(event.message, new NDEFMessage(message));
}, 'NDEFReadingEvent constructor with valid parameters');
+ test(() => {
+ const record_init = createTextRecord(test_text_data);
+ const event = new NDEFReadingEvent('type',
+ {serialNumber: '', message: createMessage([record_init])});
+ assert_equals(event.type, 'type', 'type');
+ assert_equals(event.serialNumber, '', 'serialNumber');
+ assert_equals(1, event.message.records.length, 'only 1 record');
+
+ const record = new NDEFRecord(record_init);
+ assert_equals(record.recordType, 'text', 'recordType');
+ assert_equals(record.mediaType, null, 'mediaType');
+ assert_equals(record.encoding, 'utf-8', 'encoding');
+ assert_equals(record.lang, 'en', 'lang');
+
+ assert_equals(event.message.records[0].recordType, 'text', 'recordType');
+ assert_equals(event.message.records[0].mediaType, null, 'mediaType');
+ assert_equals(event.message.records[0].encoding, 'utf-8', 'encoding');
+ assert_equals(event.message.records[0].lang, null, 'lang is not set');
+ }, 'NDEFReadingEvent constructor does not set NDEFRecord#lang for any text records it embeds');
+
</script>
diff --git a/tests/wpt/web-platform-tests/web-nfc/resources/nfc-helpers.js b/tests/wpt/web-platform-tests/web-nfc/resources/nfc-helpers.js
index eb3006114c7..0fe6fe80cb1 100644
--- a/tests/wpt/web-platform-tests/web-nfc/resources/nfc-helpers.js
+++ b/tests/wpt/web-platform-tests/web-nfc/resources/nfc-helpers.js
@@ -168,7 +168,7 @@ function assertWebNDEFMessagesEqual(message, expectedMessage) {
}
}
-function testNDEFScanOptions(message, scanOptions, unmatchedScanOptions, desc) {
+function testMultiScanOptions(message, scanOptions, unmatchedScanOptions, desc) {
nfc_test(async (t, mockNFC) => {
const reader1 = new NDEFReader();
const reader2 = new NDEFReader();
@@ -192,8 +192,7 @@ function testNDEFScanOptions(message, scanOptions, unmatchedScanOptions, desc) {
}, desc);
}
-function testReadingMultiMessages(
- message, scanOptions, unmatchedMessage, desc) {
+function testMultiMessages(message, scanOptions, unmatchedMessage, desc) {
nfc_test(async (t, mockNFC) => {
const reader = new NDEFReader();
const controller = new AbortController();
diff --git a/tests/wpt/web-platform-tests/webdriver/tests/find_element_from_element/find.py b/tests/wpt/web-platform-tests/webdriver/tests/find_element_from_element/find.py
index b107a8957e0..56e216bb646 100644
--- a/tests/wpt/web-platform-tests/webdriver/tests/find_element_from_element/find.py
+++ b/tests/wpt/web-platform-tests/webdriver/tests/find_element_from_element/find.py
@@ -1,4 +1,3 @@
-# META: timeout=long
import pytest
from webdriver.transport import Response
diff --git a/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-rollback.html b/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-rollback.html
index 73a0fe1e5a1..342e325dad2 100644
--- a/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-rollback.html
+++ b/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-rollback.html
@@ -216,7 +216,8 @@
await pc2.setRemoteDescription({type: "rollback"});
assert_equals(pc2.getTransceivers().length, 1);
- assert_equals(pc2.getTransceivers()[0].mid, null)
+ assert_equals(pc2.getTransceivers()[0].mid, null);
+ assert_equals(pc2.getTransceivers()[0].receiver.transport, null);
}, "rollback of a remote offer should keep a transceiver");
promise_test(async t => {
@@ -229,6 +230,29 @@
t.add_cleanup(() => stream.getTracks().forEach(track => track.stop()));
pc1.addTrack(stream.getTracks()[0], stream);
+ const stream2 = await getNoiseStream({video: true});
+ t.add_cleanup(() => stream2.getTracks().forEach(track => track.stop()));
+ pc2.addTrack(stream2.getTracks()[0], stream2);
+
+ await pc2.setRemoteDescription(await pc1.createOffer());
+ assert_equals(pc2.getTransceivers().length, 1);
+
+ await pc2.setRemoteDescription({type: "rollback"});
+ assert_equals(pc2.getTransceivers().length, 1);
+ assert_equals(pc2.getTransceivers()[0].mid, null);
+ assert_equals(pc2.getTransceivers()[0].receiver.transport, null);
+ }, "rollback of a remote offer should keep a transceiver created by addtrack");
+
+ promise_test(async t => {
+ const pc1 = new RTCPeerConnection();
+ t.add_cleanup(() => pc1.close());
+ const pc2 = new RTCPeerConnection();
+ t.add_cleanup(() => pc2.close());
+
+ const stream = await getNoiseStream({video: true});
+ t.add_cleanup(() => stream.getTracks().forEach(track => track.stop()));
+ pc1.addTrack(stream.getTracks()[0], stream);
+
await pc2.setRemoteDescription(await pc1.createOffer());
assert_equals(pc2.getTransceivers().length, 1);
@@ -257,14 +281,16 @@
const offer = await pc.createOffer();
await pc.setLocalDescription(offer);
+ assert_not_equals(pc.getTransceivers()[0].sender.transport, null);
await pc.setRemoteDescription({type: "rollback"});
assert_equals(pc.getTransceivers().length, 1);
assert_equals(pc.getTransceivers()[0].mid, null)
+ assert_equals(pc.getTransceivers()[0].sender.transport, null);
await pc.setLocalDescription(offer);
assert_equals(pc.getTransceivers().length, 1);
await signalingstatechangeResolver.promise;
assert_array_equals(states, ['have-local-offer', 'stable', 'have-local-offer']);
- }, "rollback local offer explicitly");
+ }, "explicit rollback of local offer should remove transceivers and transport");
promise_test(async t => {
const pc1 = new RTCPeerConnection();
@@ -486,7 +512,6 @@
await pc1.setLocalDescription(offer1);
await pc2.setRemoteDescription(pc1.pendingLocalDescription);
-
await pc2.setLocalDescription(await pc2.createAnswer());
await pc1.setRemoteDescription(pc2.localDescription);
@@ -505,8 +530,11 @@
assert_equals(remoteStreams[0].getTracks().length, 0);
assert_equals(remoteStreams[1].getTracks()[0].id, track.id);
await pc2.setRemoteDescription({type: "rollback"});
- assert_equals(remoteStreams[0].getTracks().length, 1);
- assert_equals(remoteStreams[0].getTracks()[0].id, track.id);
+ assert_equals(remoteStreams.length, 3);
+ assert_equals(remoteStreams[0].id, remoteStreams[2].id);
+ assert_equals(remoteStreams[1].getTracks().length, 0);
+ assert_equals(remoteStreams[2].getTracks().length, 1);
+ assert_equals(remoteStreams[2].getTracks()[0].id, track.id);
}, "rollback of a remote offer with stream changes");
diff --git a/tests/wpt/web-platform-tests/xhr/idlharness.any.js b/tests/wpt/web-platform-tests/xhr/idlharness.any.js
index f36f0ce0296..d45e52e2341 100644
--- a/tests/wpt/web-platform-tests/xhr/idlharness.any.js
+++ b/tests/wpt/web-platform-tests/xhr/idlharness.any.js
@@ -1,6 +1,7 @@
// META: global=sharedworker
// META: script=/resources/WebIDLParser.js
// META: script=/resources/idlharness.js
+// META: timeout=long
idl_test(
['xhr'],