aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini3
-rw-r--r--tests/wpt/metadata/MANIFEST.json137
-rw-r--r--tests/wpt/metadata/encoding/single-byte-decoder.html.ini1
-rw-r--r--tests/wpt/metadata/fetch/content-type/response.window.js.ini15
-rw-r--r--tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini2
-rw-r--r--tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini4
-rw-r--r--tests/wpt/metadata/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html.ini1
-rw-r--r--tests/wpt/metadata/html/semantics/interactive-elements/the-details-element/toggleEvent.html.ini7
-rw-r--r--tests/wpt/metadata/referrer-policy/generic/iframe-src-change.html.ini4
-rw-r--r--tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini1
-rw-r--r--tests/wpt/web-platform-tests/css/css-values/initial-background-color.html2
-rw-r--r--tests/wpt/web-platform-tests/css/css-writing-modes/percentage-padding-in-shrink-to-fit.html11
-rw-r--r--tests/wpt/web-platform-tests/docs/running-tests/from-local-system.md15
-rw-r--r--tests/wpt/web-platform-tests/fetch/corb/script-resource-with-nonsniffable-types.tentative.sub.html3
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue-ref.html27
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html36
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-ref.html1
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video-ref.html1
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html11
-rw-r--r--tests/wpt/web-platform-tests/payment-request/rejects_if_not_active-manual.https.html (renamed from tests/wpt/web-platform-tests/payment-request/rejects_if_not_active_manual.https.html)0
-rw-r--r--tests/wpt/web-platform-tests/pointerevents/pointerevent_pointerout_pen.html2
-rw-r--r--tests/wpt/web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html8
-rw-r--r--tests/wpt/web-platform-tests/referrer-policy/generic/iframe-src-change.html37
-rw-r--r--tests/wpt/web-platform-tests/resources/chromium/webxr-test.js7
-rw-r--r--tests/wpt/web-platform-tests/tools/wpt/browser.py50
-rw-r--r--tests/wpt/web-platform-tests/wake-lock/wakelock-abortsignal.https.any.js (renamed from tests/wpt/web-platform-tests/wake-lock/wakelock-abortsignal-set.https.html)28
-rw-r--r--tests/wpt/web-platform-tests/wake-lock/wakelock-type.https.any.js6
-rw-r--r--tests/wpt/web-platform-tests/xhr/resources/access-control-basic-options-not-supported.py7
28 files changed, 285 insertions, 142 deletions
diff --git a/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini b/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini
index 3a3d15b8406..3b874fc1748 100644
--- a/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini
+++ b/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini
@@ -14,9 +14,6 @@
[Revoke blob URL after creating Request, will fetch]
expected: FAIL
- [Revoke blob URL after calling fetch, fetch should succeed]
- expected: FAIL
-
[url-with-fetch.any.html]
[Untitled]
diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json
index 31115044364..382f6e14af2 100644
--- a/tests/wpt/metadata/MANIFEST.json
+++ b/tests/wpt/metadata/MANIFEST.json
@@ -14377,6 +14377,12 @@
{}
]
],
+ "payment-request/rejects_if_not_active-manual.https.html": [
+ [
+ "payment-request/rejects_if_not_active-manual.https.html",
+ {}
+ ]
+ ],
"payment-request/shipping-address-changed-manual.https.html": [
[
"payment-request/shipping-address-changed-manual.https.html",
@@ -173123,6 +173129,18 @@
{}
]
],
+ "css/css-writing-modes/percentage-padding-in-shrink-to-fit.html": [
+ [
+ "css/css-writing-modes/percentage-padding-in-shrink-to-fit.html",
+ [
+ [
+ "/css/reference/nothing.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-writing-modes/relpos-inline-overflowing-block-vrl.html": [
[
"css/css-writing-modes/relpos-inline-overflowing-block-vrl.html",
@@ -199051,18 +199069,6 @@
{}
]
],
- "html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html": [
- [
- "html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html",
- [
- [
- "/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue-ref.html",
- "=="
- ]
- ],
- {}
- ]
- ],
"html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit.html": [
[
"html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit.html",
@@ -306980,11 +306986,6 @@
{}
]
],
- "html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue-ref.html": [
- [
- {}
- ]
- ],
"html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-ref.html": [
[
{}
@@ -396658,6 +396659,12 @@
{}
]
],
+ "html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html": [
+ [
+ "html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html",
+ {}
+ ]
+ ],
"html/semantics/embedded-content/media-elements/track/track-element/track-cues-cuechange.html": [
[
"html/semantics/embedded-content/media-elements/track/track-element/track-cues-cuechange.html",
@@ -402326,6 +402333,12 @@
{}
]
],
+ "html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html": [
+ [
+ "html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html",
+ {}
+ ]
+ ],
"html/semantics/text-level-semantics/the-time-element/001.html": [
[
"html/semantics/text-level-semantics/the-time-element/001.html",
@@ -421869,12 +421882,6 @@
}
]
],
- "payment-request/rejects_if_not_active_manual.https.html": [
- [
- "payment-request/rejects_if_not_active_manual.https.html",
- {}
- ]
- ],
"performance-timeline/case-sensitivity.any.js": [
[
"performance-timeline/case-sensitivity.any.html",
@@ -423664,6 +423671,12 @@
{}
]
],
+ "referrer-policy/generic/iframe-src-change.html": [
+ [
+ "referrer-policy/generic/iframe-src-change.html",
+ {}
+ ]
+ ],
"referrer-policy/generic/link-rel-prefetch.html": [
[
"referrer-policy/generic/link-rel-prefetch.html",
@@ -445347,10 +445360,28 @@
}
]
],
- "wake-lock/wakelock-abortsignal-set.https.html": [
+ "wake-lock/wakelock-abortsignal.https.any.js": [
[
- "wake-lock/wakelock-abortsignal-set.https.html",
- {}
+ "wake-lock/wakelock-abortsignal.https.any.html",
+ {
+ "script_metadata": [
+ [
+ "title",
+ "WakeLock.request() AbortSignal Test"
+ ]
+ ]
+ }
+ ],
+ [
+ "wake-lock/wakelock-abortsignal.https.any.worker.html",
+ {
+ "script_metadata": [
+ [
+ "title",
+ "WakeLock.request() AbortSignal Test"
+ ]
+ ]
+ }
]
],
"wake-lock/wakelock-active-document.https.window.js": [
@@ -628982,7 +629013,7 @@
"reftest"
],
"css/css-values/initial-background-color.html": [
- "f38226651774f9ac2151b9b951f47f519a4663ea",
+ "7a6c6173c4f6998f56bbcb7f992ad38fca45ce58",
"reftest"
],
"css/css-values/lh-rlh-on-root-001.html": [
@@ -633181,6 +633212,10 @@
"187d875cd5115cec781d18bf4fca715441d5b2d7",
"reftest"
],
+ "css/css-writing-modes/percentage-padding-in-shrink-to-fit.html": [
+ "2d4364c886c48c3ef7ebddfb43d2210bdf75e094",
+ "reftest"
+ ],
"css/css-writing-modes/reference/available-size-001-ref.html": [
"84252946946d4e444f8b0dd69381a1bd04554c80",
"support"
@@ -651326,7 +651361,7 @@
"support"
],
"docs/running-tests/from-local-system.md": [
- "695f8403da4a8a52eddb25492ac89edd7c33e6e7",
+ "8f908877c40470cf695e6bc1ae6f21988db7b2ec",
"support"
],
"docs/running-tests/from-web.md": [
@@ -658310,7 +658345,7 @@
"testharness"
],
"fetch/corb/script-resource-with-nonsniffable-types.tentative.sub.html": [
- "62fd9ca389da9fda5e7c6655ae88be57b7688d5b",
+ "e599bf26f9445e9e96ee98e4bbab2895e2283fe2",
"testharness"
],
"fetch/corb/style-css-mislabeled-as-html-nosniff.sub.html": [
@@ -671177,16 +671212,12 @@
"76019c9b41e4fd4c56f4252d399f088b7b3e4470",
"reftest"
],
- "html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue-ref.html": [
- "837c4fd7833d569f2949bf1c2a677836ac851597",
- "support"
- ],
"html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html": [
- "c2d300999eeaa207365b5c0b42f9b033e6b96446",
- "reftest"
+ "427189f6fc78074ae13c58e94ae3d02bc0e513b2",
+ "testharness"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-ref.html": [
- "c4c14bc2a394ff19c14bfa76c4b59ad5d6ddb618",
+ "8354041eb2a0aa57b283e12d9c0390f16327ac80",
"support"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit.html": [
@@ -671194,7 +671225,7 @@
"reftest"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video-ref.html": [
- "c3ee804c485b762d8b69614136558bbf2ed833a8",
+ "39461350b089b9041a71a6ca9aad7f1cfc078d68",
"support"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video.html": [
@@ -677349,6 +677380,10 @@
"1dfa6836f398cc0d7e15a694655a68771d51c804",
"reftest"
],
+ "html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html": [
+ "3caed3a02e87ccb9797ba6728bebc5294be2658e",
+ "testharness"
+ ],
"html/semantics/text-level-semantics/the-ruby-element/ruby-usage-notref.html": [
"f5747811ae40ec6114976d05955e4a85a7c4cf44",
"support"
@@ -693525,14 +693560,14 @@
"687d3a52de9f6bfdb10456147586008b18683eb2",
"manual"
],
+ "payment-request/rejects_if_not_active-manual.https.html": [
+ "f1d2fb83e0e0b17e0030bc991b0135bd21200aa0",
+ "manual"
+ ],
"payment-request/rejects_if_not_active.https.html": [
"3c7e85ba970f8c6f2d608f02dd2f60f911124da2",
"testharness"
],
- "payment-request/rejects_if_not_active_manual.https.html": [
- "f1d2fb83e0e0b17e0030bc991b0135bd21200aa0",
- "testharness"
- ],
"payment-request/resources/page1.html": [
"7fc080d380c4bd46dfb011910e570ee412561b92",
"support"
@@ -693930,7 +693965,7 @@
"testharness"
],
"pointerevents/pointerevent_pointerout_pen.html": [
- "972f99d95080ab702da79f8125119a2b27778a84",
+ "a718468c49a965eefee134cc6e6ec4051042cb49",
"testharness"
],
"pointerevents/pointerevent_pointerout_received_once.html": [
@@ -694010,7 +694045,7 @@
"testharness"
],
"pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html": [
- "5bab6e66121cebc47213914fb07f7995d8b0722d",
+ "6ed75ab4cbcda3c673b3328a826019bdade4db5d",
"testharness"
],
"pointerevents/pointerevent_touch-action-auto-css_touch.html": [
@@ -695153,6 +695188,10 @@
"28e83df6c2ab9b27417b15948929d044095fdceb",
"testharness"
],
+ "referrer-policy/generic/iframe-src-change.html": [
+ "15202a76a1ea3b7ad8deb35cdb33826414d7a95b",
+ "testharness"
+ ],
"referrer-policy/generic/link-rel-prefetch.html": [
"914ddfc4b225d26c675c61ecf623fdebb10e4524",
"testharness"
@@ -704658,7 +704697,7 @@
"support"
],
"resources/chromium/webxr-test.js": [
- "8816273705806dd8efb9c33a52a61689f802ecf2",
+ "5406b6745bdf021b59aa21f669e0cdbc6e858045",
"support"
],
"resources/chromium/webxr-test.js.headers": [
@@ -720242,7 +720281,7 @@
"support"
],
"tools/wpt/browser.py": [
- "f617fc3252b13b7fba3d24619ece65e2c51f0a4e",
+ "ddc7837f192ae9307be0028636e92d4faf9b9ced",
"support"
],
"tools/wpt/commands.json": [
@@ -723361,8 +723400,8 @@
"7fc080d380c4bd46dfb011910e570ee412561b92",
"support"
],
- "wake-lock/wakelock-abortsignal-set.https.html": [
- "cc534d13d6ca81763627291680c8740d6bd5aff2",
+ "wake-lock/wakelock-abortsignal.https.any.js": [
+ "7961674fea6e42f2a6a2b34b23be486e4685ccea",
"testharness"
],
"wake-lock/wakelock-active-document.https.window.js": [
@@ -723418,7 +723457,7 @@
"testharness"
],
"wake-lock/wakelock-type.https.any.js": [
- "e11fccc1ddf80320ffdf0bd893e28f30003dabc2",
+ "cc37c768272512ec412fb749cebd77afa8662ac3",
"testharness"
],
"wasm/META.yml": [
@@ -734654,7 +734693,7 @@
"support"
],
"xhr/resources/access-control-basic-options-not-supported.py": [
- "0c69c76293eaeebc1e9c18fed7904c3bdcdc0d8e",
+ "77b274e957ca87270926ad4622d2c79ec9600fed",
"support"
],
"xhr/resources/access-control-basic-preflight-cache-invalidation.py": [
diff --git a/tests/wpt/metadata/encoding/single-byte-decoder.html.ini b/tests/wpt/metadata/encoding/single-byte-decoder.html.ini
index 939a36eb9d9..3d135f3bd66 100644
--- a/tests/wpt/metadata/encoding/single-byte-decoder.html.ini
+++ b/tests/wpt/metadata/encoding/single-byte-decoder.html.ini
@@ -2,6 +2,7 @@
type: testharness
[single-byte-decoder.html?document]
+ expected: TIMEOUT
[ISO-8859-4: iso_8859-4:1988 (document.characterSet and document.inputEncoding)]
expected: FAIL
diff --git a/tests/wpt/metadata/fetch/content-type/response.window.js.ini b/tests/wpt/metadata/fetch/content-type/response.window.js.ini
index ff2111a0637..84ec93d5af0 100644
--- a/tests/wpt/metadata/fetch/content-type/response.window.js.ini
+++ b/tests/wpt/metadata/fetch/content-type/response.window.js.ini
@@ -312,21 +312,24 @@
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
expected: FAIL
- [<iframe>: combined response Content-Type: text/html;x=" text/plain]
+ [<iframe>: combined response Content-Type: */* text/html]
expected: FAIL
- [<iframe>: combined response Content-Type: */* text/html]
+ [<iframe>: combined response Content-Type: text/html */*;charset=gbk]
expected: FAIL
- [<iframe>: combined response Content-Type: text/html;charset=gbk text/plain text/html]
+ [<iframe>: combined response Content-Type: text/html;" text/plain]
expected: FAIL
- [<iframe>: separate response Content-Type: text/html;" text/plain]
+ [<iframe>: separate response Content-Type: text/html;charset=gbk text/plain text/html]
expected: FAIL
- [<iframe>: combined response Content-Type: text/html */*;charset=gbk]
+ [<iframe>: separate response Content-Type: */* text/html]
+ expected: FAIL
+
+ [<iframe>: separate response Content-Type: text/html;x=" text/plain]
expected: FAIL
- [<iframe>: combined response Content-Type: text/html;" \\" text/plain]
+ [<iframe>: separate response Content-Type: text/html;" \\" text/plain]
expected: FAIL
diff --git a/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini b/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini
index d4ba399b762..ef3edb78985 100644
--- a/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini
+++ b/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini
@@ -11,6 +11,6 @@
[X-Content-Type-Options%3A%20nosniff%0C]
expected: FAIL
- [X-Content-Type-Options%3A%20'NosniFF']
+ [X-Content-Type-Options%3A%20%22nosniFF%22]
expected: FAIL
diff --git a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini
new file mode 100644
index 00000000000..87b07c3e670
--- /dev/null
+++ b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini
@@ -0,0 +1,4 @@
+[traverse_the_history_1.html]
+ [Multiple history traversals from the same task]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html.ini
index cc781d0a782..e8fe94b8878 100644
--- a/tests/wpt/metadata/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html.ini
+++ b/tests/wpt/metadata/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html.ini
@@ -1,5 +1,4 @@
[track-cue-rendering-empty-cue.html]
- expected: TIMEOUT
[Empty cues]
expected: FAIL
diff --git a/tests/wpt/metadata/html/semantics/interactive-elements/the-details-element/toggleEvent.html.ini b/tests/wpt/metadata/html/semantics/interactive-elements/the-details-element/toggleEvent.html.ini
new file mode 100644
index 00000000000..9e522297c94
--- /dev/null
+++ b/tests/wpt/metadata/html/semantics/interactive-elements/the-details-element/toggleEvent.html.ini
@@ -0,0 +1,7 @@
+[toggleEvent.html]
+ [Calling open twice on 'details' fires only one toggle event]
+ expected: FAIL
+
+ [Setting open=true to opened 'details' element should not fire a toggle event at the 'details' element]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/referrer-policy/generic/iframe-src-change.html.ini b/tests/wpt/metadata/referrer-policy/generic/iframe-src-change.html.ini
new file mode 100644
index 00000000000..255b8ba2def
--- /dev/null
+++ b/tests/wpt/metadata/referrer-policy/generic/iframe-src-change.html.ini
@@ -0,0 +1,4 @@
+[iframe-src-change.html]
+ [Checks that referrerpolicy is respected when an iframe's src changes.]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini b/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
index 66bd350083b..a56bad443a2 100644
--- a/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
+++ b/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
@@ -1,4 +1,5 @@
[realtimeanalyser-fft-scaling.html]
+ expected: TIMEOUT
[X 2048-point FFT peak position is not equal to 64. Got 0.]
expected: FAIL
diff --git a/tests/wpt/web-platform-tests/css/css-values/initial-background-color.html b/tests/wpt/web-platform-tests/css/css-values/initial-background-color.html
index f3822665177..7a6c6173c4f 100644
--- a/tests/wpt/web-platform-tests/css/css-values/initial-background-color.html
+++ b/tests/wpt/web-platform-tests/css/css-values/initial-background-color.html
@@ -16,7 +16,7 @@
href="mailto:fremycompany.developer@yahoo.fr"
/ >
- <link rel="help" href="http://www.w3.org/TR/css3-values/#attr-notation"/>
+ <link rel="help" href="http://www.w3.org/TR/css3-values/#common-keywords"/>
<link
rel="match"
diff --git a/tests/wpt/web-platform-tests/css/css-writing-modes/percentage-padding-in-shrink-to-fit.html b/tests/wpt/web-platform-tests/css/css-writing-modes/percentage-padding-in-shrink-to-fit.html
new file mode 100644
index 00000000000..2d4364c886c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-writing-modes/percentage-padding-in-shrink-to-fit.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/css-writing-modes-3/">
+<link rel="help" href="https://www.w3.org/TR/CSS22/box.html#propdef-padding-top">
+<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=966795">
+<link rel="match" href="../reference/nothing.html">
+<meta name="assert" content="Percentage-padding is always resolved against the inline-size of the containing block, even if it's about block padding.">
+<p>There should be nothing below.</p>
+<div style="float:left;">
+ <div style="display:flex; writing-mode:vertical-rl; padding:1000%; background:red;"></div>
+</div>
diff --git a/tests/wpt/web-platform-tests/docs/running-tests/from-local-system.md b/tests/wpt/web-platform-tests/docs/running-tests/from-local-system.md
index 695f8403da4..8f908877c40 100644
--- a/tests/wpt/web-platform-tests/docs/running-tests/from-local-system.md
+++ b/tests/wpt/web-platform-tests/docs/running-tests/from-local-system.md
@@ -11,6 +11,21 @@ On Windows, be sure to add the Python directory (`c:\python2x`, by default) to
your `%Path%` [Environment Variable](http://www.computerhope.com/issues/ch000549.htm),
and read the [Windows Notes](#windows-notes) section below.
+<!--
+ There does not appear to be a cross-platform means of installing `pip`.
+ https://github.com/web-platform-tests/wpt/pull/16670
+-->
+
+Install `pip`. On many systems, this can be achieved with the command `python
+-m ensurepip`. If this is not possible, use your system's package manager to
+install the `python-pip` package.
+
+Next, install `virtualenv` using the following command:
+
+```bash
+pip install virtualenv
+```
+
To get the tests running, you need to set up the test domains in your
[`hosts` file](http://en.wikipedia.org/wiki/Hosts_%28file%29%23Location_in_the_file_system).
diff --git a/tests/wpt/web-platform-tests/fetch/corb/script-resource-with-nonsniffable-types.tentative.sub.html b/tests/wpt/web-platform-tests/fetch/corb/script-resource-with-nonsniffable-types.tentative.sub.html
index 62fd9ca389d..e599bf26f94 100644
--- a/tests/wpt/web-platform-tests/fetch/corb/script-resource-with-nonsniffable-types.tentative.sub.html
+++ b/tests/wpt/web-platform-tests/fetch/corb/script-resource-with-nonsniffable-types.tentative.sub.html
@@ -53,9 +53,12 @@ function test(mime_type, is_blocking_expected) {
// Some mime types should be protected by CORB without any kind
// of confirmation sniffing.
protected_mime_types = [
+ "application/gzip",
"application/x-gzip",
"application/x-protobuf",
+ "application/x-www-form-urlencoded",
"application/zip",
+ "text/event-stream",
// TODO(lukasza): https://crbug.com/944162: Add application/pdf and
// text/csv to the list of content types tested here (after
// kMimeHandlerViewInCrossProcessFrame gets enabled by default).
diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue-ref.html b/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue-ref.html
deleted file mode 100644
index 837c4fd7833..00000000000
--- a/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue-ref.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<!DOCTYPE html>
-<html class="reftest-wait">
-<title>Reference for track rendering with empty cue</title>
-<script src="/common/reftest-wait.js"></script>
-<style>
-html { overflow:hidden }
-body { margin:0 }
-.container {
- display: inline-block;
- position: relative;
-}
-</style>
-<div class="container">
- <video width="320" height="180">
- <source src="/media/white.webm" type="video/webm">
- <source src="/media/white.mp4" type="video/mp4">
- <script>
- var video = document.querySelector("video");
- video.addEventListener('playing', () => {
- video.pause();
- takeScreenshot();
- }, { once: true});
- video.play();
- </script>
- </video>
-</div>
-</html> \ No newline at end of file
diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html b/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html
index c2d300999ee..427189f6fc7 100644
--- a/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html
+++ b/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html
@@ -1,26 +1,16 @@
<!DOCTYPE html>
-<html class="reftest-wait">
-<title>Track rendering with empty cue</title>
-<link rel="match" href="track-cue-rendering-empty-cue-ref.html">
-<style>
-html { overflow:hidden }
-body { margin:0 }
-</style>
-<script src="/common/reftest-wait.js"></script>
-<video width="320" height="180">
- <source src="/media/white.webm" type="video/webm">
- <source src="/media/white.mp4" type="video/mp4">
- <script>
- var video = document.querySelector("video");
- var track = video.addTextTrack("captions", "regular captions track", "en");
- track.addCue(new VTTCue(0, 4, ""));
- track.mode = "showing";
+<title>Empty cues</title>
+<script src="/common/media.js"></script>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+async_test(function(t) {
+ var video = document.createElement("video");
+ video.src = getVideoURI("/media/test");
+ video.addTextTrack("captions", "regular captions track", "en");
+ video.textTracks[0].addCue(new VTTCue(0, 4, ""));
- video.addEventListener('playing', () => {
- video.pause();
- takeScreenshot();
- }, { once: true});
+ video.onplaying = t.step_func_done();
video.play();
- </script>
-</video>
-</html> \ No newline at end of file
+});
+</script> \ No newline at end of file
diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-ref.html b/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-ref.html
index c4c14bc2a39..8354041eb2a 100644
--- a/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-ref.html
+++ b/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-ref.html
@@ -20,6 +20,7 @@
background: green;
color: green;
font-size: 120px;
+ padding: 2px;
}
</style>
<div class="container">
diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video-ref.html b/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video-ref.html
index c3ee804c485..39461350b08 100644
--- a/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video-ref.html
+++ b/tests/wpt/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video-ref.html
@@ -22,6 +22,7 @@
background: green;
color: green;
font-size: 50px;
+ padding: 2px;
}
</style>
<div class="container">
diff --git a/tests/wpt/web-platform-tests/html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html b/tests/wpt/web-platform-tests/html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html
new file mode 100644
index 00000000000..3caed3a02e8
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/semantics/text-level-semantics/the-ruby-element/rt-without-ruby-crash.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=967255">
+<rt style="display:block;">
+ <div></div>
+</rt>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+ test(()=> { }, "No crash");
+</script>
diff --git a/tests/wpt/web-platform-tests/payment-request/rejects_if_not_active_manual.https.html b/tests/wpt/web-platform-tests/payment-request/rejects_if_not_active-manual.https.html
index f1d2fb83e0e..f1d2fb83e0e 100644
--- a/tests/wpt/web-platform-tests/payment-request/rejects_if_not_active_manual.https.html
+++ b/tests/wpt/web-platform-tests/payment-request/rejects_if_not_active-manual.https.html
diff --git a/tests/wpt/web-platform-tests/pointerevents/pointerevent_pointerout_pen.html b/tests/wpt/web-platform-tests/pointerevents/pointerevent_pointerout_pen.html
index 972f99d9508..a718468c49a 100644
--- a/tests/wpt/web-platform-tests/pointerevents/pointerevent_pointerout_pen.html
+++ b/tests/wpt/web-platform-tests/pointerevents/pointerevent_pointerout_pen.html
@@ -51,7 +51,7 @@
// Inject pen inputs.
new test_driver.Actions()
- .addPointer("pointer1", "pen")
+ .addPointer("PenPointer1", "pen")
.pointerMove(0, 0, {origin: target0})
.pointerMove(0, 0)
.send();
diff --git a/tests/wpt/web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html b/tests/wpt/web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html
index 5bab6e66121..6ed75ab4cbc 100644
--- a/tests/wpt/web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html
+++ b/tests/wpt/web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html
@@ -46,7 +46,6 @@
var target_list = ["target0", "target1"];
var pointer_event_list = ["pointerdown" , "pointermove", "pointerup"];
var mouse_event_list = ["mousedown", "mouseup", "mousemove"];
- var last_pointer_event = null;
target_list.forEach(function(targetId) {
var target = document.getElementById(targetId);
@@ -64,8 +63,6 @@
if (label === "pointerdown@target0")
event.preventDefault();
-
- last_pointer_event = event;
});
});
@@ -77,11 +74,6 @@
event_log.push(event.type + "@" + targetId);
include_next_mousemove = (event.type == "mousedown");
- test(function() {
- test(function () {
- assert_equals(event.timeStamp, last_pointer_event.timeStamp, "The time stamp of the compat mouse event should be the same as its pointerevent");
- });
- }, event.type + "'s time stamp should be the same as " + last_pointer_event.type + "'s time stamp.");
});
});
});
diff --git a/tests/wpt/web-platform-tests/referrer-policy/generic/iframe-src-change.html b/tests/wpt/web-platform-tests/referrer-policy/generic/iframe-src-change.html
new file mode 100644
index 00000000000..15202a76a1e
--- /dev/null
+++ b/tests/wpt/web-platform-tests/referrer-policy/generic/iframe-src-change.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<body>
+<script>
+function nextMessage() {
+ return new Promise((resolve, reject) => {
+ window.addEventListener('message', e => resolve(e.data), {once: true});
+ });
+}
+
+promise_test(async () => {
+ let iframe = document.createElement('iframe');
+ iframe.setAttribute('src', '/common/security-features/subresource/document.py?first')
+ iframe.setAttribute('referrerpolicy', 'no-referrer');
+ document.body.appendChild(iframe);
+
+ try {
+ {
+ let {referrer: documentReferrer, headers: {referer: httpReferrer}} = await nextMessage();
+ assert_equals(httpReferrer, undefined, 'expected no HTTP Referer header on initial load');
+ assert_equals(documentReferrer, undefined, 'expected no document.referrer on initial load');
+ }
+
+ iframe.setAttribute('src', '/common/security-features/subresource/document.py?second');
+
+ {
+ let {referrer: documentReferrer, headers: {referer: httpReferrer}} = await nextMessage();
+ assert_equals(httpReferrer, undefined, 'expected no HTTP Referer header on src change');
+ assert_equals(documentReferrer, undefined, 'expected no document.referrer on src change');
+ }
+ } finally {
+ iframe.remove();
+ }
+}, "Checks that referrerpolicy is respected when an iframe's src changes.");
+</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/resources/chromium/webxr-test.js b/tests/wpt/web-platform-tests/resources/chromium/webxr-test.js
index 88162737058..5406b6745bd 100644
--- a/tests/wpt/web-platform-tests/resources/chromium/webxr-test.js
+++ b/tests/wpt/web-platform-tests/resources/chromium/webxr-test.js
@@ -340,12 +340,15 @@ class MockRuntime {
this.environmentProviderBinding_.close();
}
+ closeDataProvider() {
+ this.dataProviderBinding_.close();
+ }
+
updateSessionGeometry(frame_size, display_rotation) {
// This function must exist to ensure that calls to it do not crash, but we
// do not have any use for this data at present.
}
-
// Utility function
requestRuntimeSession(sessionOptions) {
return this.runtimeSupportsSession(sessionOptions).then((result) => {
@@ -366,7 +369,7 @@ class MockRuntime {
let dataProviderPtr = new device.mojom.XRFrameDataProviderPtr();
let dataProviderRequest = mojo.makeRequest(dataProviderPtr);
- let dataProviderBinding = new mojo.Binding(
+ this.dataProviderBinding_ = new mojo.Binding(
device.mojom.XRFrameDataProvider, this, dataProviderRequest);
let clientRequest = mojo.makeRequest(this.sessionClient_);
diff --git a/tests/wpt/web-platform-tests/tools/wpt/browser.py b/tests/wpt/web-platform-tests/tools/wpt/browser.py
index f617fc3252b..ddc7837f192 100644
--- a/tests/wpt/web-platform-tests/tools/wpt/browser.py
+++ b/tests/wpt/web-platform-tests/tools/wpt/browser.py
@@ -634,7 +634,11 @@ class Opera(Browser):
class EdgeChromium(Browser):
"""MicrosoftEdge-specific interface."""
-
+ platform = {
+ "Linux": "linux",
+ "Windows": "win",
+ "Darwin": "macos"
+ }.get(uname[0])
product = "edgechromium"
requirements = "requirements_edge_chromium.txt"
@@ -642,13 +646,35 @@ class EdgeChromium(Browser):
raise NotImplementedError
def find_binary(self, venv_path=None, channel=None):
- raise find_executable("msedge")
+ binary = None
+ if self.platform == "win":
+ binaryname = "msedge"
+ binary = find_executable(binaryname)
+ if not binary:
+ # Use paths from different Edge channels starting with Release\Beta\Dev\Canary
+ winpaths = [os.path.expanduser("~\\AppData\\Local\\Microsoft\\Edge\\Application"),
+ os.path.expandvars("$SYSTEMDRIVE\\Program Files\\Microsoft\\Edge Beta\\Application"),
+ os.path.expandvars("$SYSTEMDRIVE\\Program Files\\Microsoft\\Edge Dev\\Application"),
+ os.path.expandvars("$SYSTEMDRIVE\\Program Files (x86)\\Microsoft\\Edge Beta\\Application"),
+ os.path.expandvars("$SYSTEMDRIVE\\Program Files (x86)\\Microsoft\\Edge Dev\\Application"),
+ os.path.expanduser("~\\AppData\Local\\Microsoft\\Edge SxS\\Application"),]
+ return find_executable(binaryname, os.pathsep.join(winpaths))
+ if self.platform == "macos":
+ binaryname = "Microsoft Edge Canary"
+ binary = find_executable(binaryname)
+ if not binary:
+ macpaths = ["/Applications/Microsoft Edge.app/Contents/MacOS",
+ os.path.expanduser("~/Applications/Microsoft Edge.app/Contents/MacOS"),
+ "/Applications/Microsoft Edge Canary.app/Contents/MacOS",
+ os.path.expanduser("~/Applications/Microsoft Edge Canary.app/Contents/MacOS")]
+ return find_executable("Microsoft Edge Canary", os.pathsep.join(macpaths))
+ return binary
def find_webdriver(self, channel=None):
return find_executable("msedgedriver")
def install_webdriver(self, dest=None, channel=None, browser_binary=None):
- if uname[0] != "Windows":
+ if self.platform == "win":
raise ValueError("Only Windows platform is currently supported")
if dest is None:
@@ -666,19 +692,29 @@ class EdgeChromium(Browser):
return find_executable("msedgedriver", dest)
def version(self, binary=None, webdriver_binary=None):
- if uname[0] != "Windows":
+ if binary is None:
+ binary = self.find_binary()
+ if self.platform != "win":
try:
version_string = call(binary, "--version").strip()
except subprocess.CalledProcessError:
self.logger.warning("Failed to call %s" % binary)
return None
- m = re.match(r"(?:MSEdge|Edge) (.*)", version_string)
+ m = re.match(r"Microsoft Edge (.*) ", version_string)
if not m:
self.logger.warning("Failed to extract version from: %s" % version_string)
return None
return m.group(1)
- self.logger.warning("Unable to extract version from binary on Windows.")
- return None
+ else:
+ if binary is not None:
+ command = "(Get-Item '%s').VersionInfo.FileVersion" % binary
+ try:
+ return call("powershell.exe", command).strip()
+ except (subprocess.CalledProcessError, OSError):
+ self.logger.warning("Failed to call %s in PowerShell" % command)
+ return None
+ self.logger.warning("Failed to find Edge binary.")
+ return None
class Edge(Browser):
"""Edge-specific interface."""
diff --git a/tests/wpt/web-platform-tests/wake-lock/wakelock-abortsignal-set.https.html b/tests/wpt/web-platform-tests/wake-lock/wakelock-abortsignal.https.any.js
index cc534d13d6c..7961674fea6 100644
--- a/tests/wpt/web-platform-tests/wake-lock/wakelock-abortsignal-set.https.html
+++ b/tests/wpt/web-platform-tests/wake-lock/wakelock-abortsignal.https.any.js
@@ -1,10 +1,23 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>WakeLock: passing an AbortSignal already set aborts</title>
-<link rel="help" href="https://w3c.github.io/wake-lock/">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script>
+// META: title=WakeLock.request() AbortSignal Test
+
+'use strict';
+
+promise_test(async t => {
+ const invalidSignals = [
+ "string",
+ 123,
+ {},
+ true,
+ Symbol(),
+ () => {},
+ self
+ ];
+
+ for (let signal of invalidSignals) {
+ await promise_rejects(t, new TypeError(), WakeLock.request('screen', { signal: signal }));
+ }
+}, "'TypeError' is thrown when the signal option is not an AbortSignal");
+
promise_test(t => {
const abortController = new AbortController();
const abortSignal = abortController.signal;
@@ -28,4 +41,3 @@ promise_test(async t => {
await promise_rejects(t, "AbortError", lock2);
await promise_rejects(t, "AbortError", lock3);
}, "The same AbortSignal can be used to cause multiple wake locks to abort");
-</script>
diff --git a/tests/wpt/web-platform-tests/wake-lock/wakelock-type.https.any.js b/tests/wpt/web-platform-tests/wake-lock/wakelock-type.https.any.js
index e11fccc1ddf..cc37c768272 100644
--- a/tests/wpt/web-platform-tests/wake-lock/wakelock-type.https.any.js
+++ b/tests/wpt/web-platform-tests/wake-lock/wakelock-type.https.any.js
@@ -13,7 +13,7 @@ promise_test(t => {
"",
true
];
- invalidTypes.map(async invalidType => {
- await promise_rejects(t, new TypeError(), WakeLock.request(invalidType));
- });
+ return Promise.all(invalidTypes.map(invalidType => {
+ return promise_rejects(t, new TypeError(), WakeLock.request(invalidType));
+ }));
}, "'TypeError' is thrown when set an invalid wake lock type");
diff --git a/tests/wpt/web-platform-tests/xhr/resources/access-control-basic-options-not-supported.py b/tests/wpt/web-platform-tests/xhr/resources/access-control-basic-options-not-supported.py
index 0c69c76293e..77b274e957c 100644
--- a/tests/wpt/web-platform-tests/xhr/resources/access-control-basic-options-not-supported.py
+++ b/tests/wpt/web-platform-tests/xhr/resources/access-control-basic-options-not-supported.py
@@ -3,7 +3,10 @@ def main(request, response):
# Allow simple requests, but deny preflight
if request.method != "OPTIONS":
- response.headers.set("Access-Control-Allow-Credentials", "true")
- response.headers.set("Access-Control-Allow-Origin", request.headers.get("origin"))
+ if "origin" in request.headers:
+ response.headers.set("Access-Control-Allow-Credentials", "true")
+ response.headers.set("Access-Control-Allow-Origin", request.headers["origin"])
+ else:
+ response.status = 500
else:
response.status = 400