aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/wpt/metadata/FileAPI/blob/Blob-slice.html.ini2
-rw-r--r--tests/wpt/metadata/FileAPI/file/File-constructor.html.ini1
-rw-r--r--tests/wpt/metadata/FileAPI/reading-data-section/Determining-Encoding.html.ini2
-rw-r--r--tests/wpt/metadata/MANIFEST.json332
-rw-r--r--tests/wpt/metadata/css/css-values/vh_not_refreshing_on_chrome.html.ini2
-rw-r--r--tests/wpt/metadata/fetch/api/response/response-consume.html.ini3
-rw-r--r--tests/wpt/metadata/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js.ini4
-rw-r--r--tests/wpt/mozilla/meta/webgl/conformance-1.0.3/conformance/canvas/rapid-resizing.html.ini5
-rw-r--r--tests/wpt/web-platform-tests/accelerometer/Accelerometer-disabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html2
-rw-r--r--tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy-attribute.https.html2
-rw-r--r--tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-on-self-origin-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/accelerometer/Accelerometer.https.html2
-rw-r--r--tests/wpt/web-platform-tests/accelerometer/Accelerometer_insecure_context.html2
-rw-r--r--tests/wpt/web-platform-tests/accelerometer/Accelerometer_onerror-manual.https.html2
-rw-r--r--tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-disabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html2
-rw-r--r--tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute.https.html2
-rw-r--r--tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-on-self-origin-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor.https.html2
-rw-r--r--tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor_insecure_context.html2
-rw-r--r--tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor_onerror-manual.https.html2
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-definition/support/testing-utils.js6
-rw-r--r--tests/wpt/web-platform-tests/css/css-scroll-snap/scroll-snap-type-proximity.html80
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/response/response-consume.html28
-rw-r--r--tests/wpt/web-platform-tests/generic-sensor/OWNERS (renamed from tests/wpt/web-platform-tests/sensors/OWNERS)0
-rw-r--r--tests/wpt/web-platform-tests/generic-sensor/SensorErrorEvent-constructor.https.html (renamed from tests/wpt/web-platform-tests/sensors/SensorErrorEvent-constructor.https.html)0
-rw-r--r--tests/wpt/web-platform-tests/generic-sensor/generic-sensor-feature-policy-test.sub.js (renamed from tests/wpt/web-platform-tests/sensors/generic-sensor-feature-policy-test.sub.js)0
-rw-r--r--tests/wpt/web-platform-tests/generic-sensor/generic-sensor-tests.js (renamed from tests/wpt/web-platform-tests/sensors/generic-sensor-tests.js)0
-rw-r--r--tests/wpt/web-platform-tests/generic-sensor/idlharness.https.html (renamed from tests/wpt/web-platform-tests/sensors/idlharness.https.html)0
-rw-r--r--tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-disabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html2
-rw-r--r--tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute.https.html2
-rw-r--r--tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-on-self-origin-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor.https.html2
-rw-r--r--tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor_insecure_context.html2
-rw-r--r--tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor_onerror-manual.https.html2
-rw-r--r--tests/wpt/web-platform-tests/gyroscope/Gyroscope-disabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy-attribute-redirect-on-load.https.html2
-rw-r--r--tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy-attribute.https.html2
-rw-r--r--tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-on-self-origin-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/gyroscope/Gyroscope.https.html2
-rw-r--r--tests/wpt/web-platform-tests/gyroscope/Gyroscope_insecure_context.html2
-rw-r--r--tests/wpt/web-platform-tests/gyroscope/Gyroscope_onerror-manual.https.html2
-rw-r--r--tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js47
-rw-r--r--tests/wpt/web-platform-tests/interfaces/css-typed-om.idl46
-rw-r--r--tests/wpt/web-platform-tests/interfaces/payment-request.idl44
-rw-r--r--tests/wpt/web-platform-tests/interfaces/storage.idl4
-rw-r--r--tests/wpt/web-platform-tests/interfaces/webvtt.idl39
-rw-r--r--tests/wpt/web-platform-tests/magnetometer/Magnetometer-disabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html2
-rw-r--r--tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy-attribute.https.html2
-rw-r--r--tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-on-self-origin-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/magnetometer/Magnetometer.https.html2
-rw-r--r--tests/wpt/web-platform-tests/magnetometer/Magnetometer_insecure_context.html2
-rw-r--r--tests/wpt/web-platform-tests/magnetometer/Magnetometer_onerror-manual.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-disabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor_insecure_context.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor_onerror-manual.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-disabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html2
-rw-r--r--tests/wpt/web-platform-tests/payment-request/show-method-postmessage-iframe.html40
-rw-r--r--tests/wpt/web-platform-tests/payment-request/show-method-postmessage-manual.https.html51
-rw-r--r--tests/wpt/web-platform-tests/proximity/ProximitySensor.https.html2
-rw-r--r--tests/wpt/web-platform-tests/proximity/ProximitySensor_insecure_context.html2
-rw-r--r--tests/wpt/web-platform-tests/proximity/ProximitySensor_onerror-manual.https.html2
-rw-r--r--tests/wpt/web-platform-tests/resource-timing/resource_TAO_cross_origin_redirect_chain.html47
-rw-r--r--tests/wpt/web-platform-tests/resource-timing/resource_timing_cross_origin_redirect_chain.html46
-rw-r--r--tests/wpt/web-platform-tests/resource-timing/resources/multi_redirect.py40
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tox.ini3
-rw-r--r--tests/wpt/web-platform-tests/svg/extensibility/foreignObject/containing-block.html46
-rw-r--r--tests/wpt/web-platform-tests/svg/extensibility/foreignObject/stacking-context-expected.html18
-rw-r--r--tests/wpt/web-platform-tests/svg/extensibility/foreignObject/stacking-context.html26
-rwxr-xr-xtests/wpt/web-platform-tests/tools/ci/ci_resources_unittest.sh3
-rw-r--r--tests/wpt/web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.https.html18
-rw-r--r--tests/wpt/web-platform-tests/webvtt/api/interfaces.html52
89 files changed, 889 insertions, 258 deletions
diff --git a/tests/wpt/metadata/FileAPI/blob/Blob-slice.html.ini b/tests/wpt/metadata/FileAPI/blob/Blob-slice.html.ini
deleted file mode 100644
index d602b90069f..00000000000
--- a/tests/wpt/metadata/FileAPI/blob/Blob-slice.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[Blob-slice.html]
- type: testharness
diff --git a/tests/wpt/metadata/FileAPI/file/File-constructor.html.ini b/tests/wpt/metadata/FileAPI/file/File-constructor.html.ini
index da1c2c9114d..36c9cb7ef39 100644
--- a/tests/wpt/metadata/FileAPI/file/File-constructor.html.ini
+++ b/tests/wpt/metadata/FileAPI/file/File-constructor.html.ini
@@ -5,3 +5,4 @@
[Invalid bits argument: "hello"]
expected: FAIL
+
diff --git a/tests/wpt/metadata/FileAPI/reading-data-section/Determining-Encoding.html.ini b/tests/wpt/metadata/FileAPI/reading-data-section/Determining-Encoding.html.ini
deleted file mode 100644
index e52ca0c4e3c..00000000000
--- a/tests/wpt/metadata/FileAPI/reading-data-section/Determining-Encoding.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[Determining-Encoding.html]
- type: testharness
diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json
index 90387ce6c8a..2c1ba620819 100644
--- a/tests/wpt/metadata/MANIFEST.json
+++ b/tests/wpt/metadata/MANIFEST.json
@@ -14947,6 +14947,12 @@
{}
]
],
+ "payment-request/show-method-postmessage-manual.https.html": [
+ [
+ "/payment-request/show-method-postmessage-manual.https.html",
+ {}
+ ]
+ ],
"payment-request/updateWith-method-pmi-handling-manual.https.html": [
[
"/payment-request/updateWith-method-pmi-handling-manual.https.html",
@@ -181215,6 +181221,18 @@
{}
]
],
+ "svg/extensibility/foreignObject/stacking-context.html": [
+ [
+ "/svg/extensibility/foreignObject/stacking-context.html",
+ [
+ [
+ "/svg/extensibility/foreignObject/stacking-context-expected.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"svg/foreignobject/position-svg-root-in-foreign-object.html": [
[
"/svg/foreignobject/position-svg-root-in-foreign-object.html",
@@ -272787,6 +272805,21 @@
{}
]
],
+ "generic-sensor/OWNERS": [
+ [
+ {}
+ ]
+ ],
+ "generic-sensor/generic-sensor-feature-policy-test.sub.js": [
+ [
+ {}
+ ]
+ ],
+ "generic-sensor/generic-sensor-tests.js": [
+ [
+ {}
+ ]
+ ],
"geolocation-API/OWNERS": [
[
{}
@@ -285407,6 +285440,11 @@
{}
]
],
+ "interfaces/webvtt.idl": [
+ [
+ {}
+ ]
+ ],
"interfaces/webxr.idl": [
[
{}
@@ -287187,6 +287225,11 @@
{}
]
],
+ "payment-request/show-method-postmessage-iframe.html": [
+ [
+ {}
+ ]
+ ],
"performance-timeline/OWNERS": [
[
{}
@@ -290307,6 +290350,11 @@
{}
]
],
+ "resource-timing/resources/multi_redirect.py": [
+ [
+ {}
+ ]
+ ],
"resource-timing/resources/nested.css": [
[
{}
@@ -290467,21 +290515,6 @@
{}
]
],
- "sensors/OWNERS": [
- [
- {}
- ]
- ],
- "sensors/generic-sensor-feature-policy-test.sub.js": [
- [
- {}
- ]
- ],
- "sensors/generic-sensor-tests.js": [
- [
- {}
- ]
- ],
"server-timing/resources/blue.png": [
[
{}
@@ -293547,6 +293580,11 @@
{}
]
],
+ "svg/extensibility/foreignObject/stacking-context-expected.html": [
+ [
+ {}
+ ]
+ ],
"svg/foreignobject/position-svg-root-in-foreign-object-ref.html": [
[
{}
@@ -314271,6 +314309,12 @@
{}
]
],
+ "css/css-scroll-snap/scroll-snap-type-proximity.html": [
+ [
+ "/css/css-scroll-snap/scroll-snap-type-proximity.html",
+ {}
+ ]
+ ],
"css/css-scroll-snap/scrollTo-scrollBy-snaps.html": [
[
"/css/css-scroll-snap/scrollTo-scrollBy-snaps.html",
@@ -325771,6 +325815,18 @@
{}
]
],
+ "generic-sensor/SensorErrorEvent-constructor.https.html": [
+ [
+ "/generic-sensor/SensorErrorEvent-constructor.https.html",
+ {}
+ ]
+ ],
+ "generic-sensor/idlharness.https.html": [
+ [
+ "/generic-sensor/idlharness.https.html",
+ {}
+ ]
+ ],
"geolocation-API/PositionOptions.https.html": [
[
"/geolocation-API/PositionOptions.https.html",
@@ -329311,6 +329367,12 @@
{}
]
],
+ "html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js": [
+ [
+ "/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.html",
+ {}
+ ]
+ ],
"html/infrastructure/terminology/plugins/text-plain.html": [
[
"/html/infrastructure/terminology/plugins/text-plain.html",
@@ -359239,6 +359301,12 @@
{}
]
],
+ "resource-timing/resource_TAO_cross_origin_redirect_chain.html": [
+ [
+ "/resource-timing/resource_TAO_cross_origin_redirect_chain.html",
+ {}
+ ]
+ ],
"resource-timing/resource_TAO_match_origin.htm": [
[
"/resource-timing/resource_TAO_match_origin.htm",
@@ -359395,6 +359463,12 @@
{}
]
],
+ "resource-timing/resource_timing_cross_origin_redirect_chain.html": [
+ [
+ "/resource-timing/resource_timing_cross_origin_redirect_chain.html",
+ {}
+ ]
+ ],
"resource-timing/resource_timing_same_origin_redirect.html": [
[
"/resource-timing/resource_timing_same_origin_redirect.html",
@@ -359773,18 +359847,6 @@
{}
]
],
- "sensors/SensorErrorEvent-constructor.https.html": [
- [
- "/sensors/SensorErrorEvent-constructor.https.html",
- {}
- ]
- ],
- "sensors/idlharness.https.html": [
- [
- "/sensors/idlharness.https.html",
- {}
- ]
- ],
"server-timing/cross_origin.html": [
[
"/server-timing/cross_origin.html",
@@ -363067,6 +363129,12 @@
{}
]
],
+ "svg/extensibility/foreignObject/containing-block.html": [
+ [
+ "/svg/extensibility/foreignObject/containing-block.html",
+ {}
+ ]
+ ],
"svg/extensibility/foreignObject/properties.svg": [
[
"/svg/extensibility/foreignObject/properties.svg",
@@ -398099,7 +398167,7 @@
"support"
],
"accelerometer/Accelerometer-disabled-by-feature-policy.https.html": [
- "5bce003a7ab3b5016011d35c715d7968c09a89a4",
+ "96e5a86bf78239f3aa4a79b32bb4308de0d5f60e",
"testharness"
],
"accelerometer/Accelerometer-disabled-by-feature-policy.https.html.headers": [
@@ -398107,15 +398175,15 @@
"support"
],
"accelerometer/Accelerometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html": [
- "df5fc463567201131aeee4f8f975e39135058aab",
+ "f20f89a31daf399a7946b928e8deca9651d38487",
"testharness"
],
"accelerometer/Accelerometer-enabled-by-feature-policy-attribute.https.html": [
- "fbea6404a3a380b43b2f006cb1dddadcabeb666f",
+ "7ce8c39f0af6c932d1e6b6f75843c090f7274b80",
"testharness"
],
"accelerometer/Accelerometer-enabled-by-feature-policy.https.html": [
- "67193bd17d281423d7f6e84b0166b5a4c0409be3",
+ "dbda7cfa838c1f2d4296b545034d42f0064f331a",
"testharness"
],
"accelerometer/Accelerometer-enabled-by-feature-policy.https.html.headers": [
@@ -398123,7 +398191,7 @@
"support"
],
"accelerometer/Accelerometer-enabled-on-self-origin-by-feature-policy.https.html": [
- "69ced186024bf92e077eccac49a66e8f86d81c96",
+ "b8fb07cdd23dce9690de719387b9d505382772f5",
"testharness"
],
"accelerometer/Accelerometer-enabled-on-self-origin-by-feature-policy.https.html.headers": [
@@ -398131,15 +398199,15 @@
"support"
],
"accelerometer/Accelerometer.https.html": [
- "f70ee583dce5ed3019e900163d5d559d70d05fb2",
+ "3ff5f61b25c52142e9796f3903d7f2bcaa30314c",
"testharness"
],
"accelerometer/Accelerometer_insecure_context.html": [
- "b9837873e39416c65e8ac05f2049bfa406ba4264",
+ "82be1b9a5c6e75291fdc1aabe230af28e22823a8",
"testharness"
],
"accelerometer/Accelerometer_onerror-manual.https.html": [
- "c8b76601f465d0f5b26a9bc27dac503f02887448",
+ "c82f9595dc2582b2da40549a358da1c3fc2ff820",
"manual"
],
"accelerometer/LinearAccelerationSensor-shake-threshold-manual.https.html": [
@@ -398927,7 +398995,7 @@
"support"
],
"ambient-light/AmbientLightSensor-disabled-by-feature-policy.https.html": [
- "dcd19f8b1428bfc147a62299489e1d10f3e31795",
+ "9dcb093c8a052b8563d65fa6f0885650422dbf4c",
"testharness"
],
"ambient-light/AmbientLightSensor-disabled-by-feature-policy.https.html.headers": [
@@ -398935,15 +399003,15 @@
"support"
],
"ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html": [
- "d1a42dfb235b17c9f7701c6b7ac9b32c1b1d385c",
+ "06862bb58d13bf4355cbe66cb7060c7a5ea4a750",
"testharness"
],
"ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute.https.html": [
- "7e13efd73ff674cb9870495df169a3ab10cf696c",
+ "acdf8d84bc3e8708af250d8825c93d130ade435f",
"testharness"
],
"ambient-light/AmbientLightSensor-enabled-by-feature-policy.https.html": [
- "752da9e721c28c8a174cca05133f9ff3acbe1139",
+ "da2cc1cc0de186731e38512219cdfaf8357b9301",
"testharness"
],
"ambient-light/AmbientLightSensor-enabled-by-feature-policy.https.html.headers": [
@@ -398951,7 +399019,7 @@
"support"
],
"ambient-light/AmbientLightSensor-enabled-on-self-origin-by-feature-policy.https.html": [
- "664ab1dc2e3c4026e0d890bab8e17544d58f4210",
+ "2a7a1dadbf5d9d05116128633598da781f5f0003",
"testharness"
],
"ambient-light/AmbientLightSensor-enabled-on-self-origin-by-feature-policy.https.html.headers": [
@@ -398959,15 +399027,15 @@
"support"
],
"ambient-light/AmbientLightSensor.https.html": [
- "49d9d753bee1b390803ba293458dccfb5b7613e1",
+ "86a1f84e2e034d58b2a7f6fc01880028b444c7cd",
"testharness"
],
"ambient-light/AmbientLightSensor_insecure_context.html": [
- "279a073382db5c79ddbee30ffe4478299a773dd3",
+ "f6d9e5bd6d1ce6705835f15498ddbb5a5b82fb88",
"testharness"
],
"ambient-light/AmbientLightSensor_onerror-manual.https.html": [
- "834b4f46f111a128c1c16c1c93d459b52dd4828d",
+ "fa52072d6da7987db8f67c2a6fd9b2e281f03042",
"manual"
],
"ambient-light/OWNERS": [
@@ -501119,7 +501187,7 @@
"support"
],
"css/css-grid/grid-definition/support/testing-utils.js": [
- "7d6dc5106777942ad83e6bc570368af113f32d5f",
+ "bda861857e383f7e77e2aded1d1c9af1340cc126",
"support"
],
"css/css-grid/grid-items/anonymous-grid-item-001.html": [
@@ -507850,6 +507918,10 @@
"de66dba5bce15b7403e9e582d982d4e3e4aed552",
"testharness"
],
+ "css/css-scroll-snap/scroll-snap-type-proximity.html": [
+ "75bfc0b6c7686afbbf431e653ab674496ad3fe46",
+ "testharness"
+ ],
"css/css-scroll-snap/scrollTo-scrollBy-snaps.html": [
"6e921f3b1c54df09d594d5e450674618eee42143",
"testharness"
@@ -550947,7 +551019,7 @@
"testharness"
],
"fetch/api/response/response-consume.html": [
- "936272bddf1a090267343fc7f8ab3669da98d27d",
+ "3e68870ad69c0121d697036886251ef652cd65a7",
"testharness"
],
"fetch/api/response/response-error-from-stream.html": [
@@ -552170,6 +552242,26 @@
"b2432e7ea263fb80be42e7eecf93a9d885c0205d",
"manual"
],
+ "generic-sensor/OWNERS": [
+ "b1349055762c7d44414c0c11fb8500d5eee9a75f",
+ "support"
+ ],
+ "generic-sensor/SensorErrorEvent-constructor.https.html": [
+ "99bcfb42c91e084a3b847ab4bab2bad80e548540",
+ "testharness"
+ ],
+ "generic-sensor/generic-sensor-feature-policy-test.sub.js": [
+ "c7c9c4d1c578f267cbb4241d7ea7a981be6f49ee",
+ "support"
+ ],
+ "generic-sensor/generic-sensor-tests.js": [
+ "6364f1838215eaafd91b86690039da41d4c19cd1",
+ "support"
+ ],
+ "generic-sensor/idlharness.https.html": [
+ "02c734b907075c8abb7504fc7e2b93730ac80a0c",
+ "testharness"
+ ],
"geolocation-API/OWNERS": [
"84c4182ceed0f75ada11e63c3dfc2acc2939cbb6",
"support"
@@ -552231,7 +552323,7 @@
"testharness"
],
"geolocation-sensor/GeolocationSensor-disabled-by-feature-policy.https.html": [
- "b85d614841994226c2cab7fdf88e03620e453457",
+ "91047842ea56344c005c46de7cdd27e2373ea0a1",
"testharness"
],
"geolocation-sensor/GeolocationSensor-disabled-by-feature-policy.https.html.headers": [
@@ -552239,15 +552331,15 @@
"support"
],
"geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html": [
- "2d21ee198d079dde55f02fda3eb7f8e8fb6dfac4",
+ "fb033fd0f0d891e9b6ed2b54b835f8f06364643e",
"testharness"
],
"geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute.https.html": [
- "2eac643f35086d5051333674f6a01a9ee524786d",
+ "06e4487981f8e6e062d9e9fea14d52e64b6b5035",
"testharness"
],
"geolocation-sensor/GeolocationSensor-enabled-by-feature-policy.https.html": [
- "49e7799a36358602efabfb219a93422078456111",
+ "e8287121361749246b874207dcffb92e459dfbec",
"testharness"
],
"geolocation-sensor/GeolocationSensor-enabled-by-feature-policy.https.html.headers": [
@@ -552255,7 +552347,7 @@
"support"
],
"geolocation-sensor/GeolocationSensor-enabled-on-self-origin-by-feature-policy.https.html": [
- "4ad92dcbcc737cbc14ba3bc2c19dc8f78e75d0a1",
+ "4222f48c8c2a932c5b65b6426bb9a0ad476ddd0c",
"testharness"
],
"geolocation-sensor/GeolocationSensor-enabled-on-self-origin-by-feature-policy.https.html.headers": [
@@ -552263,15 +552355,15 @@
"support"
],
"geolocation-sensor/GeolocationSensor.https.html": [
- "502b4dbd03312a2e1e0c18fb3983a077335efde6",
+ "c9d32faca641ec784acf9096a079d73781330216",
"testharness"
],
"geolocation-sensor/GeolocationSensor_insecure_context.html": [
- "f2e8f58fd7e09cfaa311c83adc4456f9463a3456",
+ "58fd65d3a72e6734392381fe225e3fbd7007fc06",
"testharness"
],
"geolocation-sensor/GeolocationSensor_onerror-manual.https.html": [
- "8c5a4e48439ff0620d6267b127a5d49f85657896",
+ "2b7aac7d60271e12ce71f6293405ffafb471c8c8",
"manual"
],
"geolocation-sensor/GeolocationSensor_read.https.html": [
@@ -552315,7 +552407,7 @@
"manual"
],
"gyroscope/Gyroscope-disabled-by-feature-policy.https.html": [
- "b7fb169e2a3de0df84a44b9775677d1a005e2446",
+ "bc6f85cb3506d3e3e062eef43dca88bf3a4ebe89",
"testharness"
],
"gyroscope/Gyroscope-disabled-by-feature-policy.https.html.headers": [
@@ -552323,15 +552415,15 @@
"support"
],
"gyroscope/Gyroscope-enabled-by-feature-policy-attribute-redirect-on-load.https.html": [
- "0887871a9f337da76cdbf8fc0ea7a6aafa6eec37",
+ "cc1f4082fa420a9076f929d88268f5a1d921a44a",
"testharness"
],
"gyroscope/Gyroscope-enabled-by-feature-policy-attribute.https.html": [
- "b5d7fe16df3356e7e8ea202088e63734291810f0",
+ "75429c87bbebd19df7b4edaddc5869c6202b3fab",
"testharness"
],
"gyroscope/Gyroscope-enabled-by-feature-policy.https.html": [
- "92bd0aee5d2d54b50e907155fe3a6dd5b2634021",
+ "5129c05f9b226650a9b7fed4841871045525bf15",
"testharness"
],
"gyroscope/Gyroscope-enabled-by-feature-policy.https.html.headers": [
@@ -552339,7 +552431,7 @@
"support"
],
"gyroscope/Gyroscope-enabled-on-self-origin-by-feature-policy.https.html": [
- "b1af2b9e1787c1ace4619509d95e4085ac0f0fc7",
+ "2603bd858929ae6f84ebbe0cce34c5417ccdae06",
"testharness"
],
"gyroscope/Gyroscope-enabled-on-self-origin-by-feature-policy.https.html.headers": [
@@ -552347,15 +552439,15 @@
"support"
],
"gyroscope/Gyroscope.https.html": [
- "7d30725e44905d774a0b4554b55842cba78e1462",
+ "504abfa42529e08576e49c3296464bcea5fe0b8a",
"testharness"
],
"gyroscope/Gyroscope_insecure_context.html": [
- "79688da94e1ea93646c288bdbfdb17487e846560",
+ "74e51a1efc06bf8180db430b418d484fc50c07f9",
"testharness"
],
"gyroscope/Gyroscope_onerror-manual.https.html": [
- "c89ff6361146a5d3065c2d44088b313e5560ba8d",
+ "1e15b883bd317ca83783864fc563794cb0f6df8e",
"manual"
],
"gyroscope/OWNERS": [
@@ -561458,6 +561550,10 @@
"e0f5057cc03fe0bf0bc83587e620b623e4211da3",
"testharness"
],
+ "html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js": [
+ "03fd591d7d34f35db36742111f1aa81872775a65",
+ "testharness"
+ ],
"html/infrastructure/terminology/.gitkeep": [
"da39a3ee5e6b4b0d3255bfef95601890afd80709",
"support"
@@ -571991,7 +572087,7 @@
"support"
],
"interfaces/css-typed-om.idl": [
- "3c918afebfb20266dd4003e71a008ed19c448fbc",
+ "59bd8e2c3c1bf8fded9a5523b5bd3b59761eacef",
"support"
],
"interfaces/cssom-view.idl": [
@@ -572071,7 +572167,7 @@
"support"
],
"interfaces/payment-request.idl": [
- "b61ab0da4aa0f89f4af1b7d8c5f32f2bde90fd35",
+ "a7700006f4af50e069f6557bc7fc5affdd0c2d11",
"support"
],
"interfaces/proximity.idl": [
@@ -572095,7 +572191,7 @@
"support"
],
"interfaces/storage.idl": [
- "fe2e879ca5662f3b1714404734fd033faf3268ec",
+ "7c3221be9fdf6be4965cf5aeca2063f93c2110d6",
"support"
],
"interfaces/touchevents.idl": [
@@ -572142,6 +572238,10 @@
"7b5749e1fece69552e0a8bfac7af401fac15394d",
"support"
],
+ "interfaces/webvtt.idl": [
+ "3e7ab31795b8339de3d6904f0d68dab68ca24148",
+ "support"
+ ],
"interfaces/webxr.idl": [
"b1bbaa67765ce6eb20c39e6f2234912e4853e148",
"support"
@@ -572419,7 +572519,7 @@
"support"
],
"magnetometer/Magnetometer-disabled-by-feature-policy.https.html": [
- "a050a0aff6039883d521735bff4b96e0628de20d",
+ "9af542095f2fcd57691c0432ef3248b04a0207a0",
"testharness"
],
"magnetometer/Magnetometer-disabled-by-feature-policy.https.html.headers": [
@@ -572427,15 +572527,15 @@
"support"
],
"magnetometer/Magnetometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html": [
- "0bdab54bc63a9b28b89c7be70409a9c6c7d943c5",
+ "47829ff5747eed99ba22e79b12ddfff288fd031e",
"testharness"
],
"magnetometer/Magnetometer-enabled-by-feature-policy-attribute.https.html": [
- "22a4580c08716b0395d6a0e49679b29619e2ce35",
+ "3b6314e9176a24976d9d882644c30f00554eed6d",
"testharness"
],
"magnetometer/Magnetometer-enabled-by-feature-policy.https.html": [
- "8cc0dfc032b1f063e88ca43a0516b89ab05e057f",
+ "05128cdb7171ba230143e7b68b09968a484b602a",
"testharness"
],
"magnetometer/Magnetometer-enabled-by-feature-policy.https.html.headers": [
@@ -572443,7 +572543,7 @@
"support"
],
"magnetometer/Magnetometer-enabled-on-self-origin-by-feature-policy.https.html": [
- "ac9154aca0c01825a78aad12b9ed242ec8780937",
+ "3240dafd2bc810dea0dc1ebc31728c86a29f2ec5",
"testharness"
],
"magnetometer/Magnetometer-enabled-on-self-origin-by-feature-policy.https.html.headers": [
@@ -572451,15 +572551,15 @@
"support"
],
"magnetometer/Magnetometer.https.html": [
- "bb74316d74c488daf753ee8576761ec78db457df",
+ "240e7d0af55b8681f2f45ca22283634acc406325",
"testharness"
],
"magnetometer/Magnetometer_insecure_context.html": [
- "aef2810b55ac8672dff86b85f5d93d152b81dfe4",
+ "0eeb95340d7c74a0243eac8d3f004b6e06b87a92",
"testharness"
],
"magnetometer/Magnetometer_onerror-manual.https.html": [
- "f073df598684ce24f429d968da343812d68cb142",
+ "da4e6b8975beecdcae24da26920a56a652f781e4",
"manual"
],
"magnetometer/OWNERS": [
@@ -581523,7 +581623,7 @@
"manual"
],
"orientation-sensor/AbsoluteOrientationSensor-disabled-by-feature-policy.https.html": [
- "9db710ef183a7bc65e6649526defe869c5fb66e9",
+ "0c7657e32b46c64e5f050f04e40ccfc0dce32e47",
"testharness"
],
"orientation-sensor/AbsoluteOrientationSensor-disabled-by-feature-policy.https.html.headers": [
@@ -581531,15 +581631,15 @@
"support"
],
"orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html": [
- "05c28d8975c13aea8e248d2a1a5341fb146c82a5",
+ "71a6966fb91f8ddfe15ee690c843e4621a3b4720",
"testharness"
],
"orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute.https.html": [
- "e3679a5c3a5f1783d3311556788af9e5a18b9287",
+ "9bbe39e1be4a669f31f0fb3960aca22d7d159c5e",
"testharness"
],
"orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy.https.html": [
- "923b5167c76b8f8405c94043dae6d4312383d00e",
+ "9f110b8ceca3dd3ce3d2a9e2567d92a3fc6462bf",
"testharness"
],
"orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy.https.html.headers": [
@@ -581547,7 +581647,7 @@
"support"
],
"orientation-sensor/AbsoluteOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html": [
- "873f248fa5c359322f6d8b143758122450c2279c",
+ "c4404cf0b16c4d9ad15308392ecf52caee445b86",
"testharness"
],
"orientation-sensor/AbsoluteOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html.headers": [
@@ -581559,19 +581659,19 @@
"support"
],
"orientation-sensor/OrientationSensor.https.html": [
- "6b53127c74c55a8cf5697bc5527f36b7276e2681",
+ "ea9a61f9d526183071a0336e11ca844f59c284a9",
"testharness"
],
"orientation-sensor/OrientationSensor_insecure_context.html": [
- "4161a365bd3a72226c29049cbe46c123b8b07a04",
+ "eb64da888f1bedf9d5ed8b11edc1626da88b322b",
"testharness"
],
"orientation-sensor/OrientationSensor_onerror-manual.https.html": [
- "7d28e6caf629f82b058a33b018de34940f34916f",
+ "6f0eb976affc21e49f48c42c1bd9d9eb0083ee40",
"manual"
],
"orientation-sensor/RelativeOrientationSensor-disabled-by-feature-policy.https.html": [
- "a8178651dd87ac80268a7c9de06858a6c5ee2125",
+ "8c6c5f8f3bc4421f5143a3e4fab287564cf4907d",
"testharness"
],
"orientation-sensor/RelativeOrientationSensor-disabled-by-feature-policy.https.html.headers": [
@@ -581579,15 +581679,15 @@
"support"
],
"orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html": [
- "895e2cb7837bd9cb4a8ba7b3c90f414b4d3677ea",
+ "34a79c9033a41c0aceab3fa6a470dd5a76f2ac81",
"testharness"
],
"orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute.https.html": [
- "745fc51713614d6082dec199e3491e001cf3396e",
+ "0e6260ccdaa8163b8db96516960be226a4d85ba7",
"testharness"
],
"orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy.https.html": [
- "bccd08cf93fddcf3c8e2dc18fe394454580f2c88",
+ "243b2d60d4c528a77e9cfb68fa256b35234e7346",
"testharness"
],
"orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy.https.html.headers": [
@@ -581595,7 +581695,7 @@
"support"
],
"orientation-sensor/RelativeOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html": [
- "3ea7f029d22c4f05f99fc0cc5c4016670265cea7",
+ "c9f234f6508fb778fdf91277bb8950c99479979d",
"testharness"
],
"orientation-sensor/RelativeOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html.headers": [
@@ -582046,6 +582146,14 @@
"a07f98e117bce1f040c5e62ef3acbd2ef7475338",
"manual"
],
+ "payment-request/show-method-postmessage-iframe.html": [
+ "05167546e8763cb39873de4ca8f4e8e758ba0147",
+ "support"
+ ],
+ "payment-request/show-method-postmessage-manual.https.html": [
+ "d2be1d2872a473a48df7139ecd3804f33187ec8f",
+ "manual"
+ ],
"payment-request/updateWith-method-pmi-handling-manual.https.html": [
"b473073ad106e9e0732adb6bfbed5f54d6ec3194",
"manual"
@@ -582991,15 +583099,15 @@
"support"
],
"proximity/ProximitySensor.https.html": [
- "6c4a9d4ed542136534229a20b2c15463c7170a35",
+ "6920751273c1220f40b5046be7ce7254a01ce72e",
"testharness"
],
"proximity/ProximitySensor_insecure_context.html": [
- "426dc80f29f9eff09b266d357482d1532066a27a",
+ "00b6ec75ae65d4ee7144e9362ccc89a3b3adb856",
"testharness"
],
"proximity/ProximitySensor_onerror-manual.https.html": [
- "ff682dfeb9f9dbea598455190d2c90e14d07b769",
+ "522cdac324519313d77aa2dd417d486f15b2511f",
"manual"
],
"proximity/idlharness.https.html": [
@@ -590654,6 +590762,10 @@
"9351f640380bd9a71bca28d32d724bd5f6373650",
"support"
],
+ "resource-timing/resource_TAO_cross_origin_redirect_chain.html": [
+ "0dc87677f0c60a5710a5a3c484a0cec548de49bd",
+ "testharness"
+ ],
"resource-timing/resource_TAO_match_origin.htm": [
"32faacb791313be60380fa744608853b24442f42",
"testharness"
@@ -590758,6 +590870,10 @@
"54c0154ef223eaf288fbc247caa4df7b5c93d844",
"testharness"
],
+ "resource-timing/resource_timing_cross_origin_redirect_chain.html": [
+ "367040bd55629c2a94b70f8180e682fb80ead94e",
+ "testharness"
+ ],
"resource-timing/resource_timing_same_origin_redirect.html": [
"4a108e824fb57aa563deede2da8d47f25a8ab41e",
"testharness"
@@ -590854,6 +590970,10 @@
"f53513f6f47fd4a6d4994a4ef7d6e37d1777ea57",
"support"
],
+ "resource-timing/resources/multi_redirect.py": [
+ "01cbf570b683a8e419b5a0ff7a0681a0b2ffa838",
+ "support"
+ ],
"resource-timing/resources/nested.css": [
"b89daf15601a711f6046d9e2fe1cc43ae1f0fd27",
"support"
@@ -591202,26 +591322,6 @@
"01ae6e757d428800555012783e290ebba575bcab",
"testharness"
],
- "sensors/OWNERS": [
- "b1349055762c7d44414c0c11fb8500d5eee9a75f",
- "support"
- ],
- "sensors/SensorErrorEvent-constructor.https.html": [
- "99bcfb42c91e084a3b847ab4bab2bad80e548540",
- "testharness"
- ],
- "sensors/generic-sensor-feature-policy-test.sub.js": [
- "c7c9c4d1c578f267cbb4241d7ea7a981be6f49ee",
- "support"
- ],
- "sensors/generic-sensor-tests.js": [
- "6364f1838215eaafd91b86690039da41d4c19cd1",
- "support"
- ],
- "sensors/idlharness.https.html": [
- "02c734b907075c8abb7504fc7e2b93730ac80a0c",
- "testharness"
- ],
"server-timing/cross_origin.html": [
"74333db517babacbb84bb20c91ccfc8b2627b934",
"testharness"
@@ -596046,10 +596146,22 @@
"ce9e3471676d5a50b91f6b274d648b481e509223",
"support"
],
+ "svg/extensibility/foreignObject/containing-block.html": [
+ "6ed9e162526cbf37fb07c1cb7abbe79d987601c8",
+ "testharness"
+ ],
"svg/extensibility/foreignObject/properties.svg": [
"974affbb2c135c9aaa7a3f27687157b5e1250a9f",
"testharness"
],
+ "svg/extensibility/foreignObject/stacking-context-expected.html": [
+ "6ea850b74b6a03554305ed95df45079bdbcb15dd",
+ "support"
+ ],
+ "svg/extensibility/foreignObject/stacking-context.html": [
+ "ef9026d2b8b27a258c3921139c46692292377dfe",
+ "reftest"
+ ],
"svg/extensibility/interfaces/foreignObject-graphics.svg": [
"16a7ef4c64dab3706120a2221dd6bec5ca8e9062",
"testharness"
@@ -602699,7 +602811,7 @@
"support"
],
"webrtc/RTCDTMFSender-insertDTMF.https.html": [
- "591337627bf4bd0e40e6a5660efa9fc1e320d89f",
+ "79574cff7e0500cecaf7e3ae182e89d98f49ce72",
"testharness"
],
"webrtc/RTCDTMFSender-ontonechange-long.https.html": [
@@ -604507,7 +604619,7 @@
"testharness"
],
"webvtt/api/interfaces.html": [
- "3b4f42db6f608d1e89d2a3fab575e05da8a3d005",
+ "4e54c4fd00214446cfc392f30ab85edf22b3aece",
"testharness"
],
"webvtt/categories.json": [
diff --git a/tests/wpt/metadata/css/css-values/vh_not_refreshing_on_chrome.html.ini b/tests/wpt/metadata/css/css-values/vh_not_refreshing_on_chrome.html.ini
deleted file mode 100644
index 26435e28b09..00000000000
--- a/tests/wpt/metadata/css/css-values/vh_not_refreshing_on_chrome.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[vh_not_refreshing_on_chrome.html]
- expected: FAIL
diff --git a/tests/wpt/metadata/fetch/api/response/response-consume.html.ini b/tests/wpt/metadata/fetch/api/response/response-consume.html.ini
index 259a0f14757..de25ae08c7a 100644
--- a/tests/wpt/metadata/fetch/api/response/response-consume.html.ini
+++ b/tests/wpt/metadata/fetch/api/response/response-consume.html.ini
@@ -84,3 +84,6 @@
[Consume response's body: from multipart form data blob to formData]
expected: FAIL
+ [Consume response's body: from URLSearchParams to blob]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js.ini b/tests/wpt/metadata/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js.ini
new file mode 100644
index 00000000000..11486f7a9ab
--- /dev/null
+++ b/tests/wpt/metadata/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js.ini
@@ -0,0 +1,4 @@
+[transfer-errors.window.html]
+ [Untitled]
+ expected: FAIL
+
diff --git a/tests/wpt/mozilla/meta/webgl/conformance-1.0.3/conformance/canvas/rapid-resizing.html.ini b/tests/wpt/mozilla/meta/webgl/conformance-1.0.3/conformance/canvas/rapid-resizing.html.ini
new file mode 100644
index 00000000000..1e2567027d8
--- /dev/null
+++ b/tests/wpt/mozilla/meta/webgl/conformance-1.0.3/conformance/canvas/rapid-resizing.html.ini
@@ -0,0 +1,5 @@
+[rapid-resizing.html]
+ expected: TIMEOUT
+ [Overall test]
+ expected: NOTRUN
+
diff --git a/tests/wpt/web-platform-tests/accelerometer/Accelerometer-disabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/accelerometer/Accelerometer-disabled-by-feature-policy.https.html
index 9481f30f6b7..9476efb6a0f 100644
--- a/tests/wpt/web-platform-tests/accelerometer/Accelerometer-disabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/accelerometer/Accelerometer-disabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html b/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html
index 809fe0b3d79..aa8ea10eb0b 100644
--- a/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html
+++ b/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy-attribute.https.html b/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy-attribute.https.html
index 3f53de061a1..860a027b55b 100644
--- a/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy-attribute.https.html
+++ b/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy-attribute.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy.https.html
index dca391bab0f..889047a0703 100644
--- a/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-on-self-origin-by-feature-policy.https.html b/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-on-self-origin-by-feature-policy.https.html
index cc05a387a5b..bf458529e84 100644
--- a/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-on-self-origin-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/accelerometer/Accelerometer-enabled-on-self-origin-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/accelerometer/Accelerometer.https.html b/tests/wpt/web-platform-tests/accelerometer/Accelerometer.https.html
index 73c579c35b5..9563270fcda 100644
--- a/tests/wpt/web-platform-tests/accelerometer/Accelerometer.https.html
+++ b/tests/wpt/web-platform-tests/accelerometer/Accelerometer.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/accelerometer/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<script>
diff --git a/tests/wpt/web-platform-tests/accelerometer/Accelerometer_insecure_context.html b/tests/wpt/web-platform-tests/accelerometer/Accelerometer_insecure_context.html
index 81b33dd514b..ff1f0832c31 100644
--- a/tests/wpt/web-platform-tests/accelerometer/Accelerometer_insecure_context.html
+++ b/tests/wpt/web-platform-tests/accelerometer/Accelerometer_insecure_context.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/accelerometer/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Note:</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/accelerometer/Accelerometer_onerror-manual.https.html b/tests/wpt/web-platform-tests/accelerometer/Accelerometer_onerror-manual.https.html
index ed5f190a715..f69b1b6ce5c 100644
--- a/tests/wpt/web-platform-tests/accelerometer/Accelerometer_onerror-manual.https.html
+++ b/tests/wpt/web-platform-tests/accelerometer/Accelerometer_onerror-manual.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/accelerometer/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Precondition</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-disabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-disabled-by-feature-policy.https.html
index e586a0e1211..3525320e256 100644
--- a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-disabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-disabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
index 33112cfe3d2..84bee557186 100644
--- a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
+++ b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute.https.html b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute.https.html
index 41a7f9a8a54..a9810128956 100644
--- a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute.https.html
+++ b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy-attribute.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy.https.html
index d2cc12680db..e4ce2566bf0 100644
--- a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-on-self-origin-by-feature-policy.https.html b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-on-self-origin-by-feature-policy.https.html
index 7f5267d3a83..bb2c4a61841 100644
--- a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-on-self-origin-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor-enabled-on-self-origin-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor.https.html b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor.https.html
index c45c7bcfa59..88bb19a96ce 100644
--- a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor.https.html
+++ b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/ambient-light/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<script>
diff --git a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor_insecure_context.html b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor_insecure_context.html
index 1b51ded1d39..9a7c91492b5 100644
--- a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor_insecure_context.html
+++ b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor_insecure_context.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/ambient-light/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Precondition</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor_onerror-manual.https.html b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor_onerror-manual.https.html
index 130f821da3e..8bcb9082cc9 100644
--- a/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor_onerror-manual.https.html
+++ b/tests/wpt/web-platform-tests/ambient-light/AmbientLightSensor_onerror-manual.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/ambient-light/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Precondition</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-definition/support/testing-utils.js b/tests/wpt/web-platform-tests/css/css-grid/grid-definition/support/testing-utils.js
index 202c865b15e..217b6204636 100644
--- a/tests/wpt/web-platform-tests/css/css-grid/grid-definition/support/testing-utils.js
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-definition/support/testing-utils.js
@@ -1,10 +1,14 @@
var TestingUtils = (function() {
function checkGridTemplateColumns(element, value) {
+ if (!Array.isArray(value))
+ value = new Array(value);
assert_in_array(getComputedStyle(element).gridTemplateColumns, value, "gridTemplateColumns");
}
function checkGridTemplateRows(element, value) {
+ if (!Array.isArray(value))
+ value = new Array(value);
assert_in_array(getComputedStyle(element).gridTemplateRows, value, "gridTemplateRows");
}
@@ -19,6 +23,8 @@ var TestingUtils = (function() {
}
function checkGridTemplateAreas(element, value) {
+ if (!Array.isArray(value))
+ value = new Array(value);
assert_in_array(getComputedStyle(element).gridTemplateAreas, value, "gridTemplateAreas");
}
diff --git a/tests/wpt/web-platform-tests/css/css-scroll-snap/scroll-snap-type-proximity.html b/tests/wpt/web-platform-tests/css/css-scroll-snap/scroll-snap-type-proximity.html
new file mode 100644
index 00000000000..cfe990c4fca
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-scroll-snap/scroll-snap-type-proximity.html
@@ -0,0 +1,80 @@
+<!DOCTYPE html>
+<link rel="help" href="https://drafts.csswg.org/css-scroll-snap-1" />
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<style>
+div {
+ position: absolute;
+ margin: 0px;
+}
+#scroller {
+ height: 400px;
+ width: 400px;
+ overflow: scroll;
+}
+#space {
+ width: 2000px;
+ height: 2000px;
+}
+
+.snap {
+ width: 200px;
+ height: 200px;
+ background-color: blue;
+ scroll-snap-align: start;
+}
+#left-top {
+ left: 0px;
+ top: 0px;
+}
+#right-bottom {
+ left: 1000px;
+ top: 1000px;
+}
+</style>
+
+<div id="scroller">
+ <div id="space"></div>
+ <div class="snap" id="left-top"></div>
+ <div class="snap" id="right-bottom"></div>
+</div>
+
+<script>
+var scroller = document.getElementById("scroller");
+var visible_x = 1000 - scroller.clientWidth;
+var visible_y = 1000 - scroller.clientHeight;
+
+test(() => {
+ scroller.style.scrollSnapType = "both mandatory";
+ scroller.scrollTo(0, 0);
+ assert_equals(scroller.scrollLeft, 0);
+ assert_equals(scroller.scrollTop, 0);
+
+ scroller.scrollTo(visible_x + 10, visible_y + 10);
+ assert_equals(scroller.scrollLeft, 1000);
+ assert_equals(scroller.scrollTop, 1000);
+}, "mandatory scroll-snap-type should snap as long as the element is visible.");
+
+test(() => {
+ scroller.style.scrollSnapType = "both proximity";
+ scroller.scrollTo(0, 0);
+ assert_equals(scroller.scrollLeft, 0);
+ assert_equals(scroller.scrollTop, 0);
+
+ scroller.scrollTo(visible_x + 10, visible_y + 10);
+ assert_equals(scroller.scrollLeft, visible_x + 10);
+ assert_equals(scroller.scrollTop, visible_y + 10);
+}, "proximity scroll-snap-type shouldn't snap if the snap position is too far away.");
+
+test(() => {
+ scroller.style.scrollSnapType = "both proximity";
+ scroller.scrollTo(0, 0);
+ assert_equals(scroller.scrollLeft, 0);
+ assert_equals(scroller.scrollTop, 0);
+
+ scroller.scrollTo(995, 995);
+ assert_equals(scroller.scrollLeft, 1000);
+ assert_equals(scroller.scrollTop, 1000);
+}, "proximity scroll-snap-type should snap if the snap position is close.");
+</script>
diff --git a/tests/wpt/web-platform-tests/fetch/api/response/response-consume.html b/tests/wpt/web-platform-tests/fetch/api/response/response-consume.html
index 24d127f295e..4946a4d33a4 100644
--- a/tests/wpt/web-platform-tests/fetch/api/response/response-consume.html
+++ b/tests/wpt/web-platform-tests/fetch/api/response/response-consume.html
@@ -31,6 +31,13 @@
});
}
+ function blobToTypeViaFetch(blob) {
+ var url = URL.createObjectURL(blob);
+ return fetch(url).then(function(response) {
+ return response.headers.get('Content-Type');
+ });
+ }
+
function responsePromise(body, responseInit) {
return new Promise(function(resolve, reject) {
resolve(new Response(body, responseInit));
@@ -75,15 +82,18 @@
return response.blob().then(function(bodyAsBlob) {
assert_equals(bodyAsBlob.type, expectedType || "text/plain", "Blob body type should be computed from the response Content-Type");
- var promise = new Promise( function (resolve, reject) {
- var reader = new FileReader();
- reader.onload = function(evt) {
- resolve(reader.result)
- };
- reader.onerror = function () {
- reject("Blob's reader failed");
- };
- reader.readAsText(bodyAsBlob);
+ var promise = blobToTypeViaFetch(bodyAsBlob).then(function(type) {
+ assert_equals(type, expectedType || "text/plain", 'Type via blob URL');
+ return new Promise( function (resolve, reject) {
+ var reader = new FileReader();
+ reader.onload = function(evt) {
+ resolve(reader.result)
+ };
+ reader.onerror = function () {
+ reject("Blob's reader failed");
+ };
+ reader.readAsText(bodyAsBlob);
+ });
});
return promise.then(function(body) {
assert_equals(body, expectedBody, "Retrieve and verify response's body");
diff --git a/tests/wpt/web-platform-tests/sensors/OWNERS b/tests/wpt/web-platform-tests/generic-sensor/OWNERS
index 06bc2d81d87..06bc2d81d87 100644
--- a/tests/wpt/web-platform-tests/sensors/OWNERS
+++ b/tests/wpt/web-platform-tests/generic-sensor/OWNERS
diff --git a/tests/wpt/web-platform-tests/sensors/SensorErrorEvent-constructor.https.html b/tests/wpt/web-platform-tests/generic-sensor/SensorErrorEvent-constructor.https.html
index 6e2d1684f57..6e2d1684f57 100644
--- a/tests/wpt/web-platform-tests/sensors/SensorErrorEvent-constructor.https.html
+++ b/tests/wpt/web-platform-tests/generic-sensor/SensorErrorEvent-constructor.https.html
diff --git a/tests/wpt/web-platform-tests/sensors/generic-sensor-feature-policy-test.sub.js b/tests/wpt/web-platform-tests/generic-sensor/generic-sensor-feature-policy-test.sub.js
index f722315cfb2..f722315cfb2 100644
--- a/tests/wpt/web-platform-tests/sensors/generic-sensor-feature-policy-test.sub.js
+++ b/tests/wpt/web-platform-tests/generic-sensor/generic-sensor-feature-policy-test.sub.js
diff --git a/tests/wpt/web-platform-tests/sensors/generic-sensor-tests.js b/tests/wpt/web-platform-tests/generic-sensor/generic-sensor-tests.js
index ece481bf4c4..ece481bf4c4 100644
--- a/tests/wpt/web-platform-tests/sensors/generic-sensor-tests.js
+++ b/tests/wpt/web-platform-tests/generic-sensor/generic-sensor-tests.js
diff --git a/tests/wpt/web-platform-tests/sensors/idlharness.https.html b/tests/wpt/web-platform-tests/generic-sensor/idlharness.https.html
index 56208e43a20..56208e43a20 100644
--- a/tests/wpt/web-platform-tests/sensors/idlharness.https.html
+++ b/tests/wpt/web-platform-tests/generic-sensor/idlharness.https.html
diff --git a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-disabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-disabled-by-feature-policy.https.html
index 976d42731d1..88f92c65399 100644
--- a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-disabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-disabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
index 45ee97f9347..66b7832e45f 100644
--- a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
+++ b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute.https.html b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute.https.html
index b4790575bb0..5ea2518af63 100644
--- a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute.https.html
+++ b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy-attribute.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy.https.html
index 08d45f2c626..46ef9b7ce86 100644
--- a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-on-self-origin-by-feature-policy.https.html b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-on-self-origin-by-feature-policy.https.html
index 651d31cc85f..1694ed00fdf 100644
--- a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-on-self-origin-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor-enabled-on-self-origin-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor.https.html b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor.https.html
index 3319c02807a..625963870f6 100644
--- a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor.https.html
+++ b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://wicg.github.io/geolocation-sensor/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<script>
runGenericSensorTests(GeolocationSensor);
diff --git a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor_insecure_context.html b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor_insecure_context.html
index 6e487cb2b5d..6a3a126c785 100644
--- a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor_insecure_context.html
+++ b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor_insecure_context.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://wicg.github.io/geolocation-sensor/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<script>
runGenericSensorInsecureContext("GeolocationSensor");
diff --git a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor_onerror-manual.https.html b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor_onerror-manual.https.html
index 00d1135bbdc..b449346546f 100644
--- a/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor_onerror-manual.https.html
+++ b/tests/wpt/web-platform-tests/geolocation-sensor/GeolocationSensor_onerror-manual.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://wicg.github.io/geolocation-sensor/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<h2>Precondition</h2>
<ol>
<li>
diff --git a/tests/wpt/web-platform-tests/gyroscope/Gyroscope-disabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/gyroscope/Gyroscope-disabled-by-feature-policy.https.html
index 5ab2fb44147..de4aee2dacc 100644
--- a/tests/wpt/web-platform-tests/gyroscope/Gyroscope-disabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/gyroscope/Gyroscope-disabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy-attribute-redirect-on-load.https.html b/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy-attribute-redirect-on-load.https.html
index 26c5edfa7a6..3c831bb7c7e 100644
--- a/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy-attribute-redirect-on-load.https.html
+++ b/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy-attribute-redirect-on-load.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy-attribute.https.html b/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy-attribute.https.html
index e76571d6054..46473c3a9d0 100644
--- a/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy-attribute.https.html
+++ b/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy-attribute.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy.https.html
index d21bd072411..95eee330b39 100644
--- a/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-on-self-origin-by-feature-policy.https.html b/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-on-self-origin-by-feature-policy.https.html
index 9626e60e339..ae5a63d1484 100644
--- a/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-on-self-origin-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/gyroscope/Gyroscope-enabled-on-self-origin-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/gyroscope/Gyroscope.https.html b/tests/wpt/web-platform-tests/gyroscope/Gyroscope.https.html
index 8f035222d3c..81cdfddee7b 100644
--- a/tests/wpt/web-platform-tests/gyroscope/Gyroscope.https.html
+++ b/tests/wpt/web-platform-tests/gyroscope/Gyroscope.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/gyroscope/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<script>
diff --git a/tests/wpt/web-platform-tests/gyroscope/Gyroscope_insecure_context.html b/tests/wpt/web-platform-tests/gyroscope/Gyroscope_insecure_context.html
index e821db00885..2ae8117d708 100644
--- a/tests/wpt/web-platform-tests/gyroscope/Gyroscope_insecure_context.html
+++ b/tests/wpt/web-platform-tests/gyroscope/Gyroscope_insecure_context.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/gyroscope/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Precondition</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/gyroscope/Gyroscope_onerror-manual.https.html b/tests/wpt/web-platform-tests/gyroscope/Gyroscope_onerror-manual.https.html
index cf330cae0dc..f0126151a24 100644
--- a/tests/wpt/web-platform-tests/gyroscope/Gyroscope_onerror-manual.https.html
+++ b/tests/wpt/web-platform-tests/gyroscope/Gyroscope_onerror-manual.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/gyroscope/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Precondition</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js b/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js
new file mode 100644
index 00000000000..bb1c083c41d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/infrastructure/safe-passing-of-structured-data/transfer-errors.window.js
@@ -0,0 +1,47 @@
+function assert_transfer_error(transferList) {
+ assert_throws("DataCloneError", () => self.postMessage({ get whatever() { throw new Error("You should not have gotten to this point") } }, "*", transferList));
+}
+
+test(() => {
+ [self, self.document, new Image()].forEach(val => {
+ assert_transfer_error([val]);
+ });
+}, "Cannot transfer all objects");
+
+function transfer_tests(name, create) {
+ promise_test(async () => {
+ const transferable = await create();
+ assert_transfer_error([transferable, transferable]);
+ }, `Cannot transfer the same ${name} twice`);
+
+ promise_test(async () => {
+ const transferable = await create();
+ self.postMessage(null, "*", [transferable]);
+ assert_throws("DataCloneError", () => self.postMessage(null, "*", [transferable]));
+ }, `Serialize should make the ${name} detached, so it cannot be transferred again`);
+
+ promise_test(async () => {
+ const transferable = await create(),
+ customError = new Error("hi");
+ self.postMessage(null, "*", [transferable]);
+ assert_throws(customError, () => self.postMessage({ get whatever() { throw customError } }, "*", [transferable]));
+ }, `Serialize should throw before a detached ${name} is found`);
+
+ promise_test(async () => {
+ const transferable = await create();
+ let seen = false;
+ const message = {
+ get a() {
+ self.postMessage(null, '*', [transferable]);
+ seen = true;
+ }
+ };
+ assert_throws("DataCloneError", () => self.postMessage(message, "*", [transferable]));
+ assert_true(seen);
+ }, `Cannot transfer ${name} detached while the message was serialized`);
+}
+
+transfer_tests("ArrayBuffer", () => new ArrayBuffer(1));
+transfer_tests("MessagePort", () => new MessageChannel().port1);
+transfer_tests("ImageBitmap", () => self.createImageBitmap(document.createElement("canvas")));
+transfer_tests("OffscreenCanvas", () => new OffscreenCanvas(1, 1));
diff --git a/tests/wpt/web-platform-tests/interfaces/css-typed-om.idl b/tests/wpt/web-platform-tests/interfaces/css-typed-om.idl
index 6c33907a048..39e53ce39f9 100644
--- a/tests/wpt/web-platform-tests/interfaces/css-typed-om.idl
+++ b/tests/wpt/web-platform-tests/interfaces/css-typed-om.idl
@@ -1,31 +1,35 @@
+// GENERATED CONTENT - DO NOT EDIT
+// Content of this file was automatically extracted from the CSS Typed OM spec.
+// See https://drafts.css-houdini.org/css-typed-om/
+
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
interface CSSStyleValue {
stringifier;
- [Exposed=Window] static CSSStyleValue parse(DOMString property, DOMString cssText);
- [Exposed=Window] static sequence<CSSStyleValue> parseAll(DOMString property, DOMString cssText);
+ [Exposed=Window] static CSSStyleValue parse(USVString property, USVString cssText);
+ [Exposed=Window] static sequence<CSSStyleValue> parseAll(USVString property, USVString cssText);
};
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
interface StylePropertyMapReadOnly {
- iterable<DOMString, sequence<CSSStyleValue>>;
- any get(DOMString property);
+ iterable<USVString, sequence<CSSStyleValue>>;
+ any get(USVString property);
/* 'any' means (undefined or CSSStyleValue) here,
see https://github.com/heycam/webidl/issues/60 */
- sequence<CSSStyleValue> getAll(DOMString property);
- boolean has(DOMString property);
- readonly attribute long size;
+ sequence<CSSStyleValue> getAll(USVString property);
+ boolean has(USVString property);
+ readonly attribute unsigned long size;
};
[Exposed=Window]
interface StylePropertyMap : StylePropertyMapReadOnly {
- void set(DOMString property, (CSSStyleValue or DOMString)... values);
- void append(DOMString property, (CSSStyleValue or DOMString)... values);
- void delete(DOMString property);
+ void set(USVString property, (CSSStyleValue or USVString)... values);
+ void append(USVString property, (CSSStyleValue or USVString)... values);
+ void delete(USVString property);
void clear();
};
partial interface Element {
- StylePropertyMapReadOnly computedStyleMap();
+ [SameObject] StylePropertyMapReadOnly computedStyleMap();
};
partial interface CSSStyleRule {
@@ -45,19 +49,19 @@ interface CSSUnparsedValue : CSSStyleValue {
setter CSSUnparsedSegment (unsigned long index, CSSUnparsedSegment val);
};
-typedef (DOMString or CSSVariableReferenceValue) CSSUnparsedSegment;
+typedef (USVString or CSSVariableReferenceValue) CSSUnparsedSegment;
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet),
- Constructor(DOMString variable, optional CSSUnparsedValue? fallback = null)]
+ Constructor(USVString variable, optional CSSUnparsedValue? fallback = null)]
interface CSSVariableReferenceValue {
- attribute DOMString variable;
+ attribute USVString variable;
readonly attribute CSSUnparsedValue? fallback;
};
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet),
- Constructor(DOMString value)]
+ Constructor(USVString value)]
interface CSSKeywordValue : CSSStyleValue {
- attribute DOMString value;
+ attribute USVString value;
};
typedef (double or CSSNumericValue) CSSNumberish;
@@ -94,18 +98,18 @@ interface CSSNumericValue : CSSStyleValue {
boolean equals(CSSNumberish... value);
- CSSUnitValue to(DOMString unit);
- CSSMathSum toSum(DOMString... units);
+ CSSUnitValue to(USVString unit);
+ CSSMathSum toSum(USVString... units);
CSSNumericType type();
- [Exposed=Window] static CSSNumericValue parse(DOMString cssText);
+ [Exposed=Window] static CSSNumericValue parse(USVString cssText);
};
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet),
- Constructor(double value, DOMString unit)]
+ Constructor(double value, USVString unit)]
interface CSSUnitValue : CSSNumericValue {
attribute double value;
- readonly attribute DOMString unit;
+ readonly attribute USVString unit;
};
[Exposed=(Window, Worker, PaintWorklet, LayoutWorklet)]
diff --git a/tests/wpt/web-platform-tests/interfaces/payment-request.idl b/tests/wpt/web-platform-tests/interfaces/payment-request.idl
index 4568fd8cf12..50a5dea61f2 100644
--- a/tests/wpt/web-platform-tests/interfaces/payment-request.idl
+++ b/tests/wpt/web-platform-tests/interfaces/payment-request.idl
@@ -1,8 +1,11 @@
+// GENERATED CONTENT - DO NOT EDIT
+// Content of this file was automatically extracted from the Payment Request API spec.
+// See https://w3c.github.io/payment-request/
+
[Constructor(sequence<PaymentMethodData> methodData, PaymentDetailsInit details, optional PaymentOptions options),
- SecureContext,
- Exposed=Window]
+SecureContext, Exposed=Window]
interface PaymentRequest : EventTarget {
- Promise<PaymentResponse> show();
+ Promise<PaymentResponse> show(optional Promise<PaymentDetailsUpdate> detailsPromise);
Promise<void> abort();
Promise<boolean> canMakePayment();
@@ -15,40 +18,48 @@ interface PaymentRequest : EventTarget {
attribute EventHandler onshippingoptionchange;
};
+
dictionary PaymentMethodData {
required DOMString supportedMethods;
object data;
};
+
dictionary PaymentCurrencyAmount {
required DOMString currency;
required DOMString value;
// Note: currencySystem is "at risk" of being removed!
DOMString currencySystem = "urn:iso:std:iso:4217";
};
+
dictionary PaymentDetailsBase {
sequence<PaymentItem> displayItems;
sequence<PaymentShippingOption> shippingOptions;
sequence<PaymentDetailsModifier> modifiers;
};
+
dictionary PaymentDetailsInit : PaymentDetailsBase {
DOMString id;
required PaymentItem total;
};
+
dictionary PaymentDetailsUpdate : PaymentDetailsBase {
DOMString error;
PaymentItem total;
};
+
dictionary PaymentDetailsModifier {
required DOMString supportedMethods;
PaymentItem total;
sequence<PaymentItem> additionalDisplayItems;
object data;
};
+
enum PaymentShippingType {
"shipping",
"delivery",
"pickup"
};
+
dictionary PaymentOptions {
boolean requestPayerName = false;
boolean requestPayerEmail = false;
@@ -56,19 +67,25 @@ dictionary PaymentOptions {
boolean requestShipping = false;
PaymentShippingType shippingType = "shipping";
};
+
dictionary PaymentItem {
required DOMString label;
required PaymentCurrencyAmount amount;
boolean pending = false;
+ // Note: type member is "at risk" of being removed!
+ PaymentItemType type;
};
-[SecureContext,
- Exposed=Window]
+
+enum PaymentItemType {
+ "tax"
+};
+
+[SecureContext, Exposed=Window]
interface PaymentAddress {
[Default] object toJSON();
readonly attribute DOMString country;
readonly attribute FrozenArray<DOMString> addressLine;
readonly attribute DOMString region;
- readonly attribute DOMString regionCode;
readonly attribute DOMString city;
readonly attribute DOMString dependentLocality;
readonly attribute DOMString postalCode;
@@ -78,19 +95,21 @@ interface PaymentAddress {
readonly attribute DOMString recipient;
readonly attribute DOMString phone;
};
+
dictionary PaymentShippingOption {
required DOMString id;
required DOMString label;
required PaymentCurrencyAmount amount;
boolean selected = false;
};
+
enum PaymentComplete {
"fail",
"success",
"unknown"
};
-[SecureContext,
- Exposed=Window]
+
+[SecureContext, Exposed=Window]
interface PaymentResponse {
[Default] object toJSON();
@@ -105,11 +124,10 @@ interface PaymentResponse {
Promise<void> complete(optional PaymentComplete result = "unknown");
};
-[Constructor(DOMString type, optional PaymentRequestUpdateEventInit eventInitDict),
- SecureContext,
- Exposed=Window]
+
+[Constructor(DOMString type, optional PaymentRequestUpdateEventInit eventInitDict), SecureContext, Exposed=Window]
interface PaymentRequestUpdateEvent : Event {
void updateWith(Promise<PaymentDetailsUpdate> detailsPromise);
};
-dictionary PaymentRequestUpdateEventInit : EventInit {
-};
+
+dictionary PaymentRequestUpdateEventInit : EventInit {};
diff --git a/tests/wpt/web-platform-tests/interfaces/storage.idl b/tests/wpt/web-platform-tests/interfaces/storage.idl
index c45690352f9..cbaf9d0cb55 100644
--- a/tests/wpt/web-platform-tests/interfaces/storage.idl
+++ b/tests/wpt/web-platform-tests/interfaces/storage.idl
@@ -1,3 +1,7 @@
+// GENERATED CONTENT - DO NOT EDIT
+// Content of this file was automatically extracted from the Storage spec.
+// See https://storage.spec.whatwg.org/
+
[SecureContext]
interface mixin NavigatorStorage {
readonly attribute StorageManager storage;
diff --git a/tests/wpt/web-platform-tests/interfaces/webvtt.idl b/tests/wpt/web-platform-tests/interfaces/webvtt.idl
new file mode 100644
index 00000000000..d4603d1726b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/interfaces/webvtt.idl
@@ -0,0 +1,39 @@
+// GENERATED CONTENT - DO NOT EDIT
+// Content of this file was automatically extracted from the WebVTT spec.
+// See https://w3c.github.io/webvtt/
+
+enum AutoKeyword { "auto" };
+typedef (double or AutoKeyword) LineAndPositionSetting;
+enum DirectionSetting { "" /* horizontal */, "rl", "lr" };
+enum LineAlignSetting { "start", "center", "end" };
+enum PositionAlignSetting { "line-left", "center", "line-right", "auto" };
+enum AlignSetting { "start", "center", "end", "left", "right" };
+[Exposed=Window,
+ Constructor(double startTime, double endTime, DOMString text)]
+interface VTTCue : TextTrackCue {
+ attribute VTTRegion? region;
+ attribute DirectionSetting vertical;
+ attribute boolean snapToLines;
+ attribute LineAndPositionSetting line;
+ attribute LineAlignSetting lineAlign;
+ attribute LineAndPositionSetting position;
+ attribute PositionAlignSetting positionAlign;
+ attribute double size;
+ attribute AlignSetting align;
+ attribute DOMString text;
+ DocumentFragment getCueAsHTML();
+};
+
+enum ScrollSetting { "" /* none */, "up" };
+[Exposed=Window,
+ Constructor]
+interface VTTRegion {
+ attribute DOMString id;
+ attribute double width;
+ attribute unsigned long lines;
+ attribute double regionAnchorX;
+ attribute double regionAnchorY;
+ attribute double viewportAnchorX;
+ attribute double viewportAnchorY;
+ attribute ScrollSetting scroll;
+};
diff --git a/tests/wpt/web-platform-tests/magnetometer/Magnetometer-disabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/magnetometer/Magnetometer-disabled-by-feature-policy.https.html
index 3d861c156e2..56a1cc4f0f9 100644
--- a/tests/wpt/web-platform-tests/magnetometer/Magnetometer-disabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/magnetometer/Magnetometer-disabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html b/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html
index f63768191d8..b5f6798e248 100644
--- a/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html
+++ b/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy-attribute.https.html b/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy-attribute.https.html
index 31f83f1edaa..6cad267b6f5 100644
--- a/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy-attribute.https.html
+++ b/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy-attribute.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy.https.html
index 83e08ebf2ac..24e2554bca2 100644
--- a/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-on-self-origin-by-feature-policy.https.html b/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-on-self-origin-by-feature-policy.https.html
index feb8fecdea7..59dfef5bf20 100644
--- a/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-on-self-origin-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/magnetometer/Magnetometer-enabled-on-self-origin-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/magnetometer/Magnetometer.https.html b/tests/wpt/web-platform-tests/magnetometer/Magnetometer.https.html
index 496c5281c48..a3cefc26169 100644
--- a/tests/wpt/web-platform-tests/magnetometer/Magnetometer.https.html
+++ b/tests/wpt/web-platform-tests/magnetometer/Magnetometer.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/magnetometer/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<script>
diff --git a/tests/wpt/web-platform-tests/magnetometer/Magnetometer_insecure_context.html b/tests/wpt/web-platform-tests/magnetometer/Magnetometer_insecure_context.html
index 7452181914d..45ff584b425 100644
--- a/tests/wpt/web-platform-tests/magnetometer/Magnetometer_insecure_context.html
+++ b/tests/wpt/web-platform-tests/magnetometer/Magnetometer_insecure_context.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/magnetometer/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Precondition</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/magnetometer/Magnetometer_onerror-manual.https.html b/tests/wpt/web-platform-tests/magnetometer/Magnetometer_onerror-manual.https.html
index 0c823d00df9..04b987797fa 100644
--- a/tests/wpt/web-platform-tests/magnetometer/Magnetometer_onerror-manual.https.html
+++ b/tests/wpt/web-platform-tests/magnetometer/Magnetometer_onerror-manual.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://www.w3.org/TR/magnetometer/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Precondition</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-disabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-disabled-by-feature-policy.https.html
index b3e802eeb45..ccefe2ea23e 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-disabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-disabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html b/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
index ea416bbbb4f..6aed47d4ddf 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute.https.html b/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute.https.html
index 2fba4878c08..51bbba1cae4 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy-attribute.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy.https.html
index c61c957d9b9..c0b4cc8ed30 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html b/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html
index 412a8672bfb..9ce51ab6448 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/AbsoluteOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor.https.html b/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor.https.html
index 6fca92d4824..5e728a688db 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor.https.html
@@ -6,7 +6,7 @@
<link rel="help" href="https://w3c.github.io/sensors/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<script>
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor_insecure_context.html b/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor_insecure_context.html
index 4b71e19424e..18d41cec9ee 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor_insecure_context.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor_insecure_context.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://w3c.github.io/sensors/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Note:</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor_onerror-manual.https.html b/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor_onerror-manual.https.html
index 6ea7582404e..d70ea3048ea 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor_onerror-manual.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/OrientationSensor_onerror-manual.https.html
@@ -6,7 +6,7 @@
<link rel="help" href="https://w3c.github.io/sensors/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Precondition</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-disabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-disabled-by-feature-policy.https.html
index e1f4401b599..9296af8ea6c 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-disabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-disabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html b/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
index c1557da7ab0..01b45b09935 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute-redirect-on-load.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute.https.html b/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute.https.html
index acd9ca53bf4..1bf41196663 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy-attribute.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy.https.html b/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy.https.html
index ca71e3d708e..7ea2fb50f3b 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html b/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html
index 8ed6bde0345..6d677bf0d42 100644
--- a/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html
+++ b/tests/wpt/web-platform-tests/orientation-sensor/RelativeOrientationSensor-enabled-on-self-origin-by-feature-policy.https.html
@@ -4,7 +4,7 @@
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/feature-policy/resources/featurepolicy.js"></script>
-<script src="/sensors/generic-sensor-feature-policy-test.sub.js"></script>
+<script src="/generic-sensor/generic-sensor-feature-policy-test.sub.js"></script>
<script>
"use strict";
diff --git a/tests/wpt/web-platform-tests/payment-request/show-method-postmessage-iframe.html b/tests/wpt/web-platform-tests/payment-request/show-method-postmessage-iframe.html
new file mode 100644
index 00000000000..fd73d6bfa5a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/payment-request/show-method-postmessage-iframe.html
@@ -0,0 +1,40 @@
+<h1>This iframe calls shows() via postMessage()</h1>
+<script>
+"use strict";
+const defaultMethods = Object.freeze([
+ { supportedMethods: "basic-card" },
+ { supportedMethods: "https://apple.com/pay" },
+]);
+
+const defaultDetails = Object.freeze({
+ id: "fail",
+ total: {
+ label: "Total",
+ amount: {
+ currency: "USD",
+ value: "1.00",
+ },
+ },
+});
+
+// We are going to use the id to prove that this works
+// which we will pass back to the caller
+window.onmessage = async event => {
+ const { source, data: { id, request } } = event;
+ switch (request) {
+ case "show-payment-request": {
+ const details = Object.assign({}, defaultDetails, { id });
+ const request = new PaymentRequest(defaultMethods, details);
+ try {
+ const response = await request.show();
+ source.postMessage(response.toJSON(), window.location.origin);
+ await response.complete();
+ } catch (err) {
+ source.postMessage({ requestId: "fail" }, window.location.origin);
+ await request.abort();
+ }
+ }
+ }
+};
+
+</script>
diff --git a/tests/wpt/web-platform-tests/payment-request/show-method-postmessage-manual.https.html b/tests/wpt/web-platform-tests/payment-request/show-method-postmessage-manual.https.html
new file mode 100644
index 00000000000..00ce84a4859
--- /dev/null
+++ b/tests/wpt/web-platform-tests/payment-request/show-method-postmessage-manual.https.html
@@ -0,0 +1,51 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Test for PaymentRequest.show() method</title>
+<link rel="help" href="https://w3c.github.io/browser-payment-api/#show-method">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+"use strict";
+setup({
+ explicit_done: true,
+ explicit_timeout: true,
+});
+
+async function runUserActivation(button) {
+ button.disabled = true;
+ const { contentWindow: iframeWindow } = document.getElementById("iframe");
+ const expectedId = "pass123";
+ await Promise.resolve(); // next tick
+ const promiseForResponse = new Promise(resolve => {
+ window.onmessage = ({ data: { requestId } }) => resolve(requestId);
+ });
+ const ops = { id: expectedId, request: "show-payment-request" };
+ iframeWindow.postMessage(ops, window.location.origin);
+ promise_test(async () => {
+ const actualId = await promiseForResponse;
+ assert_equals(actualId, expectedId, "ids must match");
+ }, button.textContent.trim());
+ done();
+}
+</script>
+<h2>Test PaymentRequest.show() triggered by user activation using postMessage()</h2>
+<p>
+ Tests that user activation works over postMessage().
+</p>
+<p>
+ Click on bottom below. Hit "Pay".
+</p>
+<ol>
+ <li>
+ <button onclick="runUserActivation(this)">
+ show() is triggered by user activation passed through postMessage() and a promise
+ </button>
+ </li>
+</ol>
+<iframe width="100%" id="iframe" src="show-method-postmessage-iframe.html" allowpaymentrequest></iframe>
+<p>
+ <small>
+ If you find a buggy test, please <a href="https://github.com/w3c/web-platform-tests/issues">file a bug</a>
+ and tag one of the <a href="https://github.com/w3c/web-platform-tests/blob/master/payment-request/OWNERS">owners</a>.
+ </small>
+</p>
diff --git a/tests/wpt/web-platform-tests/proximity/ProximitySensor.https.html b/tests/wpt/web-platform-tests/proximity/ProximitySensor.https.html
index e94211123c2..ee7f684e02a 100644
--- a/tests/wpt/web-platform-tests/proximity/ProximitySensor.https.html
+++ b/tests/wpt/web-platform-tests/proximity/ProximitySensor.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://w3c.github.io/proximity/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<script>
diff --git a/tests/wpt/web-platform-tests/proximity/ProximitySensor_insecure_context.html b/tests/wpt/web-platform-tests/proximity/ProximitySensor_insecure_context.html
index b693ceca216..b524cdc3214 100644
--- a/tests/wpt/web-platform-tests/proximity/ProximitySensor_insecure_context.html
+++ b/tests/wpt/web-platform-tests/proximity/ProximitySensor_insecure_context.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://w3c.github.io/proximity/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Precondition</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/proximity/ProximitySensor_onerror-manual.https.html b/tests/wpt/web-platform-tests/proximity/ProximitySensor_onerror-manual.https.html
index 8d2f8d6f0d1..e1ee3804e37 100644
--- a/tests/wpt/web-platform-tests/proximity/ProximitySensor_onerror-manual.https.html
+++ b/tests/wpt/web-platform-tests/proximity/ProximitySensor_onerror-manual.https.html
@@ -5,7 +5,7 @@
<link rel="help" href="https://w3c.github.io/proximity/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="/sensors/generic-sensor-tests.js"></script>
+<script src="/generic-sensor/generic-sensor-tests.js"></script>
<div id="log"></div>
<h2>Precondition</h2>
<ol>
diff --git a/tests/wpt/web-platform-tests/resource-timing/resource_TAO_cross_origin_redirect_chain.html b/tests/wpt/web-platform-tests/resource-timing/resource_TAO_cross_origin_redirect_chain.html
new file mode 100644
index 00000000000..af3d31eabd1
--- /dev/null
+++ b/tests/wpt/web-platform-tests/resource-timing/resource_TAO_cross_origin_redirect_chain.html
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+<meta charset="utf-8" />
+<title>This test validates resource timing information for a timing allowed cross-origin redirect chain.</title>
+<link rel="author" title="Intel" href="http://www.intel.com/" />
+<link rel="help" href="http://www.w3.org/TR/resource-timing/#performanceresourcetiming"/>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/webperftestharness.js"></script>
+<script src="resources/webperftestharnessextension.js"></script>
+
+<script>
+ setup({explicit_done: true});
+ test_namespace('getEntriesByName');
+ const pageOrigin = document.location.host;
+ const crossOrigin = 'www.' + pageOrigin;
+
+ function onload_test()
+ {
+ const context = new PerformanceContext(performance);
+ const entries = context.getEntriesByName(document.getElementById('frameContext').src, 'resource');
+ test_equals(entries.length, 1, 'There should be one entry.');
+ const entry = entries[0];
+
+ test_greater_than(entry.redirectStart, 0, 'redirectStart > 0 in timing allowed cross-origin redirect.');
+ test_equals(entry.redirectStart, entry.startTime, 'redirectStart == startTime in timing allowed cross-origin redirect.');
+ test_greater_than(entry.redirectEnd, entry.redirectStart, 'redirectEnd > redirectStart in timing allowed cross-origin redirect.');
+ test_greater_or_equals(entry.fetchStart, entry.redirectEnd, 'fetchStart >= redirectEnd in timing allowed cross-origin redirect.');
+ done();
+ }
+</script>
+
+</head>
+<body>
+<iframe id="frameContext" src="" style="width: 250px; height: 250px;"></iframe>
+<script>
+ let destUrl = 'http://' + crossOrigin + '/resource-timing/resources/multi_redirect.py?';
+ destUrl += 'page_origin=' + 'http://' + pageOrigin;
+ destUrl += '&cross_origin=' + 'http://' + crossOrigin;
+ destUrl += '&timing_allow=1';
+ const frameContext = document.getElementById('frameContext');
+ frameContext.onload = onload_test;
+ frameContext.src = destUrl;
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/resource-timing/resource_timing_cross_origin_redirect_chain.html b/tests/wpt/web-platform-tests/resource-timing/resource_timing_cross_origin_redirect_chain.html
new file mode 100644
index 00000000000..2a7b2f7ce64
--- /dev/null
+++ b/tests/wpt/web-platform-tests/resource-timing/resource_timing_cross_origin_redirect_chain.html
@@ -0,0 +1,46 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+<meta charset="utf-8" />
+<title>This test validates resource timing information for a cross-origin redirect chain.</title>
+<link rel="author" title="Intel" href="http://www.intel.com/" />
+<link rel="help" href="http://www.w3.org/TR/resource-timing/#performanceresourcetiming"/>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/webperftestharness.js"></script>
+<script src="resources/webperftestharnessextension.js"></script>
+
+<script>
+ setup({explicit_done: true});
+ test_namespace('getEntriesByName');
+ const pageOrigin = document.location.host;
+ const crossOrigin = 'www.' + pageOrigin;
+
+ function onload_test()
+ {
+ const context = new PerformanceContext(performance);
+ const entries = context.getEntriesByName(document.getElementById('frameContext').src, 'resource');
+ test_equals(entries.length, 1, 'There should be one entry.');
+ const entry = entries[0];
+
+ test_equals(entry.redirectStart, 0, 'redirectStart == 0 in cross-origin redirect.');
+ test_equals(entry.redirectEnd, 0, 'redirectEnd == 0 in cross-origin redirect.');
+ test_greater_than(entry.fetchStart, 0, 'fetchStart > 0 in cross-origin redirect.');
+ test_equals(entry.startTime, entry.fetchStart, 'startTime == fetchStart in cross-origin redirect.');
+ done();
+ }
+</script>
+
+</head>
+<body>
+<iframe id="frameContext" src="" style="width: 250px; height: 250px;"></iframe>
+<script>
+ let destUrl = 'http://' + crossOrigin + '/resource-timing/resources/multi_redirect.py?';
+ destUrl += 'page_origin=' + 'http://' + pageOrigin;
+ destUrl += '&cross_origin=' + 'http://' + crossOrigin;
+ const frameContext = document.getElementById('frameContext');
+ frameContext.onload = onload_test;
+ frameContext.src = destUrl;
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/resource-timing/resources/multi_redirect.py b/tests/wpt/web-platform-tests/resource-timing/resources/multi_redirect.py
new file mode 100644
index 00000000000..d1802a1e02d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/resource-timing/resources/multi_redirect.py
@@ -0,0 +1,40 @@
+def main(request, response):
+ """Handler that causes multiple redirections.
+ The request has two mandatory and one optional query parameters:
+ page_origin - The page origin, used for redirection and to set TAO. This is a mandatory parameter.
+ cross_origin - The cross origin used to make this a cross-origin redirect. This is a mandatory parameter.
+ timing_allow - Whether TAO should be set or not in the redirect chain. This is an optional parameter. Default: not set.
+ Note that |step| is a parameter used internally for the multi-redirect. It's the step we're at in the redirect chain.
+ """
+ step = 1
+ if "step" in request.GET:
+ try:
+ step = int(request.GET.first("step"))
+ except ValueError:
+ pass
+
+ page_origin = request.GET.first("page_origin")
+ cross_origin = request.GET.first("cross_origin")
+ timing_allow = "0"
+ if "timing_allow" in request.GET:
+ timing_allow = request.GET.first("timing_allow")
+
+ redirect_url = "/resource-timing/resources/multi_redirect.py?"
+ redirect_url += "page_origin=" + page_origin
+ redirect_url += "&cross_origin=" + cross_origin
+ redirect_url += "&timing_allow=" + timing_allow
+ redirect_url += "&step="
+
+ if step == 1:
+ redirect_url = cross_origin + redirect_url + "2"
+ if timing_allow != "0":
+ response.headers.set("timing-allow-origin", page_origin)
+ elif step == 2:
+ redirect_url = page_origin + redirect_url + "3"
+ if timing_allow != "0":
+ response.headers.set("timing-allow-origin", page_origin)
+ else:
+ redirect_url = page_origin + "/resource-timing/resources/blank_page_green.htm"
+
+ response.status = 302
+ response.headers.set("Location", redirect_url)
diff --git a/tests/wpt/web-platform-tests/resources/test/tox.ini b/tests/wpt/web-platform-tests/resources/test/tox.ini
index 4f45640479f..d3a30f870a1 100644
--- a/tests/wpt/web-platform-tests/resources/test/tox.ini
+++ b/tests/wpt/web-platform-tests/resources/test/tox.ini
@@ -1,4 +1,6 @@
[tox]
+# wptserve etc. are Python2-only.
+envlist = py27
skipsdist=True
[testenv]
@@ -9,5 +11,6 @@ deps =
pytest>=2.9
pyvirtualdisplay
selenium
+ requests
commands = pytest {posargs} -vv tests
diff --git a/tests/wpt/web-platform-tests/svg/extensibility/foreignObject/containing-block.html b/tests/wpt/web-platform-tests/svg/extensibility/foreignObject/containing-block.html
new file mode 100644
index 00000000000..da0728c96b5
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/extensibility/foreignObject/containing-block.html
@@ -0,0 +1,46 @@
+<!doctype HTML>
+<link rel="help" href="https://svgwg.org/svg2-draft/single-page.html#embedded-ForeignObjectElement"/>
+<style>
+ * {
+ margin: 5px;
+ }
+ .el {
+ background: lightblue;
+ width: 50px;
+ height: 60px;
+ }
+ .pos {
+ top: 5px;
+ left: 6px;
+ }
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<svg>
+ <foreignObject id="first" width=100 height=100>
+ <div id=contained class="el" style="width: 50px; height: 60px;"></div>
+ <div id=containedrel class="el pos" style="position: relative"></div>
+ <div id=containedabs class="el pos" style="position: absolute"></div>
+ <div id=containedfixed class="el pos" style="position: fixed"></div>
+ </foreignObject>
+</svg>
+<script>
+function checkPosition(el, offsetLeftVal, offsetTopVal, boundingRectLeft, boundingRectTop) {
+ assert_equals(el.offsetLeft, offsetLeftVal, "offsetLeft");
+ assert_equals(el.offsetTop, offsetTopVal, "offsetTop");
+ assert_equals(el.getBoundingClientRect().left, boundingRectLeft, "boundingRectLeft");
+ assert_equals(el.getBoundingClientRect().top, boundingRectTop, "boundingRectTop");
+}
+
+test(function() {
+ // Test that #first is a containing block for all descendants.
+ var contained = document.getElementById('contained');
+ var containedrel = document.getElementById('containedrel');
+ var containedabs = document.getElementById('containedabs');
+ var containedfixed = document.getElementById('containedfixed');
+ checkPosition(contained, 5, 5, 20, 20);
+ checkPosition(containedrel, 11, 75, 26, 90);
+ checkPosition(containedabs, 11, 10, 26, 25);
+ checkPosition(containedfixed, 11, 10, 26, 25);
+}, "position");
+</script>
diff --git a/tests/wpt/web-platform-tests/svg/extensibility/foreignObject/stacking-context-expected.html b/tests/wpt/web-platform-tests/svg/extensibility/foreignObject/stacking-context-expected.html
new file mode 100644
index 00000000000..28e7e310c07
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/extensibility/foreignObject/stacking-context-expected.html
@@ -0,0 +1,18 @@
+<!doctype HTML>
+<style>
+ * {
+ margin: 0;
+ }
+ .el {
+ width: 50px;
+ height: 60px;
+ }
+
+</style>
+<div style="isolation: isolate">
+ <div class="el"
+ style="position: absolute; z-index: 1; top: 40px; left: 10px; border: 1px solid black; background: lightblue"></div>
+ <div class="el"
+ style="position: absolute; z-index: 2; top: 5px; left: 5px; border: 1px solid black; background: lightgreen"></div>
+</div>
+<div id=top class="el" style="position: relative; background: lightgray; top: 50px"></div>
diff --git a/tests/wpt/web-platform-tests/svg/extensibility/foreignObject/stacking-context.html b/tests/wpt/web-platform-tests/svg/extensibility/foreignObject/stacking-context.html
new file mode 100644
index 00000000000..c60a111f633
--- /dev/null
+++ b/tests/wpt/web-platform-tests/svg/extensibility/foreignObject/stacking-context.html
@@ -0,0 +1,26 @@
+<!doctype HTML>
+<title>Test that the foreignObject element is a stacking context</title>
+<link rel="match" href="stacking-context-expected.html">
+<link rel="help" href="https://svgwg.org/svg2-draft/single-page.html#embedded-ForeignObjectElement"/>
+<style>
+ * {
+ margin: 0;
+ }
+ .el {
+ width: 50px;
+ height: 60px;
+ }
+
+</style>
+ <!-- Test that the <foreignObject> root element is a stacking context, so z-index here
+ has no effect on order w.r.t. #top, but still does for stacking under
+ foreignObject -->
+<svg style="width: 50px; height: 50px; overflow: visible; display: block">
+ <foreignObject width=100 height=200>
+ <div class="el"
+ style="position: absolute; z-index: 1; top: 40px; left: 10px; border: 1px solid black; background: lightblue"></div>
+ <div class="el"
+ style="position: absolute; z-index: 2; top: 5px; left: 5px; border: 1px solid black; background: lightgreen"></div>
+ </foreignObject>
+</svg>
+<div id=top class="el" style="position: relative; background: lightgray"></div>
diff --git a/tests/wpt/web-platform-tests/tools/ci/ci_resources_unittest.sh b/tests/wpt/web-platform-tests/tools/ci/ci_resources_unittest.sh
index fd28db5b7e6..ff1e224843d 100755
--- a/tests/wpt/web-platform-tests/tools/ci/ci_resources_unittest.sh
+++ b/tests/wpt/web-platform-tests/tools/ci/ci_resources_unittest.sh
@@ -8,13 +8,12 @@ cd $WPT_ROOT
main() {
cd $WPT_ROOT
pip install -U tox
- pip install --requirement tools/wpt/requirements.txt
./wpt install firefox browser --destination $HOME
./wpt install firefox webdriver --destination $HOME/firefox
export PATH=$HOME/firefox:$PATH
cd $WPT_ROOT/resources/test
- tox
+ tox -- --binary=$HOME/browsers/firefox/firefox
}
main
diff --git a/tests/wpt/web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.https.html b/tests/wpt/web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.https.html
index e49a79e4aa0..383977c52e1 100644
--- a/tests/wpt/web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.https.html
+++ b/tests/wpt/web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.https.html
@@ -162,4 +162,22 @@
});
}, 'insertDTMF() should set toneBuffer to provided tones normalized, with old tones overridden');
+ promise_test(t => {
+ let dtmfSender;
+ let sender;
+ let pc = new RTCPeerConnection();
+ return getTrackFromUserMedia('audio')
+ .then(([track, mediaStream]) => {
+ sender = pc.addTrack(track, mediaStream);
+ return pc.createOffer();
+ }).then(offer => {
+ pc.setLocalDescription(offer);
+ dtmfSender = sender.dtmf;
+ pc.removeTrack(sender);
+ pc.close();
+ assert_throws('InvalidStateError', () =>
+ dtmfSender.insertDTMF('123'));
+ });
+ }, 'insertDTMF() after remove and close should reject');
+
</script>
diff --git a/tests/wpt/web-platform-tests/webvtt/api/interfaces.html b/tests/wpt/web-platform-tests/webvtt/api/interfaces.html
index 5e112dafd2e..5222256d617 100644
--- a/tests/wpt/web-platform-tests/webvtt/api/interfaces.html
+++ b/tests/wpt/web-platform-tests/webvtt/api/interfaces.html
@@ -116,53 +116,23 @@ dictionary GetRootNodeOptions {
};
</script>
-<script type=text/plain id=tested>
-enum AutoKeyword { "auto" };
-typedef (double or AutoKeyword) LineAndPositionSetting;
-enum DirectionSetting { "" /* horizontal */, "rl", "lr" };
-enum LineAlignSetting { "start", "center", "end" };
-enum PositionAlignSetting { "line-left", "center", "line-right", "auto" };
-enum AlignSetting { "start", "center", "end", "left", "right" };
-[Exposed=Window,
- Constructor(double startTime, double endTime, DOMString text)]
-interface VTTCue : TextTrackCue {
- attribute VTTRegion? region;
- attribute DirectionSetting vertical;
- attribute boolean snapToLines;
- attribute LineAndPositionSetting line;
- attribute LineAlignSetting lineAlign;
- attribute LineAndPositionSetting position;
- attribute PositionAlignSetting positionAlign;
- attribute double size;
- attribute AlignSetting align;
- attribute DOMString text;
- DocumentFragment getCueAsHTML();
-};
-
-enum ScrollSetting { "" /* none */, "up" };
-[Exposed=Window,
- Constructor]
-interface VTTRegion {
- attribute DOMString id;
- attribute double width;
- attribute long lines;
- attribute double regionAnchorX;
- attribute double regionAnchorY;
- attribute double viewportAnchorX;
- attribute double viewportAnchorY;
- attribute ScrollSetting scroll;
-};
-</script>
<script>
"use strict";
-setup(function() {
+
+// https://w3c.github.io/webvtt/
+
+promise_test(async () => {
+ const webvttIDL = await fetch('/interfaces/webvtt.idl').then(response =>
+ response.text(),
+ );
var idlArray = new IdlArray();
- idlArray.add_untested_idls(document.getElementById("untested").textContent);
- idlArray.add_idls(document.getElementById("tested").textContent);
+ idlArray.add_untested_idls(document.getElementById('untested').textContent);
+ idlArray.add_idls(webvttIDL);
idlArray.add_objects({
VTTCue: ['new VTTCue(0, 0, "")'],
VTTRegion: ['new VTTRegion()'],
});
idlArray.test();
-});
+ done();
+}, 'webvtt interfaces.');
</script>