From 48c420fdb522a61d749e8ee2208322d5ca02a9d6 Mon Sep 17 00:00:00 2001 From: WPT Sync Bot Date: Fri, 13 Nov 2020 08:20:12 +0000 Subject: [PATCH] Update web-platform-tests to revision 8d1253647cfe3809ddf58a4ad7c9da5f26985d7e --- .../url/url-in-tags-revoke.window.js.ini | 2 +- .../CSS2/floats/hit-test-floats-003.html.ini | 4 - .../inline-negative-margin-001.html.ini | 5 +- ...ckground-properties-border-radius.html.ini | 2 + .../change-scale-wide-range.html.ini | 2 + .../cssom-view/elementFromPoint-001.html.ini | 4 - ...lementFromPoint-float-in-relative.html.ini | 4 + .../cssom-view/elementFromPosition.html.ini | 3 + .../elementsFromPoint-invalid-cases.html.ini | 4 + ...ListenerAbortController.tentative.html.ini | 4 + .../fetch/content-type/response.window.js.ini | 12 +- .../fetch/content-type/script.window.js.ini | 6 - .../nosniff/parsing-nosniff.window.js.ini | 6 - .../gamepad/gamepad-secure-context.html.ini | 3 + .../traverse_the_history_1.html.ini | 4 - .../traverse_the_history_3.html.ini} | 2 +- ...ml.ini => traverse_the_history_4.html.ini} | 2 +- ...ross-origin-objects-on-new-window.html.ini | 2 - .../embedded-opener-remove-frame.html.ini | 1 + .../supported-elements.html.ini | 13 +- .../large-cols-abssize.html.ini | 2 + .../large-cols-percentage.html.ini | 2 + .../large-cols-relsize.html.ini | 2 + .../large-rows-abssize.html.ini | 2 + .../large-rows-percentage.html.ini | 2 + .../large-rows-relsize.html.ini | 2 + .../hash-name-reference.html.ini | 3 - .../iframe_sandbox_popups_escaping-1.html.ini | 4 +- .../iframe_sandbox_popups_escaping-2.html.ini | 2 +- ...rame_sandbox_popups_nonescaping-1.html.ini | 3 +- .../abspos-dialog-layout.html.ini | 31 + .../the-dialog-element/centering.html.ini | 3 - .../document-write/module-delayed.html.ini | 4 + ...le-event-handler-settings-objects.html.ini | 3 - .../realtimeanalyser-fft-scaling.html.ini | 1 + .../sub-sample-buffer-stitching.html.ini | 6 + .../webmessaging/without-ports/018.html.ini | 5 - .../url/url-in-tags-revoke.window.js.ini | 2 +- tests/wpt/metadata/MANIFEST.json | 2494 +++++++++-------- .../CSS2/floats/hit-test-floats-003.html.ini | 4 - .../inline-negative-margin-001.html.ini | 5 +- ...ckground-properties-border-radius.html.ini | 2 + .../change-scale-wide-range.html.ini | 2 + .../cssom-view/elementFromPoint-001.html.ini | 4 - ...lementFromPoint-float-in-relative.html.ini | 4 + .../cssom-view/elementFromPosition.html.ini | 3 + .../elementsFromPoint-invalid-cases.html.ini | 4 + ...ListenerAbortController.tentative.html.ini | 4 + .../fetch/content-type/response.window.js.ini | 12 +- .../fetch/content-type/script.window.js.ini | 6 - .../nosniff/parsing-nosniff.window.js.ini | 6 - .../gamepad/gamepad-secure-context.html.ini | 3 + .../traverse_the_history_1.html.ini | 4 - .../traverse_the_history_3.html.ini | 4 + .../traverse_the_history_4.html.ini | 4 + ...ross-origin-objects-on-new-window.html.ini | 2 - .../embedded-opener-remove-frame.html.ini | 1 + .../supported-elements.html.ini | 13 +- .../large-cols-abssize.html.ini | 2 + .../large-cols-percentage.html.ini | 2 + .../large-cols-relsize.html.ini | 2 + .../large-rows-abssize.html.ini | 2 + .../large-rows-percentage.html.ini | 2 + .../large-rows-relsize.html.ini | 2 + .../hash-name-reference.html.ini | 3 - .../iframe_sandbox_popups_escaping-1.html.ini | 4 +- .../iframe_sandbox_popups_escaping-2.html.ini | 2 +- ...rame_sandbox_popups_nonescaping-1.html.ini | 3 +- .../abspos-dialog-layout.html.ini | 3 + .../the-dialog-element/centering.html.ini | 3 - .../dialog-scrolled-viewport.html.ini | 4 - .../document-write/module-delayed.html.ini | 4 + ...le-event-handler-settings-objects.html.ini | 3 - .../realtimeanalyser-fft-scaling.html.ini | 1 + .../sub-sample-buffer-stitching.html.ini | 6 + .../webmessaging/without-ports/018.html.ini | 5 - .../web-platform-tests/.azure-pipelines.yml | 2 + .../inline-block-baseline-crash.html | 12 + .../bg-color-with-gradient-ref.html | 0 .../bg-color-with-gradient.html | 0 .../simple-bg-color-ref.html | 0 .../simple-bg-color.html | 0 ...> out-of-flow-in-multicolumn-001-ref.html} | 0 .../out-of-flow-in-multicolumn-001.html | 4 +- .../out-of-flow-in-multicolumn-003.html | 35 + .../out-of-flow-in-multicolumn-004-ref.html | 29 + .../out-of-flow-in-multicolumn-004.html | 45 + .../out-of-flow-in-multicolumn-005.html | 38 + .../out-of-flow-in-multicolumn-006.html | 36 + .../out-of-flow-in-multicolumn-007.html | 33 + .../out-of-flow-in-multicolumn-008.html | 34 + .../out-of-flow-in-multicolumn-009.html | 33 + .../out-of-flow-in-multicolumn-010.html | 39 + .../out-of-flow-in-multicolumn-011.html | 37 + .../js/CSS-supports-CSSStyleDeclaration.html | 1 - .../content-visibility-077.tentative.html | 27 + ...n-background-properties-border-radius.html | 55 + ...age-orientation-background-properties.html | 1 - ...ckground-properties-border-radius-ref.html | 53 + ...orientation-background-properties-ref.html | 1 - .../hit-test-transformed-child.html | 30 + .../multicol-span-all-margin-003.html | 12 + .../{ => sticky}/position-sticky-bottom.html | 2 +- .../position-sticky-change-top-ref.html | 0 .../position-sticky-change-top.html | 2 +- ...position-sticky-child-multicolumn-ref.html | 0 .../position-sticky-child-multicolumn.html | 2 +- ...tion-sticky-fixed-ancestor-iframe-ref.html | 0 ...position-sticky-fixed-ancestor-iframe.html | 2 +- .../position-sticky-fixed-ancestor-ref.html | 0 .../position-sticky-fixed-ancestor.html | 2 +- .../position-sticky-flexbox-ref.html | 0 .../{ => sticky}/position-sticky-flexbox.html | 2 +- ...ition-sticky-get-bounding-client-rect.html | 0 .../position-sticky-grid-ref.html | 0 .../{ => sticky}/position-sticky-grid.html | 3 +- .../position-sticky-hyperlink-ref.html | 0 .../position-sticky-hyperlink.html | 0 .../position-sticky-inflow-position.html | 0 .../position-sticky-inline-ref.html | 0 .../{ => sticky}/position-sticky-inline.html | 2 +- ...y-input-box-gets-focused-after-scroll.html | 0 .../position-sticky-large-top-2-ref.html | 0 ...position-sticky-large-top-2.tentative.html | 0 .../position-sticky-large-top-ref.html | 0 .../position-sticky-large-top.tentative.html | 0 .../{ => sticky}/position-sticky-left.html | 3 +- .../{ => sticky}/position-sticky-margins.html | 2 +- .../position-sticky-nested-bottom.html | 2 +- .../position-sticky-nested-inline-ref.html | 0 .../position-sticky-nested-inline.html | 2 +- .../position-sticky-nested-left.html | 2 +- .../position-sticky-nested-right.html | 2 +- .../position-sticky-nested-table-ref.html | 0 .../position-sticky-nested-table.html | 2 +- .../position-sticky-nested-top.html | 2 +- .../position-sticky-offset-overflow.html | 0 .../position-sticky-offset-top-left.html | 0 .../position-sticky-overflow-hidden.html | 2 +- .../position-sticky-overflow-padding.html | 2 +- .../{ => sticky}/position-sticky-parsing.html | 0 .../position-sticky-rendering-ref.html | 0 .../position-sticky-rendering.html | 2 +- .../{ => sticky}/position-sticky-right.html | 2 +- .../position-sticky-root-scroller.html | 0 ...position-sticky-scroll-reposition-ref.html | 0 .../position-sticky-scroll-reposition.html | 0 ...ticky-scroll-with-clip-and-abspos-ref.html | 0 ...on-sticky-scroll-with-clip-and-abspos.html | 0 ...sition-sticky-scrolled-remove-sibling.html | 0 .../position-sticky-stacking-context-ref.html | 0 .../position-sticky-stacking-context.html | 2 +- .../position-sticky-table-parts-ref.html | 0 .../position-sticky-table-parts.html | 2 +- ...osition-sticky-table-tfoot-bottom-ref.html | 0 .../position-sticky-table-tfoot-bottom.html | 2 +- .../position-sticky-table-th-bottom-ref.html | 0 .../position-sticky-table-th-bottom.html | 0 .../position-sticky-table-th-left-ref.html | 0 .../position-sticky-table-th-left.html | 2 +- .../position-sticky-table-th-right-ref.html | 0 .../position-sticky-table-th-right.html | 2 +- .../position-sticky-table-th-top-ref.html | 0 .../position-sticky-table-th-top.html | 0 .../position-sticky-table-thead-top-ref.html | 0 .../position-sticky-table-thead-top.html | 2 +- .../position-sticky-table-tr-bottom-ref.html | 0 .../position-sticky-table-tr-bottom.html | 2 +- .../position-sticky-table-tr-top-ref.html | 0 .../position-sticky-table-tr-top.html | 3 +- .../{ => sticky}/position-sticky-top.html | 2 +- .../position-sticky-transforms-translate.html | 2 +- .../position-sticky-transforms.html | 2 +- .../position-sticky-writing-modes-ref.html | 0 .../position-sticky-writing-modes.html | 2 +- .../selection-paint-image-notref.html | 4 + .../css/css-pseudo/selection-paint-image.html | 17 + .../aspect-ratio/zero-or-infinity-001.html | 2 +- .../aspect-ratio/zero-or-infinity-002.html | 2 +- .../aspect-ratio/zero-or-infinity-003.html | 2 +- .../aspect-ratio/zero-or-infinity-004.html | 2 +- .../aspect-ratio/zero-or-infinity-005.html | 2 +- .../intrinsic-size-fallback-replaced.html | 45 + .../change-scale-wide-range-ref.html | 3 + .../change-scale-wide-range.html | 29 + .../huge-length-tiny-scale-ref.html | 2 + .../huge-length-tiny-scale.html | 20 + ...esize-child-will-change-transform-ref.html | 3 + .../resize-child-will-change-transform.html | 8 + .../elementFromPoint-float-in-relative.html | 23 + .../docs/running-tests/from-web.md | 6 + ...ventListenerAbortController.tentative.html | 24 + ...n-html-element-having-contenteditable.html | 2 +- .../experimental-features/resources/common.js | 2 +- ...feature-policy-trust-token-redemption.html | 10 +- ...lt-feature-policy.tentative.https.sub.html | 8 +- ...rame-policy-allowed-for-all.https.sub.html | 38 +- ...ame-policy-allowed-for-self.https.sub.html | 18 +- ...y-allowed-for-some-override.https.sub.html | 2 +- ...ame-policy-allowed-for-some.https.sub.html | 4 +- ...ader-policy-allowed-for-all.https.sub.html | 7 +- ...der-policy-allowed-for-some.https.sub.html | 5 +- ...licy-header-policy-declined.https.sub.html | 9 +- ...ader-policy-allowed-for-all.https.sub.html | 8 +- ...der-policy-allowed-for-self.https.sub.html | 2 +- ...t-allowed-by-feature-policy.https.sub.html | 9 +- .../reporting/camera-report-only.https.html | 29 - .../camera-report-only.https.html.headers | 1 - .../encrypted-media-report-only.https.html | 30 - ...ypted-media-report-only.https.html.headers | 1 - .../reporting/fullscreen-report-only.html | 31 - .../fullscreen-report-only.html.headers | 1 - .../generic-sensor-report-only.https.html | 55 - ...eric-sensor-report-only.https.html.headers | 1 - .../geolocation-report-only.https.html | 36 - ...geolocation-report-only.https.html.headers | 1 - .../microphone-report-only.https.html | 29 - .../microphone-report-only.https.html.headers | 1 - .../reporting/midi-report-only.https.html | 34 - .../midi-report-only.https.html.headers | 1 - .../reporting/payment-report-only.https.html | 37 - .../payment-report-only.https.html.headers | 1 - .../picture-in-picture-report-only.html | 40 - ...icture-in-picture-report-only.html.headers | 1 - .../screen-wake-lock-report-only.https.html | 32 - ...n-wake-lock-report-only.https.html.headers | 1 - .../reporting/serial-report-only.https.html | 46 - .../serial-report-only.https.html.headers | 1 - .../reporting/sync-xhr-report-only.html | 28 - .../sync-xhr-report-only.html.headers | 1 - .../reporting/usb-report-only.https.html | 30 - .../usb-report-only.https.html.headers | 1 - .../reporting/xr-report-only.https.html | 37 - .../xr-report-only.https.html.headers | 1 - .../feature-policy/resources/featurepolicy.js | 2 +- ...network-partition-about-blank-checker.html | 35 + ...g-same-site-iframe-outer-contenwindow.html | 29 - .../gamepad/feature-policy-gamepad.html | 15 +- ...epad-default-feature-policy.https.sub.html | 42 +- .../gamepad/gamepad-secure-context.html | 17 +- .../text/2d.text.draw.align.end.ltr.html | 1 + .../text/2d.text.draw.align.end.ltr.worker.js | 1 + .../text/2d.text.draw.align.end.rtl.html | 1 + .../text/2d.text.draw.align.end.rtl.worker.js | 1 + .../text/2d.text.draw.align.start.ltr.html | 1 + .../2d.text.draw.align.start.ltr.worker.js | 1 + .../text/2d.text.draw.align.start.rtl.html | 1 + .../2d.text.draw.align.start.rtl.worker.js | 1 + .../canvas/tools/yaml/offscreen/text.yaml | 8 +- ...ross-origin-isolated-permission.https.html | 2 +- .../flow-content-0/dialog.html | 25 +- .../sticky-content-crash.html | 22 + .../large-cols-abssize.html | 9 + .../large-cols-percentage.html | 9 + .../large-cols-relsize.html | 9 + .../large-rows-abssize.html | 9 + .../large-rows-percentage.html | 9 + .../large-rows-relsize.html | 9 + .../reference/green-ref.html | 5 + .../resources/green.html | 5 + .../resources/red.html | 5 + .../abspos-dialog-layout.html | 71 +- .../centering-iframe.sub.html | 3 +- .../the-dialog-element/centering.html | 54 +- .../dialog-scrolled-viewport.html | 45 - ...=> activation-thru-contextmenu-event.html} | 20 +- .../web-platform-tests/import-maps/META.yml | 4 + .../web-platform-tests/import-maps/README.md | 9 - .../worker-request/success.tentative.html | 25 - .../import-maps/acquiring/README.md | 1 + .../dynamic-import.html} | 7 +- .../script-tag.html} | 7 +- .../worker-request.html} | 13 +- ...entative.html => bare-specifiers.sub.html} | 9 +- .../import-maps/bare/README.md | 1 + .../{core => }/bare/__dir__.headers | 0 .../import-maps/{core => }/bare/bare | 0 .../{core => }/bare/cross-origin-bare | 0 .../import-maps/{core => }/bare/to-bare | 0 .../import-maps/{core => }/bare/to-data | 0 ...tml => applied-to-target-dynamic.sub.html} | 0 ...tative.html => applied-to-target.sub.html} | 0 ...ilure.tentative.html => hash-failure.html} | 0 .../csp/{hash.tentative.html => hash.html} | 0 ...lure.tentative.html => nonce-failure.html} | 0 .../csp/{nonce.tentative.html => nonce.html} | 0 ...line.tentative.html => unsafe-inline.html} | 0 .../{common => data-driven}/README.md | 2 +- .../parsing-internal.https.html} | 2 +- .../resolving-internal.https.html} | 4 +- .../resolving.https.html} | 2 +- .../resources/data-base-url.json | 0 .../resources/empty-import-map-internal.json | 0 .../resources/empty-import-map.json | 0 .../resources/overlapping-entries.json | 0 .../packages-via-trailing-slashes.json | 0 .../resources/parsing-addresses-absolute.json | 0 .../resources/parsing-addresses-invalid.json | 0 .../resources/parsing-addresses.json | 0 .../resources/parsing-invalid-json.json | 0 .../parsing-schema-normalization.json | 0 .../resources/parsing-schema-scope.json | 0 .../parsing-schema-specifier-map.json | 0 .../resources/parsing-schema-toplevel.json | 0 .../resources/parsing-scope-keys.json | 0 .../resources/parsing-specifier-keys.json | 0 .../resources/parsing-trailing-slashes.json | 0 .../resources/resolving-null.json | 0 .../resources/scopes-exact-vs-prefix.json | 0 .../resources/scopes.json | 0 .../resources/test-helper-iframe.js} | 0 .../resources/test-helper.js} | 4 +- .../resources/tricky-specifiers.json | 0 .../resources/url-specifiers.json | 0 .../service-worker.js} | 2 +- .../tools/format_json.py | 0 ...tive.html => data-url-specifiers.sub.html} | 11 +- ...html => http-url-like-specifiers.sub.html} | 17 +- .../import-maps/module-map-key.html | 21 + .../{core => }/not-as-classic-script.html | 0 .../import-maps/resources/test-helper.js | 11 +- .../import-maps/{core => }/static-import.py | 4 + .../penPointerEventProperties.html.ini | 2 +- .../actions/penPointerEvents.html.ini | 6 + .../touchPointerEventProperties.html.ini | 6 + .../testharness/lone-surrogates.html.ini | 7 + .../actions/penPointerEventProperties.html | 68 +- .../testdriver/actions/penPointerEvents.html | 85 + ...revent_pointermove_in_pointerlock.html.ini | 3 - .../actions/touchPointerEventProperties.html | 71 + .../testharness/lone-surrogates.html | 10 + ...get-target-ranges-backspace.tentative.html | 586 ++-- ...target-ranges-forwarddelete.tentative.html | 649 +++-- ...ges-non-collapsed-selection.tentative.html | 261 +- .../input-events-get-target-ranges.js | 24 + .../interfaces/WebCryptoAPI.idl | 41 - .../wpt/web-platform-tests/interfaces/dom.idl | 38 +- .../interfaces/scroll-animations.idl | 2 +- tests/wpt/web-platform-tests/lint.ignore | 2 +- ...ediaRecorder-destroy-script-execution.html | 10 +- .../MediaRecorder-error.html | 43 +- .../MediaRecorder-events-and-exceptions.html | 24 +- .../MediaRecorder-mimetype.html | 68 +- .../MediaRecorder-pause-resume.html | 20 +- .../MediaRecorder-stop.html | 43 +- .../support/MediaRecorder-iframe.html | 22 +- .../mediacapture-record/utils/sources.js | 75 + .../experimental-features/resources/common.js | 2 +- ...issions-policy-trust-token-redemption.html | 10 +- ...ermissions-policy.tentative.https.sub.html | 8 +- ...lowed-by-permissions-policy.https.sub.html | 17 +- ...ader-policy-allowed-for-all.https.sub.html | 7 +- ...der-policy-allowed-for-some.https.sub.html | 5 +- ...licy-header-policy-declined.https.sub.html | 9 +- ...ader-policy-allowed-for-all.https.sub.html | 8 +- ...der-policy-allowed-for-self.https.sub.html | 2 +- .../reporting/camera-report-only.https.html | 4 +- .../reporting/camera-reporting.https.html | 4 +- .../encrypted-media-report-only.https.html | 4 +- .../encrypted-media-reporting.https.html | 4 +- .../reporting/fullscreen-report-only.html | 4 +- .../reporting/fullscreen-reporting.html | 8 +- .../generic-sensor-report-only.https.html | 4 +- .../generic-sensor-reporting.https.html | 4 +- .../geolocation-report-only.https.html | 4 +- .../geolocation-reporting.https.html | 4 +- .../microphone-report-only.https.html | 4 +- .../reporting/microphone-reporting.https.html | 4 +- .../reporting/midi-report-only.https.html | 4 +- .../reporting/midi-reporting.https.html | 4 +- .../reporting/payment-report-only.https.html | 4 +- .../reporting/payment-reporting.https.html | 4 +- .../picture-in-picture-report-only.html | 4 +- .../picture-in-picture-reporting.html | 4 +- .../reporting/serial-report-only.https.html | 6 +- .../reporting/serial-reporting.https.html | 6 +- .../reporting/sync-xhr-report-only.html | 4 +- .../reporting/sync-xhr-reporting.html | 4 +- .../reporting/usb-report-only.https.html | 4 +- .../reporting/usb-reporting.https.html | 4 +- .../reporting/xr-report-only.https.html | 4 +- .../reporting/xr-reporting.https.html | 4 +- .../resources/permissions-policy.js | 2 +- .../chromium/generic_sensor_mocks.js | 12 +- .../resources/test/tests/unit/helpers.js | 2 +- .../test/tests/unit/unpaired-surrogates.html | 5 + .../resources/testdriver-actions.js | 66 +- .../resources/testharness.js | 29 +- .../progress-based-current-time.tenative.html | 501 ++++ .../scroll-animations/testcommon.js | 8 + ...find-range-from-text-directive-target.html | 71 + .../find-range-from-text-directive.html | 287 ++ ...ative-shadow-dom-attachment.tentative.html | 4 +- ...eclarative-shadow-dom-basic.tentative.html | 32 +- ...clarative-shadow-dom-opt-in.tentative.html | 147 +- .../declarative/getinnerhtml.tentative.html | 2 +- .../declarative/setinnerhtml.tentative.html | 39 + .../readable-byte-streams/general.any.js | 2 +- .../animations/animated-classname-crash.svg | 7 + .../svglength-animation-invalid-value-1.html | 15 +- .../svglength-animation-invalid-value-2.html | 15 +- .../svglength-animation-invalid-value-3.html | 15 +- .../web-platform-tests/tools/certs/cacert.key | 56 +- .../web-platform-tests/tools/certs/cacert.pem | 36 +- .../tools/certs/web-platform.test.key | 52 +- .../tools/certs/web-platform.test.pem | 108 +- .../tools/gitignore/gitignore.py | 7 +- .../tools/manifest/jsonlib.py | 144 + .../tools/manifest/manifest.py | 14 +- .../web-platform-tests/tools/manifest/vcs.py | 40 +- tests/wpt/web-platform-tests/tools/mypy.ini | 3 + .../tools/webdriver/webdriver/client.py | 66 +- .../web-platform-tests/tools/wpt/browser.py | 8 +- tests/wpt/web-platform-tests/tools/wpt/wpt.py | 5 +- .../tools/wptrunner/requirements.txt | 2 +- .../requirements_android_webview.txt | 2 +- .../tools/wptrunner/requirements_chrome.txt | 2 +- .../wptrunner/requirements_chrome_android.txt | 2 +- .../wptrunner/requirements_chrome_ios.txt | 2 +- .../tools/wptrunner/requirements_edge.txt | 2 +- .../wptrunner/requirements_edge_chromium.txt | 2 +- .../tools/wptrunner/requirements_epiphany.txt | 2 +- .../tools/wptrunner/requirements_firefox.txt | 2 +- .../tools/wptrunner/requirements_ie.txt | 2 +- .../tools/wptrunner/requirements_opera.txt | 2 +- .../tools/wptrunner/requirements_safari.txt | 2 +- .../tools/wptrunner/requirements_sauce.txt | 2 +- .../tools/wptrunner/requirements_servo.txt | 2 +- .../tools/wptrunner/requirements_webkit.txt | 2 +- .../wptrunner/browsers/chrome_spki_certs.py | 2 +- .../wptrunner/wptrunner/browsers/firefox.py | 2 +- .../tools/wptrunner/wptrunner/update/state.py | 4 +- ...ameter-validation-xhr.tentative.https.html | 10 +- ...-parameter-validation.tentative.https.html | 10 +- .../require-trusted-types-for.tentative.html | 22 + .../webcodecs/video-encoder.html | 414 +-- .../tests/perform_actions/conftest.py | 21 + .../tests/perform_actions/pointer.py | 79 + .../support/test_actions_pointer_wdspec.html | 102 + tests/wpt/web-platform-tests/wpt | 15 +- 440 files changed, 6186 insertions(+), 3542 deletions(-) delete mode 100644 tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-003.html.ini create mode 100644 tests/wpt/metadata-layout-2020/css/css-images/image-orientation/image-orientation-background-properties-border-radius.html.ini create mode 100644 tests/wpt/metadata-layout-2020/css/css-transforms/change-scale-wide-range.html.ini delete mode 100644 tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-001.html.ini create mode 100644 tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-float-in-relative.html.ini create mode 100644 tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-invalid-cases.html.ini create mode 100644 tests/wpt/metadata-layout-2020/dom/abort/addEventListenerAbortController.tentative.html.ini delete mode 100644 tests/wpt/metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini rename tests/wpt/{metadata/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini => metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_3.html.ini} (71%) rename tests/wpt/metadata-layout-2020/html/browsers/history/the-history-interface/{traverse_the_history_2.html.ini => traverse_the_history_4.html.ini} (71%) delete mode 100644 tests/wpt/metadata-layout-2020/html/browsers/origin/cross-origin-objects/cross-origin-objects-on-new-window.html.ini create mode 100644 tests/wpt/metadata-layout-2020/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-abssize.html.ini create mode 100644 tests/wpt/metadata-layout-2020/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-percentage.html.ini create mode 100644 tests/wpt/metadata-layout-2020/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-relsize.html.ini create mode 100644 tests/wpt/metadata-layout-2020/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-abssize.html.ini create mode 100644 tests/wpt/metadata-layout-2020/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-percentage.html.ini create mode 100644 tests/wpt/metadata-layout-2020/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-relsize.html.ini create mode 100644 tests/wpt/metadata-layout-2020/html/semantics/interactive-elements/the-dialog-element/abspos-dialog-layout.html.ini create mode 100644 tests/wpt/metadata-layout-2020/html/webappapis/dynamic-markup-insertion/document-write/module-delayed.html.ini delete mode 100644 tests/wpt/metadata-layout-2020/webmessaging/without-ports/018.html.ini delete mode 100644 tests/wpt/metadata/css/CSS2/floats/hit-test-floats-003.html.ini create mode 100644 tests/wpt/metadata/css/css-images/image-orientation/image-orientation-background-properties-border-radius.html.ini create mode 100644 tests/wpt/metadata/css/css-transforms/change-scale-wide-range.html.ini delete mode 100644 tests/wpt/metadata/css/cssom-view/elementFromPoint-001.html.ini create mode 100644 tests/wpt/metadata/css/cssom-view/elementFromPoint-float-in-relative.html.ini create mode 100644 tests/wpt/metadata/css/cssom-view/elementsFromPoint-invalid-cases.html.ini create mode 100644 tests/wpt/metadata/dom/abort/addEventListenerAbortController.tentative.html.ini delete mode 100644 tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini create mode 100644 tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_3.html.ini create mode 100644 tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_4.html.ini delete mode 100644 tests/wpt/metadata/html/browsers/origin/cross-origin-objects/cross-origin-objects-on-new-window.html.ini create mode 100644 tests/wpt/metadata/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-abssize.html.ini create mode 100644 tests/wpt/metadata/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-percentage.html.ini create mode 100644 tests/wpt/metadata/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-relsize.html.ini create mode 100644 tests/wpt/metadata/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-abssize.html.ini create mode 100644 tests/wpt/metadata/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-percentage.html.ini create mode 100644 tests/wpt/metadata/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-relsize.html.ini delete mode 100644 tests/wpt/metadata/html/semantics/interactive-elements/the-dialog-element/dialog-scrolled-viewport.html.ini create mode 100644 tests/wpt/metadata/html/webappapis/dynamic-markup-insertion/document-write/module-delayed.html.ini delete mode 100644 tests/wpt/metadata/webmessaging/without-ports/018.html.ini create mode 100644 tests/wpt/web-platform-tests/css/CSS2/linebox/crashtests/inline-block-baseline-crash.html rename tests/wpt/web-platform-tests/css/{composite-bgcolor-animation => css-backgrounds}/bg-color-with-gradient-ref.html (100%) rename tests/wpt/web-platform-tests/css/{composite-bgcolor-animation => css-backgrounds}/bg-color-with-gradient.html (100%) rename tests/wpt/web-platform-tests/css/{composite-bgcolor-animation => css-backgrounds}/simple-bg-color-ref.html (100%) rename tests/wpt/web-platform-tests/css/{composite-bgcolor-animation => css-backgrounds}/simple-bg-color.html (100%) rename tests/wpt/web-platform-tests/css/css-break/{out-of-flow-in-multicolum-001-ref.html => out-of-flow-in-multicolumn-001-ref.html} (100%) create mode 100644 tests/wpt/web-platform-tests/css/css-break/out-of-flow-in-multicolumn-003.html create mode 100644 tests/wpt/web-platform-tests/css/css-break/out-of-flow-in-multicolumn-004-ref.html create mode 100644 tests/wpt/web-platform-tests/css/css-break/out-of-flow-in-multicolumn-004.html create mode 100644 tests/wpt/web-platform-tests/css/css-break/out-of-flow-in-multicolumn-005.html create mode 100644 tests/wpt/web-platform-tests/css/css-break/out-of-flow-in-multicolumn-006.html create mode 100644 tests/wpt/web-platform-tests/css/css-break/out-of-flow-in-multicolumn-007.html create mode 100644 tests/wpt/web-platform-tests/css/css-break/out-of-flow-in-multicolumn-008.html create mode 100644 tests/wpt/web-platform-tests/css/css-break/out-of-flow-in-multicolumn-009.html create mode 100644 tests/wpt/web-platform-tests/css/css-break/out-of-flow-in-multicolumn-010.html create mode 100644 tests/wpt/web-platform-tests/css/css-break/out-of-flow-in-multicolumn-011.html create mode 100644 tests/wpt/web-platform-tests/css/css-contain/content-visibility/content-visibility-077.tentative.html create mode 100644 tests/wpt/web-platform-tests/css/css-images/image-orientation/image-orientation-background-properties-border-radius.html create mode 100644 tests/wpt/web-platform-tests/css/css-images/image-orientation/reference/image-orientation-background-properties-border-radius-ref.html create mode 100644 tests/wpt/web-platform-tests/css/css-multicol/hit-test-transformed-child.html create mode 100644 tests/wpt/web-platform-tests/css/css-multicol/multicol-span-all-margin-003.html rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-bottom.html (96%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-change-top-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-change-top.html (96%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-child-multicolumn-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-child-multicolumn.html (96%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-fixed-ancestor-iframe-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-fixed-ancestor-iframe.html (94%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-fixed-ancestor-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-fixed-ancestor.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-flexbox-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-flexbox.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-get-bounding-client-rect.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-grid-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-grid.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-hyperlink-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-hyperlink.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-inflow-position.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-inline-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-inline.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-input-box-gets-focused-after-scroll.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-large-top-2-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-large-top-2.tentative.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-large-top-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-large-top.tentative.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-left.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-margins.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-nested-bottom.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-nested-inline-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-nested-inline.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-nested-left.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-nested-right.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-nested-table-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-nested-table.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-nested-top.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-offset-overflow.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-offset-top-left.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-overflow-hidden.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-overflow-padding.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-parsing.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-rendering-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-rendering.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-right.html (96%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-root-scroller.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-scroll-reposition-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-scroll-reposition.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-scroll-with-clip-and-abspos-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-scroll-with-clip-and-abspos.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-scrolled-remove-sibling.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-stacking-context-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-stacking-context.html (95%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-parts-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-parts.html (96%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-tfoot-bottom-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-tfoot-bottom.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-th-bottom-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-th-bottom.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-th-left-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-th-left.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-th-right-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-th-right.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-th-top-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-th-top.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-thead-top-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-thead-top.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-tr-bottom-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-tr-bottom.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-tr-top-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-table-tr-top.html (98%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-top.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-transforms-translate.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-transforms.html (97%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-writing-modes-ref.html (100%) rename tests/wpt/web-platform-tests/css/css-position/{ => sticky}/position-sticky-writing-modes.html (97%) create mode 100644 tests/wpt/web-platform-tests/css/css-pseudo/selection-paint-image-notref.html create mode 100644 tests/wpt/web-platform-tests/css/css-pseudo/selection-paint-image.html create mode 100644 tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size-fallback-replaced.html create mode 100644 tests/wpt/web-platform-tests/css/css-transforms/change-scale-wide-range-ref.html create mode 100644 tests/wpt/web-platform-tests/css/css-transforms/change-scale-wide-range.html create mode 100644 tests/wpt/web-platform-tests/css/css-transforms/huge-length-tiny-scale-ref.html create mode 100644 tests/wpt/web-platform-tests/css/css-transforms/huge-length-tiny-scale.html create mode 100644 tests/wpt/web-platform-tests/css/css-ui/resize-child-will-change-transform-ref.html create mode 100644 tests/wpt/web-platform-tests/css/css-ui/resize-child-will-change-transform.html create mode 100644 tests/wpt/web-platform-tests/css/cssom-view/elementFromPoint-float-in-relative.html create mode 100644 tests/wpt/web-platform-tests/dom/abort/addEventListenerAbortController.tentative.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/camera-report-only.https.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/camera-report-only.https.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/encrypted-media-report-only.https.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/encrypted-media-report-only.https.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/fullscreen-report-only.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/fullscreen-report-only.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/generic-sensor-report-only.https.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/generic-sensor-report-only.https.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/geolocation-report-only.https.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/geolocation-report-only.https.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/microphone-report-only.https.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/microphone-report-only.https.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/midi-report-only.https.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/midi-report-only.https.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/payment-report-only.https.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/payment-report-only.https.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/picture-in-picture-report-only.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/picture-in-picture-report-only.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/screen-wake-lock-report-only.https.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/screen-wake-lock-report-only.https.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/serial-report-only.https.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/serial-report-only.https.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/sync-xhr-report-only.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/sync-xhr-report-only.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/usb-report-only.https.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/usb-report-only.https.html.headers delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/xr-report-only.https.html delete mode 100644 tests/wpt/web-platform-tests/feature-policy/reporting/xr-report-only.https.html.headers create mode 100644 tests/wpt/web-platform-tests/fetch/connection-pool/resources/network-partition-about-blank-checker.html delete mode 100644 tests/wpt/web-platform-tests/focus/support/activeelement-after-immediately-focusing-same-site-iframe-outer-contenwindow.html create mode 100644 tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-fieldset-and-legend-elements/sticky-content-crash.html create mode 100644 tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-abssize.html create mode 100644 tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-percentage.html create mode 100644 tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-relsize.html create mode 100644 tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-abssize.html create mode 100644 tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-percentage.html create mode 100644 tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-relsize.html create mode 100644 tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/reference/green-ref.html create mode 100644 tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/resources/green.html create mode 100644 tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/resources/red.html delete mode 100644 tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-scrolled-viewport.html rename tests/wpt/web-platform-tests/html/user-activation/{activation-thru-contextmenu-event-manual.html => activation-thru-contextmenu-event.html} (68%) create mode 100644 tests/wpt/web-platform-tests/import-maps/META.yml delete mode 100644 tests/wpt/web-platform-tests/import-maps/README.md delete mode 100644 tests/wpt/web-platform-tests/import-maps/acquire-import-maps-flag/worker-request/success.tentative.html create mode 100644 tests/wpt/web-platform-tests/import-maps/acquiring/README.md rename tests/wpt/web-platform-tests/import-maps/{acquire-import-maps-flag/dynamic-import/success.tentative.html => acquiring/dynamic-import.html} (74%) rename tests/wpt/web-platform-tests/import-maps/{acquire-import-maps-flag/script-tag/success.tentative.html => acquiring/script-tag.html} (60%) rename tests/wpt/web-platform-tests/import-maps/{core/module-map-key.tentative.html => acquiring/worker-request.html} (54%) rename tests/wpt/web-platform-tests/import-maps/{core/bare.sub.tentative.html => bare-specifiers.sub.html} (75%) create mode 100644 tests/wpt/web-platform-tests/import-maps/bare/README.md rename tests/wpt/web-platform-tests/import-maps/{core => }/bare/__dir__.headers (100%) rename tests/wpt/web-platform-tests/import-maps/{core => }/bare/bare (100%) rename tests/wpt/web-platform-tests/import-maps/{core => }/bare/cross-origin-bare (100%) rename tests/wpt/web-platform-tests/import-maps/{core => }/bare/to-bare (100%) rename tests/wpt/web-platform-tests/import-maps/{core => }/bare/to-data (100%) rename tests/wpt/web-platform-tests/import-maps/csp/{applied-to-target-dynamic.sub.tentative.html => applied-to-target-dynamic.sub.html} (100%) rename tests/wpt/web-platform-tests/import-maps/csp/{applied-to-target.sub.tentative.html => applied-to-target.sub.html} (100%) rename tests/wpt/web-platform-tests/import-maps/csp/{hash-failure.tentative.html => hash-failure.html} (100%) rename tests/wpt/web-platform-tests/import-maps/csp/{hash.tentative.html => hash.html} (100%) rename tests/wpt/web-platform-tests/import-maps/csp/{nonce-failure.tentative.html => nonce-failure.html} (100%) rename tests/wpt/web-platform-tests/import-maps/csp/{nonce.tentative.html => nonce.html} (100%) rename tests/wpt/web-platform-tests/import-maps/csp/{unsafe-inline.tentative.html => unsafe-inline.html} (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/README.md (98%) rename tests/wpt/web-platform-tests/import-maps/{common/parsing.tentative.https.html => data-driven/parsing-internal.https.html} (97%) rename tests/wpt/web-platform-tests/import-maps/{common/resolving-internal.tentative.https.html => data-driven/resolving-internal.https.html} (93%) rename tests/wpt/web-platform-tests/import-maps/{common/resolving.tentative.https.html => data-driven/resolving.https.html} (97%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/data-base-url.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/empty-import-map-internal.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/empty-import-map.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/overlapping-entries.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/packages-via-trailing-slashes.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/parsing-addresses-absolute.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/parsing-addresses-invalid.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/parsing-addresses.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/parsing-invalid-json.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/parsing-schema-normalization.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/parsing-schema-scope.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/parsing-schema-specifier-map.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/parsing-schema-toplevel.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/parsing-scope-keys.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/parsing-specifier-keys.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/parsing-trailing-slashes.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/resolving-null.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/scopes-exact-vs-prefix.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/scopes.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common/resources/common-test-helper-iframe.js => data-driven/resources/test-helper-iframe.js} (100%) rename tests/wpt/web-platform-tests/import-maps/{common/resources/common-test-helper.js => data-driven/resources/test-helper.js} (97%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/tricky-specifiers.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/resources/url-specifiers.json (100%) rename tests/wpt/web-platform-tests/import-maps/{common/common-test-service-worker.js => data-driven/service-worker.js} (91%) rename tests/wpt/web-platform-tests/import-maps/{common => data-driven}/tools/format_json.py (100%) rename tests/wpt/web-platform-tests/import-maps/{core/data.sub.tentative.html => data-url-specifiers.sub.html} (75%) rename tests/wpt/web-platform-tests/import-maps/{core/http.sub.tentative.html => http-url-like-specifiers.sub.html} (59%) create mode 100644 tests/wpt/web-platform-tests/import-maps/module-map-key.html rename tests/wpt/web-platform-tests/import-maps/{core => }/not-as-classic-script.html (100%) rename tests/wpt/web-platform-tests/import-maps/{core => }/static-import.py (54%) create mode 100644 tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/penPointerEvents.html.ini create mode 100644 tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/touchPointerEventProperties.html.ini create mode 100644 tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testharness/lone-surrogates.html.ini create mode 100644 tests/wpt/web-platform-tests/infrastructure/testdriver/actions/penPointerEvents.html delete mode 100644 tests/wpt/web-platform-tests/infrastructure/testdriver/actions/pointerevent_pointermove_in_pointerlock.html.ini create mode 100644 tests/wpt/web-platform-tests/infrastructure/testdriver/actions/touchPointerEventProperties.html create mode 100644 tests/wpt/web-platform-tests/infrastructure/testharness/lone-surrogates.html create mode 100644 tests/wpt/web-platform-tests/mediacapture-record/utils/sources.js create mode 100644 tests/wpt/web-platform-tests/scroll-animations/progress-based-current-time.tenative.html create mode 100644 tests/wpt/web-platform-tests/scroll-to-text-fragment/find-range-from-text-directive-target.html create mode 100644 tests/wpt/web-platform-tests/scroll-to-text-fragment/find-range-from-text-directive.html create mode 100644 tests/wpt/web-platform-tests/shadow-dom/declarative/setinnerhtml.tentative.html create mode 100644 tests/wpt/web-platform-tests/svg/animations/animated-classname-crash.svg create mode 100644 tests/wpt/web-platform-tests/tools/manifest/jsonlib.py create mode 100644 tests/wpt/web-platform-tests/webdriver/tests/perform_actions/support/test_actions_pointer_wdspec.html diff --git a/tests/wpt/metadata-layout-2020/FileAPI/url/url-in-tags-revoke.window.js.ini b/tests/wpt/metadata-layout-2020/FileAPI/url/url-in-tags-revoke.window.js.ini index 3605e8f3fc9..76b44d9e9cf 100644 --- a/tests/wpt/metadata-layout-2020/FileAPI/url/url-in-tags-revoke.window.js.ini +++ b/tests/wpt/metadata-layout-2020/FileAPI/url/url-in-tags-revoke.window.js.ini @@ -4,7 +4,7 @@ expected: TIMEOUT [Opening a blob URL in a new window immediately before revoking it works.] - expected: TIMEOUT + expected: FAIL [Fetching a blob URL immediately before revoking it works in an iframe.] expected: FAIL 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 deleted file mode 100644 index f29da48a2a0..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-003.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[hit-test-floats-003.html] - [Miss float below something else] - expected: FAIL - diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/linebox/inline-negative-margin-001.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/linebox/inline-negative-margin-001.html.ini index 6425f4beda1..cb2edcb5dcd 100644 --- a/tests/wpt/metadata-layout-2020/css/CSS2/linebox/inline-negative-margin-001.html.ini +++ b/tests/wpt/metadata-layout-2020/css/CSS2/linebox/inline-negative-margin-001.html.ini @@ -5,9 +5,6 @@ [[data-expected-height\] 7] expected: FAIL - [[data-expected-height\] 1] - expected: FAIL - - [[data-expected-height\] 2] + [[data-expected-height\] 4] expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-images/image-orientation/image-orientation-background-properties-border-radius.html.ini b/tests/wpt/metadata-layout-2020/css/css-images/image-orientation/image-orientation-background-properties-border-radius.html.ini new file mode 100644 index 00000000000..d7080b90fcf --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/css-images/image-orientation/image-orientation-background-properties-border-radius.html.ini @@ -0,0 +1,2 @@ +[image-orientation-background-properties-border-radius.html] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-transforms/change-scale-wide-range.html.ini b/tests/wpt/metadata-layout-2020/css/css-transforms/change-scale-wide-range.html.ini new file mode 100644 index 00000000000..48a4ed0c771 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/css-transforms/change-scale-wide-range.html.ini @@ -0,0 +1,2 @@ +[change-scale-wide-range.html] + expected: TIMEOUT diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-001.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-001.html.ini deleted file mode 100644 index e38782d8c85..00000000000 --- a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-001.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[elementFromPoint-001.html] - [CSSOM View - 5 - extensions to the Document interface] - expected: FAIL - diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-float-in-relative.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-float-in-relative.html.ini new file mode 100644 index 00000000000..fa416a1a5eb --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-float-in-relative.html.ini @@ -0,0 +1,4 @@ +[elementFromPoint-float-in-relative.html] + [elementFromPoint-float-in-relative] + expected: FAIL + diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPosition.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPosition.html.ini index c131078eace..23c61ede1a1 100644 --- a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPosition.html.ini +++ b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPosition.html.ini @@ -17,3 +17,6 @@ [test the top of layer] expected: FAIL + [test some point of the element: top left corner] + expected: FAIL + diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-invalid-cases.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-invalid-cases.html.ini new file mode 100644 index 00000000000..e181af5397f --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-invalid-cases.html.ini @@ -0,0 +1,4 @@ +[elementsFromPoint-invalid-cases.html] + [The root element is the last element returned for otherwise empty queries within the viewport] + expected: FAIL + diff --git a/tests/wpt/metadata-layout-2020/dom/abort/addEventListenerAbortController.tentative.html.ini b/tests/wpt/metadata-layout-2020/dom/abort/addEventListenerAbortController.tentative.html.ini new file mode 100644 index 00000000000..60f56e372f7 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/dom/abort/addEventListenerAbortController.tentative.html.ini @@ -0,0 +1,4 @@ +[addEventListenerAbortController.tentative.html] + [Tests support for EventController to cancel event listeners in addEventListener.] + expected: FAIL + 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 df19a73ebe2..999dcf4246b 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 @@ -324,9 +324,15 @@ [ +
- + +

The red image to the right should shine through the green selection.

+
 
+ diff --git a/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-001.html b/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-001.html index d2ed6cfb234..760635c40e8 100644 --- a/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-001.html +++ b/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-001.html @@ -7,5 +7,5 @@

Test passes if there is a filled green square and no red.

-
+
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-002.html b/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-002.html index 28470dd8756..300e56d92cd 100644 --- a/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-002.html +++ b/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-002.html @@ -7,6 +7,6 @@

Test passes if there is a filled green square and no red.

-
+
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-003.html b/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-003.html index ad0c3bf176b..5fb83a105ce 100644 --- a/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-003.html +++ b/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-003.html @@ -7,5 +7,5 @@

Test passes if there is a filled green square and no red.

-
+
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-004.html b/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-004.html index 58db88c3bc1..a90837bad7b 100644 --- a/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-004.html +++ b/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-004.html @@ -7,6 +7,6 @@

Test passes if there is a filled green square and no red.

-
+
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-005.html b/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-005.html index 2892028f940..d018184faaa 100644 --- a/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-005.html +++ b/tests/wpt/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-005.html @@ -8,5 +8,5 @@

Test passes if there is a filled green square and no red.

-
+
diff --git a/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size-fallback-replaced.html b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size-fallback-replaced.html new file mode 100644 index 00000000000..aaac6482410 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-sizing/intrinsic-size-fallback-replaced.html @@ -0,0 +1,45 @@ + + + + + CSS Sizing Test: Testing intrinsic size fallback 300x150 for some replaced elements. + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/css/css-transforms/change-scale-wide-range-ref.html b/tests/wpt/web-platform-tests/css/css-transforms/change-scale-wide-range-ref.html new file mode 100644 index 00000000000..264c6b6f25a --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-transforms/change-scale-wide-range-ref.html @@ -0,0 +1,3 @@ + +
+ diff --git a/tests/wpt/web-platform-tests/css/css-transforms/change-scale-wide-range.html b/tests/wpt/web-platform-tests/css/css-transforms/change-scale-wide-range.html new file mode 100644 index 00000000000..ec41946cfdd --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-transforms/change-scale-wide-range.html @@ -0,0 +1,29 @@ + + +Change scale to very big then back + + + + +
+ + diff --git a/tests/wpt/web-platform-tests/css/css-transforms/huge-length-tiny-scale-ref.html b/tests/wpt/web-platform-tests/css/css-transforms/huge-length-tiny-scale-ref.html new file mode 100644 index 00000000000..f3f8abc50e4 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-transforms/huge-length-tiny-scale-ref.html @@ -0,0 +1,2 @@ + +
diff --git a/tests/wpt/web-platform-tests/css/css-transforms/huge-length-tiny-scale.html b/tests/wpt/web-platform-tests/css/css-transforms/huge-length-tiny-scale.html new file mode 100644 index 00000000000..53f4f7d4478 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-transforms/huge-length-tiny-scale.html @@ -0,0 +1,20 @@ + +Huge lengths with tiny scale + + + + +
diff --git a/tests/wpt/web-platform-tests/css/css-ui/resize-child-will-change-transform-ref.html b/tests/wpt/web-platform-tests/css/css-ui/resize-child-will-change-transform-ref.html new file mode 100644 index 00000000000..36f39fc19bc --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-ui/resize-child-will-change-transform-ref.html @@ -0,0 +1,3 @@ + +
+
diff --git a/tests/wpt/web-platform-tests/css/css-ui/resize-child-will-change-transform.html b/tests/wpt/web-platform-tests/css/css-ui/resize-child-will-change-transform.html new file mode 100644 index 00000000000..b8adf53b04d --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-ui/resize-child-will-change-transform.html @@ -0,0 +1,8 @@ + +CSS resize: child with will-change: transform + + + +
+
+
diff --git a/tests/wpt/web-platform-tests/css/cssom-view/elementFromPoint-float-in-relative.html b/tests/wpt/web-platform-tests/css/cssom-view/elementFromPoint-float-in-relative.html new file mode 100644 index 00000000000..275fe29fb7c --- /dev/null +++ b/tests/wpt/web-platform-tests/css/cssom-view/elementFromPoint-float-in-relative.html @@ -0,0 +1,23 @@ + + + + + + + +
+ + + link + + +
+ + diff --git a/tests/wpt/web-platform-tests/docs/running-tests/from-web.md b/tests/wpt/web-platform-tests/docs/running-tests/from-web.md index fae4c961743..464febbfc04 100644 --- a/tests/wpt/web-platform-tests/docs/running-tests/from-web.md +++ b/tests/wpt/web-platform-tests/docs/running-tests/from-web.md @@ -4,6 +4,12 @@ Tests that have been merged on GitHub are mirrored at [http://w3c-test.org/][w3c [On properly-configured systems](from-local-system), local files may also be served from the URL [http://web-platform.test](http://web-platform.test). +Not all tests can be executed in-browser, as some tests rely on automation +(e.g. via [testdriver.js](../writing-tests/testdriver)) that is not available +when running a browser in a normal user session. + +## Web test runner + For running multiple tests inside a browser, there is a test runner located at `/tools/runner/index.html`. diff --git a/tests/wpt/web-platform-tests/dom/abort/addEventListenerAbortController.tentative.html b/tests/wpt/web-platform-tests/dom/abort/addEventListenerAbortController.tentative.html new file mode 100644 index 00000000000..36373507c19 --- /dev/null +++ b/tests/wpt/web-platform-tests/dom/abort/addEventListenerAbortController.tentative.html @@ -0,0 +1,24 @@ + + + + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/editing/other/select-all-and-delete-in-html-element-having-contenteditable.html b/tests/wpt/web-platform-tests/editing/other/select-all-and-delete-in-html-element-having-contenteditable.html index e8eb5e5e1ab..ab324c6d034 100644 --- a/tests/wpt/web-platform-tests/editing/other/select-all-and-delete-in-html-element-having-contenteditable.html +++ b/tests/wpt/web-platform-tests/editing/other/select-all-and-delete-in-html-element-having-contenteditable.html @@ -45,7 +45,7 @@ async function selectAllWithKey(elementToSelectAll) { } catch (ex) { throw ex; } - throw "Neither Control-A nor Meta-A does not select all contents"; + throw "Neither Control-A nor Meta-A does select all contents"; } function deleteWithBackspaceKey() { diff --git a/tests/wpt/web-platform-tests/feature-policy/experimental-features/resources/common.js b/tests/wpt/web-platform-tests/feature-policy/experimental-features/resources/common.js index c6bea817512..4266e394958 100644 --- a/tests/wpt/web-platform-tests/feature-policy/experimental-features/resources/common.js +++ b/tests/wpt/web-platform-tests/feature-policy/experimental-features/resources/common.js @@ -71,7 +71,7 @@ setup(() => { if (window.reporting_observer_callback) { reports.forEach(window.reporting_observer_callback); } - }, {types: ["feature-policy-violation"]}); + }, {types: ["permissions-policy-violation"]}); window.reporting_observer_instance.observe(); window.reporting_observer_callback = null; }); diff --git a/tests/wpt/web-platform-tests/feature-policy/experimental-features/resources/feature-policy-trust-token-redemption.html b/tests/wpt/web-platform-tests/feature-policy/experimental-features/resources/feature-policy-trust-token-redemption.html index 6ae6f6fa4d4..fa5f38b62f7 100644 --- a/tests/wpt/web-platform-tests/feature-policy/experimental-features/resources/feature-policy-trust-token-redemption.html +++ b/tests/wpt/web-platform-tests/feature-policy/experimental-features/resources/feature-policy-trust-token-redemption.html @@ -3,14 +3,14 @@ window.onload = function() { // When the trust-token-redemption feature policy is enabled, redemption - // and signing ("send-srr") should both be available; when it's disabled, + // and signing ("send-redemption-record") should both be available; when it's disabled, // they should both be unavailable. Send the number of available operations // upstream in order to enforce this in assertions. let num_enabled = 4; try { new Request("https://issuer.example/", { trustToken: { - type: "srr-token-redemption" + type: "token-redemption" } }); } catch (e) { @@ -19,7 +19,7 @@ try { new Request("https://destination.example/", { trustToken: { - type: "send-srr", + type: "send-redemption-record", issuers: ["https://issuer.example/"] } }); @@ -31,7 +31,7 @@ const xhr = new XMLHttpRequest(); xhr.open("GET", "https://issuer.example/"); xhr.setTrustToken({ - type: "srr-token-redemption" + type: "token-redemption" }); } catch (e) { num_enabled--; @@ -41,7 +41,7 @@ const xhr = new XMLHttpRequest(); xhr.open("GET", "https://destination.example/"); xhr.setTrustToken({ - type: "send-srr", + type: "send-redemption-record", issuers: ["https://issuer.example/"] }); } catch (e) { diff --git a/tests/wpt/web-platform-tests/feature-policy/experimental-features/trust-token-redemption-default-feature-policy.tentative.https.sub.html b/tests/wpt/web-platform-tests/feature-policy/experimental-features/trust-token-redemption-default-feature-policy.tentative.https.sub.html index d88048953ea..134ccc084d6 100644 --- a/tests/wpt/web-platform-tests/feature-policy/experimental-features/trust-token-redemption-default-feature-policy.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/feature-policy/experimental-features/trust-token-redemption-default-feature-policy.tentative.https.sub.html @@ -18,12 +18,12 @@ // and XHR interfaces. new Request("https://issuer.example/", { trustToken: { - type: "srr-token-redemption" + type: "token-redemption" } }); new Request("https://destination.example/", { trustToken: { - type: "send-srr", // signing + type: "send-redemption-record", // signing issuers: ["https://issuer.example/"] } }); @@ -31,13 +31,13 @@ const redemption_xhr = new XMLHttpRequest(); redemption_xhr.open("GET", "https://issuer.example/"); redemption_xhr.setTrustToken({ - type: "srr-token-redemption" + type: "token-redemption" }); const signing_xhr = new XMLHttpRequest(); signing_xhr.open("GET", "https://destination.example/"); signing_xhr.setTrustToken({ - type: "send-srr", // signing + type: "send-redemption-record", // signing issuers: ["https://issuer.example/"] }); } catch (e) { diff --git a/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-all.https.sub.html b/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-all.https.sub.html index aede7e7876b..63cd9853dce 100644 --- a/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-all.https.sub.html +++ b/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-all.https.sub.html @@ -30,7 +30,7 @@ test_frame_policy('fullscreen', same_origin_src, undefined, true); }, 'Test frame policy on same origin iframe inherit from header policy.'); test(function() { - test_frame_policy('fullscreen', cross_origin_src, undefined, true); + test_frame_policy('fullscreen', cross_origin_src, undefined, false); }, 'Test frame policy on cross origin iframe inherit from header policy.'); test(function() { test_frame_policy('fullscreen', undefined, true, true); @@ -42,9 +42,43 @@ test_frame_policy('fullscreen', cross_origin_src, true, true); }, 'Test frame policy on srcdoc+ cross origin iframe inherit from header policy.'); test(function() { - test_frame_policy('fullscreen', data_src, undefined, true); + test_frame_policy('fullscreen', data_src, undefined, false); }, 'Test frame policy on data: URL cross origin iframe inherit from header policy.'); + // Test that frame policy can be used for sandboxed frames + test(function() { + test_frame_policy( + 'fullscreen', same_origin_src, undefined, false, undefined, false, true); + }, 'Test frame policy on sandboxed iframe with no allow attribute.'); + test(function() { + test_frame_policy( + 'fullscreen', same_origin_src, undefined, true, 'fullscreen', false, true); + }, 'Test frame policy on sandboxed iframe with allow="fullscreen".'); + test(function() { + test_frame_policy( + 'fullscreen', same_origin_src, undefined, true, 'fullscreen \'src\'', false, true); + }, 'Test frame policy on sandboxed iframe with allow="fullscreen \'src\'".'); + test(function() { + test_frame_policy( + 'fullscreen', cross_origin_src, undefined, false, 'fullscreen ' + cross_origin, false, true); + }, 'Test frame policy on sandboxed iframe with allow="fullscreen ' + cross_origin + '".'); + test(function() { + test_frame_policy( + 'fullscreen', undefined, true, true, 'fullscreen', false, true); + }, 'Test frame policy on srcdoc sandboxed iframe with allow="fullscreen".'); + test(function() { + test_frame_policy( + 'fullscreen', same_origin_src, true, true, 'fullscreen', false, true); + }, 'Test frame policy on srcdoc + same origin sandboxed iframe with allow="fullscreen".'); + test(function() { + test_frame_policy( + 'fullscreen', cross_origin_src, true, true, 'fullscreen', false, true); + }, 'Test frame policy on srcdoc + cross origin sandboxed iframe with allow="fullscreen".'); + test(function() { + test_frame_policy( + 'fullscreen', data_src, undefined, false, 'fullscreen ' + cross_origin, false, true); + }, 'Test frame policy on sandboxed srcdoc iframe with allow="fullscreen ' + cross_origin + '".'); + // Test frame policy with allow attribute set to be one of the policies above. for (var i = 0; i < policies.length; i++) { test(function() { diff --git a/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-self.https.sub.html b/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-self.https.sub.html index b2b668256ff..9cf56ec7986 100644 --- a/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-self.https.sub.html +++ b/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-self.https.sub.html @@ -16,10 +16,10 @@ var cross_origin_src = cross_origin + same_origin_src; var data_src = 'data:text/html,

data: URL

'; var policies = [ - {allow: "*", sameOriginTestExpect: true, crossOriginTestExpect: true, dataOriginTestExpect: false}, + {allow: "*", sameOriginTestExpect: true, crossOriginTestExpect: false, dataOriginTestExpect: false}, {allow: "'self'", sameOriginTestExpect: true, crossOriginTestExpect: false, dataOriginTestExpect: false}, {allow: "'none'", sameOriginTestExpect: false, crossOriginTestExpect: false, dataOriginTestExpect: false}, - {allow: "'self' " + cross_origin + " https://www.example.com", sameOriginTestExpect: true, crossOriginTestExpect: true, dataOriginTestExpect: false}]; + {allow: "'self' " + cross_origin + " https://www.example.com", sameOriginTestExpect: true, crossOriginTestExpect: false, dataOriginTestExpect: false}]; var pipe_front = '?pipe=sub|header(Feature-Policy,fullscreen '; var pipe_end = ';)'; var header_policies = ["*", "'self'", "'none'"]; @@ -45,18 +45,20 @@ test_frame_policy('fullscreen', data_src, undefined, false); }, 'Test frame policy on data: URL cross origin iframe inherit from header policy.'); - // Test that frame policy can be used for sandboxed frames + // Test that frame policy can be used for sandboxed frames. None of these + // frames should be allowed to use fullscreen, as the header prohibits any + // cross-origin use.` test(function() { test_frame_policy( 'fullscreen', same_origin_src, undefined, false, undefined, false, true); }, 'Test frame policy on sandboxed iframe with no allow attribute.'); test(function() { test_frame_policy( - 'fullscreen', same_origin_src, undefined, true, 'fullscreen', false, true); + 'fullscreen', same_origin_src, undefined, false, 'fullscreen', false, true); }, 'Test frame policy on sandboxed iframe with allow="fullscreen".'); test(function() { test_frame_policy( - 'fullscreen', same_origin_src, undefined, true, 'fullscreen \'src\'', false, true); + 'fullscreen', same_origin_src, undefined, false, 'fullscreen \'src\'', false, true); }, 'Test frame policy on sandboxed iframe with allow="fullscreen \'src\'".'); test(function() { test_frame_policy( @@ -64,15 +66,15 @@ }, 'Test frame policy on sandboxed iframe with allow="fullscreen ' + cross_origin + '".'); test(function() { test_frame_policy( - 'fullscreen', undefined, true, true, 'fullscreen', false, true); + 'fullscreen', undefined, true, false, 'fullscreen', false, true); }, 'Test frame policy on srcdoc sandboxed iframe with allow="fullscreen".'); test(function() { test_frame_policy( - 'fullscreen', same_origin_src, true, true, 'fullscreen', false, true); + 'fullscreen', same_origin_src, true, false, 'fullscreen', false, true); }, 'Test frame policy on srcdoc + same origin sandboxed iframe with allow="fullscreen".'); test(function() { test_frame_policy( - 'fullscreen', cross_origin_src, true, true, 'fullscreen', false, true); + 'fullscreen', cross_origin_src, true, false, 'fullscreen', false, true); }, 'Test frame policy on srcdoc + cross origin sandboxed iframe with allow="fullscreen".'); test(function() { test_frame_policy( diff --git a/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-some-override.https.sub.html b/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-some-override.https.sub.html index 17c9cc6b8db..744c9502480 100644 --- a/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-some-override.https.sub.html +++ b/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-some-override.https.sub.html @@ -19,7 +19,7 @@ var data_src = 'data:text/html,

data: URL

'; // Test feature policy with same_origin_src and cross_origin_src. var policies = [ - {allow: "*", sameOriginTestExpect: true, crossOriginTestExpect: true, crossOrigin1TestExpect: true, dataOriginTestExpect: false}, + {allow: "*", sameOriginTestExpect: true, crossOriginTestExpect: true, crossOrigin1TestExpect: false, dataOriginTestExpect: false}, {allow: "'self'", sameOriginTestExpect: true, crossOriginTestExpect: false, crossOrigin1TestExpect: false, dataOriginTestExpect: false}, {allow: "'none'", sameOriginTestExpect: false, crossOriginTestExpect: false, crossOrigin1TestExpect: false, dataOriginTestExpect: false}, {allow: "'self' " + cross_origin + " https://www.example.com", sameOriginTestExpect: true, crossOriginTestExpect: true, crossOrigin1TestExpect: false, dataOriginTestExpect: false}]; diff --git a/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-some.https.sub.html b/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-some.https.sub.html index d519743a438..5dfd8430d2f 100644 --- a/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-some.https.sub.html +++ b/tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-allowed-for-some.https.sub.html @@ -19,7 +19,7 @@ var data_src = 'data:text/html,

data: URL

'; // Test feature policy with same_origin_src and cross_origin_src. var policies = [ - {allow: "*", sameOriginTestExpect: true, crossOriginTestExpect: true, crossOrigin1TestExpect: true, dataOriginTestExpect: false}, + {allow: "*", sameOriginTestExpect: true, crossOriginTestExpect: true, crossOrigin1TestExpect: false, dataOriginTestExpect: false}, {allow: "'self'", sameOriginTestExpect: true, crossOriginTestExpect: false, crossOrigin1TestExpect: false, dataOriginTestExpect: false}, {allow: "'none'", sameOriginTestExpect: false, crossOriginTestExpect: false, crossOrigin1TestExpect: false, dataOriginTestExpect: false}, {allow: "'self' " + cross_origin + " https://www.example.com", sameOriginTestExpect: true, crossOriginTestExpect: true, crossOrigin1TestExpect: false, dataOriginTestExpect: false}]; @@ -33,7 +33,7 @@ test_frame_policy('fullscreen', same_origin_src, undefined, true); }, 'Test frame policy on same origin iframe inherit from header policy.'); test(function() { - test_frame_policy('fullscreen', cross_origin_src, undefined, true); + test_frame_policy('fullscreen', cross_origin_src, undefined, false); }, 'Test frame policy on cross origin iframe inherit from header policy.'); test(function() { test_frame_policy('fullscreen', cross_origin_src1, undefined, false); diff --git a/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html b/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html index 6bf7ca65326..bfbdd6a20c9 100644 --- a/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html +++ b/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html @@ -19,12 +19,15 @@ ['*']); }, header_policy + ' -- test allowlist is ['*']'); - // Test that fullscreen is allowed on all subframes. + // Test that fullscreen is allowed on same-origin subframes. test_allowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on same-origin subframe', 'fullscreen', same_origin_src); - test_allowed_feature_for_subframe( + + // Test that fullscreen is not allowed on cross-origin subframes without an + // allow attribute. + test_disallowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on cross-origin subframe', 'fullscreen', cross_origin_src); diff --git a/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-allowed-for-some.https.sub.html b/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-allowed-for-some.https.sub.html index e07c51fefd9..d89ccef5c90 100644 --- a/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-allowed-for-some.https.sub.html +++ b/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-allowed-for-some.https.sub.html @@ -20,12 +20,13 @@ [same_origin, cross_origin, 'https://www.example.com'].sort()); }, header_policy + ' -- test allowlist is [same_origin, cross_origin, https://www.example.com]'); - // Test that fullscreen is allowed on same_origin, some cross_origin subframes. + // Test that fullscreen is allowed on same-origin, but disallowed on cross- + // origin subframes, without an allow attribute. test_allowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on same-origin subframe', 'fullscreen', same_origin_src); - test_allowed_feature_for_subframe( + test_disallowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on cross-origin ' + cross_origin_src + ' subframe', 'fullscreen', cross_origin_src); diff --git a/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-declined.https.sub.html b/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-declined.https.sub.html index d00d592d9ac..ebe09ec9873 100644 --- a/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-declined.https.sub.html +++ b/tests/wpt/web-platform-tests/feature-policy/feature-policy-header-policy-declined.https.sub.html @@ -20,12 +20,12 @@ [cross_origin, 'https://www.example.com'].sort()); }, header_policy + ' -- test allowlist is [cross_origin, https://www.example.com]'); - // Test that fullscreen is disallowed on same_origin, allowed on some cross_origin subframes. + // Test that fullscreen is disallowed everywhere. test_disallowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on same-origin subframe', 'fullscreen', same_origin_src); - test_allowed_feature_for_subframe( + test_disallowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on cross-origin ' + cross_origin_src + ' subframe', 'fullscreen', cross_origin_src); @@ -35,7 +35,8 @@ 'fullscreen', cross_origin_src1); - // dynamically update sub frame's container policy + // dynamically update sub frame's container policy; fullscreen will still not + // be allowed. var disallow = "fullscreen 'none';" test_disallowed_feature_for_subframe( header_policy + ', iframe.allow = ' + disallow + ' -- test fullscreen is disallowed on same-origin subframe', @@ -56,7 +57,7 @@ same_origin_src, allow); - test_allowed_feature_for_subframe( + test_disallowed_feature_for_subframe( header_policy + 'iframe.allow = ' + allow + ' -- test fullscreen is allowed on specific cross-origin subframe', 'fullscreen', cross_origin_src, diff --git a/tests/wpt/web-platform-tests/feature-policy/feature-policy-nested-header-policy-allowed-for-all.https.sub.html b/tests/wpt/web-platform-tests/feature-policy/feature-policy-nested-header-policy-allowed-for-all.https.sub.html index fb626605190..184cd013423 100644 --- a/tests/wpt/web-platform-tests/feature-policy/feature-policy-nested-header-policy-allowed-for-all.https.sub.html +++ b/tests/wpt/web-platform-tests/feature-policy/feature-policy-nested-header-policy-allowed-for-all.https.sub.html @@ -29,7 +29,7 @@ ------------------------------------------ */ test_subframe_header_policy('fullscreen', '*', same_origin_src, {local_all: true, local_self: true, local_none: false, - remote_all: true, remote_self: true, remote_none: false}, + remote_all: false, remote_self: false, remote_none: false}, 'Test nested header policy with local iframe on policy "fullscreen *"'); test_subframe_header_policy('fullscreen', '\'self\'', same_origin_src, {local_all: true, local_self: true, local_none: false, @@ -50,11 +50,11 @@ | ------------------------------------- | ------------------------------------------- */ test_subframe_header_policy('fullscreen', '*', cross_origin_src, - {local_all: true, local_self: true, local_none: false, - remote_all: true, remote_self: true, remote_none: false}, + {local_all: false, local_self: false, local_none: false, + remote_all: false, remote_self: false, remote_none: false}, 'Test nested header policy with remote iframe on policy "fullscreen *"'); test_subframe_header_policy('fullscreen', '\'self\'', cross_origin_src, - {local_all: true, local_self: true, local_none: false, + {local_all: false, local_self: false, local_none: false, remote_all: false, remote_self: false, remote_none: false}, 'Test nested header policy with remote iframe on policy "fullscreen \'self\'"'); test_subframe_header_policy('fullscreen', '\'none\'', cross_origin_src, diff --git a/tests/wpt/web-platform-tests/feature-policy/feature-policy-nested-header-policy-allowed-for-self.https.sub.html b/tests/wpt/web-platform-tests/feature-policy/feature-policy-nested-header-policy-allowed-for-self.https.sub.html index 62ddd967495..fe857c916ce 100644 --- a/tests/wpt/web-platform-tests/feature-policy/feature-policy-nested-header-policy-allowed-for-self.https.sub.html +++ b/tests/wpt/web-platform-tests/feature-policy/feature-policy-nested-header-policy-allowed-for-self.https.sub.html @@ -27,7 +27,7 @@ ------------------------------------------ */ test_subframe_header_policy('fullscreen', '*', same_origin_src, {local_all: true, local_self: true, local_none: false, - remote_all: true, remote_self: true, remote_none: false}, + remote_all: false, remote_self: false, remote_none: false}, 'Test nested header policy with local iframe on policy "fullscreen *"'); test_subframe_header_policy('fullscreen', '\'self\'', same_origin_src, {local_all: true, local_self: true, local_none: false, diff --git a/tests/wpt/web-platform-tests/feature-policy/payment-allowed-by-feature-policy.https.sub.html b/tests/wpt/web-platform-tests/feature-policy/payment-allowed-by-feature-policy.https.sub.html index ccb6740d6a2..b69fa62c053 100644 --- a/tests/wpt/web-platform-tests/feature-policy/payment-allowed-by-feature-policy.https.sub.html +++ b/tests/wpt/web-platform-tests/feature-policy/payment-allowed-by-feature-policy.https.sub.html @@ -29,8 +29,13 @@ async_test(t => { test_feature_availability('PaymentRequest()', t, cross_origin_src, - expect_feature_available_default); - }, header + ' allows cross-origin iframes.'); + expect_feature_unavailable_default); + }, header + ' disallows cross-origin iframes.'); + + async_test(t => { + test_feature_availability('PaymentRequest()', t, cross_origin_src, + expect_feature_available_default, 'payment'); + }, header + ' allow="payment" allows cross-origin iframes.'); diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/camera-report-only.https.html b/tests/wpt/web-platform-tests/feature-policy/reporting/camera-report-only.https.html deleted file mode 100644 index c22e1a51740..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/camera-report-only.https.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/camera-report-only.https.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/camera-report-only.https.html.headers deleted file mode 100644 index d7e19c072f7..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/camera-report-only.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: camera 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/encrypted-media-report-only.https.html b/tests/wpt/web-platform-tests/feature-policy/reporting/encrypted-media-report-only.https.html deleted file mode 100644 index 9ab4b0fe856..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/encrypted-media-report-only.https.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/encrypted-media-report-only.https.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/encrypted-media-report-only.https.html.headers deleted file mode 100644 index 37e625f31d1..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/encrypted-media-report-only.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: encrypted-media 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/fullscreen-report-only.html b/tests/wpt/web-platform-tests/feature-policy/reporting/fullscreen-report-only.html deleted file mode 100644 index 48fe9e3a69a..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/fullscreen-report-only.html +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - -
- - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/fullscreen-report-only.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/fullscreen-report-only.html.headers deleted file mode 100644 index 1137afb1a68..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/fullscreen-report-only.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: fullscreen 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/generic-sensor-report-only.https.html b/tests/wpt/web-platform-tests/feature-policy/reporting/generic-sensor-report-only.https.html deleted file mode 100644 index 6c8c2efbf6c..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/generic-sensor-report-only.https.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/generic-sensor-report-only.https.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/generic-sensor-report-only.https.html.headers deleted file mode 100644 index 9d49d997f62..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/generic-sensor-report-only.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: ambient-light-sensor 'none'; accelerometer 'none'; gyroscope 'none'; magnetometer 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/geolocation-report-only.https.html b/tests/wpt/web-platform-tests/feature-policy/reporting/geolocation-report-only.https.html deleted file mode 100644 index 6c62b622cda..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/geolocation-report-only.https.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/geolocation-report-only.https.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/geolocation-report-only.https.html.headers deleted file mode 100644 index ba0662f577b..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/geolocation-report-only.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: geolocation 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/microphone-report-only.https.html b/tests/wpt/web-platform-tests/feature-policy/reporting/microphone-report-only.https.html deleted file mode 100644 index 539994cd70a..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/microphone-report-only.https.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/microphone-report-only.https.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/microphone-report-only.https.html.headers deleted file mode 100644 index 5342e71dec8..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/microphone-report-only.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: microphone 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/midi-report-only.https.html b/tests/wpt/web-platform-tests/feature-policy/reporting/midi-report-only.https.html deleted file mode 100644 index bf0234d3f65..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/midi-report-only.https.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/midi-report-only.https.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/midi-report-only.https.html.headers deleted file mode 100644 index d307ccc9b09..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/midi-report-only.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: midi 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/payment-report-only.https.html b/tests/wpt/web-platform-tests/feature-policy/reporting/payment-report-only.https.html deleted file mode 100644 index d2b8e5ee9cc..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/payment-report-only.https.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/payment-report-only.https.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/payment-report-only.https.html.headers deleted file mode 100644 index dc41987d022..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/payment-report-only.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: payment 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/picture-in-picture-report-only.html b/tests/wpt/web-platform-tests/feature-policy/reporting/picture-in-picture-report-only.html deleted file mode 100644 index 9e113a92429..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/picture-in-picture-report-only.html +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/picture-in-picture-report-only.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/picture-in-picture-report-only.html.headers deleted file mode 100644 index b3ec5aaccf0..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/picture-in-picture-report-only.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: picture-in-picture 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/screen-wake-lock-report-only.https.html b/tests/wpt/web-platform-tests/feature-policy/reporting/screen-wake-lock-report-only.https.html deleted file mode 100644 index 51aa4f90c5f..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/screen-wake-lock-report-only.https.html +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/screen-wake-lock-report-only.https.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/screen-wake-lock-report-only.https.html.headers deleted file mode 100644 index 3d729b50563..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/screen-wake-lock-report-only.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: screen-wake-lock 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/serial-report-only.https.html b/tests/wpt/web-platform-tests/feature-policy/reporting/serial-report-only.https.html deleted file mode 100644 index 11913a2ef77..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/serial-report-only.https.html +++ /dev/null @@ -1,46 +0,0 @@ - - - - - - - - - -
- - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/serial-report-only.https.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/serial-report-only.https.html.headers deleted file mode 100644 index d408ccf6b15..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/serial-report-only.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: serial 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/sync-xhr-report-only.html b/tests/wpt/web-platform-tests/feature-policy/reporting/sync-xhr-report-only.html deleted file mode 100644 index 76d26ed5027..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/sync-xhr-report-only.html +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/sync-xhr-report-only.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/sync-xhr-report-only.html.headers deleted file mode 100644 index 819dc7addcf..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/sync-xhr-report-only.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: sync-xhr 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/usb-report-only.https.html b/tests/wpt/web-platform-tests/feature-policy/reporting/usb-report-only.https.html deleted file mode 100644 index 7933e9eb5f6..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/usb-report-only.https.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
- - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/usb-report-only.https.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/usb-report-only.https.html.headers deleted file mode 100644 index 2705af70cee..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/usb-report-only.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: usb 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/xr-report-only.https.html b/tests/wpt/web-platform-tests/feature-policy/reporting/xr-report-only.https.html deleted file mode 100644 index 872db228495..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/xr-report-only.https.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/xr-report-only.https.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/xr-report-only.https.html.headers deleted file mode 100644 index 45df4936e27..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/xr-report-only.https.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy-Report-Only: xr-spatial-tracking 'none' diff --git a/tests/wpt/web-platform-tests/feature-policy/resources/featurepolicy.js b/tests/wpt/web-platform-tests/feature-policy/resources/featurepolicy.js index 347cba1deea..864c434c663 100644 --- a/tests/wpt/web-platform-tests/feature-policy/resources/featurepolicy.js +++ b/tests/wpt/web-platform-tests/feature-policy/resources/featurepolicy.js @@ -449,6 +449,6 @@ function expect_reports(report_count, policy_name, description) { if (num_received_reports >= report_count) { t.done(); } - }), {types: ['feature-policy-violation'], buffered: true}).observe(); + }), {types: ['permissions-policy-violation'], buffered: true}).observe(); }, description); } diff --git a/tests/wpt/web-platform-tests/fetch/connection-pool/resources/network-partition-about-blank-checker.html b/tests/wpt/web-platform-tests/fetch/connection-pool/resources/network-partition-about-blank-checker.html new file mode 100644 index 00000000000..7a8b6132375 --- /dev/null +++ b/tests/wpt/web-platform-tests/fetch/connection-pool/resources/network-partition-about-blank-checker.html @@ -0,0 +1,35 @@ + + + + + about:blank Network Partition Checker + + + + + + + diff --git a/tests/wpt/web-platform-tests/focus/support/activeelement-after-immediately-focusing-same-site-iframe-outer-contenwindow.html b/tests/wpt/web-platform-tests/focus/support/activeelement-after-immediately-focusing-same-site-iframe-outer-contenwindow.html deleted file mode 100644 index bafc26065c8..00000000000 --- a/tests/wpt/web-platform-tests/focus/support/activeelement-after-immediately-focusing-same-site-iframe-outer-contenwindow.html +++ /dev/null @@ -1,29 +0,0 @@ - - -activeElement when focusing same-site iframe's contentWindow - - - diff --git a/tests/wpt/web-platform-tests/gamepad/feature-policy-gamepad.html b/tests/wpt/web-platform-tests/gamepad/feature-policy-gamepad.html index 8ee0c719216..2747a04b34f 100644 --- a/tests/wpt/web-platform-tests/gamepad/feature-policy-gamepad.html +++ b/tests/wpt/web-platform-tests/gamepad/feature-policy-gamepad.html @@ -1,9 +1,8 @@ \ No newline at end of file + try { + const test = navigator.getGamepads(); + if (test) window.parent.postMessage({ enabled: true }, "*"); + } catch (err) { + window.parent.postMessage({ enabled: false }, "*"); + } + diff --git a/tests/wpt/web-platform-tests/gamepad/gamepad-default-feature-policy.https.sub.html b/tests/wpt/web-platform-tests/gamepad/gamepad-default-feature-policy.https.sub.html index fce0eaffee3..347f40b2a4e 100644 --- a/tests/wpt/web-platform-tests/gamepad/gamepad-default-feature-policy.https.sub.html +++ b/tests/wpt/web-platform-tests/gamepad/gamepad-default-feature-policy.https.sub.html @@ -5,30 +5,40 @@ \ No newline at end of file diff --git a/tests/wpt/web-platform-tests/gamepad/gamepad-secure-context.html b/tests/wpt/web-platform-tests/gamepad/gamepad-secure-context.html index 97b4ea2967e..034595ebdb6 100644 --- a/tests/wpt/web-platform-tests/gamepad/gamepad-secure-context.html +++ b/tests/wpt/web-platform-tests/gamepad/gamepad-secure-context.html @@ -4,17 +4,8 @@ diff --git a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.ltr.html b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.ltr.html index 8b01fbbc8c4..1f1a23eed93 100644 --- a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.ltr.html +++ b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.ltr.html @@ -26,6 +26,7 @@ f.load(); fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'ltr'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; diff --git a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.ltr.worker.js b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.ltr.worker.js index c84308c7f07..b3705520b16 100644 --- a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.ltr.worker.js +++ b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.ltr.worker.js @@ -22,6 +22,7 @@ f.load(); fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'ltr'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; diff --git a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.rtl.html b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.rtl.html index 0cf7b5756ae..f18e4974ba1 100644 --- a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.rtl.html +++ b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.rtl.html @@ -26,6 +26,7 @@ f.load(); fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'rtl'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; diff --git a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.rtl.worker.js b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.rtl.worker.js index 6845dd474d6..a0561c1f806 100644 --- a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.rtl.worker.js +++ b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.end.rtl.worker.js @@ -22,6 +22,7 @@ f.load(); fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'rtl'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; diff --git a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.ltr.html b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.ltr.html index 301b6dc4522..08c222b9a59 100644 --- a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.ltr.html +++ b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.ltr.html @@ -26,6 +26,7 @@ f.load(); fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'ltr'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; diff --git a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.ltr.worker.js b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.ltr.worker.js index 4e7db42542b..1cefdd0cfa6 100644 --- a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.ltr.worker.js +++ b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.ltr.worker.js @@ -22,6 +22,7 @@ f.load(); fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'ltr'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; diff --git a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.rtl.html b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.rtl.html index 27723f23efc..3d9670abc30 100644 --- a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.rtl.html +++ b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.rtl.html @@ -26,6 +26,7 @@ f.load(); fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'rtl'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; diff --git a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.rtl.worker.js b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.rtl.worker.js index 545c1d9c27d..2cc818fc928 100644 --- a/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.rtl.worker.js +++ b/tests/wpt/web-platform-tests/html/canvas/offscreen/text/2d.text.draw.align.start.rtl.worker.js @@ -22,6 +22,7 @@ f.load(); fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'rtl'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; diff --git a/tests/wpt/web-platform-tests/html/canvas/tools/yaml/offscreen/text.yaml b/tests/wpt/web-platform-tests/html/canvas/tools/yaml/offscreen/text.yaml index 30a0ad1a6fe..b218d2d8b8b 100644 --- a/tests/wpt/web-platform-tests/html/canvas/tools/yaml/offscreen/text.yaml +++ b/tests/wpt/web-platform-tests/html/canvas/tools/yaml/offscreen/text.yaml @@ -769,7 +769,6 @@ - 2d.text.align.left fonts: - CanvasTest - canvas: width="100" height="50" dir="ltr" code: | var f = new FontFace("CanvasTest", "url('/fonts/CanvasTest.ttf')"); let fonts = (self.fonts ? self.fonts : document.fonts); @@ -777,6 +776,7 @@ fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'ltr'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; @@ -798,7 +798,6 @@ - 2d.text.draw.direction fonts: - CanvasTest - canvas: width="100" height="50" dir="rtl" code: | var f = new FontFace("CanvasTest", "url('/fonts/CanvasTest.ttf')"); let fonts = (self.fonts ? self.fonts : document.fonts); @@ -806,6 +805,7 @@ fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'rtl'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; @@ -826,7 +826,6 @@ - 2d.text.align.right fonts: - CanvasTest - canvas: width="100" height="50" dir="ltr" code: | var f = new FontFace("CanvasTest", "url('/fonts/CanvasTest.ttf')"); let fonts = (self.fonts ? self.fonts : document.fonts); @@ -834,6 +833,7 @@ fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'ltr'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; @@ -855,7 +855,6 @@ - 2d.text.draw.direction fonts: - CanvasTest - canvas: width="100" height="50" dir="rtl" code: | var f = new FontFace("CanvasTest", "url('/fonts/CanvasTest.ttf')"); let fonts = (self.fonts ? self.fonts : document.fonts); @@ -863,6 +862,7 @@ fonts.add(f); fonts.ready.then(function() { ctx.font = '50px CanvasTest'; + ctx.direction = 'rtl'; ctx.fillStyle = '#f00'; ctx.fillRect(0, 0, 100, 50); ctx.fillStyle = '#0f0'; diff --git a/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/cross-origin-isolated-permission.https.html b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/cross-origin-isolated-permission.https.html index 2fc545d5acb..31c0a913338 100644 --- a/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/cross-origin-isolated-permission.https.html +++ b/tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/cross-origin-isolated-permission.https.html @@ -158,7 +158,7 @@ generateFrameTest(ORIGIN, 'self', true); // We need the backslash to escape the close parenthesis in a wpt pipe. generateFrameTest(ORIGIN, '(\\)', false); generateFrameTest(HTTPS_REMOTE_ORIGIN, undefined, false); -generateFrameTest(HTTPS_REMOTE_ORIGIN, '*', true); +generateFrameTest(HTTPS_REMOTE_ORIGIN, '*', false); generateFrameTest(HTTPS_REMOTE_ORIGIN, 'self', false); // We need the backslash to escape the close parenthesis in a wpt pipe. generateFrameTest(HTTPS_REMOTE_ORIGIN, '(\\)', false); diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/flow-content-0/dialog.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/flow-content-0/dialog.html index f8e28ceb646..3588e036708 100644 --- a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/flow-content-0/dialog.html +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/flow-content-0/dialog.html @@ -24,10 +24,9 @@ setup(() => { window.refWhite = refStyle.backgroundColor; window.refBlack = refStyle.color; window.refMediumBorder = refStyle.borderTopWidth; - const iframeHeight = 150; + window.iframeHeight = 150; const bodyTopMargin = 8; window.dialogSize = parseFloat(ref1em) * 2 + parseFloat(refMediumBorder) * 2; - window.centeredVerticalDistance = iframeHeight / 2 - dialogSize / 2; window.normalBottomDistance = iframeHeight - bodyTopMargin - dialogSize; }, {explicit_done: true}); @@ -37,15 +36,20 @@ onload = () => { const styleAttr = iframe.getAttribute('style'); const iframeWidth = parseInt(styleAttr.split(' ')[1]); const horizontalDistance = iframeWidth / 2 - dialogSize / 2; + const verticalDistance = iframeHeight / 2 - dialogSize / 2; test(() => { const style = win.getComputedStyle(win.dialogClosed); + assert_equals(style.position, 'absolute', 'position'); assert_equals(style.display, 'none', 'display'); + assert_equals(style.overflow, 'visible', 'overflow'); assert_equals(style.top, 'auto', 'top'); assert_equals(style.right, '0px', 'right'); assert_equals(style.bottom, 'auto', 'bottom'); assert_equals(style.left, '0px', 'left'); assert_equals(style.width, 'fit-content', 'width'); assert_equals(style.height, 'fit-content', 'height'); + assert_equals(style.maxWidth, 'none', 'max-width'); + assert_equals(style.maxHeight, 'none', 'max-height'); assert_equals(style.marginTop, 'auto', 'marginTop'); assert_equals(style.marginRight, 'auto', 'marginRight'); assert_equals(style.marginBottom, 'auto', 'marginBottom'); @@ -55,13 +59,17 @@ onload = () => { test(() => { const style = win.getComputedStyle(win.dialogOpen); + assert_equals(style.position, 'absolute', 'position'); assert_equals(style.display, 'block', 'display'); + assert_equals(style.overflow, 'visible', 'overflow'); assert_equals(style.top, '8px', 'top'); assert_equals(style.right, '0px', 'right'); assert_equals(style.bottom, normalBottomDistance + 'px', 'bottom'); assert_equals(style.left, '0px', 'left'); assert_equals(style.width, '0px', 'width'); assert_equals(style.height, '0px', 'height'); + assert_equals(style.maxWidth, 'none', 'max-width'); + assert_equals(style.maxHeight, 'none', 'max-height'); assert_equals(style.marginTop, '0px', 'marginTop'); assert_equals(style.marginRight, horizontalDistance + 'px', 'marginRight'); assert_equals(style.marginBottom, '0px', 'marginBottom'); @@ -71,16 +79,20 @@ onload = () => { test(() => { const style = win.getComputedStyle(win.dialogModal); + assert_equals(style.position, 'fixed', 'position'); assert_equals(style.display, 'block', 'display'); - assert_equals(style.top, centeredVerticalDistance + 'px', 'top'); + assert_equals(style.overflow, 'auto', 'overflow'); + assert_equals(style.top, '0px', 'top'); assert_equals(style.right, '0px', 'right'); - assert_equals(style.bottom, centeredVerticalDistance + 'px', 'bottom'); + assert_equals(style.bottom, '0px', 'bottom'); assert_equals(style.left, '0px', 'left'); assert_equals(style.width, '0px', 'width'); assert_equals(style.height, '0px', 'height'); - assert_equals(style.marginTop, '0px', 'marginTop'); + assert_equals(style.maxWidth, 'calc(100% - 38px)', 'max-width'); + assert_equals(style.maxHeight, 'calc(100% - 38px)', 'max-height'); + assert_equals(style.marginTop, verticalDistance + 'px', 'marginTop'); assert_equals(style.marginRight, horizontalDistance + 'px', 'marginRight'); - assert_equals(style.marginBottom, '0px', 'marginBottom'); + assert_equals(style.marginBottom, verticalDistance + 'px', 'marginBottom'); assert_equals(style.marginLeft, horizontalDistance + 'px', 'marginLeft'); assertCommon(style); }, `Modal dialog in ${styleAttr} iframe`); @@ -89,7 +101,6 @@ onload = () => { }; function assertCommon(style) { - assert_equals(style.position, 'absolute', 'position'); assert_equals(style.borderTopStyle, 'solid', 'borderTopStyle'); assert_equals(style.borderRightStyle, 'solid', 'borderRightStyle'); assert_equals(style.borderBottomStyle, 'solid', 'borderBottomStyle'); diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-fieldset-and-legend-elements/sticky-content-crash.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-fieldset-and-legend-elements/sticky-content-crash.html new file mode 100644 index 00000000000..a6e8fa7a826 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-fieldset-and-legend-elements/sticky-content-crash.html @@ -0,0 +1,22 @@ + + + +
+
+ + + diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-abssize.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-abssize.html new file mode 100644 index 00000000000..ba55da86865 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-abssize.html @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-percentage.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-percentage.html new file mode 100644 index 00000000000..ba55da86865 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-percentage.html @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-relsize.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-relsize.html new file mode 100644 index 00000000000..1bfb2b5404d --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-cols-relsize.html @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-abssize.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-abssize.html new file mode 100644 index 00000000000..7cd86b94554 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-abssize.html @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-percentage.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-percentage.html new file mode 100644 index 00000000000..7cd86b94554 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-percentage.html @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-relsize.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-relsize.html new file mode 100644 index 00000000000..7fd29f6a9e7 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/large-rows-relsize.html @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/reference/green-ref.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/reference/green-ref.html new file mode 100644 index 00000000000..62208d72c91 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/reference/green-ref.html @@ -0,0 +1,5 @@ + + + diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/resources/green.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/resources/green.html new file mode 100644 index 00000000000..62208d72c91 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/resources/green.html @@ -0,0 +1,5 @@ + + + diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/resources/red.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/resources/red.html new file mode 100644 index 00000000000..b5e7f79617d --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/resources/red.html @@ -0,0 +1,5 @@ + + + diff --git a/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/abspos-dialog-layout.html b/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/abspos-dialog-layout.html index 00665f66cec..e5453d73ee8 100644 --- a/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/abspos-dialog-layout.html +++ b/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/abspos-dialog-layout.html @@ -15,8 +15,8 @@ body { dialog { border: 0; padding: 0; - height: auto; - width: auto; + max-width: 100%; + max-height: 100%; } #absolute-div { @@ -41,12 +41,12 @@ dialog { "use strict"; function checkNotVerticallyCentered(dialog) { - var centeredTop = (window.innerHeight - dialog.offsetHeight) / 2; + var centeredTop = (document.documentElement.clientHeight - dialog.offsetHeight) / 2; assert_not_equals(dialog.getBoundingClientRect().top, centeredTop); } function checkVerticallyCentered(dialog) { - var centeredTop = (window.innerHeight - dialog.offsetHeight) / 2; + var centeredTop = (document.documentElement.clientHeight - dialog.offsetHeight) / 2; // Using approx equals because getBoundingClientRect() and centeredTop // are calculated by different parts of the engine. Due to the loss // of precision, the numbers might not equal exactly. @@ -74,22 +74,6 @@ test(function() { checkVerticallyCentered(dialog); }, "showModal() should center in the viewport"); -test(function() { - this.add_cleanup(reset); - - assert_equals(window.getComputedStyle(dialog).top, 'auto'); - assert_equals(window.getComputedStyle(dialog).bottom, 'auto'); - - dialog.style.height = '20px'; - dialog.showModal(); - - assert_not_equals(window.getComputedStyle(dialog).top, 'auto'); - assert_not_equals(window.getComputedStyle(dialog).bottom, 'auto'); - - // Set back original value to 'height'. - dialog.style.height = 'auto'; -}, "The dialog is a positioned element, so the top and bottom should not have style auto."); - test(function() { this.add_cleanup(reset); @@ -122,7 +106,7 @@ test(function() { assert_equals(dialog.getBoundingClientRect().top, 0); // Set back original value to 'height'. - dialog.style.height = 'auto'; + dialog.style.height = 'fit-content'; }, "A tall dialog should be positioned at the top of the viewport."); test(function() { @@ -167,13 +151,12 @@ test(function() { relativeContainer.appendChild(dialog); dialog.showModal(); - assert_not_equals(dialog.getBoundingClientRect().top, relativeContainer.getBoundingClientRect().top); + checkVerticallyCentered(dialog); dialog.remove(); relativeContainer.appendChild(dialog); - assert_equals(dialog.parentNode, relativeContainer); - assert_equals(dialog.getBoundingClientRect().top, relativeContainer.getBoundingClientRect().top); -}, "Dialog should lose centering when removed from the document."); + checkVerticallyCentered(dialog); +}, "Dialog should still be centered when removed, and re-added to the document."); test(function() { this.add_cleanup(reset); @@ -186,7 +169,7 @@ test(function() { assert_equals(dialog.getBoundingClientRect().top, expectedTop); // Set back original value to 'top'. - dialog.style.top = 'auto'; + dialog.style.top = '0'; }, "Dialog's specified position should survive after close() and showModal()."); test(function() { @@ -194,43 +177,7 @@ test(function() { dialog.showModal(); dialog.removeAttribute('open'); - window.scroll(0, window.scrollY * 2); - checkNotVerticallyCentered(dialog); dialog.showModal(); checkVerticallyCentered(dialog); }, "Dialog should be recentered if showModal() is called after removing 'open'."); - -test(function() { - this.add_cleanup(reset); - - dialog.remove(); - absoluteContainer.appendChild(dialog); - absoluteContainer.style.display = 'none'; - dialog.showModal(); - absoluteContainer.style.display = 'block'; - // Since dialog's containing block is the ICB, it's statically positioned after . - assert_equals(dialog.getBoundingClientRect().top, document.body.getBoundingClientRect().bottom); -}, "Dialog should not be centered if showModal() was called when an ancestor had display 'none'."); - -test(function() { - this.add_cleanup(reset); - - var offset = 50; - dialog.style.top = offset + 'px'; - dialog.showModal(); - assert_equals(dialog.getBoundingClientRect().top + window.scrollY, offset); - // Set back original value to 'top'. - dialog.style.top = 'auto'; -}, "A dialog with specified 'top' should be positioned as usual"); - -test(function() { - this.add_cleanup(reset); - - var offset = 50; - dialog.style.bottom = offset + 'px'; - dialog.showModal(); - assert_equals(dialog.getBoundingClientRect().bottom + window.scrollY, window.innerHeight - offset); - // Set back original value to 'bottom'. - dialog.style.bottom = 'auto'; -}, "A dialog with specified 'bottom' should be positioned as usual"); diff --git a/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/centering-iframe.sub.html b/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/centering-iframe.sub.html index 2f9721eee86..01377de4269 100644 --- a/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/centering-iframe.sub.html +++ b/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/centering-iframe.sub.html @@ -14,7 +14,8 @@ writing-mode: {{GET[dialog-writing-mode]}}; border: none; padding: 0; - margin: 0; + max-width: initial; + max-height: initial; } diff --git a/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/centering.html b/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/centering.html index 4c97ea078c5..62f4fc2519c 100644 --- a/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/centering.html +++ b/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/centering.html @@ -11,30 +11,33 @@ "use strict"; // Be sure to sync with centering-iframe.html -const DIALOG_WIDTH = 20; -const DIALOG_HEIGHT = 10; +const dialogWidth = 20; +const dialogHeight = 10; -testDialogCentering("horizontal-tb", "", "", "tall viewport", 40, 100, "top", 100 / 2 - DIALOG_HEIGHT / 2); -testDialogCentering("horizontal-tb", "", "", "wide viewport", 100, 40, "top", 40 / 2 - DIALOG_HEIGHT / 2); -testDialogCentering("horizontal-tb", "", "", "square viewport", 100, 100, "top", 100 / 2 - DIALOG_HEIGHT / 2); -testDialogCentering("horizontal-tb", "", "", "dialog and viewport match", DIALOG_WIDTH, DIALOG_HEIGHT, "top", 0); -testDialogCentering("horizontal-tb", "", "", "dialog bigger than viewport", 100, DIALOG_HEIGHT / 2, "top", 0); +const widthOffset100 = 100 / 2 - dialogWidth / 2; +const widthOffset40 = 40 / 2 - dialogWidth / 2; -testDialogCentering("vertical-rl", "", "", "tall viewport", 40, 100, "left", 40 / 2 - DIALOG_WIDTH / 2); -testDialogCentering("vertical-lr", "", "", "tall viewport", 40, 100, "right", 40 / 2 - DIALOG_WIDTH / 2); -testDialogCentering("vertical-lr", "", "", "dialog bigger than viewport", DIALOG_WIDTH / 2, 100, "right", 0); +const heightOffset100 = 100 / 2 - dialogHeight / 2; +const heightOffset40 = 40 / 2 - dialogHeight / 2; -testDialogCentering("vertical-rl", "", "horizontal-tb", "tall viewport", 40, 100, "left", 40 / 2 - DIALOG_WIDTH / 2); -testDialogCentering("vertical-lr", "", "horizontal-tb", "tall viewport", 40, 100, "right", 40 / 2 - DIALOG_WIDTH / 2); -testDialogCentering("vertical-lr", "", "horizontal-tb", "dialog bigger than viewport", DIALOG_WIDTH / 2, 100, "right", 0); +testDialogCentering("horizontal-tb", "", "", "tall viewport", 40, 100, widthOffset40, heightOffset100); +testDialogCentering("horizontal-tb", "", "", "wide viewport", 100, 40, widthOffset100, heightOffset40); +testDialogCentering("horizontal-tb", "", "", "square viewport", 100, 100, widthOffset100, heightOffset100); +testDialogCentering("horizontal-tb", "", "", "dialog and viewport match", dialogWidth, dialogHeight, 0, 0); -testDialogCentering("horizontal-tb", "vertical-rl", "", "tall viewport", 40, 100, "right", 40 / 2 - DIALOG_WIDTH / 2); -testDialogCentering("vertical-rl", "horizontal-tb", "", "tall viewport", 40, 100, "top", 100 / 2 - DIALOG_HEIGHT / 2); +testDialogCentering("vertical-rl", "", "", "tall viewport", 40, 100, widthOffset40, heightOffset100); +testDialogCentering("vertical-lr", "", "", "tall viewport", 40, 100, widthOffset40, heightOffset100); -testDialogCentering("horizontal-tb", "vertical-rl", "horizontal-tb", "tall viewport", 40, 100, "right", 40 / 2 - DIALOG_WIDTH / 2); -testDialogCentering("vertical-rl", "horizontal-tb", "vertical-rl", "tall viewport", 40, 100, "top", 100 / 2 - DIALOG_HEIGHT / 2); +testDialogCentering("vertical-rl", "", "horizontal-tb", "tall viewport", 40, 100, widthOffset40, heightOffset100); +testDialogCentering("vertical-lr", "", "horizontal-tb", "tall viewport", 40, 100, widthOffset40, heightOffset100); -function testDialogCentering(writingMode, containerWritingMode, dialogWritingMode, label, iframeWidth, iframeHeight, property, numericValue) { +testDialogCentering("horizontal-tb", "vertical-rl", "", "tall viewport", 40, 100, widthOffset40, heightOffset100); +testDialogCentering("vertical-rl", "horizontal-tb", "", "tall viewport", 40, 100, widthOffset40, heightOffset100); + +testDialogCentering("horizontal-tb", "vertical-rl", "horizontal-tb", "tall viewport", 40, 100, widthOffset40, heightOffset100); +testDialogCentering("vertical-rl", "horizontal-tb", "vertical-rl", "tall viewport", 40, 100, widthOffset40, heightOffset100); + +function testDialogCentering(writingMode, containerWritingMode, dialogWritingMode, label, iframeWidth, iframeHeight, leftOffset, topOffset) { async_test(t => { const iframe = document.createElement("iframe"); iframe.src = `centering-iframe.sub.html?html-writing-mode=${writingMode}&container-writing-mode=${containerWritingMode}&dialog-writing-mode=${dialogWritingMode}`; @@ -42,19 +45,10 @@ function testDialogCentering(writingMode, containerWritingMode, dialogWritingMod iframe.height = iframeHeight; iframe.onload = t.step_func_done(() => { const dialog = iframe.contentDocument.querySelector("dialog"); - const dialogStyle = iframe.contentWindow.getComputedStyle(dialog); - assert_equals(dialogStyle[property], numericValue + "px"); - assert_equals(dialogStyle['inset-inline-start'], "0px"); - assert_equals(dialogStyle['inset-inline-end'], "0px"); + const dialogRect = dialog.getBoundingClientRect(); - const dialogWM = dialogWritingMode || containerWritingMode || writingMode || "horizontal-tb"; - if (dialogWM.startsWith("vertical")) { - assert_equals(dialogStyle['top'], "0px"); - assert_equals(dialogStyle['bottom'], "0px"); - } else { - assert_equals(dialogStyle['left'], "0px"); - assert_equals(dialogStyle['right'], "0px"); - } + assert_equals(dialogRect.left, leftOffset, 'left'); + assert_equals(dialogRect.top, topOffset, 'top'); }); document.body.appendChild(iframe); }, writingMode + (containerWritingMode ? ` (container ${containerWritingMode})` : "") + diff --git a/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-scrolled-viewport.html b/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-scrolled-viewport.html deleted file mode 100644 index 8a59ba23e43..00000000000 --- a/tests/wpt/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-scrolled-viewport.html +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - -
- - -
- - - diff --git a/tests/wpt/web-platform-tests/html/user-activation/activation-thru-contextmenu-event-manual.html b/tests/wpt/web-platform-tests/html/user-activation/activation-thru-contextmenu-event.html similarity index 68% rename from tests/wpt/web-platform-tests/html/user-activation/activation-thru-contextmenu-event-manual.html rename to tests/wpt/web-platform-tests/html/user-activation/activation-thru-contextmenu-event.html index 998bac3694c..7f84577b7f0 100644 --- a/tests/wpt/web-platform-tests/html/user-activation/activation-thru-contextmenu-event-manual.html +++ b/tests/wpt/web-platform-tests/html/user-activation/activation-thru-contextmenu-event.html @@ -8,6 +8,9 @@ + + + + +
+
+ + diff --git a/tests/wpt/web-platform-tests/infrastructure/testdriver/actions/pointerevent_pointermove_in_pointerlock.html.ini b/tests/wpt/web-platform-tests/infrastructure/testdriver/actions/pointerevent_pointermove_in_pointerlock.html.ini deleted file mode 100644 index 0c21bf5b526..00000000000 --- a/tests/wpt/web-platform-tests/infrastructure/testdriver/actions/pointerevent_pointermove_in_pointerlock.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[pointerevent_pointermove_in_pointerlock.html] - expected: - if product == "firefox": ERROR diff --git a/tests/wpt/web-platform-tests/infrastructure/testdriver/actions/touchPointerEventProperties.html b/tests/wpt/web-platform-tests/infrastructure/testdriver/actions/touchPointerEventProperties.html new file mode 100644 index 00000000000..b636dfde797 --- /dev/null +++ b/tests/wpt/web-platform-tests/infrastructure/testdriver/actions/touchPointerEventProperties.html @@ -0,0 +1,71 @@ + + +TestDriver actions: pointerevent properties of touch type + + + + + + + + +
+
+ + diff --git a/tests/wpt/web-platform-tests/infrastructure/testharness/lone-surrogates.html b/tests/wpt/web-platform-tests/infrastructure/testharness/lone-surrogates.html new file mode 100644 index 00000000000..fb842ecc9e4 --- /dev/null +++ b/tests/wpt/web-platform-tests/infrastructure/testharness/lone-surrogates.html @@ -0,0 +1,10 @@ + +test behaviour with lone surrogates + + + diff --git a/tests/wpt/web-platform-tests/input-events/input-events-get-target-ranges-backspace.tentative.html b/tests/wpt/web-platform-tests/input-events/input-events-get-target-ranges-backspace.tentative.html index 71db5e72878..bd2621d988f 100644 --- a/tests/wpt/web-platform-tests/input-events/input-events-get-target-ranges-backspace.tentative.html +++ b/tests/wpt/web-platform-tests/input-events/input-events-get-target-ranges-backspace.tentative.html @@ -12,11 +12,11 @@ - \ No newline at end of file + diff --git a/tests/wpt/web-platform-tests/mediacapture-record/MediaRecorder-error.html b/tests/wpt/web-platform-tests/mediacapture-record/MediaRecorder-error.html index 1c93ed3e3a6..54e83ecac76 100644 --- a/tests/wpt/web-platform-tests/mediacapture-record/MediaRecorder-error.html +++ b/tests/wpt/web-platform-tests/mediacapture-record/MediaRecorder-error.html @@ -5,37 +5,14 @@ + - - + - + - - + - - + - - - \ No newline at end of file + diff --git a/tests/wpt/web-platform-tests/mediacapture-record/utils/sources.js b/tests/wpt/web-platform-tests/mediacapture-record/utils/sources.js new file mode 100644 index 00000000000..44947272d63 --- /dev/null +++ b/tests/wpt/web-platform-tests/mediacapture-record/utils/sources.js @@ -0,0 +1,75 @@ +function createAudioStream(t) { + const ac = new AudioContext(); + const { stream } = ac.createMediaStreamDestination(); + const [track] = stream.getTracks(); + t.add_cleanup(() => { + ac.close(); + track.stop(); + }); + return { stream }; +} + +function createFlowingAudioStream(t) { + const ac = new AudioContext(); + const dest = ac.createMediaStreamDestination(); + const osc = ac.createOscillator(); + osc.connect(dest); + osc.start(); + const [track] = dest.stream.getTracks(); + t.add_cleanup(() => { + ac.close(); + track.stop(); + }); + return { stream: dest.stream }; +} + +function createVideoStream(t) { + const canvas = document.createElement("canvas"); + canvas.id = "canvas"; + document.body.appendChild(canvas); + const ctx = canvas.getContext("2d"); + const stream = canvas.captureStream(); + const [track] = stream.getTracks(); + t.add_cleanup(() => { + document.body.removeChild(canvas); + track.stop(); + }); + const addVideoFrame = () => { + ctx.fillStyle = "red"; + ctx.fillRect(0, 0, canvas.width, canvas.height); + }; + return { stream, control: { addVideoFrame } }; +} + +function createFlowingVideoStream(t) { + const { stream } = createVideoStream(t); + const [track] = stream.getTracks(); + const canvas = document.getElementById("canvas"); + const ctx = canvas.getContext("2d"); + ctx.fillStyle = "green"; + requestAnimationFrame(function draw() { + ctx.fillRect(0, 0, canvas.width, canvas.height); + if (track.readyState == "live") { + requestAnimationFrame(draw); + } + }); + return { stream }; +} + +function createAudioVideoStream(t) { + const { stream: audio } = createAudioStream(t); + const { stream: video, control } = createVideoStream(t); + return { + stream: new MediaStream([...audio.getTracks(), ...video.getTracks()]), + control, + }; +} + +function createFlowingAudioVideoStream(t) { + return { + stream: new MediaStream([ + ...createFlowingAudioStream(t).stream.getTracks(), + ...createFlowingVideoStream(t).stream.getTracks(), + ]), + }; +} diff --git a/tests/wpt/web-platform-tests/permissions-policy/experimental-features/resources/common.js b/tests/wpt/web-platform-tests/permissions-policy/experimental-features/resources/common.js index de25ce71089..308f787da63 100644 --- a/tests/wpt/web-platform-tests/permissions-policy/experimental-features/resources/common.js +++ b/tests/wpt/web-platform-tests/permissions-policy/experimental-features/resources/common.js @@ -71,7 +71,7 @@ setup(() => { if (window.reporting_observer_callback) { reports.forEach(window.reporting_observer_callback); } - }, {types: ["feature-policy-violation"]}); + }, {types: ["permissions-policy-violation"]}); window.reporting_observer_instance.observe(); window.reporting_observer_callback = null; }); diff --git a/tests/wpt/web-platform-tests/permissions-policy/experimental-features/resources/permissions-policy-trust-token-redemption.html b/tests/wpt/web-platform-tests/permissions-policy/experimental-features/resources/permissions-policy-trust-token-redemption.html index 329f0faa0d3..7ad0ace57d4 100644 --- a/tests/wpt/web-platform-tests/permissions-policy/experimental-features/resources/permissions-policy-trust-token-redemption.html +++ b/tests/wpt/web-platform-tests/permissions-policy/experimental-features/resources/permissions-policy-trust-token-redemption.html @@ -3,14 +3,14 @@ window.onload = function() { // When the trust-token-redemption permissions policy is enabled, redemption - // and signing ("send-srr") should both be available; when it's disabled, + // and signing ("send-redemption-record") should both be available; when it's disabled, // they should both be unavailable. Send the number of available operations // upstream in order to enforce this in assertions. let num_enabled = 4; try { new Request("https://issuer.example/", { trustToken: { - type: "srr-token-redemption" + type: "token-redemption" } }); } catch (e) { @@ -19,7 +19,7 @@ try { new Request("https://destination.example/", { trustToken: { - type: "send-srr", + type: "send-redemption-record", issuers: ["https://issuer.example/"] } }); @@ -31,7 +31,7 @@ const xhr = new XMLHttpRequest(); xhr.open("GET", "https://issuer.example/"); xhr.setTrustToken({ - type: "srr-token-redemption" + type: "token-redemption" }); } catch (e) { num_enabled--; @@ -41,7 +41,7 @@ const xhr = new XMLHttpRequest(); xhr.open("GET", "https://destination.example/"); xhr.setTrustToken({ - type: "send-srr", + type: "send-redemption-record", issuers: ["https://issuer.example/"] }); } catch (e) { diff --git a/tests/wpt/web-platform-tests/permissions-policy/experimental-features/trust-token-redemption-default-permissions-policy.tentative.https.sub.html b/tests/wpt/web-platform-tests/permissions-policy/experimental-features/trust-token-redemption-default-permissions-policy.tentative.https.sub.html index 8adc0c398ed..20736879105 100644 --- a/tests/wpt/web-platform-tests/permissions-policy/experimental-features/trust-token-redemption-default-permissions-policy.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/permissions-policy/experimental-features/trust-token-redemption-default-permissions-policy.tentative.https.sub.html @@ -18,12 +18,12 @@ // and XHR interfaces. new Request("https://issuer.example/", { trustToken: { - type: "srr-token-redemption" + type: "token-redemption" } }); new Request("https://destination.example/", { trustToken: { - type: "send-srr", // signing + type: "send-redemption-record", // signing issuers: ["https://issuer.example/"] } }); @@ -31,13 +31,13 @@ const redemption_xhr = new XMLHttpRequest(); redemption_xhr.open("GET", "https://issuer.example/"); redemption_xhr.setTrustToken({ - type: "srr-token-redemption" + type: "token-redemption" }); const signing_xhr = new XMLHttpRequest(); signing_xhr.open("GET", "https://destination.example/"); signing_xhr.setTrustToken({ - type: "send-srr", // signing + type: "send-redemption-record", // signing issuers: ["https://issuer.example/"] }); } catch (e) { diff --git a/tests/wpt/web-platform-tests/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html b/tests/wpt/web-platform-tests/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html index cb619bc225a..456626c350f 100644 --- a/tests/wpt/web-platform-tests/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html +++ b/tests/wpt/web-platform-tests/permissions-policy/payment-allowed-by-permissions-policy.https.sub.html @@ -29,19 +29,12 @@ async_test(t => { test_feature_availability('PaymentRequest()', t, cross_origin_src, - expect_feature_available_default); - }, header + ' allows cross-origin iframes.'); + expect_feature_unavailable_default); + }, header + ' disallows cross-origin iframes.'); async_test(t => { - test_feature_availability( - 'PaymentRequest()', t, same_origin_src, - expect_feature_available_default, undefined, 'allowpaymentrequest'); - }, header + ' allowpaymentrequest=true allows same-origin iframes.'); - - async_test(t => { - test_feature_availability( - 'PaymentRequest()', t, cross_origin_src, - expect_feature_available_default, undefined, 'allowpaymentrequest'); - }, header + ' allowpaymentrequest=true allows cross-origin iframes.'); + test_feature_availability('PaymentRequest()', t, cross_origin_src, + expect_feature_available_default, 'payment'); + }, header + ' allow="payment" allows cross-origin iframes.'); diff --git a/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-allowed-for-all.https.sub.html b/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-allowed-for-all.https.sub.html index d91132599fc..a089866c7af 100644 --- a/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-allowed-for-all.https.sub.html +++ b/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-allowed-for-all.https.sub.html @@ -19,12 +19,15 @@ ['*']); }, header_policy + ' -- test allowlist is ['*']'); - // Test that fullscreen is allowed on all subframes. + // Test that fullscreen is allowed on same-origin subframes. test_allowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on same-origin subframe', 'fullscreen', same_origin_src); - test_allowed_feature_for_subframe( + + // Test that fullscreen is not allowed on cross-origin subframes without an + // allow attribute. + test_disallowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on cross-origin subframe', 'fullscreen', cross_origin_src); diff --git a/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-allowed-for-some.https.sub.html b/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-allowed-for-some.https.sub.html index 1e999a5e5e5..0035eea7d5e 100644 --- a/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-allowed-for-some.https.sub.html +++ b/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-allowed-for-some.https.sub.html @@ -19,12 +19,13 @@ [same_origin, cross_origin, 'https://www.example.com'].sort()); }, header_policy + ' -- test allowlist is [same_origin, cross_origin, https://www.example.com]'); - // Test that fullscreen is allowed on same_origin, some cross_origin subframes. + // Test that fullscreen is allowed on same-origin, but disallowd on cross- + // origin subframes. without an allow attribute. test_allowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on same-origin subframe', 'fullscreen', same_origin_src); - test_allowed_feature_for_subframe( + test_disallowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on cross-origin ' + cross_origin_src + ' subframe', 'fullscreen', cross_origin_src); diff --git a/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-declined.https.sub.html b/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-declined.https.sub.html index 8455d68c071..247f23893ba 100644 --- a/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-declined.https.sub.html +++ b/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-header-policy-declined.https.sub.html @@ -19,12 +19,12 @@ [cross_origin, 'https://www.example.com'].sort()); }, header_policy + ' -- test allowlist is [cross_origin, https://www.example.com]'); - // Test that fullscreen is disallowed on same_origin, allowed on some cross_origin subframes. + // Test that fullscreen is everywhere. test_disallowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on same-origin subframe', 'fullscreen', same_origin_src); - test_allowed_feature_for_subframe( + test_disallowed_feature_for_subframe( header_policy + ' -- test fullscreen is allowed on cross-origin ' + cross_origin_src + ' subframe', 'fullscreen', cross_origin_src); @@ -34,7 +34,8 @@ 'fullscreen', cross_origin_src1); - // dynamically update sub frame's container policy + // dynamically update sub frame's container policy; fullscreen will still not + // be allowed. var disallow = "fullscreen 'none';" test_disallowed_feature_for_subframe( header_policy + ', iframe.allow = ' + disallow + ' -- test fullscreen is disallowed on same-origin subframe', @@ -55,7 +56,7 @@ same_origin_src, allow); - test_allowed_feature_for_subframe( + test_disallowed_feature_for_subframe( header_policy + 'iframe.allow = ' + allow + ' -- test fullscreen is allowed on specific cross-origin subframe', 'fullscreen', cross_origin_src, diff --git a/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-nested-header-policy-allowed-for-all.https.sub.html b/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-nested-header-policy-allowed-for-all.https.sub.html index 74ff64c51d2..46ca378d0b9 100644 --- a/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-nested-header-policy-allowed-for-all.https.sub.html +++ b/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-nested-header-policy-allowed-for-all.https.sub.html @@ -29,7 +29,7 @@ ------------------------------------------ */ test_subframe_header_policy('fullscreen', '*', same_origin_src, {local_all: true, local_self: true, local_none: false, - remote_all: true, remote_self: true, remote_none: false}, + remote_all: false, remote_self: false, remote_none: false}, 'Test nested header policy with local iframe on policy "fullscreen=*"'); test_subframe_header_policy('fullscreen', 'self', same_origin_src, {local_all: true, local_self: true, local_none: false, @@ -50,11 +50,11 @@ | ------------------------------------- | ------------------------------------------- */ test_subframe_header_policy('fullscreen', '*', cross_origin_src, - {local_all: true, local_self: true, local_none: false, - remote_all: true, remote_self: true, remote_none: false}, + {local_all: false, local_self: false, local_none: false, + remote_all: false, remote_self: false, remote_none: false}, 'Test nested header policy with remote iframe on policy "fullscreen=*"'); test_subframe_header_policy('fullscreen', 'self', cross_origin_src, - {local_all: true, local_self: true, local_none: false, + {local_all: false, local_self: false, local_none: false, remote_all: false, remote_self: false, remote_none: false}, 'Test nested header policy with remote iframe on policy "fullscreen=self"'); test_subframe_header_policy('fullscreen', '\\(\\)', cross_origin_src, diff --git a/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-nested-header-policy-allowed-for-self.https.sub.html b/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-nested-header-policy-allowed-for-self.https.sub.html index f1e5f9d2e24..54c6e95b6ed 100644 --- a/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-nested-header-policy-allowed-for-self.https.sub.html +++ b/tests/wpt/web-platform-tests/permissions-policy/permissions-policy-nested-header-policy-allowed-for-self.https.sub.html @@ -27,7 +27,7 @@ ------------------------------------------ */ test_subframe_header_policy('fullscreen', '*', same_origin_src, {local_all: true, local_self: true, local_none: false, - remote_all: true, remote_self: true, remote_none: false}, + remote_all: false, remote_self: false, remote_none: false}, 'Test nested header policy with local iframe on policy "fullscreen=*"'); test_subframe_header_policy('fullscreen', 'self', same_origin_src, {local_all: true, local_self: true, local_none: false, diff --git a/tests/wpt/web-platform-tests/permissions-policy/reporting/camera-report-only.https.html b/tests/wpt/web-platform-tests/permissions-policy/reporting/camera-report-only.https.html index c22e1a51740..5c6658bab86 100644 --- a/tests/wpt/web-platform-tests/permissions-policy/reporting/camera-report-only.https.html +++ b/tests/wpt/web-platform-tests/permissions-policy/reporting/camera-report-only.https.html @@ -10,7 +10,7 @@ + + + + + + + + diff --git a/tests/wpt/web-platform-tests/scroll-animations/testcommon.js b/tests/wpt/web-platform-tests/scroll-animations/testcommon.js index d9fc153887c..9b3e82228fc 100644 --- a/tests/wpt/web-platform-tests/scroll-animations/testcommon.js +++ b/tests/wpt/web-platform-tests/scroll-animations/testcommon.js @@ -55,3 +55,11 @@ function assert_approx_equals_or_null(actual, expected, tolerance, name){ assert_approx_equals(actual, expected, tolerance, name); } } + +// actual should be a CSSUnitValue and expected should be a double value 0-100 +function assert_percent_css_unit_value_approx_equals(actual, expected, tolerance, name){ + assert_true(actual instanceof CSSUnitValue, "'actual' must be of type CSSUnitValue"); + assert_equals(typeof expected, "number", "'expected' should be a number (0-100)"); + assert_equals(actual.unit, "percent", "'actual' unit type must be 'percent'"); + assert_approx_equals(actual.value, expected, tolerance, name); +} \ No newline at end of file diff --git a/tests/wpt/web-platform-tests/scroll-to-text-fragment/find-range-from-text-directive-target.html b/tests/wpt/web-platform-tests/scroll-to-text-fragment/find-range-from-text-directive-target.html new file mode 100644 index 00000000000..8e119d6448a --- /dev/null +++ b/tests/wpt/web-platform-tests/scroll-to-text-fragment/find-range-from-text-directive-target.html @@ -0,0 +1,71 @@ + +Tests find-a-range-from-a-text-directive algorithm + + + + +
+

+ The quick brown fox jumped over the lazy dog. + a a b b b c +

+

+ foo foo foo bar bar bar +

+

+ Lorem + +
+

 
+ +
This isn't rendered
+
This also isn't visible
+ + + +     Ipsum + + Whitespace + +
+
 
+ +
This isn't rendered
+
This also isn't visible
+ + +     + + Dipsum + + + +

+

+ This text appears at the end of the document +

diff --git a/tests/wpt/web-platform-tests/scroll-to-text-fragment/find-range-from-text-directive.html b/tests/wpt/web-platform-tests/scroll-to-text-fragment/find-range-from-text-directive.html new file mode 100644 index 00000000000..ce05a92b212 --- /dev/null +++ b/tests/wpt/web-platform-tests/scroll-to-text-fragment/find-range-from-text-directive.html @@ -0,0 +1,287 @@ + +Tests find-a-range-from-a-text-directive algorithm + + + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/shadow-dom/declarative/declarative-shadow-dom-attachment.tentative.html b/tests/wpt/web-platform-tests/shadow-dom/declarative/declarative-shadow-dom-attachment.tentative.html index 73b43829f1a..99a255bfa21 100644 --- a/tests/wpt/web-platform-tests/shadow-dom/declarative/declarative-shadow-dom-attachment.tentative.html +++ b/tests/wpt/web-platform-tests/shadow-dom/declarative/declarative-shadow-dom-attachment.tentative.html @@ -7,8 +7,6 @@