aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2020-03-25 10:34:20 -0400
committerGitHub <noreply@github.com>2020-03-25 10:34:20 -0400
commit998f9d1906c1a4bfaff35c76c3b8de666aa996b5 (patch)
tree1ea4b7fda51b047789ece16535228c1c05cbb0a6
parent6ca767d7f92eb22eb7631283973ef8305567bf07 (diff)
parentabc6fbf6bdb2937bfce45c53bd288da8ae757cb9 (diff)
downloadservo-998f9d1906c1a4bfaff35c76c3b8de666aa996b5.tar.gz
servo-998f9d1906c1a4bfaff35c76c3b8de666aa996b5.zip
Auto merge of #26028 - servo-wpt-sync:wpt_update_25-03-2020, r=jdm
Sync WPT with upstream (25-03-2020) Automated downstream sync of changes from upstream as of 25-03-2020. [no-wpt-sync] r? @servo-wpt-sync
-rw-r--r--tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-003.html.ini4
-rw-r--r--tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-005.html.ini4
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-flexbox/box-sizing-001.html.ini13
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-auto-010.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-011.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-012.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-013.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-none-011.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/break-spaces-051.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/break-spaces-052.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-line-051.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-line-052.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-wrap-051.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-wrap-052.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-normal-011.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-011.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-031.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-032.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-034.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-035.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-051.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-052.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-001.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-002.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-003.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-005.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-006.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-007.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-008.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-009.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-010.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-011.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-014.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-015.html.ini2
-rw-r--r--tests/wpt/metadata-layout-2020/encoding/textdecoder-copy.any.js.ini15
-rw-r--r--tests/wpt/metadata-layout-2020/encoding/textdecoder-streaming.any.js.ini11
-rw-r--r--tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini13
-rw-r--r--tests/wpt/metadata-layout-2020/fetch/content-type/script.window.js.ini9
-rw-r--r--tests/wpt/metadata-layout-2020/fetch/nosniff/parsing-nosniff.window.js.ini5
-rw-r--r--tests/wpt/metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_3.html.ini (renamed from tests/wpt/metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini)2
-rw-r--r--tests/wpt/metadata-layout-2020/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js.ini21
-rw-r--r--tests/wpt/metadata-layout-2020/html/interaction/focus/the-autofocus-attribute/skip-document-with-fragment.html.ini4
-rw-r--r--tests/wpt/metadata-layout-2020/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini12
-rw-r--r--tests/wpt/metadata-layout-2020/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html.ini3
-rw-r--r--tests/wpt/metadata-layout-2020/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini3
-rw-r--r--tests/wpt/metadata-layout-2020/html/semantics/scripting-1/the-script-element/execution-timing/077.html.ini4
-rw-r--r--tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini73
-rw-r--r--tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-multi-channels.html.ini3
-rw-r--r--tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini6
-rw-r--r--tests/wpt/metadata-layout-2020/webmessaging/with-ports/017.html.ini5
-rw-r--r--tests/wpt/metadata-layout-2020/webmessaging/without-ports/017.html.ini5
-rw-r--r--tests/wpt/metadata/MANIFEST.json1592
-rw-r--r--tests/wpt/metadata/css/CSS2/floats/hit-test-floats-003.html.ini4
-rw-r--r--tests/wpt/metadata/css/CSS2/floats/hit-test-floats-005.html.ini4
-rw-r--r--tests/wpt/metadata/css/css-flexbox/box-sizing-001.html.ini13
-rw-r--r--tests/wpt/metadata/css/css-text/hyphens/hyphens-auto-010.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-011.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-012.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-013.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/hyphens/hyphens-none-011.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/break-spaces-051.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/break-spaces-052.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/pre-line-051.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/pre-line-052.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/pre-wrap-051.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/pre-wrap-052.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/white-space-normal-011.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/white-space-pre-011.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/white-space-pre-031.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/white-space-pre-032.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/white-space-pre-034.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/white-space-pre-035.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/white-space-pre-051.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/white-space-pre-052.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-009.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-001.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-002.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-003.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-005.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-006.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-007.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-008.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-009.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-010.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-011.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-014.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-015.html.ini2
-rw-r--r--tests/wpt/metadata/encoding/encodeInto.any.js.ini5
-rw-r--r--tests/wpt/metadata/encoding/textdecoder-copy.any.js.ini6
-rw-r--r--tests/wpt/metadata/encoding/textdecoder-streaming.any.js.ini6
-rw-r--r--tests/wpt/metadata/fetch/content-type/response.window.js.ini13
-rw-r--r--tests/wpt/metadata/fetch/content-type/script.window.js.ini5
-rw-r--r--tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini5
-rw-r--r--tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini4
-rw-r--r--tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_3.html.ini (renamed from tests/wpt/metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini)2
-rw-r--r--tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini4
-rw-r--r--tests/wpt/metadata/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js.ini12
-rw-r--r--tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/skip-document-with-fragment.html.ini4
-rw-r--r--tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini12
-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-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini3
-rw-r--r--tests/wpt/metadata/html/semantics/scripting-1/the-script-element/execution-timing/077.html.ini4
-rw-r--r--tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini1
-rw-r--r--tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-multi-channels.html.ini3
-rw-r--r--tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini6
-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/web-platform-tests/common/sab.js13
-rw-r--r--tests/wpt/web-platform-tests/common/security-features/resources/common.sub.js21
-rw-r--r--tests/wpt/web-platform-tests/common/security-features/subresource/static-import.py16
-rw-r--r--tests/wpt/web-platform-tests/common/security-features/subresource/template/static-import.js.template1
-rw-r--r--tests/wpt/web-platform-tests/common/security-features/tools/spec.src.json4
-rw-r--r--tests/wpt/web-platform-tests/compression/compression-bad-chunks.tentative.any.js6
-rw-r--r--tests/wpt/web-platform-tests/compression/decompression-bad-chunks.tentative.any.js6
-rw-r--r--tests/wpt/web-platform-tests/css/css-flexbox/anonymous-block.html12
-rw-r--r--tests/wpt/web-platform-tests/css/css-flexbox/auto-height-with-flex.html9
-rw-r--r--tests/wpt/web-platform-tests/css/css-flexbox/box-sizing-001.html108
-rw-r--r--tests/wpt/web-platform-tests/css/css-flexbox/box-sizing-min-max-sizes-001.html33
-rw-r--r--tests/wpt/web-platform-tests/css/css-flexbox/column-flex-child-with-overflow-scroll.html38
-rw-r--r--tests/wpt/web-platform-tests/css/css-flexbox/reference/anonymous-block-ref.html8
-rw-r--r--tests/wpt/web-platform-tests/css/css-flexbox/reference/auto-height-with-flex-ref.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/META.yml2
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/matching/fixed-stretch-style-over-weight-ref.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/matching/fixed-stretch-style-over-weight.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/matching/font-matching.css1
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/matching/resources/variabletest_matching.ttfbin4544 -> 4648 bytes
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/matching/stretch-distance-over-weight-distance-ref.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/matching/stretch-distance-over-weight-distance.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/matching/style-ranges-over-weight-direction-ref.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/matching/style-ranges-over-weight-direction.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-definite-sizes-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-grid-container-containing-block-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-grid-container-parent-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-implicit-grid-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-implicit-grid-line-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/abspos/grid-sizing-positioned-items-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/abspos/positioned-grid-items-should-not-create-implicit-tracks-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/abspos/positioned-grid-items-should-not-take-up-space-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution-vertical-lr.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution-vertical-rl.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-vertical-lr.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-vertical-rl.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-lr.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-rl.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-overflow.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-stretch-with-orthogonal-flows.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-stretch.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-stretching-replaced-items.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-001.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-002.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-003.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-004.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-005.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-006.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-007.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-008.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-009.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-010.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-011.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-012.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-013.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-014.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-015.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-016.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-017.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-018.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-019.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-020.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-021.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-022.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-023.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-024.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-025.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-026.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-027.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-028.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-032.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-033.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-034.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-001.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-002.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-003.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-004.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-005.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-006.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-007.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-003.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-004.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-005.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-006.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-007.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-008.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-009.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-010.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-011.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-012.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-013.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-014.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-015.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-016.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-017.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-003.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-004.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-content-alignment-second-pass-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-content-alignment-second-pass-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-fit-content-tracks-dont-stretch-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-gutters-and-alignment.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-001.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-002.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-004.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-005.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-006.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-007.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-lr.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-rl.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-lr.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-rl.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-003.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-004.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-005.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-006.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-007.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-008.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-009.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-010.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-011.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-012.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-013.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-014.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-015.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-016.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-017.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-003.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-004.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-003.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-004.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-005.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-006.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-007.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-008.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-009.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-010.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-011.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-012.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-003.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-004.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-005.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-006.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-007.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-008.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-009.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-010.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-011.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-012.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-013.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-014.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-015.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-016.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-003.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-004.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-005.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-006.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-007.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-008.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-009.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-010.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-011.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-012.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-013.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-014.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-015.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-016.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-003.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-004.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-005.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-006.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-007.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-008.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-009.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-010.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-011.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-012.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-013.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-014.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-015.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-016.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-003.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-004.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-005.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-006.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-007.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-008.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-009.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-010.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-011.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-012.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-013.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-014.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-015.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-016.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-change-fit-content-argument-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-support-repeat-002.html54
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-021.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-022.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-023.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-024.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-025.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-003.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-004.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-001.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-002.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-intrinsic-size-with-orthogonal-items.html5
-rw-r--r--tests/wpt/web-platform-tests/css/css-layout-api/constraints-data-sab-failure.https.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-layout-api/fragment-data-sab-failure.https.html3
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-auto-010.html41
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-010.html47
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-011.html45
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-012.html45
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-013.html45
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-none-011.html42
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-auto-010-ref.html27
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-010-ref.html27
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-011-ref.html27
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-013-ref.html27
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/break-spaces-051.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/break-spaces-052.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/pre-line-051.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/pre-line-052.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/pre-wrap-051.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/pre-wrap-052.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-normal-011-ref.html31
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-nowrap-011-ref.html28
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-011-ref.html30
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-031-ref.html30
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-034-ref.html30
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html29
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-003-ref.html29
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html35
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-012-ref.html35
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-normal-011.html57
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-nowrap-011.html55
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-011.html72
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-031.html75
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-032.html76
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-034.html76
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-035.html76
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-051.html45
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-052.html45
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-009.html35
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-010.html2
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-011.html2
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-001.html78
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-002.html76
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-003.html78
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-005.html77
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-006.html97
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-007.html97
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-008.html105
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-009.html105
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-010.html105
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-011.html98
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-012.html103
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-013.html103
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-014.html97
-rw-r--r--tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-015.html89
-rw-r--r--tests/wpt/web-platform-tests/css/cssom-view/MediaQueryList-addListener-handleEvent.html21
-rw-r--r--tests/wpt/web-platform-tests/dom/nodes/Node-lookupNamespaceURI.html2
-rw-r--r--tests/wpt/web-platform-tests/domxpath/callback-interface.html147
-rw-r--r--tests/wpt/web-platform-tests/encoding/encodeInto.any.js27
-rw-r--r--tests/wpt/web-platform-tests/encoding/streams/decode-utf8.any.js11
-rw-r--r--tests/wpt/web-platform-tests/encoding/textdecoder-copy.any.js13
-rw-r--r--tests/wpt/web-platform-tests/encoding/textdecoder-streaming.any.js4
-rw-r--r--tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js17
-rw-r--r--tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-idb.any.js8
-rw-r--r--tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-notifications-api.any.js9
-rw-r--r--tests/wpt/web-platform-tests/html/user-activation/activation-hierarchy-crossorigin-parent-manual.sub.html35
-rw-r--r--tests/wpt/web-platform-tests/html/user-activation/activation-hierarchy-sameorigin-parent-manual.html35
-rw-r--r--tests/wpt/web-platform-tests/html/user-activation/propagation-crossorigin.sub.tentative.html127
-rw-r--r--tests/wpt/web-platform-tests/html/user-activation/propagation-sameorigin.tentative.html127
-rw-r--r--tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-crossorigin-child.sub.html32
-rw-r--r--tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-crossorigin-grandchild.html28
-rw-r--r--tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-sameorigin-child.html32
-rw-r--r--tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-sameorigin-grandchild.html28
-rw-r--r--tests/wpt/web-platform-tests/html/user-activation/resources/child-two.html3
-rw-r--r--tests/wpt/web-platform-tests/html/user-activation/resources/propagation-crossorigin-child.sub.html27
-rw-r--r--tests/wpt/web-platform-tests/html/user-activation/resources/propagation-sameorigin-child.html27
-rw-r--r--tests/wpt/web-platform-tests/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-failure.https.any.js3
-rw-r--r--tests/wpt/web-platform-tests/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-success.any.js3
-rw-r--r--tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/sharedworker-import.https.html122
-rw-r--r--tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/sharedworker-import.https.html.headers1
-rw-r--r--tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/worker-import.https.html122
-rw-r--r--tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/worker-import.https.html.headers1
-rw-r--r--tests/wpt/web-platform-tests/mixed-content/gen/top.meta/opt-in/sharedworker-import.https.html53
-rw-r--r--tests/wpt/web-platform-tests/mixed-content/gen/top.meta/opt-in/worker-import.https.html53
-rw-r--r--tests/wpt/web-platform-tests/mixed-content/gen/top.meta/unset/sharedworker-import.https.html102
-rw-r--r--tests/wpt/web-platform-tests/mixed-content/gen/top.meta/unset/worker-import.https.html102
-rw-r--r--tests/wpt/web-platform-tests/mixed-content/spec.src.json8
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/orientation-sensor-tests.js4
-rw-r--r--tests/wpt/web-platform-tests/pointerevents/pointerevent_lostpointercapture_for_disconnected_node_in_shadow_dom.html128
-rw-r--r--tests/wpt/web-platform-tests/pointerevents/pointerevent_lostpointercapture_for_disconnected_shadow_host.html136
-rw-r--r--tests/wpt/web-platform-tests/pointerevents/pointerevent_pointercapture-in-custom-element.html123
-rw-r--r--tests/wpt/web-platform-tests/pointerevents/pointerevent_pointercapture-in-shadow-dom.html114
-rw-r--r--tests/wpt/web-platform-tests/portals/portal-activate-data.html3
-rw-r--r--tests/wpt/web-platform-tests/referrer-policy/spec.src.json4
-rw-r--r--tests/wpt/web-platform-tests/svg/linking/reftests/reference/green-100x100.svg3
-rw-r--r--tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-invalid-base.svg15
-rw-r--r--tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-001.svg17
-rw-r--r--tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-002.svg19
-rw-r--r--tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-003.svg24
-rw-r--r--tests/wpt/web-platform-tests/tools/lint/tests/test_file_lints.py5
-rw-r--r--tests/wpt/web-platform-tests/tools/wptserve/setup.py2
-rw-r--r--tests/wpt/web-platform-tests/upgrade-insecure-requests/spec.src.json6
-rw-r--r--tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-copy-channel.html8
-rw-r--r--tests/wpt/web-platform-tests/xhr/send-data-sharedarraybuffer.any.js10
468 files changed, 6719 insertions, 1476 deletions
diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-003.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-003.html.ini
new file mode 100644
index 00000000000..f29da48a2a0
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-003.html.ini
@@ -0,0 +1,4 @@
+[hit-test-floats-003.html]
+ [Miss float below something else]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-005.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-005.html.ini
new file mode 100644
index 00000000000..baa9f1a7541
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-005.html.ini
@@ -0,0 +1,4 @@
+[hit-test-floats-005.html]
+ [Miss clipped float]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata-layout-2020/css/css-flexbox/box-sizing-001.html.ini b/tests/wpt/metadata-layout-2020/css/css-flexbox/box-sizing-001.html.ini
new file mode 100644
index 00000000000..f568bb5baf5
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-flexbox/box-sizing-001.html.ini
@@ -0,0 +1,13 @@
+[box-sizing-001.html]
+ [.flexbox 10]
+ expected: FAIL
+
+ [.flexbox 4]
+ expected: FAIL
+
+ [.flexbox 8]
+ expected: FAIL
+
+ [.flexbox 9]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-auto-010.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-auto-010.html.ini
new file mode 100644
index 00000000000..bc707da5729
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-auto-010.html.ini
@@ -0,0 +1,2 @@
+[hyphens-auto-010.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-011.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-011.html.ini
new file mode 100644
index 00000000000..24a1e70936a
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-011.html.ini
@@ -0,0 +1,2 @@
+[hyphens-manual-011.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-012.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-012.html.ini
new file mode 100644
index 00000000000..f900b4c4b11
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-012.html.ini
@@ -0,0 +1,2 @@
+[hyphens-manual-012.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-013.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-013.html.ini
new file mode 100644
index 00000000000..364a2a970f1
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-manual-013.html.ini
@@ -0,0 +1,2 @@
+[hyphens-manual-013.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-none-011.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-none-011.html.ini
new file mode 100644
index 00000000000..93e96554135
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/hyphens/hyphens-none-011.html.ini
@@ -0,0 +1,2 @@
+[hyphens-none-011.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/break-spaces-051.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/break-spaces-051.html.ini
new file mode 100644
index 00000000000..a7f1149add4
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/break-spaces-051.html.ini
@@ -0,0 +1,2 @@
+[break-spaces-051.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/break-spaces-052.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/break-spaces-052.html.ini
new file mode 100644
index 00000000000..988ad46616a
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/break-spaces-052.html.ini
@@ -0,0 +1,2 @@
+[break-spaces-052.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-line-051.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-line-051.html.ini
new file mode 100644
index 00000000000..8a6c15721d6
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-line-051.html.ini
@@ -0,0 +1,2 @@
+[pre-line-051.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-line-052.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-line-052.html.ini
new file mode 100644
index 00000000000..65d4fabf294
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-line-052.html.ini
@@ -0,0 +1,2 @@
+[pre-line-052.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-wrap-051.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-wrap-051.html.ini
new file mode 100644
index 00000000000..114fd931e51
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-wrap-051.html.ini
@@ -0,0 +1,2 @@
+[pre-wrap-051.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-wrap-052.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-wrap-052.html.ini
new file mode 100644
index 00000000000..b6223186447
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/pre-wrap-052.html.ini
@@ -0,0 +1,2 @@
+[pre-wrap-052.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-normal-011.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-normal-011.html.ini
new file mode 100644
index 00000000000..c0ad8b521d7
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-normal-011.html.ini
@@ -0,0 +1,2 @@
+[white-space-normal-011.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-011.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-011.html.ini
new file mode 100644
index 00000000000..4e25f832bb2
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-011.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-011.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-031.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-031.html.ini
new file mode 100644
index 00000000000..3d29ea04bca
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-031.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-031.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-032.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-032.html.ini
new file mode 100644
index 00000000000..6abf3a4d191
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-032.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-032.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-034.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-034.html.ini
new file mode 100644
index 00000000000..cac173851a0
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-034.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-034.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-035.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-035.html.ini
new file mode 100644
index 00000000000..7058f550102
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-035.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-035.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-051.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-051.html.ini
new file mode 100644
index 00000000000..7173a3ddfbc
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-051.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-051.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-052.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-052.html.ini
new file mode 100644
index 00000000000..ecec2338572
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/white-space-pre-052.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-052.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-001.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-001.html.ini
new file mode 100644
index 00000000000..218fa1705d7
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-001.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-001.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-002.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-002.html.ini
new file mode 100644
index 00000000000..090c9d9e2ac
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-002.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-002.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-003.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-003.html.ini
new file mode 100644
index 00000000000..d24bde326b7
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-003.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-003.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-005.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-005.html.ini
new file mode 100644
index 00000000000..7a5e9173840
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-005.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-005.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-006.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-006.html.ini
new file mode 100644
index 00000000000..3d3b8bf01fb
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-006.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-006.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-007.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-007.html.ini
new file mode 100644
index 00000000000..fb9fb323996
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-007.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-007.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-008.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-008.html.ini
new file mode 100644
index 00000000000..366b54520fb
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-008.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-008.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-009.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-009.html.ini
new file mode 100644
index 00000000000..4afccbc597f
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-009.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-009.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-010.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-010.html.ini
new file mode 100644
index 00000000000..cd7a4694b37
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-010.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-010.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-011.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-011.html.ini
new file mode 100644
index 00000000000..3f731145056
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-011.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-011.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-014.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-014.html.ini
new file mode 100644
index 00000000000..1d61127f7be
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-014.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-014.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-015.html.ini b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-015.html.ini
new file mode 100644
index 00000000000..9d9b0a4bf12
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/css/css-text/white-space/ws-break-spaces-applies-to-015.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-015.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/encoding/textdecoder-copy.any.js.ini b/tests/wpt/metadata-layout-2020/encoding/textdecoder-copy.any.js.ini
new file mode 100644
index 00000000000..f6f48f38a50
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/encoding/textdecoder-copy.any.js.ini
@@ -0,0 +1,15 @@
+[textdecoder-copy.any.sharedworker.html]
+ expected: ERROR
+
+[textdecoder-copy.any.html]
+ [Modify buffer after passing it in (SharedArrayBuffer)]
+ expected: FAIL
+
+
+[textdecoder-copy.any.serviceworker.html]
+ expected: ERROR
+
+[textdecoder-copy.any.worker.html]
+ [Modify buffer after passing it in (SharedArrayBuffer)]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata-layout-2020/encoding/textdecoder-streaming.any.js.ini b/tests/wpt/metadata-layout-2020/encoding/textdecoder-streaming.any.js.ini
new file mode 100644
index 00000000000..7ece92ea3df
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/encoding/textdecoder-streaming.any.js.ini
@@ -0,0 +1,11 @@
+[textdecoder-streaming.any.sharedworker.html]
+ expected: ERROR
+
+[textdecoder-streaming.any.worker.html]
+ expected: CRASH
+
+[textdecoder-streaming.any.html]
+ expected: CRASH
+
+[textdecoder-streaming.any.serviceworker.html]
+ expected: ERROR
diff --git a/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini b/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini
index 27a4ae36d5c..b794351d8c1 100644
--- a/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini
+++ b/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini
@@ -318,18 +318,21 @@
[<iframe>: separate response Content-Type: text/html */*]
expected: FAIL
- [<iframe>: combined response Content-Type: text/html;" \\" text/plain]
- expected: FAIL
-
[<iframe>: combined response Content-Type: text/html */*]
expected: FAIL
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
expected: FAIL
- [<iframe>: separate response Content-Type: text/html;x=" text/plain]
+ [<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
expected: FAIL
- [<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
+ [<iframe>: separate response Content-Type: text/html;" text/plain]
+ expected: FAIL
+
+ [<iframe>: separate response Content-Type: text/html */*;charset=gbk]
+ expected: FAIL
+
+ [<iframe>: separate response Content-Type: text/html;" \\" text/plain]
expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/fetch/content-type/script.window.js.ini b/tests/wpt/metadata-layout-2020/fetch/content-type/script.window.js.ini
index c1250896486..de177334b81 100644
--- a/tests/wpt/metadata-layout-2020/fetch/content-type/script.window.js.ini
+++ b/tests/wpt/metadata-layout-2020/fetch/content-type/script.window.js.ini
@@ -20,9 +20,6 @@
[combined x/x text/javascript]
expected: FAIL
- [separate text/javascript x/x]
- expected: FAIL
-
[separate text/javascript;charset=windows-1252;" \\" x/x]
expected: FAIL
@@ -56,3 +53,9 @@
[combined text/javascript ]
expected: FAIL
+ [separate text/javascript;charset=windows-1252 text/javascript]
+ expected: FAIL
+
+ [separate text/javascript ]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata-layout-2020/fetch/nosniff/parsing-nosniff.window.js.ini b/tests/wpt/metadata-layout-2020/fetch/nosniff/parsing-nosniff.window.js.ini
index f9392e03143..b7052af5b5c 100644
--- a/tests/wpt/metadata-layout-2020/fetch/nosniff/parsing-nosniff.window.js.ini
+++ b/tests/wpt/metadata-layout-2020/fetch/nosniff/parsing-nosniff.window.js.ini
@@ -11,9 +11,6 @@
[X-Content-Type-Options%3A%20nosniff%0C]
expected: FAIL
- [X-Content-Type-Options%3A%20%22nosniFF%22]
- expected: FAIL
-
- [X-Content-Type-Options%3A%20no%0D%0AX-Content-Type-Options%3A%20nosniff]
+ [X-Content-Type-Options%3A%0D%0AX-Content-Type-Options%3A%20nosniff]
expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini b/tests/wpt/metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_3.html.ini
index 75d75b4cda2..51f8272a6de 100644
--- a/tests/wpt/metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini
+++ b/tests/wpt/metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_3.html.ini
@@ -1,4 +1,4 @@
-[traverse_the_history_2.html]
+[traverse_the_history_3.html]
[Multiple history traversals, last would be aborted]
expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js.ini b/tests/wpt/metadata-layout-2020/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js.ini
new file mode 100644
index 00000000000..bd02858aab9
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js.ini
@@ -0,0 +1,21 @@
+[no-coop-coep.https.any.serviceworker.html]
+ expected: ERROR
+
+[no-coop-coep.https.any.sharedworker.html]
+ expected: ERROR
+
+[no-coop-coep.https.any.html]
+ [SharedArrayBuffer constructor does not exist without COOP+COEP]
+ expected: FAIL
+
+ [Bonus: self.crossOriginIsolated]
+ expected: FAIL
+
+
+[no-coop-coep.https.any.worker.html]
+ [SharedArrayBuffer constructor does not exist without COOP+COEP]
+ expected: FAIL
+
+ [Bonus: self.crossOriginIsolated]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata-layout-2020/html/interaction/focus/the-autofocus-attribute/skip-document-with-fragment.html.ini b/tests/wpt/metadata-layout-2020/html/interaction/focus/the-autofocus-attribute/skip-document-with-fragment.html.ini
index c5f8391a36b..c12c0f8ae48 100644
--- a/tests/wpt/metadata-layout-2020/html/interaction/focus/the-autofocus-attribute/skip-document-with-fragment.html.ini
+++ b/tests/wpt/metadata-layout-2020/html/interaction/focus/the-autofocus-attribute/skip-document-with-fragment.html.ini
@@ -1,8 +1,4 @@
[skip-document-with-fragment.html]
- expected: TIMEOUT
- [Autofocus elements in top-level browsing context's documents with URI fragments should be skipped.]
- expected: TIMEOUT
-
[Autofocus elements in iframed documents with URL fragments should be skipped.]
expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini b/tests/wpt/metadata-layout-2020/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini
index 9e2ec4357fe..f45aaafe1c5 100644
--- a/tests/wpt/metadata-layout-2020/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini
+++ b/tests/wpt/metadata-layout-2020/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini
@@ -1,20 +1,16 @@
[supported-elements.html]
- expected: TIMEOUT
[Contenteditable element should support autofocus]
expected: FAIL
[Host element with delegatesFocus including no focusable descendants should be skipped]
- expected: NOTRUN
+ expected: FAIL
[Element with tabindex should support autofocus]
- expected: TIMEOUT
-
- [Non-HTMLElement should not support autofocus]
- expected: NOTRUN
+ expected: FAIL
[Area element should support autofocus]
- expected: NOTRUN
+ expected: FAIL
[Host element with delegatesFocus should support autofocus]
- expected: NOTRUN
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html.ini b/tests/wpt/metadata-layout-2020/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html.ini
index 1b74d6e073d..d913fcbb129 100644
--- a/tests/wpt/metadata-layout-2020/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html.ini
+++ b/tests/wpt/metadata-layout-2020/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-1.html.ini
@@ -1,4 +1,5 @@
[iframe_sandbox_popups_nonescaping-1.html]
+ expected: TIMEOUT
[Check that popups from a sandboxed iframe do not escape the sandbox]
- expected: FAIL
+ expected: NOTRUN
diff --git a/tests/wpt/metadata-layout-2020/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini b/tests/wpt/metadata-layout-2020/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini
index f4f994c5d6f..7a36937927c 100644
--- a/tests/wpt/metadata-layout-2020/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini
+++ b/tests/wpt/metadata-layout-2020/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini
@@ -1,5 +1,4 @@
[iframe_sandbox_popups_nonescaping-3.html]
- expected: TIMEOUT
[Check that popups from a sandboxed iframe do not escape the sandbox]
- expected: NOTRUN
+ expected: FAIL
diff --git a/tests/wpt/metadata-layout-2020/html/semantics/scripting-1/the-script-element/execution-timing/077.html.ini b/tests/wpt/metadata-layout-2020/html/semantics/scripting-1/the-script-element/execution-timing/077.html.ini
deleted file mode 100644
index bcd2fd0eab8..00000000000
--- a/tests/wpt/metadata-layout-2020/html/semantics/scripting-1/the-script-element/execution-timing/077.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[077.html]
- [ adding several types of scripts through the DOM and removing some of them confuses scheduler ]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini b/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
index dfc61af48f0..66bd350083b 100644
--- a/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
+++ b/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
@@ -1,2 +1,73 @@
[realtimeanalyser-fft-scaling.html]
- expected: TIMEOUT
+ [X 2048-point FFT peak position is not equal to 64. Got 0.]
+ expected: FAIL
+
+ [X 128-point FFT peak position is not equal to 4. Got 0.]
+ expected: FAIL
+
+ [X 32768-point FFT peak value in dBFS is not greater than or equal to -13.56. Got -1000.]
+ expected: FAIL
+
+ [X 64-point FFT peak value in dBFS is not greater than or equal to -13.56. Got -1000.]
+ expected: FAIL
+
+ [X 4096-point FFT peak value in dBFS is not greater than or equal to -13.56. Got -1000.]
+ expected: FAIL
+
+ [< [FFT scaling tests\] 22 out of 22 assertions were failed.]
+ expected: FAIL
+
+ [X 128-point FFT peak value in dBFS is not greater than or equal to -13.56. Got -1000.]
+ expected: FAIL
+
+ [X 8192-point FFT peak position is not equal to 256. Got 0.]
+ expected: FAIL
+
+ [X 32-point FFT peak value in dBFS is not greater than or equal to -14.43. Got -1000.]
+ expected: FAIL
+
+ [X 16384-point FFT peak value in dBFS is not greater than or equal to -13.56. Got -1000.]
+ expected: FAIL
+
+ [X 256-point FFT peak value in dBFS is not greater than or equal to -13.56. Got -1000.]
+ expected: FAIL
+
+ [X 8192-point FFT peak value in dBFS is not greater than or equal to -13.56. Got -1000.]
+ expected: FAIL
+
+ [X 1024-point FFT peak position is not equal to 32. Got 0.]
+ expected: FAIL
+
+ [X 64-point FFT peak position is not equal to 2. Got 0.]
+ expected: FAIL
+
+ [X 512-point FFT peak value in dBFS is not greater than or equal to -13.56. Got -1000.]
+ expected: FAIL
+
+ [X 32-point FFT peak position is not equal to 1. Got 0.]
+ expected: FAIL
+
+ [X 16384-point FFT peak position is not equal to 512. Got 0.]
+ expected: FAIL
+
+ [X 1024-point FFT peak value in dBFS is not greater than or equal to -13.56. Got -1000.]
+ expected: FAIL
+
+ [X 2048-point FFT peak value in dBFS is not greater than or equal to -13.56. Got -1000.]
+ expected: FAIL
+
+ [X 32768-point FFT peak position is not equal to 1024. Got 0.]
+ expected: FAIL
+
+ [X 4096-point FFT peak position is not equal to 128. Got 0.]
+ expected: FAIL
+
+ [X 512-point FFT peak position is not equal to 16. Got 0.]
+ expected: FAIL
+
+ [X 256-point FFT peak position is not equal to 8. Got 0.]
+ expected: FAIL
+
+ [# AUDIT TASK RUNNER FINISHED: 1 out of 1 tasks were failed.]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-multi-channels.html.ini b/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-multi-channels.html.ini
index 9933d2c6490..260c75b672d 100644
--- a/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-multi-channels.html.ini
+++ b/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-multi-channels.html.ini
@@ -17,3 +17,6 @@
[X Rendered audio for channel 5 does not equal [0,0.0626220703125,0.125030517578125,0.18695068359375,0.24810791015625,0.308319091796875,0.3673095703125,0.42486572265625,0.480743408203125,0.53472900390625,0.58660888671875,0.636199951171875,0.68328857421875,0.727691650390625,0.76922607421875,0.8077392578125...\] with an element-wise tolerance of {"absoluteThreshold":0.000030517578125,"relativeThreshold":0}.\n\tIndex\tActual\t\t\tExpected\t\tAbsError\t\tRelError\t\tTest threshold\n\t[1\]\t3.6732959747314453e-1\t6.2622070312500000e-2\t3.0470752716064453e-1\t4.8658168859649127e+0\t3.0517578125000000e-5\n\t[2\]\t6.8329977989196777e-1\t1.2503051757812500e-1\t5.5826926231384277e-1\t4.4650639949963384e+0\t3.0517578125000000e-5\n\t[3\]\t9.0373212099075317e-1\t1.8695068359375000e-1\t7.1678143739700317e-1\t3.8340669508039502e+0\t3.0517578125000000e-5\n\t[4\]\t9.9780619144439697e-1\t2.4810791015625000e-1\t7.4969828128814697e-1\t3.0216621502152523e+0\t3.0517578125000000e-5\n\t[5\]\t9.5236867666244507e-1\t3.0831909179687500e-1\t6.4404958486557007e-1\t2.0889059484187866e+0\t3.0517578125000000e-5\n\t...and 44051 more errors.\n\tMax AbsError of 1.9798262119293213e+0 at index of 27116.\n\t[27116\]\t9.9151444435119629e-1\t-9.8831176757812500e-1\t1.9798262119293213e+0\t2.0032405531110080e+0\t3.0517578125000000e-5\n\tMax RelError of Infinity at index of 12348.\n\t[12348\]\t9.5105654001235962e-1\t0.0000000000000000e+0\t9.5105654001235962e-1\tInfinity\t3.0517578125000000e-5\n]
expected: FAIL
+ [X Rendered audio for channel 5 does not equal [0,0.0626220703125,0.125030517578125,0.18695068359375,0.24810791015625,0.308319091796875,0.3673095703125,0.42486572265625,0.480743408203125,0.53472900390625,0.58660888671875,0.636199951171875,0.68328857421875,0.727691650390625,0.76922607421875,0.8077392578125...\] with an element-wise tolerance of {"absoluteThreshold":0.000030517578125,"relativeThreshold":0}.\n\tIndex\tActual\t\t\tExpected\t\tAbsError\t\tRelError\t\tTest threshold\n\t[1\]\t3.6732959747314453e-1\t6.2622070312500000e-2\t3.0470752716064453e-1\t4.8658168859649127e+0\t3.0517578125000000e-5\n\t[2\]\t6.8329977989196777e-1\t1.2503051757812500e-1\t5.5826926231384277e-1\t4.4650639949963384e+0\t3.0517578125000000e-5\n\t[3\]\t9.0373212099075317e-1\t1.8695068359375000e-1\t7.1678143739700317e-1\t3.8340669508039502e+0\t3.0517578125000000e-5\n\t[4\]\t9.9780619144439697e-1\t2.4810791015625000e-1\t7.4969828128814697e-1\t3.0216621502152523e+0\t3.0517578125000000e-5\n\t[5\]\t9.5236867666244507e-1\t3.0831909179687500e-1\t6.4404958486557007e-1\t2.0889059484187866e+0\t3.0517578125000000e-5\n\t...and 44074 more errors.\n\tMax AbsError of 1.9999794363975525e+0 at index of 19632.\n\t[19632\]\t9.9997943639755249e-1\t-1.0000000000000000e+0\t1.9999794363975525e+0\t1.9999794363975525e+0\t3.0517578125000000e-5\n\tMax RelError of Infinity at index of 3528.\n\t[3528\]\t9.5105654001235962e-1\t0.0000000000000000e+0\t9.5105654001235962e-1\tInfinity\t3.0517578125000000e-5\n]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini b/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini
index 05f9a049030..4f81772e6a9 100644
--- a/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini
+++ b/tests/wpt/metadata-layout-2020/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini
@@ -29,3 +29,9 @@
[X SNR (-397.6873168264859 dB) is not greater than or equal to 85.58. Got -397.6873168264859.]
expected: FAIL
+ [X SNR (-542.1812884246285 dB) is not greater than or equal to 85.58. Got -542.1812884246285.]
+ expected: FAIL
+
+ [X Stitched sine-wave buffers at sample rate 44100 does not equal [0,0.06264832615852356,0.12505052983760834,0.18696144223213196,0.24813786149024963,0.308339387178421,0.36732959747314453,0.4248766601085663,0.480754554271698,0.5347436666488647,0.5866320133209229,0.6362156271934509,0.6832997798919678,0.7276994585990906,0.7692402601242065,0.8077589869499207...\] with an element-wise tolerance of {"absoluteThreshold":0.000090957,"relativeThreshold":0}.\n\tIndex\tActual\t\t\tExpected\t\tAbsError\t\tRelError\t\tTest threshold\n\t[31080\]\t-1.9088364451950678e+29\t5.6332010030746460e-1\t1.9088364451950678e+29\t3.3885466613976843e+29\t9.0957000000000003e-5\n\t[31081\]\t4.5805644201849620e-41\t6.1397600173950195e-1\t6.1397600173950195e-1\t1.0000000000000000e+0\t9.0957000000000003e-5\n\tMax AbsError of 1.9088364451950678e+29 at index of 31080.\n\tMax RelError of 3.3885466613976843e+29 at index of 31080.\n]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata-layout-2020/webmessaging/with-ports/017.html.ini b/tests/wpt/metadata-layout-2020/webmessaging/with-ports/017.html.ini
new file mode 100644
index 00000000000..064cf47545b
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/webmessaging/with-ports/017.html.ini
@@ -0,0 +1,5 @@
+[017.html]
+ expected: TIMEOUT
+ [origin of the script that invoked the method, about:blank]
+ expected: TIMEOUT
+
diff --git a/tests/wpt/metadata-layout-2020/webmessaging/without-ports/017.html.ini b/tests/wpt/metadata-layout-2020/webmessaging/without-ports/017.html.ini
new file mode 100644
index 00000000000..064cf47545b
--- /dev/null
+++ b/tests/wpt/metadata-layout-2020/webmessaging/without-ports/017.html.ini
@@ -0,0 +1,5 @@
+[017.html]
+ expected: TIMEOUT
+ [origin of the script that invoked the method, about:blank]
+ expected: TIMEOUT
+
diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json
index 297a89ddca9..ec71f7d5dfa 100644
--- a/tests/wpt/metadata/MANIFEST.json
+++ b/tests/wpt/metadata/MANIFEST.json
@@ -16231,20 +16231,6 @@
}
},
"user-activation": {
- "activation-hierarchy-crossorigin-parent-manual.sub.html": [
- "601b9003f7ea9ba9847366a9365a08139f810078",
- [
- null,
- {}
- ]
- ],
- "activation-hierarchy-sameorigin-parent-manual.html": [
- "a7f423eea56f0e6dd41ecf9a950137ef502fdf12",
- [
- null,
- {}
- ]
- ],
"activation-thru-contextmenu-event-manual.html": [
"998bac3694c6f81e099c1c9eab41c704adcf10f9",
[
@@ -131364,6 +131350,19 @@
{}
]
],
+ "anonymous-block.html": [
+ "915cca757d73cc711bc3cb47e7539bb4e3e49554",
+ [
+ null,
+ [
+ [
+ "/css/css-flexbox/reference/anonymous-block-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"anonymous-flex-item-001.html": [
"3e749d43f76981a5cc0b372c7ba0c364c350b6b2",
[
@@ -131442,6 +131441,19 @@
{}
]
],
+ "auto-height-with-flex.html": [
+ "9151f8cd0979d287dec542e4034bbf3bacc0a8d3",
+ [
+ null,
+ [
+ [
+ "/css/css-flexbox/reference/auto-height-with-flex-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"auto-margins-001.html": [
"3a90ef2be84635834c5c3f7114451c8e8c437ac7",
[
@@ -138666,7 +138678,7 @@
],
"matching": {
"fixed-stretch-style-over-weight.html": [
- "8b177618a7cfea99b9e8f246766263a348a209c1",
+ "c2b27be120608c1ae7d5da934ed770875dd21a82",
[
null,
[
@@ -138679,7 +138691,7 @@
]
],
"stretch-distance-over-weight-distance.html": [
- "770efa99baede7cab09831f48ff0897f1ba6f071",
+ "e899c8b4d0df867e56a7409adda4dbfafd69260d",
[
null,
[
@@ -138692,7 +138704,7 @@
]
],
"style-ranges-over-weight-direction.html": [
- "5cb21495ac523ee796e7b246831fd2d5bdcae798",
+ "f263a11127717e46402fe184f90703fa2e7c3912",
[
null,
[
@@ -145936,7 +145948,7 @@
]
],
"constraints-data-sab-failure.https.html": [
- "8659c2edef56aa2fc72d3ba8ba807cb1d80dfe13",
+ "b8df61c73d305e463e78855ee399e91c9b9c4bca",
[
null,
[
@@ -146345,7 +146357,7 @@
]
],
"fragment-data-sab-failure.https.html": [
- "a6cfcf663dcf36a6d36fa019dc38ec49c6b29a09",
+ "681de5b543c29eadd0a27333c0aa42c83ae14f3e",
[
null,
[
@@ -162376,6 +162388,84 @@
{}
]
],
+ "hyphens-auto-010.html": [
+ "60ad082b8b43708c8c44b2263d081a5ed5c9a300",
+ [
+ null,
+ [
+ [
+ "/css/css-text/hyphens/reference/hyphens-auto-010-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "hyphens-manual-010.html": [
+ "8ceaceb1f3f1486b1e9cee141f821d634f946527",
+ [
+ null,
+ [
+ [
+ "/css/css-text/hyphens/reference/hyphens-manual-010-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "hyphens-manual-011.html": [
+ "060dc75619a188cdfe4452b2a1ea941992d38cb4",
+ [
+ null,
+ [
+ [
+ "/css/css-text/hyphens/reference/hyphens-manual-011-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "hyphens-manual-012.html": [
+ "871f7c39b69ddd8b37a3e57acaae92c6fe8e56f8",
+ [
+ null,
+ [
+ [
+ "/css/css-text/hyphens/reference/hyphens-manual-011-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "hyphens-manual-013.html": [
+ "17e3f6f8157aeb302789fa04e8366e44109cf6b8",
+ [
+ null,
+ [
+ [
+ "/css/css-text/hyphens/reference/hyphens-manual-013-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "hyphens-none-011.html": [
+ "cd54cfd09365e4491b024780ccf21d00d9fb562c",
+ [
+ null,
+ [
+ [
+ "/css/css-text/hyphens/reference/hyphens-manual-010-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"hyphens-out-of-flow-001.html": [
"844071126b02d01a68ab2f5df098b653dcf00541",
[
@@ -169936,6 +170026,32 @@
{}
]
],
+ "break-spaces-051.html": [
+ "2626511808335491910d3c14d752bb08494fcbc2",
+ [
+ null,
+ [
+ [
+ "/css/reference/ref-filled-green-100px-square.xht",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "break-spaces-052.html": [
+ "28219d55c6834e2f06c81f683e4f1456ac82c00f",
+ [
+ null,
+ [
+ [
+ "/css/reference/ref-filled-green-100px-square.xht",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"break-spaces-before-first-char-001.html": [
"6fd97f39d03ef4b0f833e9d22a845013412c03bd",
[
@@ -171249,6 +171365,32 @@
{}
]
],
+ "pre-line-051.html": [
+ "2a918fc28e0348d8cdcae7f18353d4d5e0233b55",
+ [
+ null,
+ [
+ [
+ "/css/reference/ref-filled-green-100px-square.xht",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "pre-line-052.html": [
+ "76eea859726c35eac573fcf8081f16497b9cf6e8",
+ [
+ null,
+ [
+ [
+ "/css/reference/ref-filled-green-100px-square.xht",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"pre-wrap-001.html": [
"87ffad96310532a6501e1b75c30f986433cc634e",
[
@@ -171509,6 +171651,32 @@
{}
]
],
+ "pre-wrap-051.html": [
+ "19d7f4dbbc03ccb1ccadd6b759bc4730839a3d25",
+ [
+ null,
+ [
+ [
+ "/css/reference/ref-filled-green-100px-square.xht",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "pre-wrap-052.html": [
+ "4794f52e16c0f9b9b45f4a42aa0664a29deac4cc",
+ [
+ null,
+ [
+ [
+ "/css/reference/ref-filled-green-100px-square.xht",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"pre-wrap-float-001.html": [
"af29b0505e0eefbab09b011798c0dd6136598cca",
[
@@ -172479,6 +172647,123 @@
{}
]
],
+ "white-space-normal-011.html": [
+ "1743f58f14147b0d8d4310ad0daf7607ff87bd65",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/white-space-normal-011-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "white-space-nowrap-011.html": [
+ "1c11d97093baafd73cc907726b31b5cec00d2eee",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/white-space-nowrap-011-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "white-space-pre-011.html": [
+ "88b9894d13776605ab5d2c9b5e38e13db80168de",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/white-space-pre-011-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "white-space-pre-031.html": [
+ "c96f51eefae610feaff1a12bd604c211e50c4207",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/white-space-pre-031-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "white-space-pre-032.html": [
+ "7c066b767034f838247b7e1e97b41d0dc9250479",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/white-space-pre-031-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "white-space-pre-034.html": [
+ "29bf8a53a6389b513c63b1344fba735a18a6e5fc",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/white-space-pre-034-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "white-space-pre-035.html": [
+ "2723c5ce67c380a9d6104e624c130325788c29b2",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/white-space-pre-031-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "white-space-pre-051.html": [
+ "b6879133cc38cef498664ac911e2181477bc9664",
+ [
+ null,
+ [
+ [
+ "/css/reference/ref-filled-green-100px-square.xht",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "white-space-pre-052.html": [
+ "a2f03ef50c06393ee8655e7e90405217b3590cf0",
+ [
+ null,
+ [
+ [
+ "/css/reference/ref-filled-green-100px-square.xht",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"white-space-pre-wrap-trailing-spaces-001.html": [
"82fbfbc976cd02629d1180e4470170a533aa27e9",
[
@@ -172583,21 +172868,8 @@
{}
]
],
- "white-space-pre-wrap-trailing-spaces-009.html": [
- "fad383233b31b29633bc08ec61472f179e74555f",
- [
- null,
- [
- [
- "/css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-004-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
"white-space-pre-wrap-trailing-spaces-010.html": [
- "ba0c5364884acf7afc87140ea36cdd68e590150a",
+ "55e2437198fc6f97c5b41c602dced36257c23a79",
[
null,
[
@@ -172610,7 +172882,7 @@
]
],
"white-space-pre-wrap-trailing-spaces-011.html": [
- "00f97f0360977a582e2e16057445dc47f34198e8",
+ "e54475ce44dcc12cd05a993ec92e7a18aac36bc7",
[
null,
[
@@ -172660,6 +172932,188 @@
],
{}
]
+ ],
+ "ws-break-spaces-applies-to-001.html": [
+ "fb0de71551a28be1491b3e5a2228873552a50f96",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-002.html": [
+ "4777ccba8fb4605f9196d22cb1109d3b1ac1037a",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-003.html": [
+ "14306d8a74eae53833873b2f5c8da1fe035c2dc9",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-003-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-005.html": [
+ "38974e0086618c4bd1e9410323263446d9d3fc17",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-006.html": [
+ "110feb52c9657db2e710cdd0efbfccf17a21fa0e",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-007.html": [
+ "6c99a930d00c58825e72f441a6e54e7908decb85",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-008.html": [
+ "007c95a9a0d4d9754653a2bf53441b712bb99698",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-009.html": [
+ "6bd4dbb346f60518bb60d14a70149be0eb5de93b",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-010.html": [
+ "caf1e89eb9fd3ebbd33534817185e7e8e53a6790",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-011.html": [
+ "df43ab43a153970a8989c21db28e147848a52af8",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-012.html": [
+ "540ce4a7e95c111bb99b2aa7bfa89e08aa8906a0",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-012-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-013.html": [
+ "5274bd7be276cf072cac755951155f88aa9d7c5b",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-012-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-014.html": [
+ "1454b3fcf53fbfca22b312d684fd403632923190",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "ws-break-spaces-applies-to-015.html": [
+ "b8634bbaef14a0bf0a73f3d5a2c26f877ab231f5",
+ [
+ null,
+ [
+ [
+ "/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
]
},
"word-boundary": {
@@ -231832,6 +232286,58 @@
{}
]
],
+ "url-processing-invalid-base.svg": [
+ "fc5d7c6b0620da9b775f461359444979e2868245",
+ [
+ null,
+ [
+ [
+ "/svg/linking/reftests/reference/green-100x100.svg",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "url-processing-whitespace-001.svg": [
+ "6baa0fdd8448af7f73f6c3d431d1f4a2afb4798a",
+ [
+ null,
+ [
+ [
+ "/svg/linking/reftests/reference/green-100x100.svg",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "url-processing-whitespace-002.svg": [
+ "ee4969a532dcd1a249af74dd0205655cbaafebdc",
+ [
+ null,
+ [
+ [
+ "/svg/linking/reftests/reference/green-100x100.svg",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "url-processing-whitespace-003.svg": [
+ "1dabd9f8f97d0a97aed0faeed3b04ef07c0a515c",
+ [
+ null,
+ [
+ [
+ "/svg/linking/reftests/reference/green-100x100.svg",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"use-descendant-combinator-001.html": [
"5619e0ba6902656eacab0e69da808eb352247aa2",
[
@@ -241153,6 +241659,10 @@
"6805c323df5a975231648b830e33ce183c3cbbd3",
[]
],
+ "sab.js": [
+ "c7fd1a742e64f66744b416584952effe29fda208",
+ []
+ ],
"security-features": {
"README.md": [
"fb9a2f108f9faf68bb86f0bd9f848dbd28630ca4",
@@ -241160,7 +241670,7 @@
],
"resources": {
"common.sub.js": [
- "aa6b5ddf23a3ea786ea938744a5da87b313434e0",
+ "402ce9bbacf3473115f458a192a634c449c98823",
[]
],
"common.sub.js.headers": [
@@ -241225,6 +241735,10 @@
"d8fd6876449ee844a758b2b1028588d866746d9e",
[]
],
+ "static-import.py": [
+ "0a97dd1a32652b9f41edcb56eefe197ec4276ce1",
+ []
+ ],
"stylesheet.py": [
"ec62a8cd5f282130f66c1bdfe47240ca4cc625af",
[]
@@ -241258,6 +241772,10 @@
"c3f109e4a90edd65cfa26d14dbe4e4252087b37c",
[]
],
+ "static-import.js.template": [
+ "095459b54753a7609cd464088aa0e83b7e4a5086",
+ []
+ ],
"svg.css.template": [
"c2e509cc3b81c55072390d387502fc1949b917ae",
[]
@@ -241294,7 +241812,7 @@
[]
],
"spec.src.json": [
- "75d1528b154a92c5fd8e051618c4f9dea53ceeab",
+ "5c8f97ad2eef22a41dc48618e8fe53b913c259a4",
[]
],
"spec_validator.py": [
@@ -284135,6 +284653,14 @@
"89f1025261aca313a0598a2f87919f0c201d4b06",
[]
],
+ "anonymous-block-ref.html": [
+ "fc8fe9f991d1df8b41a9ab6932f5eefa6553282d",
+ []
+ ],
+ "auto-height-with-flex-ref.html": [
+ "d56fe356dcbb6ce87414a2075b5f47c515628016",
+ []
+ ],
"css-box-justify-content-ref.html": [
"e8377473fdef6f93bdf0e1e0e78fd33f01c93e82",
[]
@@ -284523,7 +285049,7 @@
},
"css-fonts": {
"META.yml": [
- "3c34ca4e7510e0ad312adfa689689c2b5cb3885e",
+ "e5ea857ec9043a1c61325d73100fddb6da83020c",
[]
],
"README": [
@@ -285002,25 +285528,25 @@
[]
],
"fixed-stretch-style-over-weight-ref.html": [
- "ccbd4efaee5458d7625300f8a3ff671ccfc48c08",
+ "16826307c8335c8a30ae551baeb5bcc793768c73",
[]
],
"font-matching.css": [
- "19825008757baf09def0f754daed9ea7fe595e35",
+ "ebbef02f628baa63b2cb565f0f2850899d54ae65",
[]
],
"resources": {
"variabletest_matching.ttf": [
- "7a09643083b14d0573f88dafca1aaf6fadb9338f",
+ "89ed12a2c03531a1e8f764e3a2365824a8f40a12",
[]
]
},
"stretch-distance-over-weight-distance-ref.html": [
- "3e6edda0da8e9cf105de18728ab6a61992fad2cb",
+ "7589a15f12cfea38c185612cf76e9136355cfbd4",
[]
],
"style-ranges-over-weight-direction-ref.html": [
- "d1b235c77f11f02ed4eb5a7a7947290cb2ee0f14",
+ "5a7c13959abb6582109445c36a9ac1630f114577",
[]
]
},
@@ -296576,6 +297102,22 @@
"c1355d0abba28491a126533c24039cffc6ee4eb0",
[]
],
+ "hyphens-auto-010-ref.html": [
+ "13841121c6429428bdccde7f971e9e582b6b7ad3",
+ []
+ ],
+ "hyphens-manual-010-ref.html": [
+ "f79ce17a4c71bfac19b543b70bb8e95510bad321",
+ []
+ ],
+ "hyphens-manual-011-ref.html": [
+ "98581bd37c0d3e2be1381bb2829a3146821e63b8",
+ []
+ ],
+ "hyphens-manual-013-ref.html": [
+ "9fa6bee4215ea277224d0bf0469a8abe304beb26",
+ []
+ ],
"hyphens-out-of-flow-001-ref.html": [
"73394479247fc3491ba37e50ec85b8dd00f8eadc",
[]
@@ -298802,6 +299344,26 @@
"93b8b913cc9f4325a676af9c04640979a0eda604",
[]
],
+ "white-space-normal-011-ref.html": [
+ "ac1f95f623f224ab2658b76250841c9b37f05d68",
+ []
+ ],
+ "white-space-nowrap-011-ref.html": [
+ "b70f993c808fe0482f6f98cedfaca0111b059030",
+ []
+ ],
+ "white-space-pre-011-ref.html": [
+ "c3aecc8dfbd241d29f08266bb122fbcb5cd442e3",
+ []
+ ],
+ "white-space-pre-031-ref.html": [
+ "93181354ba29b09f7f4c8ae0e98d21ce5d2703f3",
+ []
+ ],
+ "white-space-pre-034-ref.html": [
+ "b920bdb111274bac29825e53b68005e1bf7ad6e9",
+ []
+ ],
"white-space-pre-wrap-trailing-spaces-001-ref.html": [
"8db147766bc3fa769df5601b8b32964fb59bcbc1",
[]
@@ -298829,6 +299391,22 @@
"white-space-zero-fontsize-002-ref.html": [
"6d2134ac4da3fc7bc3ce78fea834f2037e47cf6c",
[]
+ ],
+ "ws-break-spaces-applies-to-001-ref.html": [
+ "842f46913d1c705e5c648c0b01e4f184d313ef5f",
+ []
+ ],
+ "ws-break-spaces-applies-to-003-ref.html": [
+ "3bb361776040c1f50b35d9400e67d967c05dde4c",
+ []
+ ],
+ "ws-break-spaces-applies-to-006-ref.html": [
+ "d8a5b90638eea73d82dcb8c86d1f88a5910ea84f",
+ []
+ ],
+ "ws-break-spaces-applies-to-012-ref.html": [
+ "942bd8fe92d2973dd568eabbc2b959c9b80c628c",
+ []
]
}
},
@@ -324587,22 +325165,6 @@
},
"user-activation": {
"resources": {
- "activation-hierarchy-crossorigin-child.sub.html": [
- "6dbd46830442d5790207e1309bf4403a353c9c62",
- []
- ],
- "activation-hierarchy-crossorigin-grandchild.html": [
- "b9fe19a746ffbbe63740df67a77da8a894b573ae",
- []
- ],
- "activation-hierarchy-sameorigin-child.html": [
- "d54c7efc9bdcf2cc5c79fed6838729975bee4cfa",
- []
- ],
- "activation-hierarchy-sameorigin-grandchild.html": [
- "9d664e2356a87496416644d639598adbaa8c43dd",
- []
- ],
"child-message-event-api.html": [
"a0001633c22d19e44c1f48ddeffa07dde1fbc436",
[]
@@ -324612,7 +325174,15 @@
[]
],
"child-two.html": [
- "dc50742051f0c53fb6de00b982c30478b63e859c",
+ "caf23f4daddd7e6c7118280f4a8c390e9819e92b",
+ []
+ ],
+ "propagation-crossorigin-child.sub.html": [
+ "3cdd6886da2a875e3a9ead3f68dda09df4c0c0da",
+ []
+ ],
+ "propagation-sameorigin-child.html": [
+ "69ad50cb717d118c9fd8cf9c4c1f6ba5b004e136",
[]
]
}
@@ -327986,6 +328556,10 @@
"46e2255e388e9e08377d625b55653a007d59c14e",
[]
],
+ "sharedworker-import.https.html.headers": [
+ "46e2255e388e9e08377d625b55653a007d59c14e",
+ []
+ ],
"sharedworker-module.https.html.headers": [
"46e2255e388e9e08377d625b55653a007d59c14e",
[]
@@ -328006,6 +328580,10 @@
"46e2255e388e9e08377d625b55653a007d59c14e",
[]
],
+ "worker-import.https.html.headers": [
+ "46e2255e388e9e08377d625b55653a007d59c14e",
+ []
+ ],
"worker-module.https.html.headers": [
"46e2255e388e9e08377d625b55653a007d59c14e",
[]
@@ -328140,7 +328718,7 @@
]
},
"spec.src.json": [
- "1e7d7c9dbe008e45a834814d3e30a0ac1e636ba7",
+ "b001317d5784de8d7e0b15e4cdcf616c1022c84b",
[]
]
},
@@ -328556,7 +329134,7 @@
[]
],
"orientation-sensor-tests.js": [
- "5d35f3b9afcc52083bd0d124387cae3d5220412a",
+ "9d44d63870526a2d1625be08dabf2d6990582a0e",
[]
]
},
@@ -330900,7 +331478,7 @@
]
},
"spec.src.json": [
- "1d6ed7cca6269b4179f1538a072c9c655ad4e4c5",
+ "8d2a6d2e0b169e7c6a9a610ab6177f09cd623b16",
[]
]
},
@@ -335297,6 +335875,12 @@
"93577b7643fdcc79888626d1b6d78f7a25121e10",
[]
],
+ "reference": {
+ "green-100x100.svg": [
+ "120941444a4898197d6b6001f9908a6cd48b62ba",
+ []
+ ]
+ },
"use-descendant-combinator-ref.html": [
"dae3fc1173b9280de8959edff3d5991a8b4c7593",
[]
@@ -336416,7 +337000,7 @@
}
},
"test_file_lints.py": [
- "43e8beb9956358fa70a80061b103243f22364677",
+ "72d4a05c9021a8139cca1390d104ab03f0d6a5ef",
[]
],
"test_lint.py": [
@@ -342097,7 +342681,7 @@
]
},
"setup.py": [
- "c9c364b8bacc72a6ff77f9d0c811b2d7d1810d13",
+ "759cb48d1f65f52f6500ed2b871c7ef430518ab6",
[]
],
"tests": {
@@ -342856,7 +343440,7 @@
}
},
"spec.src.json": [
- "43f2d6dbc1867c668198e2570414fd08df817dc8",
+ "0b987d76b7c0b87d6599f6441b314beb534be276",
[]
],
"support": {
@@ -370469,7 +371053,7 @@
},
"compression": {
"compression-bad-chunks.tentative.any.js": [
- "cc71b00030921bb6329ec68661251398ebc5657b",
+ "af210a765a7ea7d06f9ede37a9fec038f3d412d6",
[
"compression/compression-bad-chunks.tentative.any.html",
{
@@ -370812,7 +371396,7 @@
]
],
"decompression-bad-chunks.tentative.any.js": [
- "51f369311588d7832651cf74ad4c86a74f08959f",
+ "7dcb717a45cf04cbb58e4cffbfbbb24a8a919604",
[
"compression/decompression-bad-chunks.tentative.any.html",
{
@@ -380012,6 +380596,27 @@
]
]
},
+ "box-sizing-001.html": [
+ "a11762696ede83eac5d08918200e05d56851e427",
+ [
+ null,
+ {}
+ ]
+ ],
+ "box-sizing-min-max-sizes-001.html": [
+ "3aa9ce6bdc304de010684856e511553a046543d0",
+ [
+ null,
+ {}
+ ]
+ ],
+ "column-flex-child-with-overflow-scroll.html": [
+ "4c84a258658d8a0576a03e0e430677945e6eb005",
+ [
+ null,
+ {}
+ ]
+ ],
"display_flex_exist.html": [
"97090fbbeaff4394c015c471a213face27a43823",
[
@@ -381631,21 +382236,21 @@
"css-grid": {
"abspos": {
"absolute-positioning-definite-sizes-001.html": [
- "dd19a835fdf6997b00825d411fbe232b3b497f83",
+ "c2b6aeecd212ede40c8d60c6d82aaeb6f7736566",
[
null,
{}
]
],
"absolute-positioning-grid-container-containing-block-001.html": [
- "4906638ee1da8428ee4d0e74bec4de83baf4f39c",
+ "0e52b19997b3e7c587d3f697c9bcb9aae246d779",
[
null,
{}
]
],
"absolute-positioning-grid-container-parent-001.html": [
- "6e5e9ac54df68747bb52090810869e50c74e70ea",
+ "9e7172db439c19e36e5262ffa9cc7c0293fd35ba",
[
null,
{}
@@ -381743,14 +382348,14 @@
]
],
"grid-positioned-items-implicit-grid-001.html": [
- "8e576bf4b7a86763beb0bad55854f8efb2ac4759",
+ "e4629fbd200cbeee2233975cdca93501ba5ea8ae",
[
null,
{}
]
],
"grid-positioned-items-implicit-grid-line-001.html": [
- "e2b2bdb2003db0537d15c447237699a4c44beddf",
+ "51e8ac18030e0c2b32f5aeff4612570533f6ff40",
[
null,
{}
@@ -381764,7 +382369,7 @@
]
],
"grid-positioned-items-unknown-named-grid-line-001.html": [
- "8dcb91ed6c8f35ca27198e64800010324e3a9767",
+ "7c95993eb52828f212efb3b0180598dc9eaaa1d8",
[
null,
{}
@@ -381778,7 +382383,7 @@
]
],
"grid-sizing-positioned-items-001.html": [
- "b3716888c33ac864931283797be8f7b6b08d425a",
+ "de1869c70a6a7c820befc14668a17f21780ac299",
[
null,
{}
@@ -382009,14 +382614,14 @@
]
],
"positioned-grid-items-should-not-create-implicit-tracks-001.html": [
- "82309e676b8c22c9039994acbd28d3088cfc2d79",
+ "08779ec1e0f43e73ce7fe2c27e0714b9f85bc017",
[
null,
{}
]
],
"positioned-grid-items-should-not-take-up-space-001.html": [
- "7ea528b00f1204f2d0e78a4ea0ff386090d14928",
+ "bb3be69cfbc7e88bf75d1c6cc3ab90edd8046e95",
[
null,
{}
@@ -382025,350 +382630,350 @@
},
"alignment": {
"grid-align-content-distribution-vertical-lr.html": [
- "0901ddea41695f00ca9735085c79cf887ee80730",
+ "98d4e3c661dd9560afb71795c6869be395fa78d0",
[
null,
{}
]
],
"grid-align-content-distribution-vertical-rl.html": [
- "1b495c47d2d165550e15ea4a2e8e9a44d71cb001",
+ "60864c110d7aca875271e83213ad9c12fd9772be",
[
null,
{}
]
],
"grid-align-content-distribution.html": [
- "444e46b9ca5c8049170f09619f424400967c7633",
+ "cc3785da0fe064d1256bc61d7eadf399a1df9fc4",
[
null,
{}
]
],
"grid-align-content-vertical-lr.html": [
- "dbd27574e9b5f37af2a1f546c14eeb10d8d533f9",
+ "484ab78e9d36a613061a46502d9db9a8f03322dd",
[
null,
{}
]
],
"grid-align-content-vertical-rl.html": [
- "440cf9406786b09d976e9d5a5d3ab9960ff42492",
+ "fc584d88187f4d095b39b3b66ad967940bd36816",
[
null,
{}
]
],
"grid-align-content.html": [
- "fb3f7007ee19189a09de9c1f786176c317b7ee14",
+ "85d0d501ffd21e1f4394c6f60c14129365274852",
[
null,
{}
]
],
"grid-align-justify-margin-border-padding-vertical-lr.html": [
- "9c9e944df04b58a11f0b3096d50b94ddc4f326db",
+ "7d43a57cfd3f69c82e9c98bb8895adff7fbaab7e",
[
null,
{}
]
],
"grid-align-justify-margin-border-padding-vertical-rl.html": [
- "f7698e45df39855d53c2c205cd034fd04524568a",
+ "8a7d32c5b61ab89dcae9a0ddd643cf2cee280234",
[
null,
{}
]
],
"grid-align-justify-margin-border-padding.html": [
- "9cdce092cc302ccbb3d4ed7633c19696b481b241",
+ "37ec8cc37576ae254320bddde92b91cc9b65ccdd",
[
null,
{}
]
],
"grid-align-justify-overflow.html": [
- "3ae182782a3bcc1261d47a130dbedb305b3ada83",
+ "37d5c14600c563c627e2aed9d21db3b98762a01c",
[
null,
{}
]
],
"grid-align-justify-stretch-with-orthogonal-flows.html": [
- "c8fd340006038b1bd7addd84e2bd013da389bbed",
+ "3b50bb4d6e2675c120dae7573d413778fbbf63bf",
[
null,
{}
]
],
"grid-align-justify-stretch.html": [
- "9feeed3e0ef2a17b68bce2b7d71cbdb14a06ee2d",
+ "7af6695a65ed6a7da551f70e771a8f3f06a35d3e",
[
null,
{}
]
],
"grid-align-stretching-replaced-items.html": [
- "6ac50527cd4668dd7edc6c66c07028ac4d8ec6c1",
+ "b1dbbd8fd2caf2ff10f4b935054283ce119c43fd",
[
null,
{}
]
],
"grid-align.html": [
- "a195945d1f97f0f4befc7a8d86a6291a2e1bab34",
+ "79aa68474030f284a91e23c89551d5d13b2b472b",
[
null,
{}
]
],
"grid-alignment-implies-size-change-001.html": [
- "865027325afc3d003b5b237041ea6163de8f2c25",
+ "ee931b990fdb2369041c047fb0bd9b2e3e549e8d",
[
null,
{}
]
],
"grid-alignment-implies-size-change-002.html": [
- "3d0155e8bbd479519b389173d949a5045f09572a",
+ "2ef899fca96b4bd906245d39443ad9109547ef76",
[
null,
{}
]
],
"grid-alignment-implies-size-change-003.html": [
- "c3d0dab39bafbdd2296887b198b39b67e38aac89",
+ "47cb3347dbf7571c76f3a6509a276712d41ff948",
[
null,
{}
]
],
"grid-alignment-implies-size-change-004.html": [
- "55feb2c2ba62e32ae6addde36e4aa76eded939b0",
+ "d3f22e9bc910a3d2667d7695af554944ddc57a6d",
[
null,
{}
]
],
"grid-alignment-implies-size-change-005.html": [
- "e89cc1ec39210274feeda24288fea145405f5998",
+ "bb9de73d7356988fb4452a4927470a6c045b4b78",
[
null,
{}
]
],
"grid-alignment-implies-size-change-006.html": [
- "58a124d39b8f2543d34f2405500371bdfe714519",
+ "5a61e333f6c5d1914f096749183c04c1a63cc4fe",
[
null,
{}
]
],
"grid-alignment-implies-size-change-007.html": [
- "782bfcd82449c9507b731e3305da5c70bf1326e4",
+ "b50d8be7a884d843285f6b6fc32845aaae41684f",
[
null,
{}
]
],
"grid-alignment-implies-size-change-008.html": [
- "b06cf544c1c99c6d82e5e570d0695370c2c809ee",
+ "fd394b83e74d99f3286ee6a4f7993d6d32203ff4",
[
null,
{}
]
],
"grid-alignment-implies-size-change-009.html": [
- "108b7fc3afa0f717b388c8fc289448ef56576770",
+ "0ef6351dbb327ce8b2be5b6d127c0bc395640d22",
[
null,
{}
]
],
"grid-alignment-implies-size-change-010.html": [
- "34a70f34837db415e32f4f3da7b05483fc55c568",
+ "d9eb6066b918296897bfadc49c189aec3ff0ecd4",
[
null,
{}
]
],
"grid-alignment-implies-size-change-011.html": [
- "c3ad2e65b72d36e9c099ec44e9bc25b7473f3535",
+ "b53c32d5e8b5169edbc41cd7d9069fe1cc1a70bd",
[
null,
{}
]
],
"grid-alignment-implies-size-change-012.html": [
- "c6d2e3bfc3ac12fc22326c016caf3cba179c22ec",
+ "4151e7b060e3b0baaa7c069fbe2d0e27b46e7b52",
[
null,
{}
]
],
"grid-alignment-implies-size-change-013.html": [
- "61b66dee8b4d99966238c32563a8bfc6c516d7e9",
+ "e87481f530c96d04e08080e6acad6beb157e2b7c",
[
null,
{}
]
],
"grid-alignment-implies-size-change-014.html": [
- "ee9c4efbb9357de9bd65dadf9e1a45730f594880",
+ "b74f09d138e97c71d5d4de608cd37a447ab573ed",
[
null,
{}
]
],
"grid-alignment-implies-size-change-015.html": [
- "5eb383f8b1387098a1c11a0baf3e87c5edffb7fb",
+ "405dbcf7bc92090da4d2303cc923db5826d76f53",
[
null,
{}
]
],
"grid-alignment-implies-size-change-016.html": [
- "3f8c0d645c0ab3e806caf96f626f43939b50465e",
+ "f3477a2aa9e657848e3b757ef8fcc3cad8cabad8",
[
null,
{}
]
],
"grid-alignment-implies-size-change-017.html": [
- "e85b02599461b9ed0c1e2c4736f875f8e6d771d8",
+ "b9b9114879c640eb6450f90d5f1521e1739e7bc9",
[
null,
{}
]
],
"grid-alignment-implies-size-change-018.html": [
- "0c387aa4a2536a405c46e5deb298e2979474e6ea",
+ "e9bfe63e62013abd79d085ed77a00583d5500281",
[
null,
{}
]
],
"grid-alignment-implies-size-change-019.html": [
- "3a75c07c501d6aeed8081746964b70c357893edd",
+ "49896c21f9c675cd89c9afc5059312c0ccf4ce2d",
[
null,
{}
]
],
"grid-alignment-implies-size-change-020.html": [
- "d122098d9d09d5de0e6e67c1c3a993b8865383bd",
+ "e04356bc721b2c45212181fe9643e739c8c615ef",
[
null,
{}
]
],
"grid-alignment-implies-size-change-021.html": [
- "89382a92416739cf825602916a4f101838e41952",
+ "29aa8ff6eb4990eccd86f572f3593c9fd9a761d3",
[
null,
{}
]
],
"grid-alignment-implies-size-change-022.html": [
- "70b9061724db2d60dd01a0dbeec85222751f6c56",
+ "b986bbe659c0c6a56ecad4b21c7da4c30ca5e910",
[
null,
{}
]
],
"grid-alignment-implies-size-change-023.html": [
- "6bae3d25227c1223b7e863b939aa6e9c29d5db2a",
+ "e896326a95065255a1e3d2ac6d96cd90074d4363",
[
null,
{}
]
],
"grid-alignment-implies-size-change-024.html": [
- "d2e25355f3459b493b065494c5ce8011ccced18b",
+ "b236ef15d146b0357b15701f7cb02c4e6afafbfd",
[
null,
{}
]
],
"grid-alignment-implies-size-change-025.html": [
- "7652f8badc23fbb744dee328b0f758d310df555d",
+ "6f268ee7741642a62f9cc058bfa86f4261754e44",
[
null,
{}
]
],
"grid-alignment-implies-size-change-026.html": [
- "b2462c572e373eb3b1b7d03d503aff9304f43975",
+ "c3bfc67a7e5b91fcadd360fb25d6ba4d02e89d0f",
[
null,
{}
]
],
"grid-alignment-implies-size-change-027.html": [
- "a88fd676e38848a393b76fdf777b6e5bc4469b3f",
+ "5f1512c8c834621916aa6f95988f30858129845b",
[
null,
{}
]
],
"grid-alignment-implies-size-change-028.html": [
- "4ae7171ec1e5ec00bea00e7770996b89ea9bcfe3",
+ "2fb651162aaccf8194002be3f220a720c9334c54",
[
null,
{}
]
],
"grid-alignment-implies-size-change-029.html": [
- "18830609202fdb5a4d29cf724464ca7bdb064d82",
+ "afe909f81f7dbc41c5d91ec57c095b5b086361a6",
[
null,
{}
]
],
"grid-alignment-implies-size-change-030.html": [
- "36709d50859430444048eb5e7deb9e9d6634b738",
+ "d3924e326567655a17715e3921e344a887a7ded9",
[
null,
{}
]
],
"grid-alignment-implies-size-change-031.html": [
- "ad47a2a594f79137f1706743949d179573490741",
+ "528e08b881c23bf6ab9e8813c5c0eb0fa96baf8a",
[
null,
{}
]
],
"grid-alignment-implies-size-change-032.html": [
- "4f4569574cfd8eecf684d52669d528c9d27e3fc8",
+ "011eea64a2f5b87ca6b8f9b63ff6d9a904acd091",
[
null,
{}
]
],
"grid-alignment-implies-size-change-033.html": [
- "9ad862c6de0a949a02d29a4af54f8bd9a06ff168",
+ "eace9b956d38afad8944daf118909f2191d8e3d2",
[
null,
{}
]
],
"grid-alignment-implies-size-change-034.html": [
- "b253e8283ab33012d53fac06be4e136a055a09cc",
+ "7b22dffe31a6f533ce86b65d52d71dea92d0d952",
[
null,
{}
]
],
"grid-alignment-implies-size-change-035.html": [
- "ff0e240dd568a86894b704b760740cf23b900f29",
+ "18bb1bd061c7e29858dde266705e0649633b4217",
[
null,
{}
]
],
"grid-alignment-implies-size-change-036.html": [
- "2664ea1292cdf7c0acd485f287785303e1648418",
+ "e63ce4fccdf45207b6cb11d1fd27e01b2cd62bee",
[
null,
{}
@@ -382403,196 +383008,196 @@
]
],
"grid-alignment-style-changes-005.html": [
- "ed3ca891da18df7687fe1b42fa7ac354b64a1a53",
+ "919c6eefa8965e69f705bc168c9f7280ffccd956",
[
null,
{}
]
],
"grid-alignment-style-changes-006.html": [
- "a41f24bb95e9510dd7516f9de49882b924f15ab9",
+ "21e7d0d3abf671504bad29fd4b7bd269ca5d5174",
[
null,
{}
]
],
"grid-alignment-style-changes-007.html": [
- "51319257f344174424eb482d5ea2f1554ec1f258",
+ "136a36167a230a901f3e53a5aad41b1efff4fd15",
[
null,
{}
]
],
"grid-alignment-style-changes-008.html": [
- "1b13b653c8fa403aa5503dfb9c5babc8ee51f2c9",
+ "3145fb0cc6a8c1590e0614b724c38091f3778037",
[
null,
{}
]
],
"grid-block-axis-alignment-auto-margins-001.html": [
- "03beae8db72a4588001880b6e8b7ff3799e60d05",
+ "e3a880f66eaf2e0da945e9683c0c7e4105ca51ce",
[
null,
{}
]
],
"grid-block-axis-alignment-auto-margins-002.html": [
- "077c7a18ff06207f4002c566b71af14ef445c936",
+ "739054837176a684020d9ce7bd264bb7eacac2fe",
[
null,
{}
]
],
"grid-block-axis-alignment-auto-margins-003.html": [
- "552070e808416afb8ccf3b9a0009ada0fe1c7f21",
+ "f451ebeae7f264f0d80dbb712016c4a4cd154c95",
[
null,
{}
]
],
"grid-block-axis-alignment-auto-margins-004.html": [
- "20e9500e1d4f348c9ab651c4b1aa7f741e1e34ca",
+ "4d0a092e004895ddd99d5aa507aa2e38b7a0fb51",
[
null,
{}
]
],
"grid-block-axis-alignment-auto-margins-005.html": [
- "98f87f8fd9008cc1b0bd76eeab3991a0c902d32e",
+ "9231779e2aea0996277c8c6d90f7dee192f800e7",
[
null,
{}
]
],
"grid-block-axis-alignment-auto-margins-006.html": [
- "ee64491930e5d1d64f5dc5d0016f3b952c001e8c",
+ "ccb2dfd5dceff60cdbde168c0dfe59e1099e48b2",
[
null,
{}
]
],
"grid-block-axis-alignment-auto-margins-007.html": [
- "d9b9484bee75c4d8f54da4db093af73df0dce48d",
+ "da51ff321c4f1d82d69c07e73bd55d0a9bf51f77",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-001.html": [
- "7268b612545e4cbd513ce453489112aaf35b65fc",
+ "9216ed370c527d6c2bc694ce2129cdeca930f94d",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-002.html": [
- "59edcd1a81464e3510ef046fec564df52bf7f790",
+ "4a4a397ffa2fe349a3565a354ad30f0e08c897b7",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-003.html": [
- "6e5d32932f607da00b018155fe60045ad850bee6",
+ "83616380e24643f3da9e1fca22740a38b15c3858",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-004.html": [
- "33d711de2c98ea9c42569278e41237f3c537a145",
+ "ef6e810f9f75214368ad7fd00adfe41dba5ad028",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-005.html": [
- "b3d51eb9265cb8b5b0a127114c9f457260607dae",
+ "7c903389f817472e565469abd0e980f0bfd88ebb",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-006.html": [
- "acbb165a6a47ca481e718f9ab7e5d04a79d86c62",
+ "b1f2136a57fab133c58c0207ca43c836870c3da1",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-007.html": [
- "c88103189055f49fba314e61f8f2fff0756c115c",
+ "eeeadeff4582372ab07f8dedd5fbf9901bc614bd",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-008.html": [
- "0ebc17c46bbc6a0294df1bfea869eb47bdbb9731",
+ "1329501015fbca8bfbd2df49f137b53f81e65515",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-009.html": [
- "64b33b8892ebfb1defb4b7d88b79f9318e681e4f",
+ "60a135dfee8fd8c6a75c48a5c8207ce67752c308",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-010.html": [
- "c860249fd22ab5e1fbd5eae86229e4339dbb386a",
+ "eb01d61bc27d5e00f3f5e63198414a18c0a5f050",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-011.html": [
- "d772e1aea25d38985a2bdd69f9f7462c2a21c0aa",
+ "ad3beb8ab113f12e33b3962b43e2865bdc949054",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-012.html": [
- "8f9975d2b2bf785c99def876460bc16528be04c7",
+ "57db133a7dd5c5eaef50a09cb0ceae0ed43dd710",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-013.html": [
- "80418b12b6b22c4d839948c8f288a665f38480a6",
+ "9854540a6f5cab33dc01494f6a70076c33eaa556",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-014.html": [
- "70ad6f70b8ae165d93d27d4f6c393436024d7499",
+ "2f0cd54c42e99e9cd8102eb845f9214a44327a93",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-015.html": [
- "3fb572bad4c6ac32afa9e202c157ec317a5264fb",
+ "d2bd432d9d49ba545cafd9048cc2d47b558a98a8",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-016.html": [
- "e1437693d5961c2165d0ab2aaf0d92c37e0d1463",
+ "53284b4678ff324a38c3a0431c739886c3983a02",
[
null,
{}
]
],
"grid-column-axis-alignment-positioned-items-017.html": [
- "5e5a8c024b196cd1af0341c5758590345b711f3b",
+ "f20ac0d02c7b533a21062dd89038fecb83cebd41",
[
null,
{}
@@ -382613,28 +383218,28 @@
]
],
"grid-column-axis-self-baseline-synthesized-001.html": [
- "e7bafab2e967599dd44245229e767d5a6d20048e",
+ "0d3a556f40c0cbdb107bc646d84314916e3f42be",
[
null,
{}
]
],
"grid-column-axis-self-baseline-synthesized-002.html": [
- "769ce1ea48b638bdc382241b9f72dcffa138ec39",
+ "c20489e9a8b68fe05939357c9aaf75492e5dc49d",
[
null,
{}
]
],
"grid-column-axis-self-baseline-synthesized-003.html": [
- "a68868e0385f0b46731809d0b886ffcc081f3f1c",
+ "10a9adb9ff2d385c2b0f054e94e5cb59139c5f96",
[
null,
{}
]
],
"grid-column-axis-self-baseline-synthesized-004.html": [
- "f69fac5cef79256996e9ed949e4298e244272be0",
+ "8c6d7abe4edcd88d690c9f4748478078ea07d800",
[
null,
{}
@@ -382648,238 +383253,238 @@
]
],
"grid-content-alignment-second-pass-001.html": [
- "5f8c8e23c7c27951675d0c7a88574e566427d028",
+ "1d83f53a47703d7a1a1910b5151670875a1eaf58",
[
null,
{}
]
],
"grid-content-alignment-second-pass-002.html": [
- "c3f32c7efc7def5b6a560a40beb21e73b16ad50a",
+ "74a783bce2f62c1641c554e6f58470f4e3ffb644",
[
null,
{}
]
],
"grid-fit-content-tracks-dont-stretch-001.html": [
- "70e434be8f2ecf00b08f2c1f2ee9868fb2fcec98",
+ "a03b549a9af3c5732b0740a4f0f2008b972dd7e7",
[
null,
{}
]
],
"grid-gutters-and-alignment.html": [
- "8202af2550d973b3b73e7cad31906213ac043ce8",
+ "bc8af31c75e92d09eac2969718706f7691139236",
[
null,
{}
]
],
"grid-inline-axis-alignment-auto-margins-001.html": [
- "932c7f95896ba884b3c85d4f509ac5a78b9fd641",
+ "5c7825ca2fc4758b23d06fd3489316d0f5381176",
[
null,
{}
]
],
"grid-inline-axis-alignment-auto-margins-002.html": [
- "7ea7800cd26a426d2a0a82071e174bc1aaf566ec",
+ "3aa47a2570c36fada51634191b7582bbec560f41",
[
null,
{}
]
],
"grid-inline-axis-alignment-auto-margins-003.html": [
- "243b524001244e4960e80705614aab3ac29ee622",
+ "0136d7b4b6798606af56abe332ab2442b3905305",
[
null,
{}
]
],
"grid-inline-axis-alignment-auto-margins-004.html": [
- "8cdaacca78dda656d05c7bc694f88c3980b2f49b",
+ "1ee0de73bcf294d003fa33f983436eda30c7d317",
[
null,
{}
]
],
"grid-inline-axis-alignment-auto-margins-005.html": [
- "dcf8bef1c9b25588080f7b30612115cc1aac5115",
+ "72427f1020ed818942f202b89918b34cd9740f7f",
[
null,
{}
]
],
"grid-inline-axis-alignment-auto-margins-006.html": [
- "7f064c9bb416727e25791cce5be933bb48872982",
+ "ed54ce722a094dfc8954400a78020deb78101d4f",
[
null,
{}
]
],
"grid-inline-axis-alignment-auto-margins-007.html": [
- "2b5acdfe029ec3c2c8b423c0b367f758a22bb504",
+ "0b991de98b1967a2f54599b974d19b36cdda59b2",
[
null,
{}
]
],
"grid-item-alignment-with-orthogonal-flows-vertical-lr.html": [
- "32c2efb39571e2575de8b90042f8dde9f39a3adc",
+ "a9ec652289a4d907c4d8a3176427b2c7ea7db062",
[
null,
{}
]
],
"grid-item-alignment-with-orthogonal-flows-vertical-rl.html": [
- "845c6cea27eac594100d3b5917e05f896c36e4b1",
+ "2b3b7a489e1511157225851c1118e3321e15d579",
[
null,
{}
]
],
"grid-item-alignment-with-orthogonal-flows.html": [
- "c506547a7607ccb174c9bf3758b432f68ebfe3a9",
+ "133132529ae4027a0e4554355e5a026df2144d00",
[
null,
{}
]
],
"grid-item-auto-margins-alignment-vertical-lr.html": [
- "1a70eff865c83cf4d62e61e485996b5bba9a1561",
+ "e11398907ec3468214172d0ce5de80d430e1b1af",
[
null,
{}
]
],
"grid-item-auto-margins-alignment-vertical-rl.html": [
- "46cdd89b20223c9f176888cd8f48b7f2095f5e27",
+ "42c6dd2d29866588959e10a69346baab177cefc1",
[
null,
{}
]
],
"grid-item-auto-margins-alignment.html": [
- "86b398192e789d58afb47a18180f62533b0689dc",
+ "f9fdfd7dbf256f42ca2f0a01a7c6112d78db1ba2",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-001.html": [
- "967b0e4be967e9b3619e24cdf372aefcfd6b4f24",
+ "b76e808da5f7156ee2206d8aecb36990df502037",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-002.html": [
- "7ccf3979b7ee6251f8ca9832d12b8e6b2e542b89",
+ "c7ae3f0b7c72f24badd5904ea76bdc9c2d23eecd",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-003.html": [
- "68534b9f6524a33c42acd46a0f0a366d5f19e514",
+ "a56de0c376c09e45f6aaad9f3616d5567481dee6",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-004.html": [
- "f2615f124711c968f262b4494c5ca808e1d91e78",
+ "3aa7a3d1ff13b74f6a5418bc111116c88f002e78",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-005.html": [
- "725cb1a25404575bda2018959a7d4401de2a0329",
+ "d37e541f68c54412271b22f6e16dd754dcd6b7c2",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-006.html": [
- "bd381f1ece8e2afca92bd5b418079434b5590de9",
+ "fe440bf0ca6243647559244c6521bc8d42225cf1",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-007.html": [
- "3d5f2782dd09274e1224a538aa1edb25f7cb8f61",
+ "cdd8b5a1f9c3c2978f2d789f60bfbd61e3f479bb",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-008.html": [
- "3d96e0805f5203eea6173162f25f824d32b5129e",
+ "a52265e3445bf484c25ef2358ba4080d5cbeb68e",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-009.html": [
- "bbcadb598d3052e42ba50cc6327dabb08369ff7a",
+ "2ff678ecc819990e04e91c8782b5986f5c665e26",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-010.html": [
- "6fba51dfd5c50d13d659a6b57ced907cf6f759c1",
+ "801f6590a6656c558ba3c112b632905fa666cb4c",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-011.html": [
- "d07711d51579f3e67e422eb6ebef4ea89cbda1d3",
+ "596787d0bd6b7e29ab3295e7e0ea0ba7699db5e2",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-012.html": [
- "a80afc67eed6ee8be6c2c9eaf6922edf7e8cc8ee",
+ "1b27bfc941c436470939ee7becc52cc06998d4d2",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-013.html": [
- "90c0d049ae064fca559fa87fea027271152d4103",
+ "a15bbc0608ca9400cd4d231cdda08d8c7ce514eb",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-014.html": [
- "16fec813ffa0ec793209aee9ca0aec854e56f65f",
+ "52d8ca640d8f37ed08223df9072a277318daf36a",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-015.html": [
- "cd51a36da5a8dcd542f313368cd717d6d3ddd030",
+ "83071e0c23a9ee7e9dadb1af5ec65557ac0b14d6",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-016.html": [
- "fc30ac4be76cb4f8da578ba5c4f6de997f3746fc",
+ "1ea12200925cb3bf5f18f2d1ce71abd3ad315aa8",
[
null,
{}
]
],
"grid-row-axis-alignment-positioned-items-017.html": [
- "8c2c79d574ad04c557960f0fceb8aff05e64bed8",
+ "041ee3fcc157c5b219d4113e204ea40729a1d7a2",
[
null,
{}
@@ -382900,581 +383505,581 @@
]
],
"grid-row-axis-self-baseline-synthesized-001.html": [
- "dff798cf5e01592b263b5876a37d4688b16b9e94",
+ "870e368d08db87aba17ca669b8e9dc14ba81fee0",
[
null,
{}
]
],
"grid-row-axis-self-baseline-synthesized-002.html": [
- "27e89c119dd2dea0367d1001d98da242c93d6243",
+ "80dba9cc3589e05aa5cfb9758b6dfe614c548529",
[
null,
{}
]
],
"grid-row-axis-self-baseline-synthesized-003.html": [
- "3530084e88e723c0c19e439761b8aab4602b02c8",
+ "daf06a4a80e71f2edbf917703c02b4293a7af85e",
[
null,
{}
]
],
"grid-row-axis-self-baseline-synthesized-004.html": [
- "4e49df7796767c71b4f4a51b0197dabf55324371",
+ "f40d06386ed871758ef5c550db626512eb6a039f",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-001.html": [
- "5f32149402d0dd0b0e4deac7a3f18c326375b5df",
+ "93e622ce6d1d37182e378ad28464a34be8e3cb8f",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-002.html": [
- "2308b6944b16539adcb69e0dee7e5f89789204bf",
+ "6b2d5c42568498954d11920d38ed26b5c614789c",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-003.html": [
- "1874baac2e295b50d3228cf551186fd308edb742",
+ "0a5d674fbd827a43307d33b19b14e6e6b30621cf",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-004.html": [
- "4c952d1ee4a76e37e4ec74ab043fd8eb64221de6",
+ "b9237a533481f9b6d25020be34bccf2c2a4df1cf",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-005.html": [
- "de975e65c8ad5dac7203f457fbaae4ac796ffc23",
+ "39c75eb5d764915b89bc86cde5c8f574061c459e",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-006.html": [
- "426e095a80fe94936245af87d500a9e595378a37",
+ "6565a6038765fe4212dad28c9e3bbed40665dd6f",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-007.html": [
- "843711dd13cb42c4634aaa9f88d4a844c699a991",
+ "55c1892da147f12fd73eb1b7f1eb9af4ef4ea751",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-008.html": [
- "91e243f254109ec53d5e11e941904bb97152e87f",
+ "6edecba2d3ffc74438cbdfda4c2397ddb79270aa",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-009.html": [
- "7312a7708f8f0ad380fa49089904dba2054e53d7",
+ "ad2f8b1dc34c9021316baf756ad21a884b448f51",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-010.html": [
- "82ad124e70d77b6c1754aa25015d28a2b4540b58",
+ "856062014d4855db2ca0fc463b65d5ddf2e492ed",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-011.html": [
- "c1dda47514217e54bd651f7625f0a4b8c03cd11b",
+ "f3a8476ddf9153a25879aca8c8e43ab78d9c0cf0",
[
null,
{}
]
],
"grid-self-alignment-non-static-positioned-items-012.html": [
- "e2805ca576274d4194db54d9263a722b041c7f25",
+ "0121846f8a17aaa576ccb80590c470ef69216f13",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-001.html": [
- "499f2c3a24a367867f091d1f45179eef6ee9d12d",
+ "4c8bd89ecf6b213ffe19ec3e6ed330aa6a13cb25",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-002.html": [
- "b8f0874e41adc1da5a6c5a49de9353ff3e2320c3",
+ "6624ea00d4c26a5070040aad5177d19681ee4663",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-003.html": [
- "e224a0af2cda152f7664c05bbe45e9d8a24fccfd",
+ "cc377a5c5981f8e4c1da87c2d3be3a92b7cdcb49",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-004.html": [
- "8aa8a5e128339b843d2a3f2e15661475aaaf0430",
+ "afbbfcb1dd120e363c409eeecc0a25cc0ca5fb5b",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-005.html": [
- "027c1a18a0e67b99dbdfc85d9d85480772fd2d79",
+ "3cf29475ed28afdbe20eb03a8cf5b5c4743730d5",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-006.html": [
- "8389b06ab0a9ae45e04e4af57ac8ca6631f015fa",
+ "e1b3fc4d254d115abbb0c2a58215155d1b07e29c",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-007.html": [
- "598d7b4dc5614529a67944759f4dfcc8b6ff515e",
+ "855ed7cdeff1164edb14e6ca0a4acf112180a990",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-008.html": [
- "b843f9f50a7d5909484bae9a4a1d183620cbacb1",
+ "6fa38b92064f29a0daf2f318ddebf87277ce2c72",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-009.html": [
- "a36ed19b67a64f349364b67e9b13be15ed21347d",
+ "0ff84978183dda06259bd08e21cdf3431366808a",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-010.html": [
- "6afabd12573f1fbab5c5259258073325c1dc6d09",
+ "003c3bbb378298d3aa3a611aaaa0bd7ef0cdd8e0",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-011.html": [
- "e330ffafc3c8590ff5b4c3b507293b7dbfa2d143",
+ "e0681310d00151aa79ab71f83682ea93e4b0167e",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-012.html": [
- "7b1ce95287bfbba3303ff7a806f67cb601628185",
+ "9049a826a5f60ed2170f27c4639ebec14a1b074f",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-013.html": [
- "328f14d5c852838a90c5e3143552b05fcaf8f479",
+ "42b92fd68141cd44776d25004272db784388633d",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-014.html": [
- "b3a86ebbc120a5d1b4e3f3e19d27cb0b9582bfbe",
+ "db5c0f89cb664efe7f751119b1791914d8861160",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-015.html": [
- "31165fe006a11a185d9608096365eeb7e66c76d9",
+ "3b0a3be6c81803d99e1af277b7fdbbc34c7b7a6a",
[
null,
{}
]
],
"grid-self-alignment-positioned-items-with-margin-border-padding-016.html": [
- "d61281b78c76ad8663b12ae7b9cf87b58295ad88",
+ "7d0fd5dc2c88754daf19a6f555628d3a08e78ecf",
[
null,
{}
]
],
"grid-self-alignment-stretch-001.html": [
- "b091a948b9464190db05c83ec364c9016e53e250",
+ "95b5f4fe6df469ce8387bb2a215f2301f65811ca",
[
null,
{}
]
],
"grid-self-alignment-stretch-002.html": [
- "6fba94c63b6c9d3073faf409f840627c68f490b8",
+ "10ea533404f506349a6718c15ed591ecd6040b45",
[
null,
{}
]
],
"grid-self-alignment-stretch-003.html": [
- "e0a383282bd2fb5f509034f4c3bee809e4c6f080",
+ "51ad16826e74ade3406fac1afac8eac939cc3184",
[
null,
{}
]
],
"grid-self-alignment-stretch-004.html": [
- "4c4f1c7430fe1fe5222b3125dc811fe0713d9931",
+ "f0f19e29206494bc7df6c8ba5e9c4ca32a0acfa5",
[
null,
{}
]
],
"grid-self-alignment-stretch-005.html": [
- "aaf5a20b005ede4408495cc0537403f638ddb400",
+ "c21500cd3f9488b996be755eeace8ea4f5c7ad9b",
[
null,
{}
]
],
"grid-self-alignment-stretch-006.html": [
- "248d57f621a2d041cf929ce3272bbdbf1dd5ec50",
+ "65f52467645004713f74c49e9dfd15de4885f99c",
[
null,
{}
]
],
"grid-self-alignment-stretch-007.html": [
- "7ec5c3fe6e7450a364fdce65bb7190606cbba42e",
+ "6ba763ea9c94108ca68c5cc357602244a223f89d",
[
null,
{}
]
],
"grid-self-alignment-stretch-008.html": [
- "55fc78432fe9e108815cd2953b64cdca98647ed2",
+ "e433dde9b9081ca51e0a07ab49b536f66a10b6dc",
[
null,
{}
]
],
"grid-self-alignment-stretch-009.html": [
- "fe164de20d0d65458dba557446060d8155f5f231",
+ "90de8d4bc00025e74cea19e824a150b0362d97ee",
[
null,
{}
]
],
"grid-self-alignment-stretch-010.html": [
- "9feba74730d143ae3cec00180c1fa26f3591fe7d",
+ "b71a31890877dfb526cbb09004d0cda1db64029e",
[
null,
{}
]
],
"grid-self-alignment-stretch-011.html": [
- "b4a199a75255811ed21ce497f785df81d7e71d52",
+ "8b1999b4b20f1438cd74adce0562c22d4be6d6c8",
[
null,
{}
]
],
"grid-self-alignment-stretch-012.html": [
- "51a8b5d570eaa0412ea02d766502a16940c1d87d",
+ "fe738f2e8aa694fd2316320c1e41de7524810f6a",
[
null,
{}
]
],
"grid-self-alignment-stretch-013.html": [
- "3202d7303d12099c7b8808a4d70b5d5b86edae5e",
+ "ffb52481a043c4dce12dc990887531357b4fd203",
[
null,
{}
]
],
"grid-self-alignment-stretch-014.html": [
- "6e283ae4be8d42220f645e4195b705a251b830f8",
+ "34e1c5ec6c366036e4ca9bd82f4eb0283a1aac52",
[
null,
{}
]
],
"grid-self-alignment-stretch-015.html": [
- "5f761f1d8b42ca32a681a12de6f3e4f847cffa4c",
+ "df8749c47b2c6b2a2afa0ab7980d4003f49dc13b",
[
null,
{}
]
],
"grid-self-alignment-stretch-016.html": [
- "2378190ea1c6ac3275f467593b1a032a579b3614",
+ "00059268fc0b0cf238c8c30653194dc1eb98281a",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-001.html": [
- "516ea38ff386fa48ac69513f9561ba9661336f73",
+ "ac851b2514a2b92dc3f79daf48bd97caad428edd",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-002.html": [
- "a7bc034a9cc086ea94f893610e173c6b9b1bec2a",
+ "d1640a5510ab20a6844ef910b3fd6f5cb6b7e119",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-003.html": [
- "8c37726f8277f1263aa62859290514f3e97307b0",
+ "6b9563bbdf14be76a51ebcc724da674f5fec692c",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-004.html": [
- "0503bc45010611bbcd2849cf59d68f91b5bd444a",
+ "05332f1c9a9d1fd2b046b7690cc12f78f1cef142",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-005.html": [
- "617c7273cda0c5c9828563fdb26f5c2350df5dd0",
+ "ce17538fe927c1dc8147385e4114286db7e0d5b9",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-006.html": [
- "4ab4f962ad536d0b90a2138eb49731d0568ba166",
+ "ab6282ab4d4b9015cf0d1bdbbd02376eacd94b70",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-007.html": [
- "6a8862acb3d17f7ab4c5da4af28ceb9b6f2852a2",
+ "f960feec88a8b47aacb8be4105902479528a8f0b",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-008.html": [
- "d5107aa3606ed9acbd6dc85cd2865eb2b8d0b422",
+ "fae2519cf86b5db0a633d6fa49d36288d1ce86b9",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-009.html": [
- "04fd2cc204a2c9ea25a5f64d9b63a3b325cf8435",
+ "6fa5073311e0a18cee58e297463462b9f7174856",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-010.html": [
- "d2393a6b53333ef2e4e54c27cb2f21c6352b41d6",
+ "2ca7951bffe429b5e43e1f4ccb59fecdbcb9f310",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-011.html": [
- "22a690f0a120a9d523dc946732a8e5f2f50e4fc2",
+ "f15f0c59fb13c106ebb2b63e4c5916280474157b",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-012.html": [
- "c2c4039c08802420f4baee43e6a44f02473c9072",
+ "e5077b26e5e9d9ccc9f8d17eedd366c2712e38e7",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-013.html": [
- "0a325668cfd761166ad859d12eac31f20df22550",
+ "a7790b60ef48849632d0bc94c2cf2449e813f02b",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-014.html": [
- "9b7d51c32e548559d82c3fec5cc29da7c37612fa",
+ "5c7fd92cc1480da46a2014d0d7ad671b8fa12449",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-015.html": [
- "c19da89bbe09ccff47e4290e9d4f08b9d766e29a",
+ "9265d65728e3322dd11083f2f70b4fcd2054b2e0",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-lr-016.html": [
- "772d0eab4a9e2b135518d5ada187731b11aeebf0",
+ "46370e4dcca97ecb21b4b3c1a87fd42a7cf9a915",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-001.html": [
- "7743374b64105957d3091f2d278fd9291659e31f",
+ "b41aeb73f581d7644eafb70e1bb38b146d54b203",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-002.html": [
- "28314cad2bbb8ea1cb578b369ceeef944420d0d0",
+ "36cec785e14f0507ba1de33a635f31f375020c71",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-003.html": [
- "6cb323392fd20b42860266e95aa57f24cea8451b",
+ "c8e34e484b0f83294b13d02a86c2d2027843131c",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-004.html": [
- "6b0cc055184e928be4b6b90d03394ab2cf0d7bdd",
+ "d88a7300b34eda9065bef14f74475e24520c2bd9",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-005.html": [
- "c7cdd9c719930429271e4a058600695ab96bd806",
+ "d38de47effc08f83abdea7aa2e758c636e064a89",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-006.html": [
- "e26fc4e2095b3a01ddf59fd3ab8ca01c90d05160",
+ "36aaff90f1cb89744a97d2eab0856b1c474ba38b",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-007.html": [
- "a9485c1004c152f91763b69e38e65f0302b02073",
+ "d32631e7d236893b50c1bcd72bb559067b994554",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-008.html": [
- "748a22c3610ae48b342cfe0821f9ecfa7ba1594e",
+ "f6616048ddc07fca66c6e556a6228486dd8d119f",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-009.html": [
- "5d94f3613ea75bb62459718070760d54c50dd5e4",
+ "1f852aba4ee14c826657d5648a4ad6b346ef55a4",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-010.html": [
- "1e6e248358b992abfce9a339b9ca1a3f895d72be",
+ "e6917675897456d4176a8869058394187fb7730a",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-011.html": [
- "d854595bb09d85a4f564815f59efb464ec54de80",
+ "86a02c6026fd3ea86e4dd4f8561d242e11c969dd",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-012.html": [
- "56736a9090b17c2d94ab17f77d356d6bd2cf2c2d",
+ "d99580eecc1b513e52c2e4bdbf765916514fe09e",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-013.html": [
- "01ba6a161d7a2c297f90c682b962534663fc56fd",
+ "59b953a0af2bef129b3c906ef0824ef470be835b",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-014.html": [
- "5f3019a68e914ac4517a01dedec1d5f3140bd0af",
+ "4da2cd6c981e38902ed2f3e00529b24477109ae6",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-015.html": [
- "c311352a644a53855759207109c0c86ab64ca1ca",
+ "86ed82f66e03ea2e2df47ca8820982032c6ebccb",
[
null,
{}
]
],
"grid-self-alignment-stretch-vertical-rl-016.html": [
- "67746851e9fa1753e519e7a4326e9b4f62e89af0",
+ "57a25d13727421232fffd022d450c1c5deafbf2d",
[
null,
{}
]
],
"grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html": [
- "49d0a393508b86f5020c7bd3f0f625b006b2c42a",
+ "dae81ceee1a90c7d0d66fb3a86fdae025d4389cb",
[
null,
{}
]
],
"grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html": [
- "8517771d9089d593ef7d67e92a558b7b5ec15e47",
+ "10c6d8a1bb8a2d569a57b0787c80890e153d2675",
[
null,
{}
]
],
"grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html": [
- "9122b5cbe9483992bd6dc1dba69955e76a75e538",
+ "a62999cb3218fa974ff4be8fc773882313bb6d1a",
[
null,
{}
@@ -383548,7 +384153,7 @@
]
],
"grid-change-fit-content-argument-001.html": [
- "c46722bc7dbad096a3925e58d5d93fb5b7297b8d",
+ "d697af474328a012543631fd7395003fc65a7c7d",
[
null,
{}
@@ -383611,14 +384216,14 @@
]
],
"grid-percentage-rows-indefinite-height-001.html": [
- "40c642e1f32ca3ea33d517859eb3309560e85bca",
+ "c0be13ead81d14acb8a976a022b745a61bb1be2c",
[
null,
{}
]
],
"grid-percentage-rows-indefinite-height-002.html": [
- "ce191b6bc55017cf83a1aba172ba16e831a022ae",
+ "ae65f2207ef4f8039f0b17714dc186c347e3e63f",
[
null,
{}
@@ -383667,7 +384272,7 @@
]
],
"grid-support-repeat-002.html": [
- "9d1fefb0c3cf9f299ffa41ca85449ef144c43fdc",
+ "a5174fe6f36af318e459738280dfe01be9ddd013",
[
null,
{}
@@ -383753,84 +384358,84 @@
]
],
"grid-items-percentage-margins-001.html": [
- "62fc14f4a97cf648416f2b375a7e93d49de2fdcd",
+ "dc1602ab173a604a9266890425bb1bd2e9620e75",
[
null,
{}
]
],
"grid-items-percentage-margins-002.html": [
- "19c75d7463f55edb4e4177bf3fc402798d088dbb",
+ "6ff78b4bb1e5e0456c16eecde254ead9ec81c0a0",
[
null,
{}
]
],
"grid-items-percentage-margins-vertical-lr-001.html": [
- "81e096531be4d79be10b9c71e700a002633e8455",
+ "05d77f3d2c18520e301e27d27cca2686f2fff0b9",
[
null,
{}
]
],
"grid-items-percentage-margins-vertical-lr-002.html": [
- "5d9584d28a84ac35ca99e19fca3dfea0aa2c49f6",
+ "168a719a5121c9dd92688efb540087b9ba172699",
[
null,
{}
]
],
"grid-items-percentage-margins-vertical-rl-001.html": [
- "f0b493868397e8fc53c511ba7e3832417cfc1787",
+ "78ce9f762512f68156c5c8bef30aadf9616b1558",
[
null,
{}
]
],
"grid-items-percentage-margins-vertical-rl-002.html": [
- "142b2fd2bb69f0963b17b871e30c73395402b685",
+ "83b5dc7e11b16037c46a5358fd6d19948c0dda41",
[
null,
{}
]
],
"grid-items-percentage-paddings-001.html": [
- "892f8f90bcf37b489501b96f6b6363dddc40d6c0",
+ "7c99eb90685e125b014da8cc6bdb2200f410bf52",
[
null,
{}
]
],
"grid-items-percentage-paddings-002.html": [
- "798cdbdbefb9e8afaf0a23c81b311523bf8a9d27",
+ "447b5201d6d9e8d68fe124a659ca011a9fabf43a",
[
null,
{}
]
],
"grid-items-percentage-paddings-vertical-lr-001.html": [
- "74997fd8b121d86510aa688f21d9fbcd4ed44c17",
+ "a21ab29de97ea472a5c241e3be7b36d018abfe17",
[
null,
{}
]
],
"grid-items-percentage-paddings-vertical-lr-002.html": [
- "edffee26fd023822166dce3484c84b96030fc507",
+ "786efe820392c4d67e552c52c8653aeefad53668",
[
null,
{}
]
],
"grid-items-percentage-paddings-vertical-rl-001.html": [
- "92f943874d8ae55faaa600bae5475a1e6d2cef9a",
+ "5bb2566286f043c6f3c09a56f6869ff0a53a26c9",
[
null,
{}
]
],
"grid-items-percentage-paddings-vertical-rl-002.html": [
- "d3e062eaf8d54b46f51351ebd76a27db32e158ce",
+ "5502aecd684a25e496dc2848366a1778adc222ef",
[
null,
{}
@@ -383851,35 +384456,35 @@
]
],
"grid-minimum-size-grid-items-021.html": [
- "ab66d70a9732cc2ea270feaa222c9efe88c70886",
+ "d2c221521a51552887b5f0804ad8a55f82125e92",
[
null,
{}
]
],
"grid-minimum-size-grid-items-022.html": [
- "350bce5947af8e68dc3bf6987e1515d284e7bd1c",
+ "38e1a1bb2697d030aa4a05e97e9ccb2402a1e23e",
[
null,
{}
]
],
"grid-minimum-size-grid-items-023.html": [
- "0f91381bb30cff75ef9f0191975bf6480a04fe1b",
+ "8993e2fb1b5fedbf575591e01b40c6e4c9962e8c",
[
null,
{}
]
],
"grid-minimum-size-grid-items-024.html": [
- "74063286a644ddc3b4283dfbd2f4ed11e56cb240",
+ "fc7c91dbf1e25457e9928ff7d9707fe248c2e6e5",
[
null,
{}
]
],
"grid-minimum-size-grid-items-025.html": [
- "7b8c956d17c4d0e668ce62e040be1e3bf8af5ff5",
+ "544e71c5e0e26955008679b3c01d8211bda24682",
[
null,
{}
@@ -383967,42 +384572,42 @@
],
"layout-algorithm": {
"grid-content-distribution-must-account-for-track-sizing-001.html": [
- "d014a22e7a0f0d832bd37b44b1a0e22608367982",
+ "907ef68668f2cbe113674e808b4e78ae0e390100",
[
null,
{}
]
],
"grid-content-distribution-must-account-for-track-sizing-002.html": [
- "150077fbed523774beebac6d3ea20b039254a76a",
+ "7c395253b4deb51c3964196a719555c7db587510",
[
null,
{}
]
],
"grid-content-distribution-must-account-for-track-sizing-003.html": [
- "052fee13e71a79c10ce4e9ea3d07257f842d58e1",
+ "b3c692c8528e7fdf2428f797f4838333e0abd3f8",
[
null,
{}
]
],
"grid-content-distribution-must-account-for-track-sizing-004.html": [
- "611c4b38da66e64ae37876715568c1eee0acca2d",
+ "045e080a4e42d1daf0722a1578437c63dc5b5a02",
[
null,
{}
]
],
"grid-find-fr-size-gutters-001.html": [
- "d8e6daff9271942688f0b87cb25f822ed0cdec1d",
+ "150878b80a9309f29c4a875c15e753d3e937f5a4",
[
null,
{}
]
],
"grid-find-fr-size-gutters-002.html": [
- "1e9a42d90fbecd9358d8b204d8e0f61766b6abe2",
+ "f3c2087e2742a2e9cc53b5a5cd10c748d8a40853",
[
null,
{}
@@ -384030,7 +384635,7 @@
]
],
"grid-intrinsic-size-with-orthogonal-items.html": [
- "1097956647846dd2493ab5d1c3458660c67868de",
+ "4dfcd126d10e86bb9b2d2bb6bfc1f668f839c9ba",
[
null,
{}
@@ -398328,7 +398933,7 @@
]
],
"MediaQueryList-addListener-handleEvent.html": [
- "30c8cf2de557db73d0222ea33e1a4702ebaec8b6",
+ "43b144a9ae2d709233f046b298fbaefec4861944",
[
null,
{}
@@ -403075,7 +403680,7 @@
]
],
"Node-lookupNamespaceURI.html": [
- "f5401e54723b492b942f2a127a40a3b7328e97ca",
+ "74c1ac8bd755fbe5388a666954fcf22c4b6665e1",
[
null,
{}
@@ -404175,6 +404780,13 @@
{}
]
],
+ "callback-interface.html": [
+ "4596814c34dfcfa9bb615fe207f3523511207e6d",
+ [
+ null,
+ {}
+ ]
+ ],
"document.tentative.html": [
"b75c0f0d66dacb47a825ae2aa00bb63a19616433",
[
@@ -405820,14 +406432,66 @@
]
],
"encodeInto.any.js": [
- "7e18c812499a52b14dacb772bfaf6c429ebc2da6",
+ "eca0e1bca158b079dda2b9a5560e7161809ff76f",
[
"encoding/encodeInto.any.html",
- {}
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ],
+ [
+ "script",
+ "/common/sab.js"
+ ]
+ ]
+ }
+ ],
+ [
+ "encoding/encodeInto.any.serviceworker.html",
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ],
+ [
+ "script",
+ "/common/sab.js"
+ ]
+ ]
+ }
+ ],
+ [
+ "encoding/encodeInto.any.sharedworker.html",
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ],
+ [
+ "script",
+ "/common/sab.js"
+ ]
+ ]
+ }
],
[
"encoding/encodeInto.any.worker.html",
- {}
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ],
+ [
+ "script",
+ "/common/sab.js"
+ ]
+ ]
+ }
]
],
"gb18030-encoder.html": [
@@ -413958,14 +414622,14 @@
]
],
"decode-utf8.any.js": [
- "421b98c2eea537eaebb31d1865e9eef499ce98f8",
+ "5abd8dcb8f9b8f176002d5dcfa3314c910349e9e",
[
"encoding/streams/decode-utf8.any.html",
{
"script_metadata": [
[
"global",
- "worker"
+ "window,worker"
],
[
"script",
@@ -413974,6 +414638,10 @@
[
"script",
"resources/readable-stream-to-array.js"
+ ],
+ [
+ "script",
+ "/common/sab.js"
]
]
}
@@ -413984,7 +414652,7 @@
"script_metadata": [
[
"global",
- "worker"
+ "window,worker"
],
[
"script",
@@ -413993,6 +414661,10 @@
[
"script",
"resources/readable-stream-to-array.js"
+ ],
+ [
+ "script",
+ "/common/sab.js"
]
]
}
@@ -414003,7 +414675,7 @@
"script_metadata": [
[
"global",
- "worker"
+ "window,worker"
],
[
"script",
@@ -414012,6 +414684,10 @@
[
"script",
"resources/readable-stream-to-array.js"
+ ],
+ [
+ "script",
+ "/common/sab.js"
]
]
}
@@ -414022,7 +414698,7 @@
"script_metadata": [
[
"global",
- "worker"
+ "window,worker"
],
[
"script",
@@ -414031,6 +414707,10 @@
[
"script",
"resources/readable-stream-to-array.js"
+ ],
+ [
+ "script",
+ "/common/sab.js"
]
]
}
@@ -414275,14 +414955,66 @@
]
],
"textdecoder-copy.any.js": [
- "6ae65119db687c438c0f60595e3614c09434c4b9",
+ "61de4142bf27a25df5e6dfb0395c9eb392e58334",
[
"encoding/textdecoder-copy.any.html",
- {}
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ],
+ [
+ "script",
+ "/common/sab.js"
+ ]
+ ]
+ }
+ ],
+ [
+ "encoding/textdecoder-copy.any.serviceworker.html",
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ],
+ [
+ "script",
+ "/common/sab.js"
+ ]
+ ]
+ }
+ ],
+ [
+ "encoding/textdecoder-copy.any.sharedworker.html",
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ],
+ [
+ "script",
+ "/common/sab.js"
+ ]
+ ]
+ }
],
[
"encoding/textdecoder-copy.any.worker.html",
- {}
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ],
+ [
+ "script",
+ "/common/sab.js"
+ ]
+ ]
+ }
]
],
"textdecoder-fatal-single-byte.any.js": [
@@ -415293,7 +416025,7 @@
]
],
"textdecoder-streaming.any.js": [
- "e0c59472598fbd828305816e4e8a0b161244862f",
+ "5717c2dbe00a2a557222cdf9d942de20ed9b6332",
[
"encoding/textdecoder-streaming.any.html",
{
@@ -415303,8 +416035,62 @@
"Encoding API: Streaming decode"
],
[
+ "global",
+ "window,worker"
+ ],
+ [
+ "script",
+ "resources/encodings.js"
+ ],
+ [
+ "script",
+ "/common/sab.js"
+ ]
+ ]
+ }
+ ],
+ [
+ "encoding/textdecoder-streaming.any.serviceworker.html",
+ {
+ "script_metadata": [
+ [
+ "title",
+ "Encoding API: Streaming decode"
+ ],
+ [
+ "global",
+ "window,worker"
+ ],
+ [
+ "script",
+ "resources/encodings.js"
+ ],
+ [
+ "script",
+ "/common/sab.js"
+ ]
+ ]
+ }
+ ],
+ [
+ "encoding/textdecoder-streaming.any.sharedworker.html",
+ {
+ "script_metadata": [
+ [
+ "title",
+ "Encoding API: Streaming decode"
+ ],
+ [
+ "global",
+ "window,worker"
+ ],
+ [
"script",
"resources/encodings.js"
+ ],
+ [
+ "script",
+ "/common/sab.js"
]
]
}
@@ -415318,8 +416104,16 @@
"Encoding API: Streaming decode"
],
[
+ "global",
+ "window,worker"
+ ],
+ [
"script",
"resources/encodings.js"
+ ],
+ [
+ "script",
+ "/common/sab.js"
]
]
}
@@ -426834,14 +427628,50 @@
]
],
"no-coop-coep.https.any.js": [
- "35098892020bf58bda9f1821d2ba5b2570eb5d54",
+ "0db16fd6f703acf82d5ea54b73a1e83aa24665a0",
[
"html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.html",
- {}
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ]
+ ]
+ }
+ ],
+ [
+ "html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.serviceworker.html",
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ]
+ ]
+ }
+ ],
+ [
+ "html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.sharedworker.html",
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ]
+ ]
+ }
],
[
"html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.worker.html",
- {}
+ {
+ "script_metadata": [
+ [
+ "global",
+ "window,worker"
+ ]
+ ]
+ }
]
],
"no-transferring.https.html": [
@@ -426859,7 +427689,7 @@
]
],
"serialization-via-idb.any.js": [
- "0202ec39ac6fe70fa13e83c3562979cb005c603c",
+ "2917013ee2536507ee3a5a3cbd03e93987b51351",
[
"html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-idb.any.html",
{
@@ -426884,7 +427714,7 @@
]
],
"serialization-via-notifications-api.any.js": [
- "ce643e8a7cba5be412b367f5bc5f1bc5592df48f",
+ "4c1c1fdabb24bdbde713b388cf3fa55e3804b319",
[
"html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-notifications-api.any.html",
{}
@@ -439821,6 +440651,24 @@
null,
{}
]
+ ],
+ "propagation-crossorigin.sub.tentative.html": [
+ "a2f578f53b92a3595d3dbba15460d28f1d4f0960",
+ [
+ null,
+ {
+ "testdriver": true
+ }
+ ]
+ ],
+ "propagation-sameorigin.tentative.html": [
+ "76d2b68fa708ac7a88c6a1bcabc0395f72070048",
+ [
+ null,
+ {
+ "testdriver": true
+ }
+ ]
]
},
"webappapis": {
@@ -441355,7 +442203,7 @@
],
"integration-with-the-javascript-agent-formalism": {
"requires-failure.https.any.js": [
- "f195a70fdf9a41bc3abcbb1e17c38540054c5b50",
+ "8b68840367119c89525b2ea5f9af53f38100bdd4",
[
"html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-failure.https.any.html",
{
@@ -441380,7 +442228,7 @@
]
],
"requires-success.any.js": [
- "290b44353c8ac57d4e0461c31b88c56b15c89103",
+ "9adc044a0ddc8b8cde4decff88ee667a27cf6f01",
[
"html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-success.any.sharedworker.html",
{
@@ -446660,6 +447508,15 @@
}
]
],
+ "sharedworker-import.https.html": [
+ "0644d1f03e979c56533ff3b3d913b87df968717a",
+ [
+ null,
+ {
+ "timeout": "long"
+ }
+ ]
+ ],
"sharedworker-module.https.html": [
"1a371ce028f4612a3fcf308c67f461396d263e32",
[
@@ -446705,6 +447562,15 @@
}
]
],
+ "worker-import.https.html": [
+ "549932281874af5d7e63d245f5ba709b0b049a17",
+ [
+ null,
+ {
+ "timeout": "long"
+ }
+ ]
+ ],
"worker-module.https.html": [
"6cf33d54f5fa7b3b8ea1b3a0936f21092724845f",
[
@@ -446898,6 +447764,15 @@
}
]
],
+ "sharedworker-import.https.html": [
+ "3b156c640984e3eb2b2b629be09559eb197b2724",
+ [
+ null,
+ {
+ "timeout": "long"
+ }
+ ]
+ ],
"sharedworker-module.https.html": [
"2ebb23193145de53226aec24f0a34812693d6e14",
[
@@ -446943,6 +447818,15 @@
}
]
],
+ "worker-import.https.html": [
+ "50db49acc87df37db112c75d0b3ab8d58c874891",
+ [
+ null,
+ {
+ "timeout": "long"
+ }
+ ]
+ ],
"worker-module.https.html": [
"2f1c240cae93a39b75cc9489e89c903171ab82e4",
[
@@ -447134,6 +448018,15 @@
}
]
],
+ "sharedworker-import.https.html": [
+ "71679b658aabc55b29e4e7a3f418a4ce30752a5c",
+ [
+ null,
+ {
+ "timeout": "long"
+ }
+ ]
+ ],
"sharedworker-module.https.html": [
"1a371ce028f4612a3fcf308c67f461396d263e32",
[
@@ -447179,6 +448072,15 @@
}
]
],
+ "worker-import.https.html": [
+ "208ae14bfa5e32bce62bc0ee55723f9e646f633e",
+ [
+ null,
+ {
+ "timeout": "long"
+ }
+ ]
+ ],
"worker-module.https.html": [
"6cf33d54f5fa7b3b8ea1b3a0936f21092724845f",
[
@@ -462709,24 +463611,6 @@
}
]
],
- "pointerevent_lostpointercapture_for_disconnected_node_in_shadow_dom.html": [
- "f03f98abe06ba2d45ea9fbff829437d9f7f2e671",
- [
- null,
- {
- "testdriver": true
- }
- ]
- ],
- "pointerevent_lostpointercapture_for_disconnected_shadow_host.html": [
- "4b5c9f6eae84af2ca0902f34964bde3c8c1fcb5b",
- [
- null,
- {
- "testdriver": true
- }
- ]
- ],
"pointerevent_lostpointercapture_is_first.html": [
"6ce0f3e59a04db4ecf23d9fd60b57164ceb67f85",
[
@@ -462761,24 +463645,6 @@
}
]
],
- "pointerevent_pointercapture-in-custom-element.html": [
- "e8f143b309f2dbdda19c90e1aef1865ecf889f47",
- [
- null,
- {
- "testdriver": true
- }
- ]
- ],
- "pointerevent_pointercapture-in-shadow-dom.html": [
- "8279665f97b0ee522b9bd5710d5ec5ad677df85a",
- [
- null,
- {
- "testdriver": true
- }
- ]
- ],
"pointerevent_pointercapture-not-lost-in-chorded-buttons.html": [
"02a6af0a4b89abf1c0c51844ace15b54e91966e9",
[
@@ -463438,7 +464304,7 @@
]
],
"portal-activate-data.html": [
- "004fa97e55c05049a32657450a22af090466f4a4",
+ "260bb00ff0686cf30034b9b98317cffebdf05d2c",
[
null,
{}
@@ -496286,7 +497152,7 @@
},
"the-audiobuffer-interface": {
"audiobuffer-copy-channel.html": [
- "20780d94b730acf18f4d6ca93fe4abff1a6111db",
+ "c0cd49d32520fdf3c55248b1130da64d5845097d",
[
null,
{}
@@ -511266,7 +512132,7 @@
]
],
"send-data-sharedarraybuffer.any.js": [
- "b902888f5600eaa87f481967579959c5f7137d3b",
+ "912f622697d538edbbc038f7ec76c2e63ee6ffa0",
[
"xhr/send-data-sharedarraybuffer.any.html",
{
diff --git a/tests/wpt/metadata/css/CSS2/floats/hit-test-floats-003.html.ini b/tests/wpt/metadata/css/CSS2/floats/hit-test-floats-003.html.ini
new file mode 100644
index 00000000000..f29da48a2a0
--- /dev/null
+++ b/tests/wpt/metadata/css/CSS2/floats/hit-test-floats-003.html.ini
@@ -0,0 +1,4 @@
+[hit-test-floats-003.html]
+ [Miss float below something else]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/CSS2/floats/hit-test-floats-005.html.ini b/tests/wpt/metadata/css/CSS2/floats/hit-test-floats-005.html.ini
new file mode 100644
index 00000000000..baa9f1a7541
--- /dev/null
+++ b/tests/wpt/metadata/css/CSS2/floats/hit-test-floats-005.html.ini
@@ -0,0 +1,4 @@
+[hit-test-floats-005.html]
+ [Miss clipped float]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-flexbox/box-sizing-001.html.ini b/tests/wpt/metadata/css/css-flexbox/box-sizing-001.html.ini
new file mode 100644
index 00000000000..f568bb5baf5
--- /dev/null
+++ b/tests/wpt/metadata/css/css-flexbox/box-sizing-001.html.ini
@@ -0,0 +1,13 @@
+[box-sizing-001.html]
+ [.flexbox 10]
+ expected: FAIL
+
+ [.flexbox 4]
+ expected: FAIL
+
+ [.flexbox 8]
+ expected: FAIL
+
+ [.flexbox 9]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-text/hyphens/hyphens-auto-010.html.ini b/tests/wpt/metadata/css/css-text/hyphens/hyphens-auto-010.html.ini
new file mode 100644
index 00000000000..bc707da5729
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/hyphens/hyphens-auto-010.html.ini
@@ -0,0 +1,2 @@
+[hyphens-auto-010.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-011.html.ini b/tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-011.html.ini
new file mode 100644
index 00000000000..24a1e70936a
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-011.html.ini
@@ -0,0 +1,2 @@
+[hyphens-manual-011.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-012.html.ini b/tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-012.html.ini
new file mode 100644
index 00000000000..f900b4c4b11
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-012.html.ini
@@ -0,0 +1,2 @@
+[hyphens-manual-012.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-013.html.ini b/tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-013.html.ini
new file mode 100644
index 00000000000..364a2a970f1
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/hyphens/hyphens-manual-013.html.ini
@@ -0,0 +1,2 @@
+[hyphens-manual-013.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/hyphens/hyphens-none-011.html.ini b/tests/wpt/metadata/css/css-text/hyphens/hyphens-none-011.html.ini
new file mode 100644
index 00000000000..93e96554135
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/hyphens/hyphens-none-011.html.ini
@@ -0,0 +1,2 @@
+[hyphens-none-011.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/break-spaces-051.html.ini b/tests/wpt/metadata/css/css-text/white-space/break-spaces-051.html.ini
new file mode 100644
index 00000000000..a7f1149add4
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/break-spaces-051.html.ini
@@ -0,0 +1,2 @@
+[break-spaces-051.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/break-spaces-052.html.ini b/tests/wpt/metadata/css/css-text/white-space/break-spaces-052.html.ini
new file mode 100644
index 00000000000..988ad46616a
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/break-spaces-052.html.ini
@@ -0,0 +1,2 @@
+[break-spaces-052.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/pre-line-051.html.ini b/tests/wpt/metadata/css/css-text/white-space/pre-line-051.html.ini
new file mode 100644
index 00000000000..8a6c15721d6
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/pre-line-051.html.ini
@@ -0,0 +1,2 @@
+[pre-line-051.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/pre-line-052.html.ini b/tests/wpt/metadata/css/css-text/white-space/pre-line-052.html.ini
new file mode 100644
index 00000000000..65d4fabf294
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/pre-line-052.html.ini
@@ -0,0 +1,2 @@
+[pre-line-052.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/pre-wrap-051.html.ini b/tests/wpt/metadata/css/css-text/white-space/pre-wrap-051.html.ini
new file mode 100644
index 00000000000..114fd931e51
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/pre-wrap-051.html.ini
@@ -0,0 +1,2 @@
+[pre-wrap-051.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/pre-wrap-052.html.ini b/tests/wpt/metadata/css/css-text/white-space/pre-wrap-052.html.ini
new file mode 100644
index 00000000000..b6223186447
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/pre-wrap-052.html.ini
@@ -0,0 +1,2 @@
+[pre-wrap-052.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/white-space-normal-011.html.ini b/tests/wpt/metadata/css/css-text/white-space/white-space-normal-011.html.ini
new file mode 100644
index 00000000000..c0ad8b521d7
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/white-space-normal-011.html.ini
@@ -0,0 +1,2 @@
+[white-space-normal-011.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/white-space-pre-011.html.ini b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-011.html.ini
new file mode 100644
index 00000000000..4e25f832bb2
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-011.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-011.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/white-space-pre-031.html.ini b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-031.html.ini
new file mode 100644
index 00000000000..3d29ea04bca
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-031.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-031.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/white-space-pre-032.html.ini b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-032.html.ini
new file mode 100644
index 00000000000..6abf3a4d191
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-032.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-032.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/white-space-pre-034.html.ini b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-034.html.ini
new file mode 100644
index 00000000000..cac173851a0
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-034.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-034.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/white-space-pre-035.html.ini b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-035.html.ini
new file mode 100644
index 00000000000..7058f550102
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-035.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-035.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/white-space-pre-051.html.ini b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-051.html.ini
new file mode 100644
index 00000000000..7173a3ddfbc
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-051.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-051.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/white-space-pre-052.html.ini b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-052.html.ini
new file mode 100644
index 00000000000..ecec2338572
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-052.html.ini
@@ -0,0 +1,2 @@
+[white-space-pre-052.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-009.html.ini b/tests/wpt/metadata/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-009.html.ini
deleted file mode 100644
index d402699f659..00000000000
--- a/tests/wpt/metadata/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-009.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[white-space-pre-wrap-trailing-spaces-009.html]
- expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-001.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-001.html.ini
new file mode 100644
index 00000000000..218fa1705d7
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-001.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-001.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-002.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-002.html.ini
new file mode 100644
index 00000000000..090c9d9e2ac
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-002.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-002.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-003.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-003.html.ini
new file mode 100644
index 00000000000..d24bde326b7
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-003.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-003.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-005.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-005.html.ini
new file mode 100644
index 00000000000..7a5e9173840
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-005.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-005.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-006.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-006.html.ini
new file mode 100644
index 00000000000..3d3b8bf01fb
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-006.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-006.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-007.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-007.html.ini
new file mode 100644
index 00000000000..fb9fb323996
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-007.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-007.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-008.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-008.html.ini
new file mode 100644
index 00000000000..366b54520fb
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-008.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-008.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-009.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-009.html.ini
new file mode 100644
index 00000000000..4afccbc597f
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-009.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-009.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-010.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-010.html.ini
new file mode 100644
index 00000000000..cd7a4694b37
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-010.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-010.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-011.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-011.html.ini
new file mode 100644
index 00000000000..3f731145056
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-011.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-011.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-014.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-014.html.ini
new file mode 100644
index 00000000000..1d61127f7be
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-014.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-014.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-015.html.ini b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-015.html.ini
new file mode 100644
index 00000000000..9d9b0a4bf12
--- /dev/null
+++ b/tests/wpt/metadata/css/css-text/white-space/ws-break-spaces-applies-to-015.html.ini
@@ -0,0 +1,2 @@
+[ws-break-spaces-applies-to-015.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/encoding/encodeInto.any.js.ini b/tests/wpt/metadata/encoding/encodeInto.any.js.ini
index fa6ec12c0f5..20c03de93ac 100644
--- a/tests/wpt/metadata/encoding/encodeInto.any.js.ini
+++ b/tests/wpt/metadata/encoding/encodeInto.any.js.ini
@@ -1129,3 +1129,8 @@
[encodeInto() into SharedArrayBuffer with 𝌆 and destination length 4, offset 4, filler 128]
expected: FAIL
+[encodeInto.any.serviceworker.html]
+ expected: ERROR
+
+[encodeInto.any.sharedworker.html]
+ expected: ERROR
diff --git a/tests/wpt/metadata/encoding/textdecoder-copy.any.js.ini b/tests/wpt/metadata/encoding/textdecoder-copy.any.js.ini
index 5ff14b2cca0..6379149d149 100644
--- a/tests/wpt/metadata/encoding/textdecoder-copy.any.js.ini
+++ b/tests/wpt/metadata/encoding/textdecoder-copy.any.js.ini
@@ -7,3 +7,9 @@
[Modify buffer after passing it in (SharedArrayBuffer)]
expected: FAIL
+
+[textdecoder-copy.any.sharedworker.html]
+ expected: ERROR
+
+[textdecoder-copy.any.serviceworker.html]
+ expected: ERROR
diff --git a/tests/wpt/metadata/encoding/textdecoder-streaming.any.js.ini b/tests/wpt/metadata/encoding/textdecoder-streaming.any.js.ini
index 5230e7c15e2..8bf06fd73a0 100644
--- a/tests/wpt/metadata/encoding/textdecoder-streaming.any.js.ini
+++ b/tests/wpt/metadata/encoding/textdecoder-streaming.any.js.ini
@@ -3,3 +3,9 @@
[textdecoder-streaming.any.html]
expected: CRASH
+
+[textdecoder-streaming.any.sharedworker.html]
+ expected: ERROR
+
+[textdecoder-streaming.any.serviceworker.html]
+ expected: ERROR
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 acccfbae361..5b97dddbbeb 100644
--- a/tests/wpt/metadata/fetch/content-type/response.window.js.ini
+++ b/tests/wpt/metadata/fetch/content-type/response.window.js.ini
@@ -318,18 +318,21 @@
[<iframe>: separate response Content-Type: text/html */*]
expected: FAIL
- [<iframe>: combined response Content-Type: text/html;" \\" text/plain]
- expected: FAIL
-
[<iframe>: combined response Content-Type: text/html */*]
expected: FAIL
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
expected: FAIL
- [<iframe>: separate response Content-Type: text/html;x=" text/plain]
+ [<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
expected: FAIL
- [<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
+ [<iframe>: separate response Content-Type: text/html;" text/plain]
+ expected: FAIL
+
+ [<iframe>: separate response Content-Type: text/html */*;charset=gbk]
+ expected: FAIL
+
+ [<iframe>: separate 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 d2df9b78483..de177334b81 100644
--- a/tests/wpt/metadata/fetch/content-type/script.window.js.ini
+++ b/tests/wpt/metadata/fetch/content-type/script.window.js.ini
@@ -53,6 +53,9 @@
[combined text/javascript ]
expected: FAIL
- [separate text/javascript x/x]
+ [separate text/javascript;charset=windows-1252 text/javascript]
+ expected: FAIL
+
+ [separate text/javascript ]
expected: FAIL
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 9383f8004c1..ec1fd06e1f5 100644
--- a/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini
+++ b/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini
@@ -11,9 +11,6 @@
[X-Content-Type-Options%3A%20nosniff%2C%2C%40%23%24%23%25%25%26%5E%26%5E*()()11!]
expected: FAIL
- [X-Content-Type-Options%3A%20%22nosniFF%22]
- expected: FAIL
-
- [X-Content-Type-Options%3A%20no%0D%0AX-Content-Type-Options%3A%20nosniff]
+ [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_2.html.ini b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini
deleted file mode 100644
index 75d75b4cda2..00000000000
--- a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[traverse_the_history_2.html]
- [Multiple history traversals, last would be aborted]
- expected: FAIL
-
diff --git a/tests/wpt/metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_3.html.ini
index dc2e45516de..51f8272a6de 100644
--- a/tests/wpt/metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini
+++ b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_3.html.ini
@@ -1,4 +1,4 @@
-[traverse_the_history_5.html]
+[traverse_the_history_3.html]
[Multiple history traversals, last would be aborted]
expected: FAIL
diff --git a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini
deleted file mode 100644
index dc2e45516de..00000000000
--- a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[traverse_the_history_5.html]
- [Multiple history traversals, last would be aborted]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js.ini b/tests/wpt/metadata/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js.ini
index f57c866227a..7eb8129f4a5 100644
--- a/tests/wpt/metadata/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js.ini
+++ b/tests/wpt/metadata/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js.ini
@@ -2,8 +2,20 @@
[Bonus: self.crossOriginIsolated]
expected: FAIL
+ [SharedArrayBuffer constructor does not exist without COOP+COEP]
+ expected: FAIL
+
[no-coop-coep.https.any.html]
[Bonus: self.crossOriginIsolated]
expected: FAIL
+ [SharedArrayBuffer constructor does not exist without COOP+COEP]
+ expected: FAIL
+
+
+[no-coop-coep.https.any.serviceworker.html]
+ expected: ERROR
+
+[no-coop-coep.https.any.sharedworker.html]
+ expected: ERROR
diff --git a/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/skip-document-with-fragment.html.ini b/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/skip-document-with-fragment.html.ini
index 6852d7663de..c12c0f8ae48 100644
--- a/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/skip-document-with-fragment.html.ini
+++ b/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/skip-document-with-fragment.html.ini
@@ -1,8 +1,4 @@
[skip-document-with-fragment.html]
- expected: TIMEOUT
[Autofocus elements in iframed documents with URL fragments should be skipped.]
expected: FAIL
- [Autofocus elements in top-level browsing context's documents with URI fragments should be skipped.]
- expected: TIMEOUT
-
diff --git a/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini b/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini
index 8b743f36e1d..6b68e9094e4 100644
--- a/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini
+++ b/tests/wpt/metadata/html/interaction/focus/the-autofocus-attribute/supported-elements.html.ini
@@ -1,20 +1,16 @@
[supported-elements.html]
- expected: TIMEOUT
[Contenteditable element should support autofocus]
expected: FAIL
[Element with tabindex should support autofocus]
- expected: TIMEOUT
+ expected: FAIL
[Host element with delegatesFocus including no focusable descendants should be skipped]
- expected: NOTRUN
+ expected: FAIL
[Area element should support autofocus]
- expected: NOTRUN
+ expected: FAIL
[Host element with delegatesFocus should support autofocus]
- expected: NOTRUN
-
- [Non-HTMLElement should not support autofocus]
- expected: NOTRUN
+ expected: FAIL
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-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini
index e440b1e38c6..dc856a3d5a3 100644
--- a/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini
+++ b/tests/wpt/metadata/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-3.html.ini
@@ -1,6 +1,5 @@
[iframe_sandbox_popups_nonescaping-3.html]
type: testharness
- expected: TIMEOUT
[Check that popups from a sandboxed iframe do not escape the sandbox]
- expected: NOTRUN
+ expected: FAIL
diff --git a/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/execution-timing/077.html.ini b/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/execution-timing/077.html.ini
deleted file mode 100644
index bcd2fd0eab8..00000000000
--- a/tests/wpt/metadata/html/semantics/scripting-1/the-script-element/execution-timing/077.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[077.html]
- [ adding several types of scripts through the DOM and removing some of them confuses scheduler ]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini b/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
index a56bad443a2..66bd350083b 100644
--- a/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
+++ b/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
@@ -1,5 +1,4 @@
[realtimeanalyser-fft-scaling.html]
- expected: TIMEOUT
[X 2048-point FFT peak position is not equal to 64. Got 0.]
expected: FAIL
diff --git a/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-multi-channels.html.ini b/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-multi-channels.html.ini
index 571acc20930..09294382eb4 100644
--- a/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-multi-channels.html.ini
+++ b/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-multi-channels.html.ini
@@ -86,3 +86,6 @@
[X Rendered audio for channel 5 does not equal [0,0.0626220703125,0.125030517578125,0.18695068359375,0.24810791015625,0.308319091796875,0.3673095703125,0.42486572265625,0.480743408203125,0.53472900390625,0.58660888671875,0.636199951171875,0.68328857421875,0.727691650390625,0.76922607421875,0.8077392578125...\] with an element-wise tolerance of {"absoluteThreshold":0.000030517578125,"relativeThreshold":0}.\n\tIndex\tActual\t\t\tExpected\t\tAbsError\t\tRelError\t\tTest threshold\n\t[1\]\t3.6732959747314453e-1\t6.2622070312500000e-2\t3.0470752716064453e-1\t4.8658168859649127e+0\t3.0517578125000000e-5\n\t[2\]\t6.8329977989196777e-1\t1.2503051757812500e-1\t5.5826926231384277e-1\t4.4650639949963384e+0\t3.0517578125000000e-5\n\t[3\]\t9.0373212099075317e-1\t1.8695068359375000e-1\t7.1678143739700317e-1\t3.8340669508039502e+0\t3.0517578125000000e-5\n\t[4\]\t9.9780619144439697e-1\t2.4810791015625000e-1\t7.4969828128814697e-1\t3.0216621502152523e+0\t3.0517578125000000e-5\n\t[5\]\t9.5236867666244507e-1\t3.0831909179687500e-1\t6.4404958486557007e-1\t2.0889059484187866e+0\t3.0517578125000000e-5\n\t...and 44051 more errors.\n\tMax AbsError of 1.9798262119293213e+0 at index of 27116.\n\t[27116\]\t9.9151444435119629e-1\t-9.8831176757812500e-1\t1.9798262119293213e+0\t2.0032405531110080e+0\t3.0517578125000000e-5\n\tMax RelError of Infinity at index of 12348.\n\t[12348\]\t9.5105654001235962e-1\t0.0000000000000000e+0\t9.5105654001235962e-1\tInfinity\t3.0517578125000000e-5\n]
expected: FAIL
+ [X Rendered audio for channel 5 does not equal [0,0.0626220703125,0.125030517578125,0.18695068359375,0.24810791015625,0.308319091796875,0.3673095703125,0.42486572265625,0.480743408203125,0.53472900390625,0.58660888671875,0.636199951171875,0.68328857421875,0.727691650390625,0.76922607421875,0.8077392578125...\] with an element-wise tolerance of {"absoluteThreshold":0.000030517578125,"relativeThreshold":0}.\n\tIndex\tActual\t\t\tExpected\t\tAbsError\t\tRelError\t\tTest threshold\n\t[1\]\t3.6732959747314453e-1\t6.2622070312500000e-2\t3.0470752716064453e-1\t4.8658168859649127e+0\t3.0517578125000000e-5\n\t[2\]\t6.8329977989196777e-1\t1.2503051757812500e-1\t5.5826926231384277e-1\t4.4650639949963384e+0\t3.0517578125000000e-5\n\t[3\]\t9.0373212099075317e-1\t1.8695068359375000e-1\t7.1678143739700317e-1\t3.8340669508039502e+0\t3.0517578125000000e-5\n\t[4\]\t9.9780619144439697e-1\t2.4810791015625000e-1\t7.4969828128814697e-1\t3.0216621502152523e+0\t3.0517578125000000e-5\n\t[5\]\t9.5236867666244507e-1\t3.0831909179687500e-1\t6.4404958486557007e-1\t2.0889059484187866e+0\t3.0517578125000000e-5\n\t...and 44074 more errors.\n\tMax AbsError of 1.9999794363975525e+0 at index of 19632.\n\t[19632\]\t9.9997943639755249e-1\t-1.0000000000000000e+0\t1.9999794363975525e+0\t1.9999794363975525e+0\t3.0517578125000000e-5\n\tMax RelError of Infinity at index of 3528.\n\t[3528\]\t9.5105654001235962e-1\t0.0000000000000000e+0\t9.5105654001235962e-1\tInfinity\t3.0517578125000000e-5\n]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini b/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini
index b9c4886f218..b1d5c341b98 100644
--- a/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini
+++ b/tests/wpt/metadata/webaudio/the-audio-api/the-audiobuffersourcenode-interface/sub-sample-buffer-stitching.html.ini
@@ -260,3 +260,9 @@
[X SNR (-397.6873168264859 dB) is not greater than or equal to 85.58. Got -397.6873168264859.]
expected: FAIL
+ [X SNR (-542.1812884246285 dB) is not greater than or equal to 85.58. Got -542.1812884246285.]
+ expected: FAIL
+
+ [X Stitched sine-wave buffers at sample rate 44100 does not equal [0,0.06264832615852356,0.12505052983760834,0.18696144223213196,0.24813786149024963,0.308339387178421,0.36732959747314453,0.4248766601085663,0.480754554271698,0.5347436666488647,0.5866320133209229,0.6362156271934509,0.6832997798919678,0.7276994585990906,0.7692402601242065,0.8077589869499207...\] with an element-wise tolerance of {"absoluteThreshold":0.000090957,"relativeThreshold":0}.\n\tIndex\tActual\t\t\tExpected\t\tAbsError\t\tRelError\t\tTest threshold\n\t[31080\]\t-1.9088364451950678e+29\t5.6332010030746460e-1\t1.9088364451950678e+29\t3.3885466613976843e+29\t9.0957000000000003e-5\n\t[31081\]\t4.5805644201849620e-41\t6.1397600173950195e-1\t6.1397600173950195e-1\t1.0000000000000000e+0\t9.0957000000000003e-5\n\tMax AbsError of 1.9088364451950678e+29 at index of 31080.\n\tMax RelError of 3.3885466613976843e+29 at index of 31080.\n]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/webmessaging/with-ports/017.html.ini b/tests/wpt/metadata/webmessaging/with-ports/017.html.ini
new file mode 100644
index 00000000000..064cf47545b
--- /dev/null
+++ b/tests/wpt/metadata/webmessaging/with-ports/017.html.ini
@@ -0,0 +1,5 @@
+[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
new file mode 100644
index 00000000000..064cf47545b
--- /dev/null
+++ b/tests/wpt/metadata/webmessaging/without-ports/017.html.ini
@@ -0,0 +1,5 @@
+[017.html]
+ expected: TIMEOUT
+ [origin of the script that invoked the method, about:blank]
+ expected: TIMEOUT
+
diff --git a/tests/wpt/web-platform-tests/common/sab.js b/tests/wpt/web-platform-tests/common/sab.js
new file mode 100644
index 00000000000..c7fd1a742e6
--- /dev/null
+++ b/tests/wpt/web-platform-tests/common/sab.js
@@ -0,0 +1,13 @@
+const createBuffer = (() => {
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const sabConstructor = new WebAssembly.Memory({ shared:true, initial:0, maximum:0 }).buffer.constructor;
+ return (type, length) => {
+ if (type === "ArrayBuffer") {
+ return new ArrayBuffer(length);
+ } else if (type === "SharedArrayBuffer") {
+ return new sabConstructor(length);
+ } else {
+ throw new Error("type has to be ArrayBuffer or SharedArrayBuffer");
+ }
+ }
+})();
diff --git a/tests/wpt/web-platform-tests/common/security-features/resources/common.sub.js b/tests/wpt/web-platform-tests/common/security-features/resources/common.sub.js
index aa6b5ddf23a..402ce9bbacf 100644
--- a/tests/wpt/web-platform-tests/common/security-features/resources/common.sub.js
+++ b/tests/wpt/web-platform-tests/common/security-features/resources/common.sub.js
@@ -486,6 +486,11 @@ function dedicatedWorkerUrlThatFetches(url) {
}
function workerUrlThatImports(url) {
+ return `/common/security-features/subresource/static-import.py` +
+ `?import_url=${encodeURIComponent(url)}`;
+}
+
+function workerDataUrlThatImports(url) {
return `data:text/javascript,import '${url}';`;
}
@@ -878,11 +883,16 @@ const subresourceMap = {
path: "/common/security-features/subresource/worker.py",
invoker: url => requestViaDedicatedWorker(url, {type: "module"}),
},
- "worker-import-data": {
+ "worker-import": {
path: "/common/security-features/subresource/worker.py",
invoker: url =>
requestViaDedicatedWorker(workerUrlThatImports(url), {type: "module"}),
},
+ "worker-import-data": {
+ path: "/common/security-features/subresource/worker.py",
+ invoker: url =>
+ requestViaDedicatedWorker(workerDataUrlThatImports(url), {type: "module"}),
+ },
"sharedworker-classic": {
path: "/common/security-features/subresource/shared-worker.py",
invoker: url => requestViaSharedWorker(url),
@@ -891,11 +901,16 @@ const subresourceMap = {
path: "/common/security-features/subresource/shared-worker.py",
invoker: url => requestViaSharedWorker(url, {type: "module"}),
},
- "sharedworker-import-data": {
+ "sharedworker-import": {
path: "/common/security-features/subresource/shared-worker.py",
invoker: url =>
requestViaSharedWorker(workerUrlThatImports(url), {type: "module"}),
},
+ "sharedworker-import-data": {
+ path: "/common/security-features/subresource/shared-worker.py",
+ invoker: url =>
+ requestViaSharedWorker(workerDataUrlThatImports(url), {type: "module"}),
+ },
"websocket": {
path: "/stash_responder",
@@ -910,7 +925,7 @@ for (const workletType of ['animation', 'audio', 'layout', 'paint']) {
subresourceMap[`worklet-${workletType}-import-data`] = {
path: "/common/security-features/subresource/worker.py",
invoker: url =>
- requestViaWorklet(workletType, workerUrlThatImports(url))
+ requestViaWorklet(workletType, workerDataUrlThatImports(url))
};
}
diff --git a/tests/wpt/web-platform-tests/common/security-features/subresource/static-import.py b/tests/wpt/web-platform-tests/common/security-features/subresource/static-import.py
new file mode 100644
index 00000000000..0a97dd1a326
--- /dev/null
+++ b/tests/wpt/web-platform-tests/common/security-features/subresource/static-import.py
@@ -0,0 +1,16 @@
+import os, sys, urllib
+sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
+import subresource
+
+def generate_payload(request):
+ import_url = urllib.unquote(request.GET['import_url'])
+ return subresource.get_template("static-import.js.template") % {
+ "import_url": import_url
+ }
+
+def main(request, response):
+ payload_generator = lambda _: generate_payload(request)
+ subresource.respond(request,
+ response,
+ payload_generator = payload_generator,
+ content_type = "application/javascript")
diff --git a/tests/wpt/web-platform-tests/common/security-features/subresource/template/static-import.js.template b/tests/wpt/web-platform-tests/common/security-features/subresource/template/static-import.js.template
new file mode 100644
index 00000000000..095459b5475
--- /dev/null
+++ b/tests/wpt/web-platform-tests/common/security-features/subresource/template/static-import.js.template
@@ -0,0 +1 @@
+import '%(import_url)s';
diff --git a/tests/wpt/web-platform-tests/common/security-features/tools/spec.src.json b/tests/wpt/web-platform-tests/common/security-features/tools/spec.src.json
index 75d1528b154..5c8f97ad2ee 100644
--- a/tests/wpt/web-platform-tests/common/security-features/tools/spec.src.json
+++ b/tests/wpt/web-platform-tests/common/security-features/tools/spec.src.json
@@ -101,9 +101,11 @@
"img-tag",
"script-tag",
"sharedworker-classic",
+ "sharedworker-import",
"sharedworker-import-data",
"sharedworker-module",
"worker-classic",
+ "worker-import",
"worker-import-data",
"worker-module",
"worklet-animation",
@@ -521,11 +523,13 @@
"picture-tag",
"script-tag",
"sharedworker-classic",
+ "sharedworker-import",
"sharedworker-import-data",
"sharedworker-module",
"video-tag",
"websocket",
"worker-classic",
+ "worker-import",
"worker-import-data",
"worker-module",
"worklet-animation",
diff --git a/tests/wpt/web-platform-tests/compression/compression-bad-chunks.tentative.any.js b/tests/wpt/web-platform-tests/compression/compression-bad-chunks.tentative.any.js
index cc71b000309..af210a765a7 100644
--- a/tests/wpt/web-platform-tests/compression/compression-bad-chunks.tentative.any.js
+++ b/tests/wpt/web-platform-tests/compression/compression-bad-chunks.tentative.any.js
@@ -28,13 +28,15 @@ const badChunks = [
// Use a getter to postpone construction so that all tests don't fail where
// SharedArrayBuffer is not yet implemented.
get value() {
- return new SharedArrayBuffer();
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ return new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
}
},
{
name: 'shared Uint8Array',
get value() {
- return new Uint8Array(new SharedArrayBuffer())
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ return new Uint8Array(new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer)
}
},
];
diff --git a/tests/wpt/web-platform-tests/compression/decompression-bad-chunks.tentative.any.js b/tests/wpt/web-platform-tests/compression/decompression-bad-chunks.tentative.any.js
index 51f36931158..7dcb717a45c 100644
--- a/tests/wpt/web-platform-tests/compression/decompression-bad-chunks.tentative.any.js
+++ b/tests/wpt/web-platform-tests/compression/decompression-bad-chunks.tentative.any.js
@@ -28,13 +28,15 @@ const badChunks = [
// Use a getter to postpone construction so that all tests don't fail where
// SharedArrayBuffer is not yet implemented.
get value() {
- return new SharedArrayBuffer();
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ return new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
}
},
{
name: 'shared Uint8Array',
get value() {
- return new Uint8Array(new SharedArrayBuffer())
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ return new Uint8Array(new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer)
}
},
{
diff --git a/tests/wpt/web-platform-tests/css/css-flexbox/anonymous-block.html b/tests/wpt/web-platform-tests/css/css-flexbox/anonymous-block.html
new file mode 100644
index 00000000000..915cca757d7
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-flexbox/anonymous-block.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<title>CSS Flexbox: anonymous block</title>
+<html>
+<link href="support/flexbox.css" rel="stylesheet">
+<link rel="help" href="https://www.w3.org/TR/css-flexbox-1/#flex-items">
+<link rel="match" href="reference/anonymous-block-ref.html">
+<body>
+<p>This tests that text nodes that have a flexbox as a parent are wrapped in
+anonymous blocks.</p>
+<div class="flexbox">This text should be visible.</div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-flexbox/auto-height-with-flex.html b/tests/wpt/web-platform-tests/css/css-flexbox/auto-height-with-flex.html
new file mode 100644
index 00000000000..9151f8cd097
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-flexbox/auto-height-with-flex.html
@@ -0,0 +1,9 @@
+<!DOCTYPE html>
+<link rel="help" href="https://www.w3.org/TR/css-flexbox-1/#flex-basis-property">
+<link rel="match" href="reference/auto-height-with-flex-ref.html">
+<meta name="assert" content="This test ensures that a vertical flexbox (with auto height) and a flexitem with flex: 1; will not have 0 set to the flex basis, but to auto instead."/>
+<div style="display: flex; flex-direction: column; border: 1px solid purple;">
+<div>Header</div>
+<div style="flex: 1">Flexible content<br>
+</div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-flexbox/box-sizing-001.html b/tests/wpt/web-platform-tests/css/css-flexbox/box-sizing-001.html
new file mode 100644
index 00000000000..a11762696ed
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-flexbox/box-sizing-001.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<html>
+<title>CSS Flexbox: box-sizing</title>
+<link href="support/flexbox.css" rel="stylesheet">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox/#flex-flow-property">
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#box-sizing">
+<meta name="assert" content="This test checks the interactions between the flex layout mode and the two possible values for the box-sizing property: border-box and content-box" />
+
+<style>
+.flexbox {
+ border: 2px solid orange;
+}
+.h3 {
+ height: 300px;
+}
+.w3 {
+ width: 300px;
+}
+.h4 {
+ height: 400px;
+}
+.w4 {
+ width: 400px;
+}
+.border-box, .flexbox > div {
+ box-sizing: border-box;
+ height: 100px;
+ width: 100px;
+ border: 2px solid lightblue;
+ border-top-width: 4px;
+ padding: 3px;
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<body>
+<div id=log></div>
+
+All blue boxes are 100x100px with box-sizing: border-box and 2px border (4px border-top), we expect offsetWidth/Height to be <b>100x100</b>
+
+<h3>flex-flow: default, orange box has width: 300px</h3>
+<div class="flexbox" style="width: 300px">
+ <div></div><div></div><div></div>
+</div>
+
+<h3>flex-flow: default, orange box has width: 400px</h3>
+<div class="flexbox" style="width: 400px">
+ <div></div><div></div><div></div>
+</div>
+
+<h3>flex-flow: default, orange box has width: auto</h3>
+<div class="flexbox">
+ <div></div><div></div><div></div>
+</div>
+
+<h3>flex-flow: default, orange box has width: auto, flex-box has box-sizing: border-box</h3>
+<div class="flexbox border-box">
+ <div data-expected-width=30></div>
+ <div data-expected-width=30></div>
+ <div data-expected-width=30></div>
+</div>
+
+<h3>flex-flow: column, red box has height: 300px</h3>
+<div class="flexbox column" style="height: 300px">
+ <div></div><div></div><div></div>
+</div>
+
+<h3>flex-flow: column, red box has height: 400px</h3>
+<div class="flexbox column" style="height: 400px">
+ <div></div><div></div><div></div>
+</div>
+
+<h3>flex-flow: column, red box has height: auto</h3>
+<div class="flexbox column">
+ <div></div><div></div><div></div>
+</div>
+
+<h3>flex-box has box-sizing: border-box and flex-wrap: wrap;</h3>
+<div class="flexbox column wrap" style="box-sizing: border-box; border: 2px solid lightblue; padding: 3px; height: 200px; width: 100px; position: relative" data-expected-width=100 data-expected-height=200>
+ <div data-offset-x=3></div><div data-offset-x=103></div><div data-offset-x=203></div>
+</div>
+
+<h3>flex-box has box-sizing: default and flex-wrap: wrap;</h3>
+<div class="flexbox column wrap" style="border: 2px solid lightblue; padding: 3px; height: 200px; width: 100px; position: relative" data-expected-width=110 data-expected-height=210>
+ <div data-offset-x=3></div><div data-offset-x=3></div><div data-offset-x=103></div>
+</div>
+
+<h3>flex-flow: column, flex-box has box-sizing: border-box, flex items have flex: 1</h3>
+<div class="flexbox column" style="box-sizing: border-box; border: 2px solid lightblue; padding: 3px; height: 343px; width: 100px;" data-expected-width=100 data-expected-height=343>
+ <div style="flex: 1;" data-expected-height=111></div>
+ <div style="flex: 1;" data-expected-height=111></div>
+ <div style="flex: 1;" data-expected-height=111></div>
+</div>
+
+<script>
+ function addExpectedSizes(flexItem) {
+ if (!flexItem.hasAttribute('data-expected-height'))
+ flexItem.setAttribute('data-expected-height', 100);
+ if (!flexItem.hasAttribute('data-expected-width'))
+ flexItem.setAttribute('data-expected-width', 100);
+ }
+ [].forEach.call(document.querySelectorAll(".flexbox > div"), addExpectedSizes);
+ [].forEach.call(document.querySelectorAll(".border-box"), addExpectedSizes);
+ checkLayout('.flexbox');
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-flexbox/box-sizing-min-max-sizes-001.html b/tests/wpt/web-platform-tests/css/css-flexbox/box-sizing-min-max-sizes-001.html
new file mode 100644
index 00000000000..3aa9ce6bdc3
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-flexbox/box-sizing-min-max-sizes-001.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<title>CSS Flexbox: minimum / maximum sizes with box-sizing: border-box</title>
+<link href="support/flexbox.css" rel="stylesheet">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox/#box-model">
+<link rel="help" href="https://drafts.csswg.org/css2/visudet.html#min-max-widths">
+<meta name="assert" content="This test checks that a minimum and maximum sizes are correctly computed for flexbox children.">
+
+<style>
+.flexbox {
+ background-color: teal;
+}
+.flexbox > div {
+ box-sizing: border-box;
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<body onload="checkLayout('.flexbox')">
+<div id=log></div>
+
+<div class="flexbox">
+ <div style="border: 5px solid orange; padding: 5px; max-width: 30px; width: 40px;" data-expected-width=30></div>
+ <div style="border: 5px solid orange; padding: 5px; min-width: 30px; width: 10px;" data-expected-width=30></div>
+</div>
+
+<div class="flexbox column">
+ <div style="border: 5px solid orange; padding: 5px; max-height: 30px; height: 40px;" data-expected-height=30></div>
+ <div style="border: 5px solid orange; padding: 5px; min-height: 30px; height: 10px;" data-expected-height=30></div>
+</div>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-flexbox/column-flex-child-with-overflow-scroll.html b/tests/wpt/web-platform-tests/css/css-flexbox/column-flex-child-with-overflow-scroll.html
new file mode 100644
index 00000000000..4c84a258658
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-flexbox/column-flex-child-with-overflow-scroll.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+<title>Proper height of column flex children with overflow: scroll.</title>
+<link href="support/flexbox.css" rel="stylesheet">
+<link rel="help" href="https://www.w3.org/TR/css-flexbox-1/#flex-direction-property">
+<meta name="assert" content="This test ensures children of flexbox with flex-direction: column|column-reverse does not shrink their height after applying the overflow: scroll style."/>
+<style>
+div {
+ box-sizing: border-box;
+}
+
+.scroll {
+ overflow: scroll;
+}
+
+.box {
+ width: 100px;
+ height: 75px;
+ padding: 5px;
+ border: 2px solid red;
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<body onload="checkLayout('.flexbox')">
+<div id=log></div>
+<div class="flexbox column">
+ <div class="box" data-expected-width="100" data-expected-height="75"></div>
+ <div class="box scroll" id="box2" data-expected-width="100" data-expected-height="75"></div>
+</div>
+
+<div class="flexbox column-reverse">
+ <div class="box" data-expected-width="100" data-expected-height="75"></div>
+ <div class="box scroll" id="box4" data-expected-width="100" data-expected-height="75"></div>
+</div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-flexbox/reference/anonymous-block-ref.html b/tests/wpt/web-platform-tests/css/css-flexbox/reference/anonymous-block-ref.html
new file mode 100644
index 00000000000..fc8fe9f991d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-flexbox/reference/anonymous-block-ref.html
@@ -0,0 +1,8 @@
+<!DOCTYPE html>
+<html>
+<body>
+<p>This tests that text nodes that have a flexbox as a parent are wrapped in
+anonymous blocks.</p>
+<div>This text should be visible.</div>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-flexbox/reference/auto-height-with-flex-ref.html b/tests/wpt/web-platform-tests/css/css-flexbox/reference/auto-height-with-flex-ref.html
new file mode 100644
index 00000000000..d56fe356dcb
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-flexbox/reference/auto-height-with-flex-ref.html
@@ -0,0 +1,5 @@
+<div style="border:1px solid purple;">
+<div>Header</div>
+<div>Flexible content<br>
+</div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/META.yml b/tests/wpt/web-platform-tests/css/css-fonts/META.yml
index 3c34ca4e751..e5ea857ec90 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/META.yml
+++ b/tests/wpt/web-platform-tests/css/css-fonts/META.yml
@@ -3,3 +3,5 @@ suggested_reviewers:
- svgeesus
- litherum
- drott
+ - jfkthame
+
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/matching/fixed-stretch-style-over-weight-ref.html b/tests/wpt/web-platform-tests/css/css-fonts/matching/fixed-stretch-style-over-weight-ref.html
index ccbd4efaee5..16826307c83 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/matching/fixed-stretch-style-over-weight-ref.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/matching/fixed-stretch-style-over-weight-ref.html
@@ -1,5 +1,6 @@
<!DOCTYPE html>
<html class="reftest-wait">
+<meta charset="utf-8">
<style>
@font-face {
font-family: variable_axes;
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/matching/fixed-stretch-style-over-weight.html b/tests/wpt/web-platform-tests/css/css-fonts/matching/fixed-stretch-style-over-weight.html
index 8b177618a7c..c2b27be1206 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/matching/fixed-stretch-style-over-weight.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/matching/fixed-stretch-style-over-weight.html
@@ -1,5 +1,6 @@
<!DOCTYPE html>
<html class="reftest-wait">
+<meta charset="utf-8">
<link rel="stylesheet" href="font-matching.css">
<!-- Tests CSS Fonts Level 4, section 5.2. font matching algorithm. Precedence
of properties (stretch over style, style over weight) and style over weight
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/matching/font-matching.css b/tests/wpt/web-platform-tests/css/css-fonts/matching/font-matching.css
index 19825008757..ebbef02f628 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/matching/font-matching.css
+++ b/tests/wpt/web-platform-tests/css/css-fonts/matching/font-matching.css
@@ -1,6 +1,7 @@
body {
font-family: variable_axes, sans-serif;
font-size: 80px;
+ font-synthesis: none;
}
#stretch_style_weight_1 {
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/matching/resources/variabletest_matching.ttf b/tests/wpt/web-platform-tests/css/css-fonts/matching/resources/variabletest_matching.ttf
index 7a09643083b..89ed12a2c03 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/matching/resources/variabletest_matching.ttf
+++ b/tests/wpt/web-platform-tests/css/css-fonts/matching/resources/variabletest_matching.ttf
Binary files differ
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/matching/stretch-distance-over-weight-distance-ref.html b/tests/wpt/web-platform-tests/css/css-fonts/matching/stretch-distance-over-weight-distance-ref.html
index 3e6edda0da8..7589a15f12c 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/matching/stretch-distance-over-weight-distance-ref.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/matching/stretch-distance-over-weight-distance-ref.html
@@ -1,5 +1,6 @@
<!DOCTYPE html>
<html class="reftest-wait">
+<meta charset="utf-8">
<style>
@font-face {
font-family: variable_axes;
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/matching/stretch-distance-over-weight-distance.html b/tests/wpt/web-platform-tests/css/css-fonts/matching/stretch-distance-over-weight-distance.html
index 770efa99bae..e899c8b4d0d 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/matching/stretch-distance-over-weight-distance.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/matching/stretch-distance-over-weight-distance.html
@@ -1,5 +1,6 @@
<!DOCTYPE html>
<html class="reftest-wait">
+<meta charset="utf-8">
<link rel="stylesheet" href="font-matching.css">
<!-- Tests CSS Fonts Level 4, section 5.2. font matching algorithm. Precedence
of properties (stretch over style, style over weight) and distance of stretch . -->
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/matching/style-ranges-over-weight-direction-ref.html b/tests/wpt/web-platform-tests/css/css-fonts/matching/style-ranges-over-weight-direction-ref.html
index d1b235c77f1..5a7c13959ab 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/matching/style-ranges-over-weight-direction-ref.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/matching/style-ranges-over-weight-direction-ref.html
@@ -1,5 +1,6 @@
<!DOCTYPE html>
<html class="reftest-wait">
+<meta charset="utf-8">
<style>
@font-face {
font-family: variable_axes;
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/matching/style-ranges-over-weight-direction.html b/tests/wpt/web-platform-tests/css/css-fonts/matching/style-ranges-over-weight-direction.html
index 5cb21495ac5..f263a111277 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/matching/style-ranges-over-weight-direction.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/matching/style-ranges-over-weight-direction.html
@@ -1,5 +1,6 @@
<!DOCTYPE html>
<html class="reftest-wait">
+<meta charset="utf-8">
<link rel="stylesheet" href="font-matching.css">
<!-- Tests CSS Fonts Level 4, section 5.2. font matching algorithm. Precedence
of properties (stretch over style, style over weight) and search
diff --git a/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-definite-sizes-001.html b/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-definite-sizes-001.html
index dd19a835fdf..c2b6aeecd21 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-definite-sizes-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-definite-sizes-001.html
@@ -35,8 +35,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-grid-container-containing-block-001.html b/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-grid-container-containing-block-001.html
index 4906638ee1d..0e52b19997b 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-grid-container-containing-block-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-grid-container-containing-block-001.html
@@ -114,7 +114,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-grid-container-parent-001.html b/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-grid-container-parent-001.html
index 6e5e9ac54df..9e7172db439 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-grid-container-parent-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/abspos/absolute-positioning-grid-container-parent-001.html
@@ -36,7 +36,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.container')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.container'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-implicit-grid-001.html b/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-implicit-grid-001.html
index 8e576bf4b7a..e4629fbd200 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-implicit-grid-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-implicit-grid-001.html
@@ -32,8 +32,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-implicit-grid-line-001.html b/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-implicit-grid-line-001.html
index e2b2bdb2003..51e8ac18030 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-implicit-grid-line-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-implicit-grid-line-001.html
@@ -53,8 +53,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html b/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html
index 8dcb91ed6c8..7c95993eb52 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html
@@ -46,8 +46,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-sizing-positioned-items-001.html b/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-sizing-positioned-items-001.html
index b3716888c33..de1869c70a6 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-sizing-positioned-items-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/abspos/grid-sizing-positioned-items-001.html
@@ -57,8 +57,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/abspos/positioned-grid-items-should-not-create-implicit-tracks-001.html b/tests/wpt/web-platform-tests/css/css-grid/abspos/positioned-grid-items-should-not-create-implicit-tracks-001.html
index 82309e676b8..08779ec1e0f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/abspos/positioned-grid-items-should-not-create-implicit-tracks-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/abspos/positioned-grid-items-should-not-create-implicit-tracks-001.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/abspos/positioned-grid-items-should-not-take-up-space-001.html b/tests/wpt/web-platform-tests/css/css-grid/abspos/positioned-grid-items-should-not-take-up-space-001.html
index 7ea528b00f1..bb3be69cfbc 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/abspos/positioned-grid-items-should-not-take-up-space-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/abspos/positioned-grid-items-should-not-take-up-space-001.html
@@ -35,8 +35,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution-vertical-lr.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution-vertical-lr.html
index 0901ddea416..98d4e3c661d 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution-vertical-lr.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution-vertical-lr.html
@@ -44,8 +44,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that the align-content property is applied correctly when using content-distribution values in vertical-lr writing mode.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution-vertical-rl.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution-vertical-rl.html
index 1b495c47d2d..60864c110d7 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution-vertical-rl.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution-vertical-rl.html
@@ -44,8 +44,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that the align-content property is applied correctly when using content-distribution values for vertical-rl mode.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution.html
index 444e46b9ca5..cc3785da0fe 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-distribution.html
@@ -39,8 +39,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that the align-content property is applied correctly when using content-distribution values.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-vertical-lr.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-vertical-lr.html
index dbd27574e9b..484ab78e9d3 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-vertical-lr.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-vertical-lr.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div style="position: relative">
<p>direction: LTR | align-content: 'center'</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-vertical-rl.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-vertical-rl.html
index 440cf940678..fc584d88187 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-vertical-rl.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content-vertical-rl.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div style="position: relative">
<p>direction: LTR | align-content: 'center'</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content.html
index fb3f7007ee1..85d0d501ffd 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-content.html
@@ -36,8 +36,11 @@ body {
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div style="position: relative">
<p>direction: LTR | align-content: 'center'</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-lr.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-lr.html
index 9c9e944df04..7d43a57cfd3 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-lr.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-lr.html
@@ -33,8 +33,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that the 'margin', 'border' and 'padding' properties are applied together correctly for 'align' and 'justify' properties on vertical-LR grids.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-rl.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-rl.html
index f7698e45df3..8a7d32c5b61 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-rl.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding-vertical-rl.html
@@ -33,8 +33,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that the 'margin', 'border' and 'padding' properties are applied together correctly for 'align' and 'justify' properties on vertical-RL grids.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding.html
index 9cdce092cc3..37ec8cc3757 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-margin-border-padding.html
@@ -32,8 +32,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that the 'margin', 'border' and 'padding' properties are applied together correctly for 'align' and 'justify' properties.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-overflow.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-overflow.html
index 3ae182782a3..37d5c14600c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-overflow.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-overflow.html
@@ -34,8 +34,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that the 'overflow' keyword is applied correctly for 'align' and 'justify' properties.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-stretch-with-orthogonal-flows.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-stretch-with-orthogonal-flows.html
index c8fd3400060..3b50bb4d6e2 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-stretch-with-orthogonal-flows.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-stretch-with-orthogonal-flows.html
@@ -41,8 +41,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that stretching alignment works as expected with orthogonal flows.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-stretch.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-stretch.html
index 9feeed3e0ef..7af6695a65e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-stretch.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-justify-stretch.html
@@ -39,8 +39,11 @@ body {
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div style="position: relative">
<div class="grid fit-content" data-expected-width="200" data-expected-height="400">
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-stretching-replaced-items.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-stretching-replaced-items.html
index 6ac50527cd4..b1dbbd8fd2c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-stretching-replaced-items.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align-stretching-replaced-items.html
@@ -29,8 +29,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that the alignment properties align-self and justify-self apply the 'stretch' value correctly on replaced elements.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align.html
index a195945d1f9..79aa6847403 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-align.html
@@ -35,8 +35,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div style="position: relative">
<div class="grid fit-content" data-expected-width="200" data-expected-height="400">
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-001.html
index 865027325af..ee931b990fd 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-001.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 200);
grid.style.alignItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-width="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-002.html
index 3d0155e8bbd..2ef899fca96 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-002.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 100);
grid.style.alignItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-width="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-003.html
index c3d0dab39ba..47cb3347dbf 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-003.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 200);
grid.style.alignItems = "normal";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-width="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-004.html
index 55feb2c2ba6..d3f22e9bc91 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-004.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 200);
grid.style.alignItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-width="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-005.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-005.html
index e89cc1ec392..bb9de73d735 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-005.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-005.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 100);
grid.style.alignItems = "normal";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-width="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-006.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-006.html
index 58a124d39b8..5a61e333f6c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-006.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-006.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 200);
grid.style.alignItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-width="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-007.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-007.html
index 782bfcd8244..b50d8be7a88 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-007.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-007.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 100);
grid.style.alignItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-width="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-008.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-008.html
index b06cf544c1c..fd394b83e74 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-008.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-008.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 80);
grid.style.alignItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-width="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-009.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-009.html
index 108b7fc3afa..0ef6351dbb3 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-009.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-009.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 100);
grid.style.alignItems = "normal";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-width="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-010.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-010.html
index 34a70f34837..d9eb6066b91 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-010.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-010.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 80);
grid.style.alignItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-width="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-011.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-011.html
index c3ad2e65b72..b53c32d5e8b 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-011.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-011.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 200);
grid.style.alignItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-width="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-012.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-012.html
index c6d2e3bfc3a..4151e7b060e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-012.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-012.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 100);
grid.style.alignItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-width="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-013.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-013.html
index 61b66dee8b4..e87481f530c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-013.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-013.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 200);
grid.style.alignItems = "normal";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-width="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-014.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-014.html
index ee9c4efbb93..b74f09d138e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-014.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-014.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 100);
grid.style.alignItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-width="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-015.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-015.html
index 5eb383f8b13..405dbcf7bc9 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-015.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-015.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 100);
grid.style.alignItems = "normal";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-width="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-016.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-016.html
index 3f8c0d645c0..f3477a2aa9e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-016.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-016.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 100);
grid.style.alignItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-width="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-017.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-017.html
index e85b0259946..b9b9114879c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-017.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-017.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 100);
grid.style.alignItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-width="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-018.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-018.html
index 0c387aa4a25..e9bfe63e620 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-018.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-018.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-height", 80);
grid.style.alignItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-width="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-019.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-019.html
index 3a75c07c501..49896c21f9c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-019.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-019.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 200);
grid.style.justifyItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-height="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-020.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-020.html
index d122098d9d0..e04356bc721 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-020.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-020.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 120);
grid.style.justifyItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-height="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-021.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-021.html
index 89382a92416..29aa8ff6eb4 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-021.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-021.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 200);
grid.style.alignItems = "normal";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-height="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-022.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-022.html
index 70b9061724d..b986bbe659c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-022.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-022.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 200);
grid.style.justifyItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-height="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-023.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-023.html
index 6bae3d25227..e896326a950 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-023.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-023.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 120);
grid.style.justifyItems = "normal";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-height="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-024.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-024.html
index d2e25355f34..b236ef15d14 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-024.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-024.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 200);
grid.style.justifyItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-height="100" id="item">XX X<br>X XXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-025.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-025.html
index 7652f8badc2..6f268ee7741 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-025.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-025.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 120);
grid.style.justifyItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-height="100" id="item">XXXXXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-026.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-026.html
index b2462c572e3..c3bfc67a7e5 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-026.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-026.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 80);
grid.style.justifyItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-height="100" id="item">XXXXXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-027.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-027.html
index a88fd676e38..5f1512c8c83 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-027.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-027.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 120);
grid.style.justifyItems = "normal";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-height="100" id="item">XXXXXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-028.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-028.html
index 4ae7171ec1e..2fb651162aa 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-028.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-028.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 80);
grid.style.justifyItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<div data-expected-height="100" id="item">XXXXXX<br>X<br>XX XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029.html
index 18830609202..afe909f81f7 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 200);
grid.style.justifyItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-height="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030.html
index 36709d50859..d3924e32656 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 100);
grid.style.justifyItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-height="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031.html
index ad47a2a594f..528e08b881c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 200);
grid.style.justifyItems = "normal";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-height="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-032.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-032.html
index 4f4569574cf..011eea64a2f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-032.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-032.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 100);
grid.style.justifyItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-width="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-033.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-033.html
index 9ad862c6de0..eace9b956d3 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-033.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-033.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 100);
grid.style.justifyItems = "normal";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-height="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-034.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-034.html
index b253e8283ab..7b22dffe31a 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-034.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-034.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 100);
grid.style.justifyItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-height="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035.html
index ff0e240dd56..18bb1bd061c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 100);
grid.style.justifyItems = "stretch";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-height="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036.html
index 2664ea1292c..e63ce4fccdf 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036.html
@@ -29,6 +29,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
evaluateStyleChange(item, "before", "data-expected-width", 80);
grid.style.justifyItems = "start";
@@ -36,7 +37,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div class="grid" id="grid">
<img data-expected-height="100" id="item" src="support/100x100-green.png"></img>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html
index ed3ca891da1..919c6eefa89 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html
@@ -36,6 +36,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
let before = {
item1: {"data-offset-y": 16 },
@@ -55,7 +56,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div id="container">
<div id="item1" data-expected-width="50" data-expected-height="20" data-offset-x="0">É</div>
<div id="item2" data-expected-width="50" data-expected-height="40" data-offset-x="50">É</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html
index a41f24bb95e..21e7d0d3abf 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html
@@ -37,6 +37,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
let before = {
item1: {"data-offset-y": 8 },
@@ -56,7 +57,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div id="container">
<div id="item1" data-expected-width="50" data-expected-height="20" data-offset-x="0">É</div>
<div id="item2" data-expected-width="50" data-expected-height="40" data-offset-x="50">É</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html
index 51319257f34..136a36167a2 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html
@@ -38,6 +38,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
let before = {
item1: {"data-offset-x": 4 },
@@ -57,7 +58,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div id="container">
<div id="item1" data-expected-width="20" data-expected-height="50" data-offset-y="0">É</div>
<div id="item2" data-expected-width="40" data-expected-height="50" data-offset-y="50">É</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html
index 1b13b653c8f..3145fb0cc6a 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html
@@ -39,6 +39,7 @@
<script src="/resources/check-layout-th.js"></script>
<script src="support/style-change.js"></script>
<script>
+setup({ explicit_done: true });
function runTest() {
let before = {
item1: {"data-offset-x": 2 },
@@ -58,7 +59,7 @@ function runTest() {
done();
}
</script>
-<body onload="runTest()">
+<body onload="document.fonts.ready.then(() => { runTest(); })">
<div id="container">
<div id="item1" data-expected-width="20" data-expected-height="50" data-offset-y="0">É</div>
<div id="item2" data-expected-width="40" data-expected-height="50" data-offset-y="50">É</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-001.html
index 03beae8db72..e3a880f66ea 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-001.html
@@ -35,6 +35,7 @@
<div id="item2"></div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-y", "75");
item2.setAttribute("data-offset-y", "300");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-002.html
index 077c7a18ff0..73905483717 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-002.html
@@ -35,6 +35,7 @@
<div id="item2"></div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-y", "75");
item2.setAttribute("data-offset-y", "300");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-003.html
index 552070e8084..f451ebeae7f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-003.html
@@ -36,6 +36,7 @@
<div id="item2"></div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-y", "75");
item2.setAttribute("data-offset-y", "300");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-004.html
index 20e9500e1d4..4d0a092e004 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-004.html
@@ -36,6 +36,7 @@
<div id="item2"></div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-y", "75");
item2.setAttribute("data-offset-y", "300");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-005.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-005.html
index 98f87f8fd90..9231779e2ae 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-005.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-005.html
@@ -34,6 +34,7 @@
<div id="item2">XXXXX</div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-y", "90");
item2.setAttribute("data-offset-y", "345");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-006.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-006.html
index ee64491930e..ccb2dfd5dce 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-006.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-006.html
@@ -34,6 +34,7 @@
<div id="item2">XXXXX</div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-y", "95");
item2.setAttribute("data-offset-y", "345");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-007.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-007.html
index d9b9484bee7..da51ff321c4 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-007.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-block-axis-alignment-auto-margins-007.html
@@ -35,6 +35,7 @@
<div id="item2"></div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-y", "75");
item2.setAttribute("data-offset-y", "300");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-001.html
index 7268b612545..9216ed370c5 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-001.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-002.html
index 59edcd1a814..4a4a397ffa2 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-002.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="140" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="120" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-003.html
index 6e5d32932f6..83616380e24 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-003.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-004.html
index 33d711de2c9..ef6e810f9f7 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-004.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-005.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-005.html
index b3d51eb9265..7c903389f81 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-005.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-005.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="70" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="60" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-006.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-006.html
index acbb165a6a4..b1f2136a57f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-006.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-006.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-007.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-007.html
index c8810318905..eeeadeff458 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-007.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-007.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="140" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="120" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-008.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-008.html
index 0ebc17c46bb..1329501015f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-008.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-008.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-009.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-009.html
index 64b33b8892e..60a135dfee8 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-009.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-009.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="140" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="120" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-010.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-010.html
index c860249fd22..eb01d61bc27 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-010.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-010.html
@@ -54,7 +54,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="RTL firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="RTL firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-011.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-011.html
index d772e1aea25..ad3beb8ab11 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-011.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-011.html
@@ -54,7 +54,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="140" data-expected-width="60" data-expected-height="10" class="RTL firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="120" data-expected-width="70" data-expected-height="30" class="RTL firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-012.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-012.html
index 8f9975d2b2b..57db133a7dd 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-012.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-012.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="100" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-013.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-013.html
index 80418b12b6b..9854540a6f5 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-013.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-013.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="0" data-offset-y="90" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="220" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-014.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-014.html
index 70ad6f70b8a..2f0cd54c42e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-014.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-014.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="0" data-offset-y="45" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="160" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-015.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-015.html
index 3fb572bad4c..d2bd432d9d4 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-015.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-015.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="RTL firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="100" data-expected-width="70" data-expected-height="30" class="RTL firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-016.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-016.html
index e1437693d59..53284b4678f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-016.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-016.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="0" data-offset-y="90" data-expected-width="60" data-expected-height="10" class="RTL firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="220" data-expected-width="70" data-expected-height="30" class="RTL firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-017.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-017.html
index 5e5a8c024b1..f20ac0d02c7 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-017.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-017.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-001.html
index e7bafab2e96..0d3a556f40c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-001.html
@@ -31,7 +31,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<pre>Horizontal grid and verticalRL item</pre>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-002.html
index 769ce1ea48b..c20489e9a8b 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-002.html
@@ -34,7 +34,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<pre>Horizontal grid and item with fixed height</pre>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-003.html
index a68868e0385..10a9adb9ff2 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-003.html
@@ -36,7 +36,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<pre>Horizontal grid and item with relative height</pre>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-004.html
index f69fac5cef7..8c6d7abe4ed 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-004.html
@@ -34,7 +34,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<pre>Horizontal grid and item with fixed height</pre>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-content-alignment-second-pass-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-content-alignment-second-pass-001.html
index 5f8c8e23c7c..1d83f53a477 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-content-alignment-second-pass-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-content-alignment-second-pass-001.html
@@ -23,8 +23,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onLoad="checkLayout('.grid');">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-content-alignment-second-pass-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-content-alignment-second-pass-002.html
index c3f32c7efc7..74a783bce2f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-content-alignment-second-pass-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-content-alignment-second-pass-002.html
@@ -23,8 +23,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onLoad="checkLayout('.grid');">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-fit-content-tracks-dont-stretch-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-fit-content-tracks-dont-stretch-001.html
index 70e434be8f2..a03b549a9af 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-fit-content-tracks-dont-stretch-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-fit-content-tracks-dont-stretch-001.html
@@ -39,8 +39,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onLoad="checkLayout('.grid');">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-gutters-and-alignment.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-gutters-and-alignment.html
index 8202af2550d..bc8af31c75e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-gutters-and-alignment.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-gutters-and-alignment.html
@@ -87,8 +87,11 @@ div.gridWithPaddingBorder > div.cell {
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<!-- Check that gutters do not interfere with self alignment computation. -->
<div class="container">
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-001.html
index 932c7f95896..5c7825ca2fc 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-001.html
@@ -35,6 +35,7 @@
<div id="item2"></div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-x", "75");
item2.setAttribute("data-offset-x", "300");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-002.html
index 7ea7800cd26..3aa47a2570c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-002.html
@@ -35,6 +35,7 @@
<div id="item2"></div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-x", "75");
item2.setAttribute("data-offset-x", "300");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003.html
index 243b5240012..0136d7b4b67 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-003.html
@@ -36,6 +36,7 @@
<div id="item2"></div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-x", "75");
item2.setAttribute("data-offset-x", "300");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-004.html
index 8cdaacca78d..1ee0de73bcf 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-004.html
@@ -36,6 +36,7 @@
<div id="item2"></div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-x", "75");
item2.setAttribute("data-offset-x", "300");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-005.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-005.html
index dcf8bef1c9b..72427f1020e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-005.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-005.html
@@ -36,6 +36,7 @@
<div id="item2">XXXXX</div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-x", "50");
item2.setAttribute("data-offset-x", "325");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-006.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-006.html
index 7f064c9bb41..ed54ce722a0 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-006.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-006.html
@@ -35,6 +35,7 @@
<div id="item2">XX</div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-x", "80");
item2.setAttribute("data-offset-x", "340");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-007.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-007.html
index 2b5acdfe029..0b991de98b1 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-007.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-inline-axis-alignment-auto-margins-007.html
@@ -35,6 +35,7 @@
<div id="item2"></div>
</div>
<script>
+setup({ explicit_done: true });
document.fonts.ready.then(() => {
item1.setAttribute("data-offset-x", "75");
item2.setAttribute("data-offset-x", "300");
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-lr.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-lr.html
index 32c2efb3957..a9ec652289a 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-lr.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-lr.html
@@ -29,8 +29,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that grid items alignment works as expected with VERTICAL-LR vs HORIZONTAL-TB orthogonal flows.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-rl.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-rl.html
index 845c6cea27e..2b3b7a489e1 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-rl.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows-vertical-rl.html
@@ -29,8 +29,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that grid items alignment works as expected with VERTICAL-RL vs HORIZONTAL-TB orthogonal flows.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows.html
index c506547a760..133132529ae 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-alignment-with-orthogonal-flows.html
@@ -29,8 +29,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that grid items alignment works as expected with HORIZONTAL-TB vs VERTICAL-RL orthogonal flows.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-lr.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-lr.html
index 1a70eff865c..e11398907ec 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-lr.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-lr.html
@@ -33,8 +33,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that align-self and justify-self properties are not applied when there is auto-margin in the corresponding axis. Instead, auto-margin alignment should be applied.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-rl.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-rl.html
index 46cdd89b202..42c6dd2d298 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-rl.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment-vertical-rl.html
@@ -33,8 +33,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that align-self and justify-self properties are not applied when there is auto-margin in the corresponding axis. Instead, auto-margin alignment should be applied.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment.html
index 86b398192e7..f9fdfd7dbf2 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-item-auto-margins-alignment.html
@@ -33,8 +33,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<p>This test checks that align-self and justify-self properties are not applied when there is auto-margin in the corresponding axis. Instead, auto-margin alignment should be applied.</p>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-001.html
index 967b0e4be96..b76e808da5f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-001.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-002.html
index 7ccf3979b7e..c7ae3f0b7c7 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-002.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="40" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="180" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-003.html
index 68534b9f652..a56de0c376c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-003.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-004.html
index f2615f12471..3aa7a3d1ff1 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-004.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="40" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="180" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-005.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-005.html
index 725cb1a2540..d37e541f68c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-005.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-005.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="20" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="140" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-006.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-006.html
index bd381f1ece8..fe440bf0ca6 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-006.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-006.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-007.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-007.html
index 3d5f2782dd0..cdd8b5a1f9c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-007.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-007.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="40" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="180" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-008.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-008.html
index 3d96e0805f5..a52265e3445 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-008.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-008.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-009.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-009.html
index bbcadb598d3..2ff678ecc81 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-009.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-009.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="40" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="180" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-010.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-010.html
index 6fba51dfd5c..801f6590a66 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-010.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-010.html
@@ -54,7 +54,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="40" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="RTL firstRowFirstColumn">X XX X</div>
<div data-offset-x="180" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="RTL firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-011.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-011.html
index d07711d5157..596787d0bd6 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-011.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-011.html
@@ -54,7 +54,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="RTL firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="RTL firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-012.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-012.html
index a80afc67eed..1b27bfc941c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-012.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-012.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="200" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-013.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-013.html
index 90c0d049ae0..a15bbc0608c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-013.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-013.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="40" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="380" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-014.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-014.html
index 16fec813ffa..52d8ca640d8 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-014.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-014.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="20" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="290" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-015.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-015.html
index cd51a36da5a..83071e0c23a 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-015.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-015.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="40" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="RTL firstRowFirstColumn">X XX X</div>
<div data-offset-x="380" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="RTL firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-016.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-016.html
index fc30ac4be76..1ea12200925 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-016.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-016.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="RTL firstRowFirstColumn">X XX X</div>
<div data-offset-x="200" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="RTL firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-017.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-017.html
index 8c2c79d574a..041ee3fcc15 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-017.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-017.html
@@ -53,7 +53,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-001.html
index dff798cf5e0..870e368d08d 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-001.html
@@ -32,7 +32,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<pre>Horizontal grid and verticalRL item</pre>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-002.html
index 27e89c119dd..80dba9cc358 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-002.html
@@ -35,7 +35,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<pre>Horizontal grid and verticalLR item with fixed width</pre>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-003.html
index 3530084e88e..daf06a4a80e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-003.html
@@ -35,7 +35,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<pre>Horizontal grid and verticalLR item with relative width</pre>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-004.html
index 4e49df77967..f40d06386ed 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-004.html
@@ -35,7 +35,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.inline-grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.inline-grid'); })">
<pre>Horizontal grid and verticalLR item with relative width</pre>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-001.html
index 5f32149402d..93e622ce6d1 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-001.html
@@ -60,7 +60,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="5" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="170" data-offset-y="120" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-002.html
index 2308b6944b1..6b2d5c42568 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-002.html
@@ -62,7 +62,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="25" data-offset-y="5" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="160" data-offset-y="105" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-003.html
index 1874baac2e2..0a5d674fbd8 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-003.html
@@ -66,7 +66,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="5" data-offset-y="0" data-expected-width="90" data-expected-height="30" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="140" data-offset-y="100" data-expected-width="100" data-expected-height="50" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-004.html
index 4c952d1ee4a..b9237a53348 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-004.html
@@ -62,7 +62,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="5" data-offset-y="0" data-expected-width="90" data-expected-height="30" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="140" data-offset-y="100" data-expected-width="100" data-expected-height="50" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-005.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-005.html
index de975e65c8a..39c75eb5d76 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-005.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-005.html
@@ -68,7 +68,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="13" data-offset-y="2" data-expected-width="76" data-expected-height="20" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="150" data-offset-y="104" data-expected-width="86" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-006.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-006.html
index 426e095a80f..6565a603876 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-006.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-006.html
@@ -76,7 +76,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="16" data-offset-y="3" data-expected-width="76" data-expected-height="20" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="153" data-offset-y="105" data-expected-width="86" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-007.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-007.html
index 843711dd13c..55c1892da14 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-007.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-007.html
@@ -61,7 +61,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="5" data-offset-y="0" data-expected-width="10" data-expected-height="60" class="firstRowFirstColumn verticalLR">X XX X</div>
<div data-offset-x="210" data-offset-y="80" data-expected-width="30" data-expected-height="70" class="firstRowSecondColumn verticalRL">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-008.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-008.html
index 91e243f2541..6edecba2d3f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-008.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-008.html
@@ -63,7 +63,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="25" data-offset-y="5" data-expected-width="10" data-expected-height="60" class="firstRowFirstColumn verticalLR">X XX X</div>
<div data-offset-x="210" data-offset-y="65" data-expected-width="30" data-expected-height="70" class="firstRowSecondColumn verticalRL">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-009.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-009.html
index 7312a7708f8..ad2f8b1dc34 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-009.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-009.html
@@ -67,7 +67,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<!-- The test cases with vertical-rl wirting-mode will fail becauuse of bug 779105 -->
<div class="grid">
<div data-offset-x="5" data-offset-y="0" data-expected-width="40" data-expected-height="80" class="firstRowFirstColumn verticalLR">X XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-010.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-010.html
index 82ad124e70d..856062014d4 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-010.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-010.html
@@ -63,7 +63,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<!-- The test cases with vertical-rl wirting-mode will fail becauuse of bug 779105 -->
<div class="grid">
<div data-offset-x="5" data-offset-y="0" data-expected-width="40" data-expected-height="80" class="firstRowFirstColumn verticalLR">X XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-011.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-011.html
index c1dda475142..f3a8476ddf9 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-011.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-011.html
@@ -69,7 +69,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<!-- The test cases with vertical-rl wirting-mode will fail becauuse of bug 779105 -->
<div class="grid">
<div data-offset-x="13" data-offset-y="2" data-expected-width="26" data-expected-height="70" class="firstRowFirstColumn verticalLR">X XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-012.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-012.html
index e2805ca5762..0121846f8a1 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-012.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-non-static-positioned-items-012.html
@@ -73,7 +73,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<!-- The test cases with vertical-rl wirting-mode will fail becauuse of bug 779105 -->
<div class="grid">
<div data-offset-x="70" data-offset-y="2" data-expected-width="26" data-expected-height="70" class="firstRowFirstColumn verticalLR">X XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-001.html
index 499f2c3a24a..4c8bd89ecf6 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-001.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="30" data-offset-y="5" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="145" data-offset-y="105" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-002.html
index b8f0874e41a..6624ea00d4c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-002.html
@@ -61,7 +61,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="10" data-offset-y="0" data-expected-width="90" data-expected-height="30" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="125" data-offset-y="100" data-expected-width="100" data-expected-height="50" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-003.html
index e224a0af2cd..cc377a5c598 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-003.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="10" data-offset-y="0" data-expected-width="90" data-expected-height="30" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="125" data-offset-y="100" data-expected-width="100" data-expected-height="50" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-004.html
index 8aa8a5e1283..afbbfcb1dd1 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-004.html
@@ -63,7 +63,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="20" data-offset-y="2" data-expected-width="76" data-expected-height="20" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="134" data-offset-y="104" data-expected-width="86" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-005.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-005.html
index 027c1a18a0e..3cf29475ed2 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-005.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-005.html
@@ -71,7 +71,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="23" data-offset-y="3" data-expected-width="76" data-expected-height="20" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="137" data-offset-y="105" data-expected-width="86" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-006.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-006.html
index 8389b06ab0a..e1b3fc4d254 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-006.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-006.html
@@ -59,7 +59,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="80" data-offset-y="5" data-expected-width="10" data-expected-height="60" class="firstRowFirstColumn verticalLR">X XX X</div>
<div data-offset-x="165" data-offset-y="65" data-expected-width="30" data-expected-height="70" class="firstRowSecondColumn verticalRL">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-007.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-007.html
index 598d7b4dc56..855ed7cdeff 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-007.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-007.html
@@ -63,7 +63,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="60" data-offset-y="0" data-expected-width="40" data-expected-height="80" class="firstRowFirstColumn verticalLR">X XX X</div>
<div data-offset-x="145" data-offset-y="60" data-expected-width="60" data-expected-height="90" class="firstRowSecondColumn verticalRL">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-008.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-008.html
index b843f9f50a7..6fa38b92064 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-008.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-008.html
@@ -59,7 +59,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="60" data-offset-y="0" data-expected-width="40" data-expected-height="80" class="firstRowFirstColumn verticalLR">X XX X</div>
<div data-offset-x="145" data-offset-y="60" data-expected-width="60" data-expected-height="90" class="firstRowSecondColumn verticalRL">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-009.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-009.html
index a36ed19b67a..0ff84978183 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-009.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-009.html
@@ -65,7 +65,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="70" data-offset-y="2" data-expected-width="26" data-expected-height="70" class="firstRowFirstColumn verticalLR">X XX X</div>
<div data-offset-x="154" data-offset-y="64" data-expected-width="46" data-expected-height="80" class="firstRowSecondColumn verticalRL">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-010.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-010.html
index 6afabd12573..003c3bbb378 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-010.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-010.html
@@ -73,7 +73,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="73" data-offset-y="3" data-expected-width="26" data-expected-height="70" class="firstRowFirstColumn verticalLR">X XX X</div>
<div data-offset-x="157" data-offset-y="65" data-expected-width="46" data-expected-height="80" class="firstRowSecondColumn verticalRL">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-011.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-011.html
index e330ffafc3c..e0681310d00 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-011.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-011.html
@@ -60,7 +60,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="40" data-offset-y="0" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="290" data-offset-y="120" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-012.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-012.html
index 7b1ce95287b..9049a826a5f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-012.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-012.html
@@ -62,7 +62,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="30" data-offset-y="5" data-expected-width="60" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="295" data-offset-y="105" data-expected-width="70" data-expected-height="30" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-013.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-013.html
index 328f14d5c85..42b92fd6814 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-013.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-013.html
@@ -66,7 +66,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="10" data-offset-y="0" data-expected-width="90" data-expected-height="30" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="275" data-offset-y="100" data-expected-width="100" data-expected-height="50" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-014.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-014.html
index b3a86ebbc12..db5c0f89cb6 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-014.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-014.html
@@ -62,7 +62,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="10" data-offset-y="0" data-expected-width="90" data-expected-height="30" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="275" data-offset-y="100" data-expected-width="100" data-expected-height="50" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-015.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-015.html
index 31165fe006a..3b0a3be6c81 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-015.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-015.html
@@ -68,7 +68,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="20" data-offset-y="2" data-expected-width="76" data-expected-height="20" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="284" data-offset-y="104" data-expected-width="86" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-016.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-016.html
index d61281b78c7..7d0fd5dc2c8 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-016.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-positioned-items-with-margin-border-padding-016.html
@@ -76,7 +76,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid LTR">
<div data-offset-x="23" data-offset-y="3" data-expected-width="76" data-expected-height="20" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="289" data-offset-y="105" data-expected-width="86" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-001.html
index b091a948b94..95b5f4fe6df 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-001.html
@@ -50,7 +50,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="60" data-expected-height="150" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-002.html
index 6fba94c63b6..10ea533404f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-002.html
@@ -54,7 +54,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="90" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="60" data-expected-height="130" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-003.html
index e0a383282bd..51ad16826e7 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-003.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="60" data-expected-height="150" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-004.html
index 4c4f1c7430f..f0f19e29206 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-004.html
@@ -54,7 +54,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="10" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="60" data-expected-height="150" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-005.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-005.html
index aaf5a20b005..c21500cd3f9 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-005.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-005.html
@@ -51,7 +51,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="60" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="40" data-expected-height="150" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-006.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-006.html
index 248d57f621a..65f52467645 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-006.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-006.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="90" data-expected-height="60" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="40" data-expected-height="130" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-007.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-007.html
index 7ec5c3fe6e7..6ba763ea9c9 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-007.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-007.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="60" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="40" data-expected-height="150" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-008.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-008.html
index 55fc78432fe..e433dde9b90 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-008.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-008.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="60" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="0" data-expected-width="40" data-expected-height="150" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-009.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-009.html
index fe164de20d0..90de8d4bc00 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-009.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-009.html
@@ -50,7 +50,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="125" data-expected-height="20" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="125" data-offset-y="0" data-expected-width="80" data-expected-height="125" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-010.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-010.html
index 9feba74730d..b71a3189087 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-010.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-010.html
@@ -54,7 +54,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="110" data-expected-height="20" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="120" data-offset-y="0" data-expected-width="80" data-expected-height="110" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-011.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-011.html
index b4a199a7525..8b1999b4b20 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-011.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-011.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="120" data-expected-height="20" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="120" data-offset-y="0" data-expected-width="80" data-expected-height="130" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-012.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-012.html
index 51a8b5d570e..fe738f2e8aa 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-012.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-012.html
@@ -54,7 +54,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="120" data-expected-height="20" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="120" data-offset-y="0" data-expected-width="80" data-expected-height="130" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-013.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-013.html
index 3202d7303d1..ffb52481a04 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-013.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-013.html
@@ -51,7 +51,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="125" data-expected-height="80" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="125" data-offset-y="0" data-expected-width="20" data-expected-height="125" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-014.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-014.html
index 6e283ae4be8..34e1c5ec6c3 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-014.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-014.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="110" data-expected-height="80" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="120" data-offset-y="0" data-expected-width="20" data-expected-height="110" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-015.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-015.html
index 5f761f1d8b4..df8749c47b2 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-015.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-015.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="120" data-expected-height="80" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="120" data-offset-y="0" data-expected-width="20" data-expected-height="130" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-016.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-016.html
index 2378190ea1c..00059268fc0 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-016.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-016.html
@@ -54,7 +54,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="120" data-expected-height="80" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="120" data-offset-y="0" data-expected-width="20" data-expected-height="130" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-001.html
index 516ea38ff38..ac851b2514a 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-001.html
@@ -51,7 +51,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="10" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="0" data-offset-y="100" data-expected-width="150" data-expected-height="60" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-002.html
index a7bc034a9cc..d1640a5510a 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-002.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="10" data-expected-height="90" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="0" data-offset-y="100" data-expected-width="130" data-expected-height="60" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-003.html
index 8c37726f827..6b9563bbdf1 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-003.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="10" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="0" data-offset-y="100" data-expected-width="150" data-expected-height="60" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-004.html
index 0503bc45010..05332f1c9a9 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-004.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="10" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="0" data-offset-y="100" data-expected-width="150" data-expected-height="60" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-005.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-005.html
index 617c7273cda..ce17538fe92 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-005.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-005.html
@@ -52,7 +52,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="0" data-offset-y="100" data-expected-width="150" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-006.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-006.html
index 4ab4f962ad5..ab6282ab4d4 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-006.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-006.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="90" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="0" data-offset-y="100" data-expected-width="130" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-007.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-007.html
index 6a8862acb3d..f960feec88a 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-007.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-007.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="0" data-offset-y="100" data-expected-width="150" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-008.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-008.html
index d5107aa3606..fae2519cf86 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-008.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-008.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="60" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="0" data-offset-y="100" data-expected-width="150" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-009.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-009.html
index 04fd2cc204a..6fa5073311e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-009.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-009.html
@@ -51,7 +51,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="20" data-expected-height="125" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="0" data-offset-y="125" data-expected-width="125" data-expected-height="80" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-010.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-010.html
index d2393a6b533..2ca7951bffe 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-010.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-010.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="20" data-expected-height="110" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="0" data-offset-y="120" data-expected-width="110" data-expected-height="80" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-011.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-011.html
index 22a690f0a12..f15f0c59fb1 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-011.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-011.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="20" data-expected-height="120" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="0" data-offset-y="120" data-expected-width="130" data-expected-height="80" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-012.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-012.html
index c2c4039c088..e5077b26e5e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-012.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-012.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="20" data-expected-height="120" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="0" data-offset-y="120" data-expected-width="130" data-expected-height="80" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-013.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-013.html
index 0a325668cfd..a7790b60ef4 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-013.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-013.html
@@ -52,7 +52,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="125" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="0" data-offset-y="125" data-expected-width="125" data-expected-height="20" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-014.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-014.html
index 9b7d51c32e5..5c7fd92cc14 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-014.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-014.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="110" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="0" data-offset-y="120" data-expected-width="110" data-expected-height="20" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-015.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-015.html
index c19da89bbe0..9265d65728e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-015.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-015.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="120" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="0" data-offset-y="120" data-expected-width="130" data-expected-height="20" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-016.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-016.html
index 772d0eab4a9..46370e4dcca 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-016.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-lr-016.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="120" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="0" data-offset-y="120" data-expected-width="130" data-expected-height="20" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-001.html
index 7743374b641..b41aeb73f58 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-001.html
@@ -51,7 +51,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="240" data-offset-y="0" data-expected-width="10" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="100" data-expected-width="150" data-expected-height="60" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-002.html
index 28314cad2bb..36cec785e14 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-002.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="240" data-offset-y="0" data-expected-width="10" data-expected-height="90" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="120" data-offset-y="100" data-expected-width="130" data-expected-height="60" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-003.html
index 6cb323392fd..c8e34e484b0 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-003.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="240" data-offset-y="0" data-expected-width="10" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="100" data-expected-width="150" data-expected-height="60" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-004.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-004.html
index 6b0cc055184..d88a7300b34 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-004.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="240" data-offset-y="0" data-expected-width="10" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="100" data-expected-width="150" data-expected-height="60" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-005.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-005.html
index c7cdd9c7199..d38de47effc 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-005.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-005.html
@@ -52,7 +52,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="190" data-offset-y="0" data-expected-width="60" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="100" data-expected-width="150" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-006.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-006.html
index e26fc4e2095..36aaff90f1c 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-006.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-006.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="190" data-offset-y="0" data-expected-width="60" data-expected-height="90" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="100" data-expected-width="130" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-007.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-007.html
index a9485c1004c..d32631e7d23 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-007.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-007.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="190" data-offset-y="0" data-expected-width="60" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="100" data-expected-width="150" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-008.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-008.html
index 748a22c3610..f6616048ddc 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-008.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-008.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="190" data-offset-y="0" data-expected-width="60" data-expected-height="100" class="firstRowFirstColumn">X XX X</div>
<div data-offset-x="100" data-offset-y="100" data-expected-width="150" data-expected-height="40" class="firstRowSecondColumn">XX X<br>X XXX<br>X<br>XX XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-009.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-009.html
index 5d94f3613ea..1f852aba4ee 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-009.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-009.html
@@ -51,7 +51,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="230" data-offset-y="0" data-expected-width="20" data-expected-height="125" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="125" data-offset-y="125" data-expected-width="125" data-expected-height="80" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-010.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-010.html
index 1e6e248358b..e6917675897 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-010.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-010.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="230" data-offset-y="0" data-expected-width="20" data-expected-height="110" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="140" data-offset-y="120" data-expected-width="110" data-expected-height="80" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-011.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-011.html
index d854595bb09..86a02c6026f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-011.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-011.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="230" data-offset-y="0" data-expected-width="20" data-expected-height="120" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="120" data-offset-y="120" data-expected-width="130" data-expected-height="80" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-012.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-012.html
index 56736a9090b..d99580eecc1 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-012.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-012.html
@@ -55,7 +55,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="230" data-offset-y="0" data-expected-width="20" data-expected-height="120" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="120" data-offset-y="120" data-expected-width="130" data-expected-height="80" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-013.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-013.html
index 01ba6a161d7..59b953a0af2 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-013.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-013.html
@@ -52,7 +52,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="170" data-offset-y="0" data-expected-width="80" data-expected-height="125" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="125" data-offset-y="125" data-expected-width="125" data-expected-height="20" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-014.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-014.html
index 5f3019a68e9..4da2cd6c981 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-014.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-014.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="170" data-offset-y="0" data-expected-width="80" data-expected-height="110" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="120" data-offset-y="120" data-expected-width="110" data-expected-height="20" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-015.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-015.html
index c311352a644..86ed82f66e0 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-015.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-015.html
@@ -57,7 +57,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="170" data-offset-y="0" data-expected-width="80" data-expected-height="120" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="120" data-offset-y="120" data-expected-width="130" data-expected-height="20" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-016.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-016.html
index 67746851e9f..57a25d13727 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-016.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-016.html
@@ -56,7 +56,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid">
<div data-offset-x="170" data-offset-y="0" data-expected-width="80" data-expected-height="120" class="firstRowFirstColumn">XX X</div>
<div data-offset-x="120" data-offset-y="120" data-expected-width="130" data-expected-height="20" class="firstRowSecondColumn">XX X</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html
index 49d0a393508..dae81ceee1a 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html
@@ -49,7 +49,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.inline-grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.inline-grid'); })">
<div style="height: 125px">
<pre>auto-sized rows - items with relative height</pre>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html
index 8517771d908..10c6d8a1bb8 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html
@@ -51,7 +51,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.inline-grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.inline-grid'); })">
<pre>auto-sized rows - horizonal grid and verticalLR item - column-axis baseline</pre>
<div class="inline-grid alignItemsBaseline columns height200">
diff --git a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html
index 9122b5cbe94..a62999cb321 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html
@@ -43,7 +43,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<pre>flex rows - column-axis baseline - the blue orthogonal item didn't participate in the first iteration</pre>
<div class="grid row alignItemsBaseline">
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-change-fit-content-argument-001.html b/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-change-fit-content-argument-001.html
index c46722bc7db..d697af47432 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-change-fit-content-argument-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-change-fit-content-argument-001.html
@@ -25,6 +25,7 @@
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
<script>
+setup({ explicit_done: true });
function setGridTemplate(id, gridTemplateRows, gridTemplateColumns)
{
var gridElement = document.getElementById(id);
@@ -60,10 +61,9 @@ function testChangingGridDefinitions()
done();
}
-
-window.addEventListener("load", testChangingGridDefinitions, false);
</script>
+<body onload="document.fonts.ready.then(() => { testChangingGridDefinitions(); })">
<div id="grid1" class="grid">
<div id="item1" class="autoRowAutoColumn">XXXX XXX XX X X</div>
</div>
@@ -71,3 +71,4 @@ window.addEventListener("load", testChangingGridDefinitions, false);
<div id="grid2" class="grid">
<div id="item2" class="autoRowAutoColumn verticalLR">XXXX XXX XX X X</div>
</div>
+</body>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-001.html b/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-001.html
index 40c642e1f32..c0be13ead81 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-001.html
@@ -26,7 +26,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid');">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-002.html b/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-002.html
index ce191b6bc55..ae65f2207ef 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-percentage-rows-indefinite-height-002.html
@@ -19,7 +19,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid');">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-support-repeat-002.html b/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-support-repeat-002.html
index 9d1fefb0c3c..a5174fe6f36 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-support-repeat-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-definition/grid-support-repeat-002.html
@@ -25,6 +25,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
+setup({explicit_done: true});
var {style} = document.getElementById("grid");
function testGridTemplateColumnsRows(assignedValue, expectedValue = assignedValue) {
@@ -36,31 +37,34 @@ function testGridTemplateColumnsRows(assignedValue, expectedValue = assignedValu
}, `grid-template-columns: ${assignedValue}; and grid-template-rows: ${assignedValue};`);
}
-// Valid values.
-testGridTemplateColumnsRows("repeat(1, auto)");
-testGridTemplateColumnsRows("repeat(2, auto)");
-testGridTemplateColumnsRows("repeat(2, minmax(50px, calc(50% + 50px)))");
-testGridTemplateColumnsRows("repeat(5, 10%)");
-testGridTemplateColumnsRows("max-content repeat(2, 25%) 1fr");
-testGridTemplateColumnsRows("repeat(2, min-content 50px)");
-testGridTemplateColumnsRows("repeat(2, [a] minmax(50px, 100px) [b] 25em [c])");
-testGridTemplateColumnsRows("[a] repeat(2, auto [b] 100px) [c]");
-testGridTemplateColumnsRows("[a] auto repeat(2, [b] 100px) [c]");
-testGridTemplateColumnsRows("[a] repeat(2, auto [b]) 100px [c]");
-testGridTemplateColumnsRows("[a] repeat(2, [b] 100px)");
-testGridTemplateColumnsRows("[a] repeat(2, [b] auto [c]) [d]");
-testGridTemplateColumnsRows("[a] min-content repeat(2, [b] 1fr [c] calc(10% + 20px)) [d] minmax(30em, 50em) [e]");
+document.fonts.ready.then(() => {
+ // Valid values.
+ testGridTemplateColumnsRows("repeat(1, auto)");
+ testGridTemplateColumnsRows("repeat(2, auto)");
+ testGridTemplateColumnsRows("repeat(2, minmax(50px, calc(50% + 50px)))");
+ testGridTemplateColumnsRows("repeat(5, 10%)");
+ testGridTemplateColumnsRows("max-content repeat(2, 25%) 1fr");
+ testGridTemplateColumnsRows("repeat(2, min-content 50px)");
+ testGridTemplateColumnsRows("repeat(2, [a] minmax(50px, 100px) [b] 25em [c])");
+ testGridTemplateColumnsRows("[a] repeat(2, auto [b] 100px) [c]");
+ testGridTemplateColumnsRows("[a] auto repeat(2, [b] 100px) [c]");
+ testGridTemplateColumnsRows("[a] repeat(2, auto [b]) 100px [c]");
+ testGridTemplateColumnsRows("[a] repeat(2, [b] 100px)");
+ testGridTemplateColumnsRows("[a] repeat(2, [b] auto [c]) [d]");
+ testGridTemplateColumnsRows("[a] min-content repeat(2, [b] 1fr [c] calc(10% + 20px)) [d] minmax(30em, 50em) [e]");
-// Reset values.
-style.gridTemplateColumns = "";
-style.gridTemplateRows = "";
+ // Reset values.
+ style.gridTemplateColumns = "";
+ style.gridTemplateRows = "";
-// Wrong values.
-testGridTemplateColumnsRows("repeat(-1, auto)", "");
-testGridTemplateColumnsRows("repeat(auto, 2)", "");
-testGridTemplateColumnsRows("repeat 2, auto", "");
-testGridTemplateColumnsRows("repeat(2 auto)", "");
-testGridTemplateColumnsRows("100px (repeat 2, auto)", "");
-testGridTemplateColumnsRows("repeat(2, 50px repeat(2, 100px))", "");
-testGridTemplateColumnsRows("100px repeat(2, [a])", "");
+ // Wrong values.
+ testGridTemplateColumnsRows("repeat(-1, auto)", "");
+ testGridTemplateColumnsRows("repeat(auto, 2)", "");
+ testGridTemplateColumnsRows("repeat 2, auto", "");
+ testGridTemplateColumnsRows("repeat(2 auto)", "");
+ testGridTemplateColumnsRows("100px (repeat 2, auto)", "");
+ testGridTemplateColumnsRows("repeat(2, 50px repeat(2, 100px))", "");
+ testGridTemplateColumnsRows("100px repeat(2, [a])", "");
+ done();
+});
</script>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-001.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-001.html
index 62fc14f4a97..dc1602ab173 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-001.html
@@ -30,8 +30,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-002.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-002.html
index 19c75d7463f..6ff78b4bb1e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-002.html
@@ -30,8 +30,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-001.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-001.html
index 81e096531be..05d77f3d2c1 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-001.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-002.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-002.html
index 5d9584d28a8..168a719a512 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-002.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-001.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-001.html
index f0b49386839..78ce9f76251 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-001.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-002.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-002.html
index 142b2fd2bb6..83b5dc7e11b 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-002.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-001.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-001.html
index 892f8f90bcf..7c99eb90685 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-001.html
@@ -30,8 +30,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-002.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-002.html
index 798cdbdbefb..447b5201d6d 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-002.html
@@ -30,8 +30,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-001.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-001.html
index 74997fd8b12..a21ab29de97 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-001.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-002.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-002.html
index edffee26fd0..786efe82039 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-002.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-001.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-001.html
index 92f943874d8..5bb2566286f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-001.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-002.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-002.html
index d3e062eaf8d..5502aecd684 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-002.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-021.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-021.html
index ab66d70a973..d2c221521a5 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-021.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-021.html
@@ -70,7 +70,6 @@
}
setup({ explicit_done: true });
- window.addEventListener("load", runTests);
function runTests() {
checkGridSizeTracksAndImageSize("grid-1", "img-1", "200px", "200px", "200px", "200px", "200px", "200px");
@@ -102,6 +101,7 @@
}
</script>
+<body onload="document.fonts.ready.then(() => { runTests(); })">
<div id=log></div>
<!-- Grids with only a 50x50 image as grid item. -->
@@ -219,3 +219,4 @@
<img id="img-24" class="width100percent" src="support/500x500-green.png">
<div>ITEM</div>
</div>
+</body>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-022.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-022.html
index 350bce5947a..38e1a1bb269 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-022.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-022.html
@@ -27,8 +27,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-023.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-023.html
index 0f91381bb30..8993e2fb1b5 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-023.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-023.html
@@ -28,8 +28,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-024.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-024.html
index 74063286a64..fc7c91dbf1e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-024.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-024.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-025.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-025.html
index 7b8c956d17c..544e71c5e0e 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-025.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/grid-minimum-size-grid-items-025.html
@@ -32,8 +32,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-001.html b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-001.html
index d014a22e7a0..907ef68668f 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-001.html
@@ -26,8 +26,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid justifyContentSpaceBetween" data-expected-width="200" data-expected-height="40">
<div class="item" data-expected-width="200" data-expected-height="40">XXX XX X XX X XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-002.html b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-002.html
index 150077fbed5..7c395253b4d 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-002.html
@@ -27,11 +27,14 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
<!-- Heuristic for estimating row-size for orthogonal items should
also consider Content Alignment, so that grid container width is 40px.
https://github.com/w3c/csswg-drafts/issues/2697 -->
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid justifyContentStart alignContentSpaceBetween" data-expected-width="80" data-expected-height="200">
<div class="item" data-expected-width="40" data-expected-height="200">XXX XX X XX X XXX</div>
</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-003.html b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-003.html
index 052fee13e71..b3c692c8528 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-003.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-003.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid justifyContentSpaceAround" data-expected-width="200" data-expected-height="60">
<div class="item1" data-expected-width="100" data-expected-height="40">XXXX XXX</div>
<div class="item2" data-expected-width="100" data-expected-height="20">XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-004.html b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-004.html
index 611c4b38da6..045e080a4e4 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-004.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-004.html
@@ -31,8 +31,11 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
-<body onload="checkLayout('.grid')">
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div class="grid justifyContentSpaceBetween" data-expected-width="220" data-expected-height="40">
<div class="item1" data-expected-width="110" data-expected-height="40">XXXX XXX</div>
<div class="item2" data-expected-width="60" data-expected-height="40">XXX</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-001.html b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-001.html
index d8e6daff927..150878b80a9 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-001.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-001.html
@@ -33,7 +33,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-002.html b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-002.html
index 1e9a42d90fb..f3c2087e274 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-002.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-find-fr-size-gutters-002.html
@@ -20,7 +20,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<div id="log"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-intrinsic-size-with-orthogonal-items.html b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-intrinsic-size-with-orthogonal-items.html
index 10979566478..4dfcd126d10 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-intrinsic-size-with-orthogonal-items.html
+++ b/tests/wpt/web-platform-tests/css/css-grid/layout-algorithm/grid-intrinsic-size-with-orthogonal-items.html
@@ -26,7 +26,10 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
-<body onload="checkLayout('.grid')">
+<script type="text/javascript">
+ setup({ explicit_done: true });
+</script>
+<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
<pre>rows: auto</pre>
diff --git a/tests/wpt/web-platform-tests/css/css-layout-api/constraints-data-sab-failure.https.html b/tests/wpt/web-platform-tests/css/css-layout-api/constraints-data-sab-failure.https.html
index 8659c2edef5..b8df61c73d3 100644
--- a/tests/wpt/web-platform-tests/css/css-layout-api/constraints-data-sab-failure.https.html
+++ b/tests/wpt/web-platform-tests/css/css-layout-api/constraints-data-sab-failure.https.html
@@ -35,7 +35,8 @@ registerLayout('parent', class {
try {
childFragment = await child.layoutNextFragment({
- data: { sab: new SharedArrayBuffer(4) }
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ data: { sab: new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer }
});
} catch(e) {
// Success! The structured cloning algorithm should have thrown an error.
diff --git a/tests/wpt/web-platform-tests/css/css-layout-api/fragment-data-sab-failure.https.html b/tests/wpt/web-platform-tests/css/css-layout-api/fragment-data-sab-failure.https.html
index a6cfcf663dc..681de5b543c 100644
--- a/tests/wpt/web-platform-tests/css/css-layout-api/fragment-data-sab-failure.https.html
+++ b/tests/wpt/web-platform-tests/css/css-layout-api/fragment-data-sab-failure.https.html
@@ -33,7 +33,8 @@ registerLayout('fallback-sab', class {
async layout(children, edges, constraints, styleMap) {
const childFragments = await Promise.all(children.map(child => child.layoutNextFragment()));
- return {autoBlockSize: 0, childFragments, data: {sab: new SharedArrayBuffer(4) }};
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ return {autoBlockSize: 0, childFragments, data: {sab: new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer }};
}
});
</script>
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-auto-010.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-auto-010.html
new file mode 100644
index 00000000000..60ad082b8b4
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-auto-010.html
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: 'hyphens: auto' with a valid 'lang' attribute specification</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#hyphenation">
+ <link rel="match" href="reference/hyphens-auto-010-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'hyphens' is set to 'auto' and when 'lang' attribute is also set to a valid value, then words may be broken at hyphenation opportunities determined automatically by an hyphenation resource appropriate to the language of the text involved.">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 6ch;
+ }
+
+ div#test
+ {
+ hyphens: auto;
+ }
+
+ div#reference
+ {
+ hyphens: none;
+ }
+ </style>
+
+ <body lang="en">
+
+ <p>Test passes if each black-bordered rectangles have identical inside content.
+
+ <div id="test">regulation implementation</div>
+
+ <div id="reference">regu-lation imple-menta-tion</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-010.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-010.html
new file mode 100644
index 00000000000..8ceaceb1f3f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-010.html
@@ -0,0 +1,47 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: 'hyphens: manual' with no explicit hyphenation opportunity (basic)</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#hyphenation">
+ <link rel="match" href="reference/hyphens-manual-010-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'hyphens' is set to 'manual', then words can be hyphenated only if characters inside the words explicitly define hyphenation opportunities. In this test, the characters inside the word 'Deoxyribonucleic' do not explicitly define hyphenation opportunities, so it must not be hyphenated." name="assert">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 10ch;
+ }
+
+ div#test
+ {
+ hyphens: manual;
+ }
+
+ div#reference
+ {
+ hyphens: none;
+ }
+ </style>
+
+ <body lang="en">
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically. Only "ucleic" should be outside of the black-bordered rectangles.
+
+ <div id="test">Deoxyribonucleic acid</div>
+
+ <div id="reference">Deoxyribonucleic acid</div>
+
+ <!--
+
+ Extended form of abreviation DNA
+
+ -->
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-011.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-011.html
new file mode 100644
index 00000000000..060dc75619a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-011.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: 'hyphens: manual' with 2 explicit hyphenation opportunities</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#hyphenation">
+ <link rel="match" href="reference/hyphens-manual-011-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'hyphens' is set to 'manual', then words can be hyphenated only if characters inside the words explicitly define hyphenation opportunities. In this test, the characters inside the word 'Deoxyribonucleic' explicitly define 2 hyphenation opportunities, so it can be hyphenated. Since 9 characters can all fit inside the line box of the block box, then the word 'Deoxyribonucleic' is hyphenated only after the 2nd soft hyphen." name="assert">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 10ch;
+ }
+
+ div#test
+ {
+ hyphens: manual;
+ }
+
+ div#reference
+ {
+ hyphens: none;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="test">Deoxy&shy;ribo&shy;nucleic acid</div>
+
+ <div id="reference">Deoxyribo-nucleic acid</div>
+
+ <!--
+
+ Extended form of abreviation DNA
+
+ -->
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-012.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-012.html
new file mode 100644
index 00000000000..871f7c39b69
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-012.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: 'hyphens: manual' with 4 explicit hyphenation opportunities</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#hyphenation">
+ <link rel="match" href="reference/hyphens-manual-011-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'hyphens' is set to 'manual', then words can be hyphenated only if characters inside the words explicitly define hyphenation opportunities. In this test, the characters inside the word 'Deoxyribonucleic' explicitly define 4 hyphenation opportunities. Since 9 characters can all fit inside the line box of the block box, then the word 'Deoxyribonucleic' is hyphenated only after the 3rd soft hyphen." name="assert">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 10ch;
+ }
+
+ div#test
+ {
+ hyphens: manual;
+ }
+
+ div#reference
+ {
+ hyphens: none;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="test">Deo&shy;xy&shy;ribo&shy;nu&shy;cleic acid</div>
+
+ <div id="reference">Deoxyribo-nucleic acid</div>
+
+ <!--
+
+ Extended form of abreviation DNA
+
+ -->
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-013.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-013.html
new file mode 100644
index 00000000000..17e3f6f8157
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-manual-013.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: 'hyphens: manual' with 1 explicit hyphenation opportunity</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#hyphenation">
+ <link rel="match" href="reference/hyphens-manual-013-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'hyphens' is set to 'manual', then words can be hyphenated only if characters inside the words explicitly define hyphenation opportunities. In this test, the characters inside the word 'Deoxyribonucleic' explicitly define 1 and only 1 hyphenation opportunity, so it can be hyphenated only at such point." name="assert">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 10ch;
+ }
+
+ div#test
+ {
+ hyphens: manual;
+ }
+
+ div#reference
+ {
+ hyphens: none;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically. Only the "c" of "nucleic" should be outside of each black-bordered rectangles.
+
+ <div id="test">Deoxy&shy;ribonucleic acid</div>
+
+ <div id="reference">Deoxy-ribonucleic acid</div>
+
+ <!--
+
+ Extended form of abreviation DNA
+
+ -->
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-none-011.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-none-011.html
new file mode 100644
index 00000000000..cd54cfd0936
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/hyphens-none-011.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: 'hyphens: none' with explicit hyphenation opportunities</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#hyphenation">
+ <link rel="match" href="reference/hyphens-manual-010-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="This test checks that, when 'hyphens' is set to 'none', then long words are not hyphenated, even if characters inside long words explicitly define hyphenation opportunities." name="assert">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 10ch;
+ }
+
+ div#test
+ {
+ hyphens: none;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically. Only "ucleic" should be outside of the black-bordered rectangles.
+
+ <div id="test">Deoxy&shy;ribo&shy;nucleic acid</div>
+
+ <div id="reference">Deoxyribonucleic acid</div>
+
+ <!--
+
+ Extended form of abreviation DNA
+
+ -->
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-auto-010-ref.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-auto-010-ref.html
new file mode 100644
index 00000000000..13841121c64
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-auto-010-ref.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ hyphens: none;
+ margin-bottom: 0.25em;
+ width: 6ch;
+ }
+ </style>
+
+ <body lang="en">
+
+ <p>Test passes if each black-bordered rectangles have identical inside content.
+
+ <div>regu-lation imple-menta-tion</div>
+
+ <div>regu-lation imple-menta-tion</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-010-ref.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-010-ref.html
new file mode 100644
index 00000000000..f79ce17a4c7
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-010-ref.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ hyphens: none;
+ margin-bottom: 0.25em;
+ width: 10ch;
+ }
+ </style>
+
+ <body lang="en">
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically. Only "ucleic" should be outside of the black-bordered rectangles.
+
+ <div>Deoxyribonucleic acid</div>
+
+ <div>Deoxyribonucleic acid</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-011-ref.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-011-ref.html
new file mode 100644
index 00000000000..98581bd37c0
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-011-ref.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ hyphens: none;
+ margin-bottom: 0.25em;
+ width: 10ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div>Deoxyribo-nucleic acid</div>
+
+ <div>Deoxyribo-nucleic acid</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-013-ref.html b/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-013-ref.html
new file mode 100644
index 00000000000..9fa6bee4215
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/hyphens/reference/hyphens-manual-013-ref.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ hyphens: none;
+ margin-bottom: 0.25em;
+ width: 10ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically. Only the "c" of "nucleic" should be outside of each black-bordered rectangles.
+
+ <div>Deoxy-ribonucleic acid</div>
+
+ <div>Deoxy-ribonucleic acid</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/break-spaces-051.html b/tests/wpt/web-platform-tests/css/css-text/white-space/break-spaces-051.html
new file mode 100644
index 00000000000..26265118083
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/break-spaces-051.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: inline starting with a collapsible white space</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-phase-2">
+ <link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+
+ <style>
+ div
+ {
+ background-color: red;
+ color: green;
+ float: left;
+ font-family: Ahem;
+ font-size: 50px;
+ line-height: 1;
+ }
+
+ span#break-spaces
+ {
+ white-space: break-spaces;
+ }
+ </style>
+
+ <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+ <div><span id="break-spaces">AB&NewLine;</span><span> CD</span></div>
+
+<!--
+
+ &NewLine; == Line feed == &#x000A; == &#0010;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/break-spaces-052.html b/tests/wpt/web-platform-tests/css/css-text/white-space/break-spaces-052.html
new file mode 100644
index 00000000000..28219d55c68
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/break-spaces-052.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: inline starting with a collapsible white space</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-phase-2">
+ <link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+
+ <style>
+ div
+ {
+ background-color: red;
+ color: green;
+ display: inline-block;
+ font-family: Ahem;
+ font-size: 50px;
+ line-height: 1;
+ }
+
+ span#break-spaces
+ {
+ white-space: break-spaces;
+ }
+ </style>
+
+ <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+ <div><span id="break-spaces">AB&NewLine;</span><span> CD</span></div>
+
+<!--
+
+ &NewLine; == Line feed == &#x000A; == &#0010;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/pre-line-051.html b/tests/wpt/web-platform-tests/css/css-text/white-space/pre-line-051.html
new file mode 100644
index 00000000000..2a918fc28e0
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/pre-line-051.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: inline starting with a collapsible white space</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-phase-2">
+ <link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+
+ <style>
+ div
+ {
+ background-color: red;
+ color: green;
+ float: left;
+ font-family: Ahem;
+ font-size: 50px;
+ line-height: 1;
+ }
+
+ span#pre-line
+ {
+ white-space: pre-line;
+ }
+ </style>
+
+ <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+ <div><span id="pre-line">AB&NewLine;</span><span> CD</span></div>
+
+<!--
+
+ &NewLine; == Line feed == &#x000A; == &#0010;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/pre-line-052.html b/tests/wpt/web-platform-tests/css/css-text/white-space/pre-line-052.html
new file mode 100644
index 00000000000..76eea859726
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/pre-line-052.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: inline starting with a collapsible white space</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-phase-2">
+ <link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+
+ <style>
+ div
+ {
+ background-color: red;
+ color: green;
+ display: inline-block;
+ font-family: Ahem;
+ font-size: 50px;
+ line-height: 1;
+ }
+
+ span#pre-line
+ {
+ white-space: pre-line;
+ }
+ </style>
+
+ <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+ <div><span id="pre-line">AB&NewLine;</span><span> CD</span></div>
+
+<!--
+
+ &NewLine; == Line feed == &#x000A; == &#0010;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/pre-wrap-051.html b/tests/wpt/web-platform-tests/css/css-text/white-space/pre-wrap-051.html
new file mode 100644
index 00000000000..19d7f4dbbc0
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/pre-wrap-051.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: inline starting with a collapsible white space</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-phase-2">
+ <link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+
+ <style>
+ div
+ {
+ background-color: red;
+ color: green;
+ float: left;
+ font-family: Ahem;
+ font-size: 50px;
+ line-height: 1;
+ }
+
+ span#pre-wrap
+ {
+ white-space: pre-wrap;
+ }
+ </style>
+
+ <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+ <div><span id="pre-wrap">AB&NewLine;</span><span> CD</span></div>
+
+<!--
+
+ &NewLine; == Line feed == &#x000A; == &#0010;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/pre-wrap-052.html b/tests/wpt/web-platform-tests/css/css-text/white-space/pre-wrap-052.html
new file mode 100644
index 00000000000..4794f52e16c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/pre-wrap-052.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: inline starting with a collapsible white space</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-phase-2">
+ <link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+
+ <style>
+ div
+ {
+ background-color: red;
+ color: green;
+ display: inline-block;
+ font-family: Ahem;
+ font-size: 50px;
+ line-height: 1;
+ }
+
+ span#pre-wrap
+ {
+ white-space: pre-wrap;
+ }
+ </style>
+
+ <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+ <div><span id="pre-wrap">AB&NewLine;</span><span> CD</span></div>
+
+<!--
+
+ &NewLine; == Line feed == &#x000A; == &#0010;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-normal-011-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-normal-011-ref.html
new file mode 100644
index 00000000000..ac1f95f623f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-normal-011-ref.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ white-space: pre;
+ width: 16ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="reference">Lorem ipsum.
+Dolor sit amet.
+consectetur</div>
+
+ <div id="reference">Lorem ipsum.
+Dolor sit amet.
+consectetur</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-nowrap-011-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-nowrap-011-ref.html
new file mode 100644
index 00000000000..b70f993c808
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-nowrap-011-ref.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically. Only "or sit amet." should be outside of black-bordered rectangles.
+
+ <div id="reference">Lorem&nbsp;ipsum.&nbsp;Dolor&nbsp;sit&nbsp;amet.<br>
+consectetur</div>
+
+ <div id="reference">Lorem&nbsp;ipsum.&nbsp;Dolor&nbsp;sit&nbsp;amet.<br>
+consectetur</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-011-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-011-ref.html
new file mode 100644
index 00000000000..c3aecc8dfbd
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-011-ref.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically. Only "Dolor" should be outside of black-bordered rectangles.
+
+ <div id="reference">Lorem&nbsp;ipsum.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.&nbsp;<br>
+consectetur</div>
+
+ <div id="reference">Lorem&nbsp;ipsum.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.&nbsp;<br>
+consectetur</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-031-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-031-ref.html
new file mode 100644
index 00000000000..93181354ba2
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-031-ref.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div>Lorem ipsum. <br>
+Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
+
+ <div>Lorem ipsum. <br>
+Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-034-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-034-ref.html
new file mode 100644
index 00000000000..b920bdb1112
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-pre-034-ref.html
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div>Lorem ipsum.&nbsp;&nbsp;&nbsp;&nbsp;<br>
+&nbsp;&nbsp;Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
+
+ <div>Lorem ipsum.&nbsp;&nbsp;&nbsp;&nbsp;<br>
+&nbsp;&nbsp;Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html
new file mode 100644
index 00000000000..842f46913d1
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-001-ref.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ white-space: pre;
+ width: 4ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div>123
+ 8</div>
+
+ <div>123
+ 8</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-003-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-003-ref.html
new file mode 100644
index 00000000000..3bb36177604
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-003-ref.html
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ li
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ white-space: pre;
+ width: 4ch;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles (both preceded with a small filled disc) are laid out identically.
+
+ <ul><li>123
+ 8</ul>
+
+ <ul><li>123
+ 8</ul>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html
new file mode 100644
index 00000000000..d8a5b90638e
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-006-ref.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ table
+ {
+ border: black solid 2px;
+ border-spacing: 0px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ white-space: pre;
+ width: 4ch;
+ }
+
+ td
+ {
+ padding: 0px;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <table><tr><td>123
+ 8</table>
+
+ <table><tr><td>123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-012-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-012-ref.html
new file mode 100644
index 00000000000..942bd8fe92d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/ws-break-spaces-applies-to-012-ref.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Reference Test</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+
+ <style>
+ table
+ {
+ border: black solid 2px;
+ border-spacing: 0px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ }
+
+ td
+ {
+ padding: 0px;
+ width: 4ch;
+ white-space: normal;
+ }
+ </style>
+
+ <body>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <table><tr><td>123
+ 8</table>
+
+ <table><tr><td>123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-normal-011.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-normal-011.html
new file mode 100644
index 00000000000..1743f58f141
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-normal-011.html
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: 'white-space: normal' (basic)</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/white-space-normal-011-ref.html">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+
+ div#test
+ {
+ white-space: normal;
+ }
+
+ div#reference
+ {
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="test">Lorem ipsum. Dolor
+ sit&Tab;amet. <br>consectetur</div>
+
+ <div id="reference">Lorem ipsum.
+Dolor sit amet.
+consectetur</div>
+
+<!--
+
+ <div id="test">Lorem ipsum. Dolor
+ ^^^^^^^^
+ 12345678
+
+ sit&Tab;amet. <br>consectetur</div>
+^^^
+123
+
+
+
+ &Tab; == Horizontal tabulation == &#x0009; == &#09;
+
+ &NewLine; == Line feed == &#x000A; == &#0010;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-nowrap-011.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-nowrap-011.html
new file mode 100644
index 00000000000..1c11d97093b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-nowrap-011.html
@@ -0,0 +1,55 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: 'white-space: nowrap' (basic)</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/white-space-nowrap-011-ref.html">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+
+ div#test
+ {
+ white-space: nowrap;
+ }
+
+ div#reference
+ {
+ white-space: normal;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically. Only "or sit amet." should be outside of black-bordered rectangles.
+
+ <div id="test">Lorem ipsum. Dolor
+ sit&Tab;amet. <br>consectetur</div>
+
+ <div id="reference">Lorem&nbsp;ipsum.&nbsp;Dolor&nbsp;sit&nbsp;amet.<br>
+consectetur</div>
+
+<!--
+
+
+ <div id="test">Lorem ipsum. Dolor
+ ^^^^^^^^
+ 12345678
+
+ sit&Tab;amet. <br>consectetur</div>
+^^^
+123
+
+ &Tab; == Horizontal tabulation == &#x0009; == &#09;
+
+ &NewLine; == Line feed == &#x000A; == &#0010;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-011.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-011.html
new file mode 100644
index 00000000000..88b9894d137
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-011.html
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: 'white-space: pre' (basic)</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/white-space-pre-011-ref.html">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+
+ div#test
+ {
+ white-space: pre;
+ }
+
+ div#reference
+ {
+ white-space: normal;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically. Only "Dolor" should be outside of black-bordered rectangles.
+
+ <div id="test">Lorem ipsum. Dolor
+ sit&Tab;amet. <br>consectetur</div>
+
+ <div id="reference">Lorem&nbsp;ipsum.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.&nbsp;<br>
+consectetur</div>
+
+<!--
+
+ <div id="test">Lorem ipsum. Dolor
+ ^^^^^^^^
+ 12345678
+
+ sit&Tab;amet. <br>consectetur</div>
+^^^
+123
+
+Since 'tab-size' is by default 8,
+since "sit" uses 3 characters
+and since there are 3 white space characters
+before "sit", then
+
+ 8
+-
+ 3
+-
+ 3
+=====
+ 2
+
+then the horizontal tabulation will be use as much space
+as a sequence of 2 preserved white space characters.
+
+
+ &Tab; == Horizontal tabulation == &#x0009; == &#09;
+
+ &NewLine; == Line feed == &#x000A; == &#0010;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-031.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-031.html
new file mode 100644
index 00000000000..c96f51eefae
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-031.html
@@ -0,0 +1,75 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: wrappable ('normal') inline inside a 'white-space: pre' block</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/white-space-pre-031-ref.html">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+
+ div#test
+ {
+ white-space: pre;
+ }
+
+ span
+ {
+ white-space: normal;
+ }
+
+ div#reference
+ {
+ white-space: normal;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="test">Lorem ips<span>um. Dolo</span>r
+ sit&Tab;amet.</div>
+
+ <div id="reference">Lorem ipsum. <br>
+Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
+
+<!--
+
+ <div id="test">Lorem ipsum. Dolor
+ ^
+ 1
+
+ sit&Tab;amet.</div>
+^^^
+123
+
+Since 'tab-size' is by default 8,
+since "sit" uses 3 characters
+and since there are 3 preserved
+white space characters before "sit",
+
+ 8
+-
+ 3
+-
+ 3
+=====
+ 2
+
+then the horizontal tabulation will use as much space
+as a sequence of 2 preserved white space characters.
+
+
+ &Tab; == Horizontal tabulation == &#x0009; == &#09;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-032.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-032.html
new file mode 100644
index 00000000000..7c066b76703
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-032.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: wrappable ('pre-wrap') inline inside a 'white-space: pre' block</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/white-space-pre-031-ref.html">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+
+ div#test
+ {
+ white-space: pre;
+ }
+
+ span
+ {
+ white-space: pre-wrap;
+ }
+
+ div#reference
+ {
+ white-space: normal;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="test">Lorem ips<span>um. Dolo</span>r
+ sit&Tab;amet.</div>
+
+ <div id="reference">Lorem ipsum. <br>
+Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
+
+<!--
+
+ <div id="test">Lorem ipsum. Dolor
+ ^
+ 1
+
+ sit&Tab;amet.</div>
+^^^
+123
+
+
+Since 'tab-size' is by default 8,
+since "sit" uses 3 characters
+and since there are 3 preserved
+white space characters before "sit",
+
+ 8
+-
+ 3
+-
+ 3
+=====
+ 2
+
+then the horizontal tabulation will be converted
+into a sequence of 2 preserved white space characters.
+
+
+ &Tab; == Horizontal tabulation == &#x0009; == &#09;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-034.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-034.html
new file mode 100644
index 00000000000..29bf8a53a63
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-034.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: wrappable ('break-spaces') inline inside a 'white-space: pre' block</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/white-space-pre-034-ref.html">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+
+ div#test
+ {
+ white-space: pre;
+ }
+
+ span
+ {
+ white-space: break-spaces;
+ }
+
+ div#reference
+ {
+ white-space: normal;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="test">Lorem ips<span>um. Dolo</span>r
+ sit&Tab;amet.</div>
+
+ <div id="reference">Lorem ipsum.&nbsp;&nbsp;&nbsp;&nbsp;<br>
+&nbsp;&nbsp;Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
+
+<!--
+
+ <div id="test">Lorem ipsum. Dolor
+ ^^^^^^
+ 123456
+
+ sit&Tab;amet.</div>
+^^^
+123
+
+
+Since 'tab-size' is by default 8,
+since "sit" uses 3 characters
+and since there are 3 preserved
+white space characters before "sit",
+
+ 8
+-
+ 3
+-
+ 3
+=====
+ 2
+
+then the horizontal tabulation will use as much space
+as a sequence of 2 preserved white space characters.
+
+
+ &Tab; == Horizontal tabulation == &#x0009; == &#09;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-035.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-035.html
new file mode 100644
index 00000000000..2723c5ce67c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-035.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: wrappable ('pre-line') inline inside a 'white-space: pre' block</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/white-space-pre-031-ref.html">
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 16ch;
+ }
+
+ div#test
+ {
+ white-space: pre;
+ }
+
+ span
+ {
+ white-space: pre-line;
+ }
+
+ div#reference
+ {
+ white-space: normal;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="test">Lorem ips<span>um. Dolo</span>r
+ sit&Tab;amet.</div>
+
+ <div id="reference">Lorem ipsum. <br>
+Dolor<br>
+&nbsp;&nbsp;&nbsp;sit&nbsp;&nbsp;amet.</div>
+
+<!--
+
+ <div id="test">Lorem ipsum. Dolor
+ ^^^^^^
+ 123456
+
+ sit&Tab;amet.</div>
+^^^
+123
+
+
+Since 'tab-size' is by default 8,
+since "sit" uses 3 characters
+and since there are 3 preserved
+white space characters before "sit",
+
+ 8
+-
+ 3
+-
+ 3
+=====
+ 2
+
+then the horizontal tabulation will be converted
+into a sequence of 2 preserved white space characters.
+
+
+ &Tab; == Horizontal tabulation == &#x0009; == &#09;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-051.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-051.html
new file mode 100644
index 00000000000..b6879133cc3
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-051.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: inline starting with a collapsible white space</title>
+
+ <!--
+ Same as
+
+ http://test.csswg.org/suites/css-text-3_dev/nightly-unstable/html/white-space-mixed-003.htm
+
+ but more compact
+ -->
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-phase-2">
+ <link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+
+ <style>
+ div
+ {
+ background-color: red;
+ color: green;
+ float: left;
+ font-family: Ahem;
+ font-size: 50px;
+ line-height: 1;
+ }
+
+ span#pre
+ {
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+ <div><span id="pre">AB&NewLine;</span><span> CD</span></div>
+
+<!--
+
+ &NewLine; == Line feed == &#x000A; == &#0010;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-052.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-052.html
new file mode 100644
index 00000000000..a2f03ef50c0
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-052.html
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text: inline starting with a collapsible white space</title>
+
+ <!--
+ Same as
+
+ http://test.csswg.org/suites/css-text-3_dev/nightly-unstable/html/white-space-mixed-003.htm
+
+ but more compact
+ -->
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-phase-2">
+ <link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
+ <link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+
+ <style>
+ div
+ {
+ background-color: red;
+ color: green;
+ display: inline-block;
+ font-family: Ahem;
+ font-size: 50px;
+ line-height: 1;
+ }
+
+ span#pre
+ {
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if there is a filled green square and <strong>no red</strong>.
+
+ <div><span id="pre">AB&NewLine;</span><span> CD</span></div>
+
+<!--
+
+ &NewLine; == Line feed == &#x000A; == &#0010;
+
+-->
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-009.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-009.html
deleted file mode 100644
index fad383233b3..00000000000
--- a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-009.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!doctype html>
-<meta charset=utf-8>
-<title>CSS Text test: hanging trailing spaces with white-space:pre-wrap</title>
-<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com">
-<link rel="help" title="3. White Space and Wrapping: the white-space property" href="https://drafts.csswg.org/css-text-3/#white-space-property">
-<link rel="help" href="https://drafts.csswg.org/css-text-3/#valdef-white-space-pre-wrap">
-<link rel="help" title="4.1.3. Phase II: Trimming and Positioning" href="https://drafts.csswg.org/css-text-3/#white-space-phase-2">
-<link rel="help" title="5.5. Overflow Wrapping: the overflow-wrap/word-wrap property" href="https://drafts.csswg.org/css-text-3/#overflow-wrap-property">
-<link rel="help" href="https://drafts.csswg.org/css-text-3/#valdef-overflow-wrap-anywhere">
-<link rel="match" href="reference/white-space-pre-wrap-trailing-spaces-004-ref.html">
-<meta name="assert" content="Preserved white space at the end of a soft-wrapped line is hanged when white-space is pre-wrap.">
-<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
-<style>
-div {
- font: 10px/1 Ahem;
-}
-.ref {
- position: absolute;
- color: red;
- z-index: -1;
-}
-.ref span { color: green; }
-.test {
- color: green;
-
- width: 5ch;
- white-space: pre-wrap;
- overflow-wrap: anywhere;
-}
-</style>
-
-<p>This test passes if there is a green square and no red.
-<div class="ref">XX<span>XXX</span><br>X<span>XX</span>X<span>X</span><br><span>XXXXX</span><br><span>XXXXX</span><br><span>XXXXX</span></div>
-<div class="test">XX<span> </span><span>X X </span></div>
-
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-010.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-010.html
index ba0c5364884..55e2437198f 100644
--- a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-010.html
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-010.html
@@ -18,7 +18,7 @@ div {
width: 2ch;
white-space: pre-wrap;
- overflow-wrap: break-word;
+ word-break: break-all;
}
</style>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-011.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-011.html
index 00f97f03609..e54475ce44d 100644
--- a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-011.html
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-011.html
@@ -25,7 +25,7 @@ div {
width: 5ch;
white-space: pre-wrap;
- overflow-wrap: break-word;
+ word-break: break-all;
}
</style>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-001.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-001.html
new file mode 100644
index 00000000000..fb0de71551a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-001.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: inline' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-001-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: inline' is tested." name="assert">
+
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#wrapper, div#reference
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 4ch;
+ }
+
+ div#test
+ {
+ display: inline;
+ white-space: break-spaces;
+ }
+
+ div#reference
+ {
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="wrapper"><div id="test">123 8</div></div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+
+ <div id="reference">123
+ 8</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-002.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-002.html
new file mode 100644
index 00000000000..4777ccba8fb
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-002.html
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: block' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-001-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: block' is tested." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 4ch;
+ }
+
+ div#test
+ {
+ display: block;
+ white-space: break-spaces;
+ }
+
+ div#reference
+ {
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="test">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+
+ <div id="reference">123
+ 8</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-003.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-003.html
new file mode 100644
index 00000000000..14306d8a74e
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-003.html
@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: list-item' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-003-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: list-item' is tested." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#test, li#reference
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 4ch;
+ }
+
+ div#test
+ {
+ display: list-item;
+ margin-left: 40px;
+ white-space: break-spaces;
+ }
+
+ li#reference
+ {
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles (both preceded with a small filled disc) are laid out identically.
+
+ <div id="test">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+
+ <ul><li id="reference">123
+ 8</ul>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-005.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-005.html
new file mode 100644
index 00000000000..38974e00866
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-005.html
@@ -0,0 +1,77 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: inline-block' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-001-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: inline-block' is tested." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 4ch;
+ }
+
+ div#test
+ {
+ display: inline-block;
+ white-space: break-spaces;
+ }
+
+ div#reference
+ {
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="test">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+
+ <div id="reference">123
+ 8</div>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-006.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-006.html
new file mode 100644
index 00000000000..110feb52c96
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-006.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: table' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-006-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: table' is tested." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#test, table#reference
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 4ch;
+ }
+
+ div#test
+ {
+ display: table;
+ white-space: break-spaces;
+ }
+
+ div#row
+ {
+ display: table-row;
+ }
+
+ div#cell
+ {
+ display: table-cell;
+ }
+
+ table#reference
+ {
+ border-spacing: 0px;
+ white-space: pre;
+ }
+
+ td
+ {
+ padding: 0px;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="test">
+ <div id="row">
+ <div id="cell">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+ </div>
+ </div>
+
+ <table id="reference"><tr><td>123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-007.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-007.html
new file mode 100644
index 00000000000..6c99a930d00
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-007.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: inline-table' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-006-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: inline-table' is tested." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#test, table
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ margin-bottom: 0.25em;
+ width: 4ch;
+ }
+
+ div#test
+ {
+ display: inline-table;
+ white-space: break-spaces;
+ }
+
+ div#row
+ {
+ display: table-row;
+ }
+
+ div#cell
+ {
+ display: table-cell;
+ }
+
+ table#reference
+ {
+ border-spacing: 0px;
+ white-space: pre;
+ }
+
+ td
+ {
+ padding: 0px;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="test">
+ <div id="row">
+ <div id="cell">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+ </div>
+ </div>
+
+ <table id="reference"><tr><td>123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-008.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-008.html
new file mode 100644
index 00000000000..007c95a9a0d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-008.html
@@ -0,0 +1,105 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: table-row-group' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-006-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: table-row-group' is tested." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#cell, td#reference
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ width: 4ch;
+ }
+
+ div#table
+ {
+ display: table;
+ }
+
+ div#test
+ {
+ display: table-row-group;
+ white-space: break-spaces;
+ }
+
+ div#row
+ {
+ display: table-row;
+ }
+
+ div#cell
+ {
+ display: table-cell;
+ width: 4ch;
+ }
+
+ table
+ {
+ border-spacing: 0px;
+ margin-top: 0.5em;
+ }
+
+ td#reference
+ {
+ padding: 0px;
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="table">
+ <div id="test">
+ <div id="row">
+ <div id="cell">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+ </div>
+ </div>
+ </div>
+
+ <table><tbody><tr><td id="reference">123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-009.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-009.html
new file mode 100644
index 00000000000..6bd4dbb346f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-009.html
@@ -0,0 +1,105 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: table-header-group' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-006-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: table-header-group' is tested." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#cell, td#reference
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ width: 4ch;
+ }
+
+ div#table
+ {
+ display: table;
+ }
+
+ div#test
+ {
+ display: table-header-group;
+ white-space: break-spaces;
+ }
+
+ div#row
+ {
+ display: table-row;
+ }
+
+ div#cell
+ {
+ display: table-cell;
+ width: 4ch;
+ }
+
+ table
+ {
+ border-spacing: 0px;
+ margin-top: 0.5em;
+ }
+
+ td#reference
+ {
+ padding: 0px;
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="table">
+ <div id="test">
+ <div id="row">
+ <div id="cell">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+ </div>
+ </div>
+ </div>
+
+ <table><thead><tr><td id="reference">123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-010.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-010.html
new file mode 100644
index 00000000000..caf1e89eb9f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-010.html
@@ -0,0 +1,105 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: table-footer-group' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-006-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: table-footer-group' is tested." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#cell, td#reference
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ width: 4ch;
+ }
+
+ div#table
+ {
+ display: table;
+ }
+
+ div#test
+ {
+ display: table-footer-group;
+ white-space: break-spaces;
+ }
+
+ div#row
+ {
+ display: table-row;
+ }
+
+ div#cell
+ {
+ display: table-cell;
+ width: 4ch;
+ }
+
+ table
+ {
+ border-spacing: 0px;
+ margin-top: 0.5em;
+ }
+
+ td#reference
+ {
+ padding: 0px;
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="table">
+ <div id="test">
+ <div id="row">
+ <div id="cell">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+ </div>
+ </div>
+ </div>
+
+ <table><tfoot><tr><td id="reference">123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-011.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-011.html
new file mode 100644
index 00000000000..df43ab43a15
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-011.html
@@ -0,0 +1,98 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: table-row' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-006-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: table-row' is tested." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#cell, td#reference
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ width: 4ch;
+ }
+
+ div#table
+ {
+ display: table;
+ }
+
+ div#test
+ {
+ display: table-row;
+ white-space: break-spaces;
+ }
+
+ div#cell
+ {
+ display: table-cell;
+ width: 4ch;
+ }
+
+ table
+ {
+ border-spacing: 0px;
+ margin-top: 0.5em;
+ }
+
+ td#reference
+ {
+ padding: 0px;
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="table">
+ <div id="test">
+ <div id="cell">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+ </div>
+ </div>
+
+ <table><tr><td id="reference">123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-012.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-012.html
new file mode 100644
index 00000000000..540ce4a7e95
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-012.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' does not apply to 'display: table-column-group' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-012-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="In this test, we verify that 'white-space: break-spaces' does not apply to element with 'display: table-column-group'." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#cell, td#reference
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ width: 4ch;
+ }
+
+ div#table
+ {
+ display: table;
+ }
+
+ div#test
+ {
+ display: table-column-group;
+ white-space: break-spaces;
+ }
+
+ div#row
+ {
+ display: table-row;
+ }
+
+ div#cell
+ {
+ display: table-cell;
+ }
+
+ table
+ {
+ border-spacing: 0px;
+ margin-top: 0.5em;
+ }
+
+ td#reference
+ {
+ padding: 0px;
+ white-space: normal;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="table">
+ <div id="test"></div>
+ <div id="row">
+ <div id="cell">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+ </div>
+ </div>
+
+ <table><tr><td id="reference">123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-013.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-013.html
new file mode 100644
index 00000000000..5274bd7be27
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-013.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' does not apply to 'display: table-column' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-012-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="In this test, we verify that 'white-space: break-spaces' does not apply to element with 'display: table-column'." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#cell, td#reference
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ width: 4ch;
+ }
+
+ div#table
+ {
+ display: table;
+ }
+
+ div#test
+ {
+ display: table-column;
+ white-space: break-spaces;
+ }
+
+ div#row
+ {
+ display: table-row;
+ }
+
+ div#cell
+ {
+ display: table-cell;
+ }
+
+ table
+ {
+ border-spacing: 0px;
+ margin-top: 0.5em;
+ }
+
+ td#reference
+ {
+ padding: 0px;
+ white-space: normal;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="table">
+ <div id="test"></div>
+ <div id="row">
+ <div id="cell">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+ </div>
+ </div>
+
+ <table><tr><td id="reference">123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-014.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-014.html
new file mode 100644
index 00000000000..1454b3fcf53
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-014.html
@@ -0,0 +1,97 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: table-cell' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-006-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: table-cell' is tested." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#test, td#reference
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ width: 4ch;
+ }
+
+ div#table
+ {
+ display: table;
+ }
+
+ div#row
+ {
+ display: table-row;
+ }
+
+ div#test
+ {
+ display: table-cell;
+ white-space: break-spaces;
+ }
+
+ table
+ {
+ border-spacing: 0px;
+ margin-top: 0.5em;
+ }
+
+ td#reference
+ {
+ padding: 0px;
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="table">
+ <div id="row">
+ <div id="test">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+ </div>
+ </div>
+
+ <table><tr><td id="reference">123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-015.html b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-015.html
new file mode 100644
index 00000000000..b8634bbaef1
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-text/white-space/ws-break-spaces-applies-to-015.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+
+ <meta charset="UTF-8">
+
+ <title>CSS Text Test: 'white-space: break-spaces' applies to 'display: table-caption' element</title>
+
+ <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
+ <link rel="help" href="https://www.w3.org/TR/css-text-3/#white-space-property">
+ <link rel="match" href="reference/ws-break-spaces-applies-to-001-ref.html">
+
+ <meta content="" name="flags">
+ <meta content="When 'white-space' is 'break-spaces', then new lines, sequence of white spaces and tabs are preserved and text can wrap, just like pre-wrap, but sequence of preserved white space always takes up space, including at the end of the line and line breaking opportunity exists after every preserved white space character, including between white space characters. In this test, 'display: table-caption' is tested." name="assert">
+
+ <!--
+
+ Testing of 'white-space: break-spaces':
+
+ ws-break-spaces-applies-to-001: display: inline
+
+ ws-break-spaces-applies-to-002: display: block
+
+ ws-break-spaces-applies-to-003: display: list-item
+
+ ws-break-spaces-applies-to-005: display: inline-block
+
+ ws-break-spaces-applies-to-006: display: table
+
+ ws-break-spaces-applies-to-007: display: inline-table
+
+ ws-break-spaces-applies-to-008: display: table-row-group
+
+ ws-break-spaces-applies-to-009: display: table-header-group
+
+ ws-break-spaces-applies-to-010: display: table-footer-group
+
+ ws-break-spaces-applies-to-011: display: table-row
+
+ ws-break-spaces-applies-to-012: display: table-column-group
+
+ ws-break-spaces-applies-to-013: display: table-column
+
+ ws-break-spaces-applies-to-014: display: table-cell
+
+ ws-break-spaces-applies-to-015: display: table-caption
+
+ -->
+
+ <style>
+ div#test, caption#reference
+ {
+ border: black solid 2px;
+ font-family: monospace;
+ font-size: 32px;
+ width: 4ch;
+ }
+
+ div#table
+ {
+ display: table;
+ }
+
+ div#test
+ {
+ display: table-caption;
+ white-space: break-spaces;
+ }
+
+ table
+ {
+ margin-top: 0.5em;
+ }
+
+ caption#reference
+ {
+ text-align: left;
+ white-space: pre;
+ }
+ </style>
+
+ <p>Test passes if the characters inside of each black-bordered rectangles are laid out identically.
+
+ <div id="table">
+ <div id="test">123 8</div>
+ <!-- 45678 -->
+ <!-- will wrap here ^ -->
+ </div>
+
+ <table><caption id="reference">123
+ 8</table>
diff --git a/tests/wpt/web-platform-tests/css/cssom-view/MediaQueryList-addListener-handleEvent.html b/tests/wpt/web-platform-tests/css/cssom-view/MediaQueryList-addListener-handleEvent.html
index 30c8cf2de55..43b144a9ae2 100644
--- a/tests/wpt/web-platform-tests/css/cssom-view/MediaQueryList-addListener-handleEvent.html
+++ b/tests/wpt/web-platform-tests/css/cssom-view/MediaQueryList-addListener-handleEvent.html
@@ -72,21 +72,26 @@ promise_test(async t => {
}, "doesn't look up handleEvent method on callable event listeners");
const uncaught_error_test = async (t, mql, getHandleEvent) => {
+ const eventWatcher = new EventWatcher(t, window, "error", waitForChangesReported);
+ const errorPromise = eventWatcher.wait_for("error");
+
let calls = 0;
- mql.addListener({
+ const listener = {
get handleEvent() {
calls++;
return getHandleEvent();
},
- });
+ };
- const eventWatcher = new EventWatcher(t, window, "error", waitForChangesReported);
- const errorPromise = eventWatcher.wait_for("error");
- triggerMQLEvent(mql);
+ try {
+ mql.addListener(listener);
+ triggerMQLEvent(mql);
- const event = await errorPromise;
- assert_equals(calls, 1, "handleEvent property was not looked up");
- throw event.error;
+ const event = await errorPromise;
+ throw event.error;
+ } finally {
+ assert_equals(calls, 1, "handleEvent property was not looked up");
+ }
};
promise_test(async t => {
diff --git a/tests/wpt/web-platform-tests/dom/nodes/Node-lookupNamespaceURI.html b/tests/wpt/web-platform-tests/dom/nodes/Node-lookupNamespaceURI.html
index f5401e54723..74c1ac8bd75 100644
--- a/tests/wpt/web-platform-tests/dom/nodes/Node-lookupNamespaceURI.html
+++ b/tests/wpt/web-platform-tests/dom/nodes/Node-lookupNamespaceURI.html
@@ -33,7 +33,7 @@ isDefaultNamespace(frag, 'foo', false, 'DocumentFragment is in default namespace
isDefaultNamespace(frag, 'xmlns', false, 'DocumentFragment is in default namespace, prefix "xmlns"');
var docType = document.doctype;
-lookupNamespaceURI(docType, null, null, 'DocumentType should have null nemspace, prefix null');
+lookupNamespaceURI(docType, null, null, 'DocumentType should have null namespace, prefix null');
lookupNamespaceURI(docType, '', null, 'DocumentType should have null namespace, prefix ""');
lookupNamespaceURI(docType, 'foo', null, 'DocumentType should have null namespace, prefix "foo"');
lookupNamespaceURI(docType, 'xmlns', null, 'DocumentType should have null namespace, prefix "xmlns"');
diff --git a/tests/wpt/web-platform-tests/domxpath/callback-interface.html b/tests/wpt/web-platform-tests/domxpath/callback-interface.html
new file mode 100644
index 00000000000..4596814c34d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/domxpath/callback-interface.html
@@ -0,0 +1,147 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>XPathNSResolver implements callback interface</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<link rel="help" href="https://heycam.github.io/webidl/#call-a-user-objects-operation">
+<div id=log></div>
+<script>
+"use strict";
+setup({ allow_uncaught_exception: true });
+
+test(() => {
+ let resolverCalls = 0;
+ document.evaluate("/foo:bar", document.documentElement, () => {
+ resolverCalls++;
+ return "";
+ });
+
+ assert_equals(resolverCalls, 1);
+}, "callable resolver");
+
+test(() => {
+ let resolverCalls = 0;
+ const resolver = () => {
+ resolverCalls++;
+ return "";
+ };
+
+ document.evaluate("/foo:bar", document.documentElement, resolver);
+ document.evaluate("/foo:bar", document.documentElement, resolver);
+
+ assert_equals(resolverCalls, 2);
+}, "callable resolver: result is not cached");
+
+const uncaught_error_test = async (t, resolver) => {
+ const timeout = () => {
+ return new Promise(resolve => {
+ t.step_timeout(resolve, 0);
+ });
+ };
+
+ const eventWatcher = new EventWatcher(t, window, "error", timeout);
+ const errorPromise = eventWatcher.wait_for("error");
+
+ assert_throws_dom("NAMESPACE_ERR", () => {
+ document.evaluate("/foo:bar", document.documentElement, resolver);
+ });
+
+ const event = await errorPromise;
+ throw event.error;
+};
+
+promise_test(t => {
+ const testError = { name: "test" };
+ const resolver = () => {
+ throw testError;
+ };
+
+ return promise_rejects_exactly(t, testError,
+ uncaught_error_test(t, resolver)
+ );
+}, "callable resolver: abrupt completion from Call");
+
+test(() => {
+ let resolverCalls = 0;
+ const resolver = () => {
+ resolverCalls++;
+ return "";
+ };
+
+ let resolverGets = 0;
+ Object.defineProperty(resolver, "lookupNamespaceURI", {
+ get() {
+ resolverGets++;
+ },
+ });
+
+ document.evaluate("/foo:bar", document.documentElement, resolver);
+
+ assert_equals(resolverCalls, 1);
+ assert_equals(resolverGets, 0);
+}, "callable resolver: no 'lookupNamespaceURI' lookups");
+
+test(() => {
+ let resolverCalls = 0;
+ document.evaluate("/foo:bar", document.documentElement, {
+ lookupNamespaceURI() {
+ resolverCalls++;
+ return "";
+ },
+ });
+
+ assert_equals(resolverCalls, 1);
+}, "object resolver");
+
+test(() => {
+ let resolverCalls = 0;
+ const lookupNamespaceURI = () => {
+ resolverCalls++;
+ return "";
+ };
+
+ let resolverGets = 0;
+ const resolver = {
+ get lookupNamespaceURI() {
+ resolverGets++;
+ return lookupNamespaceURI;
+ },
+ };
+
+ document.evaluate("/foo:bar", document.documentElement, resolver);
+ document.evaluate("/foo:bar", document.documentElement, resolver);
+
+ assert_equals(resolverCalls, 2);
+ assert_equals(resolverGets, 2);
+}, "object resolver: 'lookupNamespaceURI' is not cached");
+
+promise_test(t => {
+ const testError = { name: "test" };
+ const resolver = {
+ get lookupNamespaceURI() {
+ throw testError;
+ },
+ };
+
+ return promise_rejects_exactly(t, testError,
+ uncaught_error_test(t, resolver)
+ );
+}, "object resolver: abrupt completion from Get");
+
+promise_test(t => {
+ const resolver = {
+ lookupNamespaceURI: {},
+ };
+
+ return promise_rejects_js(t, TypeError,
+ uncaught_error_test(t, resolver)
+ );
+}, "object resolver: 'lookupNamespaceURI' is thruthy and not callable");
+
+promise_test(t => {
+ return promise_rejects_js(t, TypeError,
+ uncaught_error_test(t, {})
+ );
+}, "object resolver: 'lookupNamespaceURI' is falsy and not callable");
+</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/encoding/encodeInto.any.js b/tests/wpt/web-platform-tests/encoding/encodeInto.any.js
index 7e18c812499..eca0e1bca15 100644
--- a/tests/wpt/web-platform-tests/encoding/encodeInto.any.js
+++ b/tests/wpt/web-platform-tests/encoding/encodeInto.any.js
@@ -1,3 +1,6 @@
+// META: global=window,worker
+// META: script=/common/sab.js
+
[
{
"input": "Hi",
@@ -77,15 +80,15 @@
["ArrayBuffer", "SharedArrayBuffer"].forEach(arrayBufferOrSharedArrayBuffer => {
test(() => {
// Setup
- const bufferLength = testData.destinationLength + destinationData.bufferIncrease,
- destinationOffset = destinationData.destinationOffset,
- destinationLength = testData.destinationLength,
- destinationFiller = destinationData.filler,
- encoder = new TextEncoder(),
- buffer = new self[arrayBufferOrSharedArrayBuffer](bufferLength),
- view = new Uint8Array(buffer, destinationOffset, destinationLength),
- fullView = new Uint8Array(buffer),
- control = new Array(bufferLength);
+ const bufferLength = testData.destinationLength + destinationData.bufferIncrease;
+ const destinationOffset = destinationData.destinationOffset;
+ const destinationLength = testData.destinationLength;
+ const destinationFiller = destinationData.filler;
+ const encoder = new TextEncoder();
+ const buffer = createBuffer(arrayBufferOrSharedArrayBuffer, bufferLength);
+ const view = new Uint8Array(buffer, destinationOffset, destinationLength);
+ const fullView = new Uint8Array(buffer);
+ const control = new Array(bufferLength);
let byte = destinationFiller;
for (let i = 0; i < bufferLength; i++) {
if (destinationFiller === "random") {
@@ -128,19 +131,17 @@
Float64Array].forEach(view => {
["ArrayBuffer", "SharedArrayBuffer"].forEach((arrayBufferOrSharedArrayBuffer) => {
test(() => {
- assert_throws_js(TypeError, () => new TextEncoder().encodeInto("", new view(new self[arrayBufferOrSharedArrayBuffer](0))));
+ assert_throws_js(TypeError, () => new TextEncoder().encodeInto("", new view(createBuffer(arrayBufferOrSharedArrayBuffer, 0))));
}, "Invalid encodeInto() destination: " + view.name + ", backed by: " + arrayBufferOrSharedArrayBuffer);
});
});
["ArrayBuffer", "SharedArrayBuffer"].forEach((arrayBufferOrSharedArrayBuffer) => {
test(() => {
- assert_throws_js(TypeError, () => new TextEncoder().encodeInto("", new self[arrayBufferOrSharedArrayBuffer](10)));
+ assert_throws_js(TypeError, () => new TextEncoder().encodeInto("", createBuffer(arrayBufferOrSharedArrayBuffer, 10)));
}, "Invalid encodeInto() destination: " + arrayBufferOrSharedArrayBuffer);
});
-
-
test(() => {
const buffer = new ArrayBuffer(10),
view = new Uint8Array(buffer);
diff --git a/tests/wpt/web-platform-tests/encoding/streams/decode-utf8.any.js b/tests/wpt/web-platform-tests/encoding/streams/decode-utf8.any.js
index 421b98c2eea..5abd8dcb8f9 100644
--- a/tests/wpt/web-platform-tests/encoding/streams/decode-utf8.any.js
+++ b/tests/wpt/web-platform-tests/encoding/streams/decode-utf8.any.js
@@ -1,15 +1,14 @@
-// META: global=worker
+// META: global=window,worker
// META: script=resources/readable-stream-from-array.js
// META: script=resources/readable-stream-to-array.js
-
+// META: script=/common/sab.js
'use strict';
["ArrayBuffer", "SharedArrayBuffer"].forEach((arrayBufferOrSharedArrayBuffer) => {
- const inputChunkData = [73, 32, 240, 159, 146, 153, 32, 115, 116,
- 114, 101, 97, 109, 115]
+ const inputChunkData = [73, 32, 240, 159, 146, 153, 32, 115, 116, 114, 101, 97, 109, 115];
- const emptyChunk = new Uint8Array(new self[arrayBufferOrSharedArrayBuffer](0));
- const inputChunk = new Uint8Array(new self[arrayBufferOrSharedArrayBuffer](inputChunkData.length));
+ const emptyChunk = new Uint8Array(createBuffer(arrayBufferOrSharedArrayBuffer, 0));
+ const inputChunk = new Uint8Array(createBuffer(arrayBufferOrSharedArrayBuffer, inputChunkData.length));
inputChunk.set(inputChunkData);
diff --git a/tests/wpt/web-platform-tests/encoding/textdecoder-copy.any.js b/tests/wpt/web-platform-tests/encoding/textdecoder-copy.any.js
index 6ae65119db6..61de4142bf2 100644
--- a/tests/wpt/web-platform-tests/encoding/textdecoder-copy.any.js
+++ b/tests/wpt/web-platform-tests/encoding/textdecoder-copy.any.js
@@ -1,10 +1,13 @@
+// META: global=window,worker
+// META: script=/common/sab.js
+
["ArrayBuffer", "SharedArrayBuffer"].forEach(arrayBufferOrSharedArrayBuffer => {
test(() => {
- const buf = new self[arrayBufferOrSharedArrayBuffer](2),
- view = new Uint8Array(buf),
- buf2 = new self[arrayBufferOrSharedArrayBuffer](2),
- view2 = new Uint8Array(buf2),
- decoder = new TextDecoder("utf-8");
+ const buf = createBuffer(arrayBufferOrSharedArrayBuffer, 2);
+ const view = new Uint8Array(buf);
+ const buf2 = createBuffer(arrayBufferOrSharedArrayBuffer, 2);
+ const view2 = new Uint8Array(buf2);
+ const decoder = new TextDecoder("utf-8");
view[0] = 0xEF;
view[1] = 0xBB;
view2[0] = 0xBF;
diff --git a/tests/wpt/web-platform-tests/encoding/textdecoder-streaming.any.js b/tests/wpt/web-platform-tests/encoding/textdecoder-streaming.any.js
index e0c59472598..5717c2dbe00 100644
--- a/tests/wpt/web-platform-tests/encoding/textdecoder-streaming.any.js
+++ b/tests/wpt/web-platform-tests/encoding/textdecoder-streaming.any.js
@@ -1,5 +1,7 @@
// META: title=Encoding API: Streaming decode
+// META: global=window,worker
// META: script=resources/encodings.js
+// META: script=/common/sab.js
var string = '\x00123ABCabc\x80\xFF\u0100\u1000\uFFFD\uD800\uDC00\uDBFF\uDFFF';
var octets = {
@@ -28,7 +30,7 @@ var octets = {
var sub = [];
for (var j = i; j < encoded.length && j < i + len; ++j)
sub.push(encoded[j]);
- var uintArray = new Uint8Array(new self[arrayBufferOrSharedArrayBuffer](sub.length));
+ var uintArray = new Uint8Array(createBuffer(arrayBufferOrSharedArrayBuffer, sub.length));
uintArray.set(sub);
out += decoder.decode(uintArray, {stream: true});
}
diff --git a/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js b/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js
index 35098892020..0db16fd6f70 100644
--- a/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js
+++ b/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/no-coop-coep.https.any.js
@@ -1,18 +1,29 @@
+// META: global=window,worker
+
+test(() => {
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ assert_equals(globalThis.SharedArrayBuffer, undefined);
+ assert_false("SharedArrayBuffer" in globalThis);
+}, "SharedArrayBuffer constructor does not exist without COOP+COEP");
+
test(() => {
- const sab = new SharedArrayBuffer();
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const sab = new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
const channel = new MessageChannel();
assert_throws_dom("DataCloneError", () => channel.port1.postMessage(sab));
}, "SharedArrayBuffer over MessageChannel without COOP+COEP");
test(() => {
- const sab = new SharedArrayBuffer();
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const sab = new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
const channel = new BroadcastChannel("Is mir egal");
assert_throws_dom("DataCloneError", () => channel.postMessage(sab));
}, "SharedArrayBuffer over BroadcastChannel without COOP+COEP");
if (self.GLOBAL.isWindow()) {
test(() => {
- const sab = new SharedArrayBuffer();
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const sab = new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
assert_throws_dom("DataCloneError", () => self.postMessage(sab));
}, "SharedArrayBuffer over postMessage() without COOP+COEP");
}
diff --git a/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-idb.any.js b/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-idb.any.js
index 0202ec39ac6..2917013ee25 100644
--- a/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-idb.any.js
+++ b/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-idb.any.js
@@ -7,9 +7,11 @@ async_test(t => {
openReq.onupgradeneeded = e => {
const db = e.target.result;
const store = db.createObjectStore("store", { keyPath: "key" });
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const sab = new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
assert_throws_dom("DataCloneError", () => {
- store.put({ key: 1, property: new SharedArrayBuffer() });
+ store.put({ key: 1, property: sab });
});
t.done();
};
@@ -21,6 +23,8 @@ async_test(t => {
openReq.onupgradeneeded = e => {
const db = e.target.result;
const store = db.createObjectStore("store", { keyPath: "key" });
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const sab = new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
let getter1Called = false;
let getter2Called = false;
@@ -28,7 +32,7 @@ async_test(t => {
assert_throws_dom("DataCloneError", () => {
store.put({ key: 1, property: [
{ get x() { getter1Called = true; return 5; } },
- new SharedArrayBuffer(),
+ sab,
{ get x() { getter2Called = true; return 5; } }
]});
});
diff --git a/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-notifications-api.any.js b/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-notifications-api.any.js
index ce643e8a7cb..4c1c1fdabb2 100644
--- a/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-notifications-api.any.js
+++ b/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/serialization-via-notifications-api.any.js
@@ -2,18 +2,23 @@
test(() => {
assert_throws_dom("DataCloneError", () => {
- new Notification("Bob: Hi", { data: new SharedArrayBuffer() });
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const sab = new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
+ new Notification("Bob: Hi", { data: sab });
})
}, "SharedArrayBuffer cloning via the Notifications API's data member: basic case");
test(() => {
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const sab = new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
+
let getter1Called = false;
let getter2Called = false;
assert_throws_dom("DataCloneError", () => {
new Notification("Bob: Hi", { data: [
{ get x() { getter1Called = true; return 5; } },
- new SharedArrayBuffer(),
+ sab,
{ get x() { getter2Called = true; return 5; } }
]});
});
diff --git a/tests/wpt/web-platform-tests/html/user-activation/activation-hierarchy-crossorigin-parent-manual.sub.html b/tests/wpt/web-platform-tests/html/user-activation/activation-hierarchy-crossorigin-parent-manual.sub.html
deleted file mode 100644
index 601b9003f7e..00000000000
--- a/tests/wpt/web-platform-tests/html/user-activation/activation-hierarchy-crossorigin-parent-manual.sub.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-</head>
-<body>
- <h1>User activation visibility across cross-origin frame boundary</h1>
- <h2>Confirms that the state is visible in parent and not in child</h2>
- <ol id="instructions">
- <li>Click anywhere on the green area (child frame).
- </ol>
- <iframe id="child" width="400" height="400"></iframe>
- <script>
- async_test(function(t) {
- assert_false(navigator.userActivation.isActive);
- assert_false(navigator.userActivation.hasBeenActive);
-
- let child = document.getElementById("child");
-
- window.addEventListener("message", t.step_func(event => {
- if (event.source === frames[0].frames[0] && event.data === 'checked') {
- // Parent should be active after child is clicked.
- assert_true(navigator.userActivation.isActive);
- assert_true(navigator.userActivation.hasBeenActive);
- t.done();
- }
- }));
- child.src = "http://{{domains[www1]}}:{{ports[http][0]}}/html/user-activation/resources/activation-hierarchy-crossorigin-child.sub.html";
- }, "Parent test");
- </script>
-</body>
-</html>
diff --git a/tests/wpt/web-platform-tests/html/user-activation/activation-hierarchy-sameorigin-parent-manual.html b/tests/wpt/web-platform-tests/html/user-activation/activation-hierarchy-sameorigin-parent-manual.html
deleted file mode 100644
index a7f423eea56..00000000000
--- a/tests/wpt/web-platform-tests/html/user-activation/activation-hierarchy-sameorigin-parent-manual.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="/resources/testdriver.js"></script>
-<script src="/resources/testdriver-vendor.js"></script>
-</head>
-<body>
- <h1>User activation visibility across same-origin frame boundary</h1>
- <h2>Confirms that the state is visible in both parent and child</h2>
- <ol id="instructions">
- <li>Click anywhere on the green area (child frame).
- </ol>
- <iframe id="child" width="400" height="400"></iframe>
- <script>
- async_test(function(t) {
- assert_false(navigator.userActivation.isActive);
- assert_false(navigator.userActivation.hasBeenActive);
-
- let child = document.getElementById("child");
-
- window.addEventListener("message", t.step_func(event => {
- if (event.source === frames[0].frames[0] && event.data === 'checked') {
- // Parent should be active after child is clicked.
- assert_true(navigator.userActivation.isActive);
- assert_true(navigator.userActivation.hasBeenActive);
- t.done();
- }
- }));
- child.src = "resources/activation-hierarchy-sameorigin-child.html";
- }, "Parent test");
- </script>
-</body>
-</html>
diff --git a/tests/wpt/web-platform-tests/html/user-activation/propagation-crossorigin.sub.tentative.html b/tests/wpt/web-platform-tests/html/user-activation/propagation-crossorigin.sub.tentative.html
new file mode 100644
index 00000000000..a2f578f53b9
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/user-activation/propagation-crossorigin.sub.tentative.html
@@ -0,0 +1,127 @@
+<!DOCTYPE html>
+<!--
+ Tentative due to:
+ https://github.com/whatwg/html/issues/1983
+-->
+<html>
+<head>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/resources/testdriver.js"></script>
+ <script src="/resources/testdriver-vendor.js"></script>
+ <script>
+ // Frame layout:
+ // top=origin0:this-file [
+ // child1=origin1:child-one.html,
+ // child-xo=origin2:propagation-crossorigin-child.html [
+ // gchild=origin3:child-two.html
+ // ]
+ // ]
+ let test_parent_initial = async_test("Parent frame initial state");
+ let test_parent_final = async_test("Parent frame final state");
+
+ let test_child1_initial = async_test("Child1 frame initial state");
+ let test_child1_final = async_test("Child1 frame final state");
+
+ let test_child_xo_initial = async_test("Child2 frame initial state");
+ let test_child_xo_final = async_test("Child2 frame final state");
+
+ let test_gchild_initial = async_test("Grandchild frame initial state");
+ let test_gchild_final = async_test("Grand child frame final state");
+
+ let num_children_to_load = 3;
+ let num_children_to_report = 3;
+
+ function finishLoadPhase() {
+ test_parent_initial.step(() => {
+ assert_true(num_children_to_load == 0);
+ assert_false(navigator.userActivation.isActive);
+ assert_false(navigator.userActivation.hasBeenActive);
+ });
+ test_parent_initial.done();
+
+ test_driver.click(document.getElementById("child-xo"));
+ }
+
+ function finishReportPhase() {
+ test_parent_final.step(() => {
+ assert_true(num_children_to_report == 0);
+ assert_true(navigator.userActivation.isActive);
+ assert_true(navigator.userActivation.hasBeenActive);
+ });
+ test_parent_final.done();
+ // End of all tests.
+ }
+
+ window.addEventListener("message", event => {
+ var msg = JSON.parse(event.data);
+
+ if (msg.type == 'child-one-loaded') {
+ test_child1_initial.step(() => {
+ assert_false(msg.isActive);
+ assert_false(msg.hasBeenActive);
+ });
+ test_child1_initial.done();
+ } else if (msg.type == 'child-crossorigin-loaded') {
+ test_child_xo_initial.step(() => {
+ assert_false(msg.isActive);
+ assert_false(msg.hasBeenActive);
+ });
+ test_child_xo_initial.done();
+ } else if (msg.type == 'child-two-loaded') {
+ test_gchild_initial.step(() => {
+ assert_false(msg.isActive);
+ assert_false(msg.hasBeenActive);
+ });
+ test_gchild_initial.done();
+ } else if (msg.type == 'child-one-report') {
+ test_child1_final.step(() => {
+ assert_false(msg.isActive);
+ assert_false(msg.hasBeenActive);
+ });
+ test_child1_final.done();
+ } else if (msg.type == 'child-crossorigin-report') {
+ // This msg was triggered by a user click.
+ test_child_xo_final.step(() => {
+ assert_true(msg.isActive);
+ assert_true(msg.hasBeenActive);
+ });
+ test_child_xo_final.done();
+
+ // Ask remaining frames to report states.
+ let ask_report = JSON.stringify({"type": "report"});
+ frames[0].postMessage(ask_report, "*");
+ frames[1].frames[0].postMessage(ask_report, "*");
+ } else if (msg.type == 'child-two-report') {
+ test_gchild_final.step(() => {
+ assert_false(msg.isActive);
+ assert_false(msg.hasBeenActive);
+ });
+ test_gchild_final.done();
+ }
+
+ // Phase switching.
+ if (msg.type.endsWith("-loaded")) {
+ if (--num_children_to_load == 0)
+ finishLoadPhase();
+ } else if (msg.type.endsWith("-report")) {
+ if (--num_children_to_report == 0)
+ finishReportPhase();
+ }
+ });
+ </script>
+</head>
+<body>
+ <h1>User activation propagation across cross-origin frame boundary</h1>
+ <p>Tests that user activation does not propagate across cross-origin frame boundary.</p>
+ <ol id="instructions">
+ <li>Click anywhere on the green area (child frame).
+ </ol>
+ <iframe id="child1" width="300px" height="40px"
+ src="http://{{domains[www1]}}:{{ports[http][0]}}/html/user-activation/resources/child-one.html">
+ </iframe>
+ <iframe id="child-xo" width="300px" height="140px"
+ src="http://{{domains[www2]}}:{{ports[http][0]}}/html/user-activation/resources/propagation-crossorigin-child.sub.html">
+ </iframe>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/html/user-activation/propagation-sameorigin.tentative.html b/tests/wpt/web-platform-tests/html/user-activation/propagation-sameorigin.tentative.html
new file mode 100644
index 00000000000..76d2b68fa70
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/user-activation/propagation-sameorigin.tentative.html
@@ -0,0 +1,127 @@
+<!DOCTYPE html>
+<!--
+ Tentative due to:
+ https://github.com/whatwg/html/issues/1983
+-->
+<html>
+<head>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/resources/testdriver.js"></script>
+ <script src="/resources/testdriver-vendor.js"></script>
+ <script>
+ // Frame layout:
+ // top=this-file [
+ // child1=child-one.html,
+ // child-so=propagation-sameorigin-child.html [
+ // gchild=child-two.html
+ // ]
+ // ]
+ let test_parent_initial = async_test("Parent frame initial state");
+ let test_parent_final = async_test("Parent frame final state");
+
+ let test_child1_initial = async_test("Child1 frame initial state");
+ let test_child1_final = async_test("Child1 frame final state");
+
+ let test_child_so_initial = async_test("Child2 frame initial state");
+ let test_child_so_final = async_test("Child2 frame final state");
+
+ let test_gchild_initial = async_test("Grandchild frame initial state");
+ let test_gchild_final = async_test("Grand child frame final state");
+
+ let num_children_to_load = 3;
+ let num_children_to_report = 3;
+
+ function finishLoadPhase() {
+ test_parent_initial.step(() => {
+ assert_true(num_children_to_load == 0);
+ assert_false(navigator.userActivation.isActive);
+ assert_false(navigator.userActivation.hasBeenActive);
+ });
+ test_parent_initial.done();
+
+ test_driver.click(document.getElementById("child-so"));
+ }
+
+ function finishReportPhase() {
+ test_parent_final.step(() => {
+ assert_true(num_children_to_report == 0);
+ assert_true(navigator.userActivation.isActive);
+ assert_true(navigator.userActivation.hasBeenActive);
+ });
+ test_parent_final.done();
+ // End of all tests.
+ }
+
+ window.addEventListener("message", event => {
+ var msg = JSON.parse(event.data);
+
+ if (msg.type == 'child-one-loaded') {
+ test_child1_initial.step(() => {
+ assert_false(msg.isActive);
+ assert_false(msg.hasBeenActive);
+ });
+ test_child1_initial.done();
+ } else if (msg.type == 'child-sameorigin-loaded') {
+ test_child_so_initial.step(() => {
+ assert_false(msg.isActive);
+ assert_false(msg.hasBeenActive);
+ });
+ test_child_so_initial.done();
+ } else if (msg.type == 'child-two-loaded') {
+ test_gchild_initial.step(() => {
+ assert_false(msg.isActive);
+ assert_false(msg.hasBeenActive);
+ });
+ test_gchild_initial.done();
+ } else if (msg.type == 'child-one-report') {
+ test_child1_final.step(() => {
+ assert_true(msg.isActive);
+ assert_true(msg.hasBeenActive);
+ });
+ test_child1_final.done();
+ } else if (msg.type == 'child-sameorigin-report') {
+ // This msg was triggered by a user click.
+ test_child_so_final.step(() => {
+ assert_true(msg.isActive);
+ assert_true(msg.hasBeenActive);
+ });
+ test_child_so_final.done();
+
+ // Ask remaining frames to report states.
+ let ask_report = JSON.stringify({"type": "report"});
+ frames[0].postMessage(ask_report, "*");
+ frames[1].frames[0].postMessage(ask_report, "*");
+ } else if (msg.type == 'child-two-report') {
+ test_gchild_final.step(() => {
+ assert_true(msg.isActive);
+ assert_true(msg.hasBeenActive);
+ });
+ test_gchild_final.done();
+ }
+
+ // Phase switching.
+ if (msg.type.endsWith("-loaded")) {
+ if (--num_children_to_load == 0)
+ finishLoadPhase();
+ } else if (msg.type.endsWith("-report")) {
+ if (--num_children_to_report == 0)
+ finishReportPhase();
+ }
+ });
+ </script>
+</head>
+<body>
+ <h1>User activation propagation across same-origin frame boundary</h1>
+ <p>Tests that user activation propagates across same-origin frame boundary.</p>
+ <ol id="instructions">
+ <li>Click anywhere on the green area (child frame).
+ </ol>
+ <iframe id="child1" width="300px" height="40px"
+ src="resources/child-one.html">
+ </iframe>
+ <iframe id="child-so" width="300px" height="140px"
+ src="resources/propagation-sameorigin-child.html">
+ </iframe>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-crossorigin-child.sub.html b/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-crossorigin-child.sub.html
deleted file mode 100644
index 6dbd4683044..00000000000
--- a/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-crossorigin-child.sub.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-</head>
-<body style="background: lightgreen;">
- <h1>Child frame</h1>
- <iframe id="grandchild" width="350" height="200"></iframe>
- <script>
- async_test(function(t) {
- assert_false(navigator.userActivation.isActive);
- assert_false(navigator.userActivation.hasBeenActive);
-
- var grandchild = document.getElementById("grandchild");
-
- window.addEventListener("click", t.step_func(event => {
- // Child should be active when clicked.
- assert_true(navigator.userActivation.isActive);
- assert_true(navigator.userActivation.hasBeenActive);
-
- // Ask grandchild to check its state (and notify top frame).
- grandchild.contentWindow.postMessage('check-request', '*');
-
- t.done();
- }));
-
- grandchild.src = "http://{{domains[www2]}}:{{ports[http][0]}}/html/user-activation/resources/activation-hierarchy-crossorigin-grandchild.html";
- }, "Child test");
- </script>
-</body>
-</html>
diff --git a/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-crossorigin-grandchild.html b/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-crossorigin-grandchild.html
deleted file mode 100644
index b9fe19a746f..00000000000
--- a/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-crossorigin-grandchild.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html>
-<head>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-</head>
-<body style="background: lightgrey;">
- <h1>Grandchild frame</h1>
- <script>
- async_test(function(t) {
- assert_false(navigator.userActivation.isActive);
- assert_false(navigator.userActivation.hasBeenActive);
-
- window.addEventListener("message", event => {
- if (event.source === parent && event.data === 'check-request') {
- // Grandchild shouldn't be active after child is clicked.
- assert_false(navigator.userActivation.isActive);
- assert_false(navigator.userActivation.hasBeenActive);
-
- // Notify top frame that checks are done.
- parent.parent.postMessage('checked', '*');
-
- t.done();
- }
- });
-
- }, "Grandchild test");
- </script>
-</body>
diff --git a/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-sameorigin-child.html b/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-sameorigin-child.html
deleted file mode 100644
index d54c7efc9bd..00000000000
--- a/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-sameorigin-child.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-</head>
-<body style="background: lightgreen;">
- <h1>Child frame</h1>
- <iframe id="grandchild" width="350" height="200"></iframe>
- <script>
- async_test(function(t) {
- assert_false(navigator.userActivation.isActive);
- assert_false(navigator.userActivation.hasBeenActive);
-
- var grandchild = document.getElementById("grandchild");
-
- window.addEventListener("click", t.step_func(event => {
- // Child should be active when clicked.
- assert_true(navigator.userActivation.isActive);
- assert_true(navigator.userActivation.hasBeenActive);
-
- // Ask grandchild to check its state (and notify top frame).
- grandchild.contentWindow.postMessage('check-request', '*');
-
- t.done();
- }));
-
- grandchild.src = "activation-hierarchy-sameorigin-grandchild.html";
- }, "Child test");
- </script>
-</body>
-</html>
diff --git a/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-sameorigin-grandchild.html b/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-sameorigin-grandchild.html
deleted file mode 100644
index 9d664e2356a..00000000000
--- a/tests/wpt/web-platform-tests/html/user-activation/resources/activation-hierarchy-sameorigin-grandchild.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html>
-<head>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-</head>
-<body style="background: lightgrey;">
- <h1>Grandchild frame</h1>
- <script>
- async_test(function(t) {
- assert_false(navigator.userActivation.isActive);
- assert_false(navigator.userActivation.hasBeenActive);
-
- window.addEventListener("message", event => {
- if (event.source === parent && event.data === 'check-request') {
- // Grandchild shouldn't be active after child is clicked.
- assert_true(navigator.userActivation.isActive);
- assert_true(navigator.userActivation.hasBeenActive);
-
- // Notify top frame that checks are done.
- parent.parent.postMessage('checked', '*');
-
- t.done();
- }
- });
-
- }, "Grandchild test");
- </script>
-</body>
diff --git a/tests/wpt/web-platform-tests/html/user-activation/resources/child-two.html b/tests/wpt/web-platform-tests/html/user-activation/resources/child-two.html
index dc50742051f..caf23f4dadd 100644
--- a/tests/wpt/web-platform-tests/html/user-activation/resources/child-two.html
+++ b/tests/wpt/web-platform-tests/html/user-activation/resources/child-two.html
@@ -8,7 +8,8 @@
}), "*");
window.addEventListener("message", event => {
- if (event.data == "report") {
+ var msg = JSON.parse(event.data);
+ if (msg.type == "report") {
window.top.postMessage(JSON.stringify({
"type": "child-two-report",
"isActive": navigator.userActivation.isActive,
diff --git a/tests/wpt/web-platform-tests/html/user-activation/resources/propagation-crossorigin-child.sub.html b/tests/wpt/web-platform-tests/html/user-activation/resources/propagation-crossorigin-child.sub.html
new file mode 100644
index 00000000000..3cdd6886da2
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/user-activation/resources/propagation-crossorigin-child.sub.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <script>
+ window.top.postMessage(JSON.stringify({
+ "type": "child-crossorigin-loaded",
+ "isActive": navigator.userActivation.isActive,
+ "hasBeenActive": navigator.userActivation.hasBeenActive
+ }), "*");
+
+ window.addEventListener("click", event => {
+ window.top.postMessage(JSON.stringify({
+ "type": "child-crossorigin-report",
+ "isActive": navigator.userActivation.isActive,
+ "hasBeenActive": navigator.userActivation.hasBeenActive
+ }), "*");
+ });
+ </script>
+</head>
+<body style="background: lightgreen;">
+ <!-- The midpoint of this frame should be outside the grandchild frame. -->
+ <div style="height: 75px;">Cross-origin child frame</div>
+ <iframe id="child2" width="270px" height="30px"
+ src="http://{{domains[www]}}:{{ports[http][0]}}/html/user-activation/resources/child-two.html">
+ </iframe>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/html/user-activation/resources/propagation-sameorigin-child.html b/tests/wpt/web-platform-tests/html/user-activation/resources/propagation-sameorigin-child.html
new file mode 100644
index 00000000000..69ad50cb717
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/user-activation/resources/propagation-sameorigin-child.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <script>
+ window.top.postMessage(JSON.stringify({
+ "type": "child-sameorigin-loaded",
+ "isActive": navigator.userActivation.isActive,
+ "hasBeenActive": navigator.userActivation.hasBeenActive
+ }), "*");
+
+ window.addEventListener("click", event => {
+ window.top.postMessage(JSON.stringify({
+ "type": "child-sameorigin-report",
+ "isActive": navigator.userActivation.isActive,
+ "hasBeenActive": navigator.userActivation.hasBeenActive
+ }), "*");
+ });
+ </script>
+</head>
+<body style="background: lightgreen;">
+ <!-- The midpoint of this frame should be outside the grandchild frame. -->
+ <div style="height: 75px;">Same-origin child frame</div>
+ <iframe id="child2" width="270px" height="30px"
+ src="child-two.html">
+ </iframe>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-failure.https.any.js b/tests/wpt/web-platform-tests/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-failure.https.any.js
index f195a70fdf9..8b688403671 100644
--- a/tests/wpt/web-platform-tests/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-failure.https.any.js
+++ b/tests/wpt/web-platform-tests/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-failure.https.any.js
@@ -1,7 +1,8 @@
// META: global=!default,window,serviceworker
test(() => {
- const sab = new SharedArrayBuffer(16);
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const sab = new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
const ta = new Int32Array(sab);
assert_throws_js(TypeError, () => {
diff --git a/tests/wpt/web-platform-tests/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-success.any.js b/tests/wpt/web-platform-tests/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-success.any.js
index 290b44353c8..9adc044a0dd 100644
--- a/tests/wpt/web-platform-tests/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-success.any.js
+++ b/tests/wpt/web-platform-tests/html/webappapis/scripting/processing-model-2/integration-with-the-javascript-agent-formalism/requires-success.any.js
@@ -1,7 +1,8 @@
// META: global=!default,dedicatedworker,sharedworker
test(() => {
- const sab = new SharedArrayBuffer(16);
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const sab = new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
const ta = new Int32Array(sab);
assert_equals(Atomics.wait(ta, 0, 0, 10), "timed-out");
diff --git a/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/sharedworker-import.https.html b/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/sharedworker-import.https.html
new file mode 100644
index 00000000000..0644d1f03e9
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/sharedworker-import.https.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! Generated by `common/security-features/tools/generate.py --spec mixed-content/` -->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <meta name="timeout" content="long">
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/common/security-features/resources/common.sub.js"></script>
+ <script src="../../../generic/test-case.sub.js"></script>
+ </head>
+ <body>
+ <script>
+ TestCase(
+ [
+ {
+ "expectation": "allowed",
+ "origin": "same-https",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects allowed for sharedworker-import to same-https origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "allowed",
+ "origin": "same-https",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects allowed for sharedworker-import to same-https origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to cross-http origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to cross-http origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to cross-http origin and swap-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-https",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to cross-https origin and swap-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to same-http origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to same-http origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to same-http origin and swap-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-https",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to same-https origin and swap-scheme redirection from https context."
+ }
+ ],
+ new SanityChecker()
+ ).start();
+ </script>
+ <div id="log"></div>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/sharedworker-import.https.html.headers b/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/sharedworker-import.https.html.headers
new file mode 100644
index 00000000000..46e2255e388
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/sharedworker-import.https.html.headers
@@ -0,0 +1 @@
+Content-Security-Policy: block-all-mixed-content
diff --git a/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/worker-import.https.html b/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/worker-import.https.html
new file mode 100644
index 00000000000..54993228187
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/worker-import.https.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! Generated by `common/security-features/tools/generate.py --spec mixed-content/` -->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <meta name="timeout" content="long">
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/common/security-features/resources/common.sub.js"></script>
+ <script src="../../../generic/test-case.sub.js"></script>
+ </head>
+ <body>
+ <script>
+ TestCase(
+ [
+ {
+ "expectation": "allowed",
+ "origin": "same-https",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects allowed for worker-import to same-https origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "allowed",
+ "origin": "same-https",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects allowed for worker-import to same-https origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to cross-http origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to cross-http origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to cross-http origin and swap-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-https",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to cross-https origin and swap-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to same-http origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to same-http origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to same-http origin and swap-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-https",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to same-https origin and swap-scheme redirection from https context."
+ }
+ ],
+ new SanityChecker()
+ ).start();
+ </script>
+ <div id="log"></div>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/worker-import.https.html.headers b/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/worker-import.https.html.headers
new file mode 100644
index 00000000000..46e2255e388
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mixed-content/gen/top.http-rp/opt-in/worker-import.https.html.headers
@@ -0,0 +1 @@
+Content-Security-Policy: block-all-mixed-content
diff --git a/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/opt-in/sharedworker-import.https.html b/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/opt-in/sharedworker-import.https.html
new file mode 100644
index 00000000000..3b156c64098
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/opt-in/sharedworker-import.https.html
@@ -0,0 +1,53 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! Generated by `common/security-features/tools/generate.py --spec mixed-content/` -->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <meta name="timeout" content="long">
+ <meta http-equiv="Content-Security-Policy" content="block-all-mixed-content">
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/common/security-features/resources/common.sub.js"></script>
+ <script src="../../../generic/test-case.sub.js"></script>
+ </head>
+ <body>
+ <script>
+ TestCase(
+ [
+ {
+ "expectation": "allowed",
+ "origin": "same-https",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects allowed for sharedworker-import to same-https origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to cross-http origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to same-http origin and no-redirect redirection from https context."
+ }
+ ],
+ new SanityChecker()
+ ).start();
+ </script>
+ <div id="log"></div>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/opt-in/worker-import.https.html b/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/opt-in/worker-import.https.html
new file mode 100644
index 00000000000..50db49acc87
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/opt-in/worker-import.https.html
@@ -0,0 +1,53 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! Generated by `common/security-features/tools/generate.py --spec mixed-content/` -->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <meta name="timeout" content="long">
+ <meta http-equiv="Content-Security-Policy" content="block-all-mixed-content">
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/common/security-features/resources/common.sub.js"></script>
+ <script src="../../../generic/test-case.sub.js"></script>
+ </head>
+ <body>
+ <script>
+ TestCase(
+ [
+ {
+ "expectation": "allowed",
+ "origin": "same-https",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects allowed for worker-import to same-https origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to cross-http origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to same-http origin and no-redirect redirection from https context."
+ }
+ ],
+ new SanityChecker()
+ ).start();
+ </script>
+ <div id="log"></div>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/unset/sharedworker-import.https.html b/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/unset/sharedworker-import.https.html
new file mode 100644
index 00000000000..71679b658aa
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/unset/sharedworker-import.https.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! Generated by `common/security-features/tools/generate.py --spec mixed-content/` -->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <meta name="timeout" content="long">
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/common/security-features/resources/common.sub.js"></script>
+ <script src="../../../generic/test-case.sub.js"></script>
+ </head>
+ <body>
+ <script>
+ TestCase(
+ [
+ {
+ "expectation": "allowed",
+ "origin": "same-https",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects allowed for sharedworker-import to same-https origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "allowed",
+ "origin": "same-https",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects allowed for sharedworker-import to same-https origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to cross-http origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to cross-http origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to cross-http origin and swap-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to same-http origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to same-http origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "sharedworker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for sharedworker-import to same-http origin and swap-scheme redirection from https context."
+ }
+ ],
+ new SanityChecker()
+ ).start();
+ </script>
+ <div id="log"></div>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/unset/worker-import.https.html b/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/unset/worker-import.https.html
new file mode 100644
index 00000000000..208ae14bfa5
--- /dev/null
+++ b/tests/wpt/web-platform-tests/mixed-content/gen/top.meta/unset/worker-import.https.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<!-- DO NOT EDIT! Generated by `common/security-features/tools/generate.py --spec mixed-content/` -->
+<html>
+ <head>
+ <meta charset="utf-8">
+ <meta name="timeout" content="long">
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/common/security-features/resources/common.sub.js"></script>
+ <script src="../../../generic/test-case.sub.js"></script>
+ </head>
+ <body>
+ <script>
+ TestCase(
+ [
+ {
+ "expectation": "allowed",
+ "origin": "same-https",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects allowed for worker-import to same-https origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "allowed",
+ "origin": "same-https",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects allowed for worker-import to same-https origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to cross-http origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to cross-http origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "cross-http",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to cross-http origin and swap-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "keep-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to same-http origin and keep-scheme redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "no-redirect",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to same-http origin and no-redirect redirection from https context."
+ },
+ {
+ "expectation": "blocked",
+ "origin": "same-http",
+ "redirection": "swap-scheme",
+ "source_context_list": [],
+ "source_scheme": "https",
+ "subresource": "worker-import",
+ "subresource_policy_deliveries": [],
+ "test_description": "Mixed-Content: Expects blocked for worker-import to same-http origin and swap-scheme redirection from https context."
+ }
+ ],
+ new SanityChecker()
+ ).start();
+ </script>
+ <div id="log"></div>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/mixed-content/spec.src.json b/tests/wpt/web-platform-tests/mixed-content/spec.src.json
index 1e7d7c9dbe0..b001317d578 100644
--- a/tests/wpt/web-platform-tests/mixed-content/spec.src.json
+++ b/tests/wpt/web-platform-tests/mixed-content/spec.src.json
@@ -91,10 +91,12 @@
"picture-tag",
"script-tag",
"sharedworker-classic",
+ "sharedworker-import",
"sharedworker-import-data",
"sharedworker-module",
"websocket",
"worker-classic",
+ "worker-import",
"worker-import-data",
"worker-module",
"worklet-animation",
@@ -131,10 +133,12 @@
"picture-tag",
"script-tag",
"sharedworker-classic",
+ "sharedworker-import",
"sharedworker-import-data",
"sharedworker-module",
"websocket",
"worker-classic",
+ "worker-import",
"worker-import-data",
"worker-module",
"worklet-animation",
@@ -171,10 +175,12 @@
"picture-tag",
"script-tag",
"sharedworker-classic",
+ "sharedworker-import",
"sharedworker-import-data",
"sharedworker-module",
"websocket",
"worker-classic",
+ "worker-import",
"worker-import-data",
"worker-module",
"worklet-animation",
@@ -410,11 +416,13 @@
"picture-tag": [],
"script-tag": [],
"sharedworker-classic": [],
+ "sharedworker-import": [],
"sharedworker-import-data": [],
"sharedworker-module": [],
"video-tag": [],
"websocket": [],
"worker-classic": [],
+ "worker-import": [],
"worker-import-data": [],
"worker-module": [],
"worklet-animation": [],
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/orientation-sensor-tests.js b/tests/wpt/web-platform-tests/orientation-sensor/orientation-sensor-tests.js
index 5d35f3b9afc..9d44d638705 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/orientation-sensor-tests.js
+++ b/tests/wpt/web-platform-tests/orientation-sensor/orientation-sensor-tests.js
@@ -42,7 +42,9 @@ async function checkPopulateMatrix(t, sensorProvider, sensorType) {
// Throws if passed SharedArrayBuffer view.
assert_throws_js(TypeError,
- () => sensor.populateMatrix(new Float32Array(new SharedArrayBuffer(16))));
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ // WebAssembly.Memory's size is in multiples of 64 KiB
+ () => sensor.populateMatrix(new Float32Array(new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer)));
sensor.start();
diff --git a/tests/wpt/web-platform-tests/pointerevents/pointerevent_lostpointercapture_for_disconnected_node_in_shadow_dom.html b/tests/wpt/web-platform-tests/pointerevents/pointerevent_lostpointercapture_for_disconnected_node_in_shadow_dom.html
deleted file mode 100644
index f03f98abe06..00000000000
--- a/tests/wpt/web-platform-tests/pointerevents/pointerevent_lostpointercapture_for_disconnected_node_in_shadow_dom.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!doctype html>
-<html>
- <head>
- <title>Lostpointercapture fires on document when target in shadow dom is removed</title>
- <meta name="viewport" content="width=device-width">
- <link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=810882">
- <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>
- </head>
- <body onload="onLoad()">
- <template id="template">
- <style>
- #content{
- height:100px;
- width:100px;
- background-color: lightgrey;
- }
- </style>
- <div id="content"></div>
- </template>
- <h1>Pointer Events - lostpointercapture when capturing element in shadow dom is removed</h1>
- <h4>
- Test Description:
- This test checks if lostpointercapture is fired at the document when the capturing node that is in shadow dom is removed from the shadow dom.
- Complete the following actions:
- <ol>
- <li>Press left mouse button over "Set Capture" button. Pointer should be captured by the gray rectangle which is in shadow dom.</li>
- <li>Gray rectangle will be removed from shadow dom.</li>
- <li>"lostpointercapture" should be received on the document not on the gray rectangle.</li>
- </ol>
- </h4>
- <div id="shadowhost"></div>
- <br>
- <input type="button" id="btnCapture" value="Set Capture">
- <div id="log"></div>
- <script>
- var logDiv = document.getElementById("log");
- function logMessage(message){
- var log = document.createElement("div");
- var messageNode = document.createTextNode(message);
- log.appendChild(messageNode);
- logDiv.appendChild(log);
- }
- var events = [];
-
- var host = document.getElementById("shadowhost");
- var shadowRoot = host.attachShadow({mode: "open"});
- var template = document.getElementById("template");
- var node = template.content.cloneNode(true);
- shadowRoot.appendChild(node);
-
- var content = host.shadowRoot.getElementById("content");
- var captureButton = document.getElementById("btnCapture");
-
- captureButton.addEventListener("pointerdown", function(event){
- logMessage("Pointer will be captured by the shadow dom gray rectangle.");
- content.setPointerCapture(event.pointerId);
- events.push("pointerdown@captureButton");
- });
- content.addEventListener("gotpointercapture", function(event){
- logMessage("Gray rectangle received pointercapture.");
- logMessage("Removing gray rectangle from shadow dom.")
- content.parentNode.removeChild(content);
- events.push("gotpointercapture@content");
- });
- content.addEventListener("lostpointercapture", function(event){
- logMessage("Test Failed! The element removed from shadow dom should not receive lostpointercapture.")
- events.push("lostpointercapture@content");
- if(window.promise_test && shadow_dom_test){
- shadow_dom_test.step(function(){
- assert_unreached("lostpointercapture must be fired on the document, not the capturing element");
- reject_test("lostpointercapture must not be dispatched on the disconnected node");
- shadow_dom_test.done();
- });
- }
- });
- document.addEventListener("lostpointercapture", function(event){
- logMessage("Test Passed! Document received lostpointercapture.");
- events.push("lostpointercapture@document");
- if(window.promise_test && shadow_dom_test){
- shadow_dom_test.step(function(){
- assert_array_equals(events, ["pointerdown@captureButton",
- "gotpointercapture@content",
- "lostpointercapture@document"]);
- resolve_test();
- shadow_dom_test.done();
- });
- }
- });
-
- var shadow_dom_test = null;
- var resolve_test = null;
- var reject_test = null;
-
- function cleanup(){
- events = [];
- shadow_dom_test = null;
- resolve_test = null;
- reject_test = null;
- }
-
- function onLoad(){
- if(window.promise_test){
- promise_test(function(t){
- return new Promise(function(resolve, reject){
- shadow_dom_test = t;
- resolve_test = resolve;
- reject_test = reject;
- t.add_cleanup(function(){
- cleanup();
- });
- var actions = new test_driver.Actions();
- var actions_promise = actions
- .pointerMove(0, 0, {origin:captureButton})
- .pointerDown({button: actions.ButtonType.LEFT})
- .pointerUp({button: actions.ButtonType.LEFT})
- .send();
- });
- }, "lostpointercapture is dispatched on the document when shadow dom capturing element is removed");
- }
- }
- </script>
- </body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/pointerevents/pointerevent_lostpointercapture_for_disconnected_shadow_host.html b/tests/wpt/web-platform-tests/pointerevents/pointerevent_lostpointercapture_for_disconnected_shadow_host.html
deleted file mode 100644
index 4b5c9f6eae8..00000000000
--- a/tests/wpt/web-platform-tests/pointerevents/pointerevent_lostpointercapture_for_disconnected_shadow_host.html
+++ /dev/null
@@ -1,136 +0,0 @@
-<!doctype html>
-<html>
- <head>
- <title>Lostpointercapture fires on document when target in shadow dom is removed</title>
- <meta name="viewport" content="width=device-width">
- <link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=810882">
- <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>
- <style>
- #shadowhost{
- height:200px;
- width:200px;
- background-color:magenta;
- }
- </style>
- </head>
- <body onload="onLoad()">
- <template id="template">
- <style>
- #content{
- height:100px;
- width:100px;
- background-color: lightgrey;
- }
- </style>
- <div id="content"></div>
- </template>
- <h1>Pointer Events - lostpointercapture when capturing element in shadow dom is removed by removing the shadow host</h1>
- <h4>
- Test Description:
- This test checks if lostpointercapture is fired at the document when the capturing node is removed from the document by removing the shadow host.
- The shadow host is colored magenta and the shadow dom element is colored gray.
- Complete the following actions:
- <ol>
- <li>Press left mouse button over "Set Capture" button. Pointer should be captured by the gray rectangle.</li>
- <li>Shadow host magenta rectangle including the gray rectangle will be removed from shadow dom.</li>
- <li>"lostpointercapture" should be received on the document not on the gray rectangle.</li>
- </ol>
- </h4>
- <div id="shadowhost"></div>
- <br>
- <input type="button" id="btnCapture" value="Set Capture">
- <div id="log"></div>
- <script>
- var logDiv = document.getElementById("log");
- function logMessage(message){
- var log = document.createElement("div");
- var messageNode = document.createTextNode(message);
- log.appendChild(messageNode);
- logDiv.appendChild(log);
- }
- var events = [];
-
- var host = document.getElementById("shadowhost");
- var shadowRoot = host.attachShadow({mode: "open"});
- var template = document.getElementById("template");
- var node = template.content.cloneNode(true);
- shadowRoot.appendChild(node);
-
- var content = host.shadowRoot.getElementById("content");
- var captureButton = document.getElementById("btnCapture");
-
- captureButton.addEventListener("pointerdown", function(event){
- logMessage("Pointer will be captured by the shadow dom gray rectangle.");
- content.setPointerCapture(event.pointerId);
- events.push("pointerdown@captureButton");
- });
- content.addEventListener("gotpointercapture", function(event){
- logMessage("Gray rectangle received pointercapture.");
- logMessage("Removing magenta rectangle (which includes gray rectangle) from shadow dom.")
- host.parentNode.removeChild(host);
- events.push("gotpointercapture@content");
- });
- content.addEventListener("lostpointercapture", function(event){
- logMessage("Test Failed! The element removed from shadow dom should not receive lostpointercapture.")
- events.push("lostpointercapture@content");
- if(window.promise_test && shadow_dom_test){
- shadow_dom_test.step(function(){
- assert_unreached("lostpointercapture must be fired on the document, not the capturing element");
- reject_test("lostpointercapture must not be dispatched on the disconnected node");
- shadow_dom_test.done();
- });
- }
- });
- document.addEventListener("lostpointercapture", function(event){
- logMessage("Test Passed! Document received lostpointercapture.");
- events.push("lostpointercapture@document");
- if(window.promise_test && shadow_dom_test){
- shadow_dom_test.step(function(){
- assert_array_equals(events, ["pointerdown@captureButton",
- "gotpointercapture@content",
- "lostpointercapture@document"]);
- resolve_test();
- shadow_dom_test.done();
- });
- }
- });
-
- var shadow_dom_test = null;
- var resolve_test = null;
- var reject_test = null;
-
- function cleanup(){
- events = [];
- shadow_dom_test = null;
- resolve_test = null;
- reject_test = null;
- }
-
- function onLoad(){
- if(window.promise_test){
- promise_test(function(t){
- return new Promise(function(resolve, reject){
- shadow_dom_test = t;
- resolve_test = resolve;
- reject_test = reject;
- t.add_cleanup(function(){
- cleanup();
- });
- var actions = new test_driver.Actions();
- var actions_promise = actions
- .pointerMove(0, 0, {origin:captureButton})
- .pointerDown({button: actions.ButtonType.LEFT})
- .pointerUp({button: actions.ButtonType.LEFT})
- .send();
- });
- }, "lostpointercapture is dispatched on the document when shadow host is removed");
- }
- }
- </script>
- </body>
-</html>
-
diff --git a/tests/wpt/web-platform-tests/pointerevents/pointerevent_pointercapture-in-custom-element.html b/tests/wpt/web-platform-tests/pointerevents/pointerevent_pointercapture-in-custom-element.html
deleted file mode 100644
index e8f143b309f..00000000000
--- a/tests/wpt/web-platform-tests/pointerevents/pointerevent_pointercapture-in-custom-element.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<!DOCTYPE html>
-<html>
- <head>
- <title>PointerCapture for Custome Shadow DOM</title>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width">
- <link rel="help" href= "https://bugs.chromium.org/p/chromium/issues/detail?id=810882">
- <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>
- class WC extends HTMLElement{
- constructor(){
- super();
- let template = document.getElementById('template-wc');
- let node = template.content.cloneNode(true) ;
-
- let shadowRoot = this.attachShadow({mode: 'open'});
- shadowRoot.appendChild(node);
- }
- }
- customElements.define("wc-wc", WC);
- </script>
- </head>
- <body onload="onLoad()">
- <template id="template-wc">
- <style>
- #content{
- height:50px;
- width:50px;
- background-color: magenta;
- }
- </style>
- <div id="content"></div>
- </template>
- <h4>PointerCapture by Custom Element's Shadow DOM</h4>
- The magenta box below is part of a custom element's Shadow DOM.
- <ul>
- <li> Click left mouse button inside the box and keep mouse button depressed</li>
- <li> Move the mouse</li>
- <li> There should be a message stating <em>Pointer was captured by custom element's Shadow DOM!</em></li>
- <li> Release left mouse button</li>
- <li> There should be a message stating <em>Pointer was released by custom element's Shadow DOM!</em></li>
- </ul>
-
- <wc-wc id="wc-wc"></wc-wc>
- <div id="log"></div>
- <script>
- var logDiv = document.getElementById("log");
- function logMessage(message){
- var log = document.createElement("div");
- var messageNode = document.createTextNode(message);
- log.appendChild(messageNode);
- logDiv.appendChild(log);
- }
- var events = [];
-
- var content = document.getElementById("wc-wc")
- .shadowRoot.getElementById("content");
-
- content.addEventListener("pointerdown", function(e){
- content.setPointerCapture(e.pointerId);
- events.push("pointerdown@content");
- });
- content.addEventListener("gotpointercapture", function(e){
- logMessage("Pointer was captured by custom element's Shadow DOM!");
- events.push("gotpointercapture@content");
- });
- content.addEventListener("pointerup", function(e){
- content.releasePointerCapture(e.pointerId);
- events.push("pointerup@content");
- });
- content.addEventListener("lostpointercapture", function(e){
- logMessage("Pointer was released by custom element's Shadow DOM!");
- events.push("lostpointercapture@content");
- if(window.promise_test && wc_shadow_dom_test){
- wc_shadow_dom_test.step(function(){
- assert_array_equals(events, ["pointerdown@content",
- "gotpointercapture@content", "pointerup@content",
- "lostpointercapture@content"]);
- resolve_test();
- wc_shadow_dom_test.done();
- });
- }
- });
-
- var wc_shadow_dom_test = null;
- var resolve_test = null;
- var reject_test = null;
-
- function cleanup(){
- events = [];
- shadow_dom_test = null;
- resolve_test = null;
- reject_test = null;
- }
-
- function onLoad(){
- if(window.promise_test){
- promise_test(function(t){
- return new Promise(function(resolve, reject){
- wc_shadow_dom_test = t;
- resolve_test = resolve;
- reject_test = reject;
- t.add_cleanup(function(){
- cleanup();
- });
- var contentRect = content.getBoundingClientRect();
- var actions = new test_driver.Actions();
- var actions_promise = actions
- .pointerMove(contentRect.x, contentRect.y)
- .pointerDown({button: actions.ButtonType.LEFT})
- .pointerUp({button: actions.ButtonType.LEFT})
- .send();
- });
- }, "PointerCapture works for custom element Shadow DOM.");
- }
- }
- </script>
- </body>
-</html>
diff --git a/tests/wpt/web-platform-tests/pointerevents/pointerevent_pointercapture-in-shadow-dom.html b/tests/wpt/web-platform-tests/pointerevents/pointerevent_pointercapture-in-shadow-dom.html
deleted file mode 100644
index 8279665f97b..00000000000
--- a/tests/wpt/web-platform-tests/pointerevents/pointerevent_pointercapture-in-shadow-dom.html
+++ /dev/null
@@ -1,114 +0,0 @@
-<!DOCTYPE html>
-<html>
- <head>
- <title>PointerCapture for Shadow DOM Elements</title>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width">
- <link rel="help" href= "https://bugs.chromium.org/p/chromium/issues/detail?id=810882">
- <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>
- </head>
- <body onload="onLoad()">
- <template id="template">
- <style>
- #content{
- height:100px;
- width:100px;
- background-color: lightgrey;
- }
- </style>
- <div id="content"></div>
- </template>
- <h4>PointerCapture by Shadow DOM element</h4>
- The light gray box below is part of Shadow DOM.
- <ul>
- <li> Click left mouse button inside the box and keep mouse button depressed </li>
- <li> Move the mouse </li>
- <li> There should be a message stating <em>Pointer was captured by Shadow DOM!</em></li>
- <li> Release left mouse button
- <li> There should be a message stating <em>Pointer was released by Shadow DOM!</em></li>
- </ul>
- <div id="shadowhost"></div>
- <div id="log"></div>
- <script>
- var logDiv = document.getElementById("log");
- function logMessage(message){
- var log = document.createElement("div");
- var messageNode = document.createTextNode(message);
- log.appendChild(messageNode);
- logDiv.appendChild(log);
- }
- var events = [];
-
- var host = document.getElementById("shadowhost");
- var shadowRoot = host.attachShadow({mode: "open"});
- var template = document.getElementById("template");
- var node = template.content.cloneNode(true);
- shadowRoot.appendChild(node);
-
- var content = host.shadowRoot.getElementById("content");
-
- content.addEventListener("pointerdown", function(e){
- content.setPointerCapture(e.pointerId);
- events.push("pointerdown@content");
- });
- content.addEventListener("gotpointercapture", function(e){
- logMessage("Pointer was captured by Shadow DOM!");
- events.push("gotpointercapture@content");
- });
- content.addEventListener("pointerup", function(e){
- content.releasePointerCapture(e.pointerId);
- events.push("pointerup@content");
- });
- content.addEventListener("lostpointercapture", function(e){
- logMessage("Pointer was released by Shadow DOM!");
- events.push("lostpointercapture@content");
- if(window.promise_test && shadow_dom_test){
- shadow_dom_test.step(function(){
- assert_array_equals(events, ["pointerdown@content",
- "gotpointercapture@content", "pointerup@content",
- "lostpointercapture@content"]);
- resolve_test();
- shadow_dom_test.done();
- });
- }
- });
-
- var shadow_dom_test = null;
- var resolve_test = null;
- var reject_test = null;
-
- function cleanup(){
- events = [];
- shadow_dom_test = null;
- resolve_test = null;
- reject_test = null;
- }
-
- function onLoad(){
- if(window.promise_test){
- promise_test(function(t){
- return new Promise(function(resolve, reject){
- shadow_dom_test = t;
- resolve_test = resolve;
- reject_test = reject;
- t.add_cleanup(function(){
- cleanup();
- });
- var contentRect = content.getBoundingClientRect();
- var actions = new test_driver.Actions();
- var actions_promise = actions
- .pointerMove(contentRect.x, contentRect.y)
- .pointerDown({button: actions.ButtonType.LEFT})
- .pointerUp({button: actions.ButtonType.LEFT})
- .send();
- });
- }, "PointerCapture works for Shadow DOM element.");
- }
- }
- </script>
- </body>
-</html>
diff --git a/tests/wpt/web-platform-tests/portals/portal-activate-data.html b/tests/wpt/web-platform-tests/portals/portal-activate-data.html
index 004fa97e55c..260bb00ff06 100644
--- a/tests/wpt/web-platform-tests/portals/portal-activate-data.html
+++ b/tests/wpt/web-platform-tests/portals/portal-activate-data.html
@@ -74,7 +74,8 @@ promise_test(async t => {
const w = await openBlankPortalHost();
await promise_rejects_dom(
t, 'DataCloneError', w.DOMException,
- openPortalAndActivate('', {data: new SharedArrayBuffer}, w));
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ openPortalAndActivate('', {data: new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer}, w));
}, "A SharedArrayBuffer cannot be passed through activate data.");
promise_test(async t => {
diff --git a/tests/wpt/web-platform-tests/referrer-policy/spec.src.json b/tests/wpt/web-platform-tests/referrer-policy/spec.src.json
index 1d6ed7cca62..8d2a6d2e0b1 100644
--- a/tests/wpt/web-platform-tests/referrer-policy/spec.src.json
+++ b/tests/wpt/web-platform-tests/referrer-policy/spec.src.json
@@ -668,9 +668,11 @@
"link-prefetch-tag",
"object-tag",
"picture-tag",
+ "sharedworker-import",
"sharedworker-import-data",
"video-tag",
"websocket",
+ "worker-import",
"worker-import-data",
"worklet-animation",
"worklet-animation-import-data",
@@ -795,11 +797,13 @@
"attr"
],
"sharedworker-classic": [],
+ "sharedworker-import": [],
"sharedworker-import-data": [],
"sharedworker-module": [],
"video-tag": [],
"websocket": [],
"worker-classic": [],
+ "worker-import": [],
"worker-import-data": [],
"worker-module": [],
"worklet-animation": [],
diff --git a/tests/wpt/web-platform-tests/svg/linking/reftests/reference/green-100x100.svg b/tests/wpt/web-platform-tests/svg/linking/reftests/reference/green-100x100.svg
new file mode 100644
index 00000000000..120941444a4
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/linking/reftests/reference/green-100x100.svg
@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg">
+ <rect width="100" height="100" fill="green"/>
+</svg>
diff --git a/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-invalid-base.svg b/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-invalid-base.svg
new file mode 100644
index 00000000000..fc5d7c6b062
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-invalid-base.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:html="http://www.w3.org/1999/xhtml">
+ <title>An invalid base URL makes all internal references invalid</title>
+ <html:link rel="help" href="https://svgwg.org/svg2-draft/linking.html#processingURL"/>
+ <html:link rel="help" href="https://svgwg.org/svg2-draft/painting.html#SpecifyingPaint"/>
+ <html:link rel="help" href="https://svgwg.org/svg2-draft/pservers.html#PaintServerTemplates"/>
+ <html:link rel="match" href="reference/green-100x100.svg"/>
+ <html:base href="invalid:"/>
+ <linearGradient id="p2">
+ <stop stop-color="orange"/>
+ </linearGradient>
+ <linearGradient id="p" href="#p2"/>
+ <rect width="100" height="100" fill="red"/>
+ <rect width="100" height="100" fill="url(#p) green"/>
+</svg>
diff --git a/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-001.svg b/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-001.svg
new file mode 100644
index 00000000000..6baa0fdd844
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-001.svg
@@ -0,0 +1,17 @@
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:html="http://www.w3.org/1999/xhtml">
+ <title>Leading and trailing whitespace is stripped from (local) URL references (&#x3c;paint&#x3e;)</title>
+ <html:link rel="help" href="https://svgwg.org/svg2-draft/linking.html#processingURL"/>
+ <html:link rel="help" href="https://svgwg.org/svg2-draft/painting.html#SpecifyingPaint"/>
+ <html:link rel="match" href="reference/green-100x100.svg"/>
+ <linearGradient id="green">
+ <stop stop-color="green"/>
+ </linearGradient>
+ <linearGradient id="red">
+ <stop stop-color="red"/>
+ </linearGradient>
+ <rect width="50" height="50" fill="url(' #green') red"/>
+ <rect width="50" height="50" fill="url('#green ') red" x="50"/>
+ <rect width="50" height="50" fill="url(' #green ') red" y="50"/>
+ <rect width="50" height="50" fill="url(' # red ') green" y="50" x="50"/>
+</svg>
diff --git a/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-002.svg b/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-002.svg
new file mode 100644
index 00000000000..ee4969a532d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-002.svg
@@ -0,0 +1,19 @@
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:html="http://www.w3.org/1999/xhtml">
+ <title>Leading and trailing whitespace is stripped from (local) URL references (&#x3c;use&#x3e; href)</title>
+ <html:link rel="help" href="https://svgwg.org/svg2-draft/linking.html#processingURL"/>
+ <html:link rel="help" href="https://svgwg.org/svg2-draft/struct.html#UseElementHrefAttribute"/>
+ <html:link rel="match" href="reference/green-100x100.svg"/>
+ <defs>
+ <rect id="green" width="50" height="50" fill="green"/>
+ <rect id="red" width="50" height="50" fill="red"/>
+ </defs>
+ <rect width="100" height="100" fill="red"/>
+ <use href=" #green"/>
+ <use href="#green " x="50"/>
+ <use href=" #green " y="50"/>
+ <g transform="translate(50 50)">
+ <rect id="green" width="50" height="50" fill="green"/>
+ <use href=" # red "/>
+ </g>
+</svg>
diff --git a/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-003.svg b/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-003.svg
new file mode 100644
index 00000000000..1dabd9f8f97
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/linking/reftests/url-processing-whitespace-003.svg
@@ -0,0 +1,24 @@
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:html="http://www.w3.org/1999/xhtml">
+ <title>Leading and trailing whitespace is stripped from (local) URL references (&#x3c;linearGradient&#x3e; href)</title>
+ <html:link rel="help" href="https://svgwg.org/svg2-draft/linking.html#processingURL"/>
+ <html:link rel="help" href="https://svgwg.org/svg2-draft/pservers.html#PaintServerTemplates"/>
+ <html:link rel="match" href="reference/green-100x100.svg"/>
+ <linearGradient id="green">
+ <stop stop-color="green"/>
+ </linearGradient>
+ <linearGradient id="red">
+ <stop stop-color="red"/>
+ </linearGradient>
+ <linearGradient id="g1" href=" #green"/>
+ <linearGradient id="g2" href="#green "/>
+ <linearGradient id="g3" href=" #green "/>
+ <linearGradient id="g4" href=" # red ">
+ <stop stop-color="green"/>
+ </linearGradient>
+ <rect width="100" height="100" fill="red"/>
+ <rect width="50" height="50" fill="url(#g1) red"/>
+ <rect width="50" height="50" fill="url(#g2) red" x="50"/>
+ <rect width="50" height="50" fill="url(#g3) red" y="50"/>
+ <rect width="50" height="50" fill="url(#g4) red" y="50" x="50"/>
+</svg>
diff --git a/tests/wpt/web-platform-tests/tools/lint/tests/test_file_lints.py b/tests/wpt/web-platform-tests/tools/lint/tests/test_file_lints.py
index 43e8beb9956..72d4a05c902 100644
--- a/tests/wpt/web-platform-tests/tools/lint/tests/test_file_lints.py
+++ b/tests/wpt/web-platform-tests/tools/lint/tests/test_file_lints.py
@@ -633,8 +633,11 @@ def test_late_timeout():
]
+# Note: This test checks the print *statement* (which doesn't exist in python 3).
+# The print *function* is checked in test_print_function below.
+@pytest.mark.skipif(six.PY3, reason="Cannot parse print statements from python 3")
def test_print_statement():
- error_map = check_with_files(b"def foo():\n print('statement')\n print\n")
+ error_map = check_with_files(b"def foo():\n print 'statement'\n print\n")
for (filename, (errors, kind)) in error_map.items():
check_errors(errors)
diff --git a/tests/wpt/web-platform-tests/tools/wptserve/setup.py b/tests/wpt/web-platform-tests/tools/wptserve/setup.py
index c9c364b8bac..759cb48d1f6 100644
--- a/tests/wpt/web-platform-tests/tools/wptserve/setup.py
+++ b/tests/wpt/web-platform-tests/tools/wptserve/setup.py
@@ -1,6 +1,6 @@
from setuptools import setup
-PACKAGE_VERSION = '2.0'
+PACKAGE_VERSION = '3.0'
deps = ["six>=1.8", "h2==3.0.1"]
setup(name='wptserve',
diff --git a/tests/wpt/web-platform-tests/upgrade-insecure-requests/spec.src.json b/tests/wpt/web-platform-tests/upgrade-insecure-requests/spec.src.json
index 43f2d6dbc18..0b987d76b7c 100644
--- a/tests/wpt/web-platform-tests/upgrade-insecure-requests/spec.src.json
+++ b/tests/wpt/web-platform-tests/upgrade-insecure-requests/spec.src.json
@@ -144,7 +144,9 @@
"object-tag",
"picture-tag",
"script-tag",
- "video-tag"
+ "sharedworker-import",
+ "video-tag",
+ "worker-import"
],
"origin": "*",
"expectation": "*"
@@ -233,11 +235,13 @@
"picture-tag": [],
"script-tag": [],
"sharedworker-classic": [],
+ "sharedworker-import": [],
"sharedworker-import-data": [],
"sharedworker-module": [],
"video-tag": [],
"websocket": [],
"worker-classic": [],
+ "worker-import": [],
"worker-import-data": [],
"worker-module": [],
"worklet-animation": [],
diff --git a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-copy-channel.html b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-copy-channel.html
index 20780d94b73..c0cd49d3252 100644
--- a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-copy-channel.html
+++ b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-copy-channel.html
@@ -149,7 +149,9 @@
buffer.copyFromChannel(x, 3);
}, '7: buffer.copyFromChannel(x, 3)').throw(DOMException, 'IndexSizeError');
- let shared_buffer = new Float32Array(new SharedArrayBuffer(32));
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ // WebAssembly.Memory's size is in multiples of 64 KiB
+ const shared_buffer = new Float32Array(new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer);
should(
() => {
buffer.copyFromChannel(shared_buffer, 0);
@@ -202,7 +204,9 @@
buffer.copyToChannel(x, 3);
}, '6: buffer.copyToChannel(x, 3)').throw(DOMException, 'IndexSizeError');
- let shared_buffer = new Float32Array(new SharedArrayBuffer(32));
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ // WebAssembly.Memory's size is in multiples of 64 KiB
+ const shared_buffer = new Float32Array(new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer);
should(
() => {
buffer.copyToChannel(shared_buffer, 0);
diff --git a/tests/wpt/web-platform-tests/xhr/send-data-sharedarraybuffer.any.js b/tests/wpt/web-platform-tests/xhr/send-data-sharedarraybuffer.any.js
index b902888f560..912f622697d 100644
--- a/tests/wpt/web-platform-tests/xhr/send-data-sharedarraybuffer.any.js
+++ b/tests/wpt/web-platform-tests/xhr/send-data-sharedarraybuffer.any.js
@@ -1,8 +1,9 @@
// META: title=XMLHttpRequest.send(sharedarraybuffer)
test(() => {
- var xhr = new XMLHttpRequest();
- var buf = new SharedArrayBuffer();
+ const xhr = new XMLHttpRequest();
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const buf = new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
xhr.open("POST", "./resources/content.py", true);
assert_throws_js(TypeError, function() {
@@ -13,8 +14,9 @@ test(() => {
["Int8Array", "Uint8Array", "Uint8ClampedArray", "Int16Array", "Uint16Array",
"Int32Array", "Uint32Array", "Float32Array", "Float64Array", "DataView"].forEach((type) => {
test(() => {
- var xhr = new XMLHttpRequest();
- var arr = new self[type](new SharedArrayBuffer());
+ const xhr = new XMLHttpRequest();
+ // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
+ const arr = new self[type](new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer);
xhr.open("POST", "./resources/content.py", true);
assert_throws_js(TypeError, function() {