mirror of
https://github.com/servo/servo.git
synced 2025-08-04 05:00:08 +01:00
Update web-platform-tests to revision 386d27678c48bf468b8d374e2ba718e32185a5b7
This commit is contained in:
parent
c24420ddbe
commit
dd79cdc697
32 changed files with 336 additions and 167 deletions
|
@ -136601,6 +136601,18 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"css/css-scoping/reslot-text-inheritance.html": [
|
||||
[
|
||||
"css/css-scoping/reslot-text-inheritance.html",
|
||||
[
|
||||
[
|
||||
"/css/css-scoping/reference/green-text.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-scoping/shadow-assign-dynamic-001.html": [
|
||||
[
|
||||
"css/css-scoping/shadow-assign-dynamic-001.html",
|
||||
|
@ -196479,6 +196491,18 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/adopt-while-parsing-001.html": [
|
||||
[
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/adopt-while-parsing-001.html",
|
||||
[
|
||||
[
|
||||
"/html/the-xhtml-syntax/parsing-xhtml-documents/adopt-while-parsing-001-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"infrastructure/assumptions/ahem.html": [
|
||||
[
|
||||
"infrastructure/assumptions/ahem.html",
|
||||
|
@ -201804,18 +201828,6 @@
|
|||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"xhtml/adopt-while-parsing-001.html": [
|
||||
[
|
||||
"xhtml/adopt-while-parsing-001.html",
|
||||
[
|
||||
[
|
||||
"/xhtml/adopt-while-parsing-001-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
]
|
||||
},
|
||||
"reftest_node": {
|
||||
|
@ -272900,6 +272912,11 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"css/css-scoping/reference/green-text.html": [
|
||||
[
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-scoping/resources/host-green-box.css": [
|
||||
[
|
||||
{}
|
||||
|
@ -304445,6 +304462,16 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/adopt-while-parsing-001-ref.html": [
|
||||
[
|
||||
{}
|
||||
]
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/adopt-while-parsing.xhtml": [
|
||||
[
|
||||
{}
|
||||
]
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/xhtml-mathml-dtd-entity-support.htm": [
|
||||
[
|
||||
{}
|
||||
|
@ -316430,11 +316457,21 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"service-workers/service-worker/resources/import-scripts-diff-resource-map-worker.js": [
|
||||
[
|
||||
{}
|
||||
]
|
||||
],
|
||||
"service-workers/service-worker/resources/import-scripts-echo.py": [
|
||||
[
|
||||
{}
|
||||
]
|
||||
],
|
||||
"service-workers/service-worker/resources/import-scripts-get.py": [
|
||||
[
|
||||
{}
|
||||
]
|
||||
],
|
||||
"service-workers/service-worker/resources/import-scripts-mime-types-worker.js": [
|
||||
[
|
||||
{}
|
||||
|
@ -332059,16 +332096,6 @@
|
|||
[
|
||||
{}
|
||||
]
|
||||
],
|
||||
"xhtml/adopt-while-parsing-001-ref.html": [
|
||||
[
|
||||
{}
|
||||
]
|
||||
],
|
||||
"xhtml/adopt-while-parsing.xhtml": [
|
||||
[
|
||||
{}
|
||||
]
|
||||
]
|
||||
},
|
||||
"testharness": {
|
||||
|
@ -599470,6 +599497,14 @@
|
|||
"24b5e0d5f53d8fab39a2d1699f77ccef417ef6b6",
|
||||
"support"
|
||||
],
|
||||
"css/css-scoping/reference/green-text.html": [
|
||||
"95736b4484dc020f02000fc327ae87494f491d48",
|
||||
"support"
|
||||
],
|
||||
"css/css-scoping/reslot-text-inheritance.html": [
|
||||
"43711c83bd160825caf1d89c7599f3df1ae64508",
|
||||
"reftest"
|
||||
],
|
||||
"css/css-scoping/resources/host-green-box.css": [
|
||||
"a77b3fdc6432ea324e1601b99e901611d76098b0",
|
||||
"support"
|
||||
|
@ -640775,7 +640810,7 @@
|
|||
"support"
|
||||
],
|
||||
"docs/_running-tests/safari.md": [
|
||||
"ca73fd6073d6378ccd734598497c5c14dde90d40",
|
||||
"e81383d498c57af0a64b05947e04bbaa2928efc5",
|
||||
"support"
|
||||
],
|
||||
"docs/_writing-tests/ahem.md": [
|
||||
|
@ -641019,7 +641054,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"dom/events/Event-dispatch-handlers-changed.html": [
|
||||
"b325d5c5dc6b62cfb434a89e99004257c6982a57",
|
||||
"24e6fd70cb4ec4d44905ba8624280a526ef888c6",
|
||||
"testharness"
|
||||
],
|
||||
"dom/events/Event-dispatch-listener-order.window.js": [
|
||||
|
@ -667098,6 +667133,18 @@
|
|||
"870ff58a34277ed367f3f9a9d58f6abcb44293c3",
|
||||
"support"
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/adopt-while-parsing-001-ref.html": [
|
||||
"5b512e72f5a1f3780c9c38be79968b095c277a39",
|
||||
"support"
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/adopt-while-parsing-001.html": [
|
||||
"74018b4ad0f342aa5b38ad337ce9329e6d92545d",
|
||||
"reftest"
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/adopt-while-parsing.xhtml": [
|
||||
"2d85d21558b1778e17376d12424f81c703c0c262",
|
||||
"support"
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/xhtml-mathml-dtd-entity-1.htm": [
|
||||
"4025e2a477fde1dbeb170e7248032e221efdb62f",
|
||||
"testharness"
|
||||
|
@ -682571,7 +682618,7 @@
|
|||
"manual"
|
||||
],
|
||||
"payment-request/show-method-optional-promise-resolves-manual.https.html": [
|
||||
"d41b1b39c988d68f26ee419c94dd549895ccbf13",
|
||||
"4732a23abd1d12c4d21ab86818bda9070994db74",
|
||||
"manual"
|
||||
],
|
||||
"payment-request/show-method-postmessage-iframe.html": [
|
||||
|
@ -696755,7 +696802,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"service-workers/service-worker/import-scripts-resource-map.https.html": [
|
||||
"a5e26785fac4aa1267762ff58c48969dc8acb017",
|
||||
"4742bd01268360477bf6061f8505fe9a3b7cadb7",
|
||||
"testharness"
|
||||
],
|
||||
"service-workers/service-worker/import-scripts-updated-flag.https.html": [
|
||||
|
@ -697646,10 +697693,18 @@
|
|||
"063a62d03143a32f44365bf1e7b08d283ae52895",
|
||||
"support"
|
||||
],
|
||||
"service-workers/service-worker/resources/import-scripts-diff-resource-map-worker.js": [
|
||||
"0fdcb0fcf80ad7f0dffa284c5b77178bdad95ef6",
|
||||
"support"
|
||||
],
|
||||
"service-workers/service-worker/resources/import-scripts-echo.py": [
|
||||
"7d92794e31b6b1270db26779f63644ac42a3d3d6",
|
||||
"support"
|
||||
],
|
||||
"service-workers/service-worker/resources/import-scripts-get.py": [
|
||||
"9e376bc092889f1b231628ec7c17339674d284f4",
|
||||
"support"
|
||||
],
|
||||
"service-workers/service-worker/resources/import-scripts-mime-types-worker.js": [
|
||||
"2c585ac1060a88c4f3eeac6b6a81bbb4e0c30280",
|
||||
"support"
|
||||
|
@ -704351,7 +704406,7 @@
|
|||
"support"
|
||||
],
|
||||
"tools/ci/azure/install_safari.yml": [
|
||||
"88381085665fe71c40933a5ad4a59cbe15463236",
|
||||
"be18f8376467b516a68e026c493b8fb679697236",
|
||||
"support"
|
||||
],
|
||||
"tools/ci/azure/pip_install.yml": [
|
||||
|
@ -709755,7 +709810,7 @@
|
|||
"support"
|
||||
],
|
||||
"tools/wptrunner/wptrunner/update/metadata.py": [
|
||||
"d7e8ba2b47c12731ac80dc33ade34cc03299d582",
|
||||
"62569fbd9ff27e44adacc652b3f9c409f6ce8df6",
|
||||
"support"
|
||||
],
|
||||
"tools/wptrunner/wptrunner/update/state.py": [
|
||||
|
@ -710367,7 +710422,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"trusted-types/block-string-assignment-to-Document-write.tentative.html": [
|
||||
"5fa0b194df60c28dad98da828f5d22694d966e0f",
|
||||
"845df475fa0c8833c63b4db7992cde1a804635f9",
|
||||
"testharness"
|
||||
],
|
||||
"trusted-types/block-string-assignment-to-Element-insertAdjacentHTML.tentative.html": [
|
||||
|
@ -712547,11 +712602,11 @@
|
|||
"support"
|
||||
],
|
||||
"wasm/jsapi/bad-imports.js": [
|
||||
"f076baacca8b3e6addf49f6841874d11bfcfe5a2",
|
||||
"6c7d8056c7ba7076bbbccedc6ca9c4e9d2b73f1c",
|
||||
"support"
|
||||
],
|
||||
"wasm/jsapi/constructor/compile.any.js": [
|
||||
"f0d6f7aee4cc21169fb715e3fd1e652cd699ca7e",
|
||||
"1442cfccdf1b9c6aaeda2c1fa5af30ff0c89ea09",
|
||||
"testharness"
|
||||
],
|
||||
"wasm/jsapi/constructor/instantiate-bad-imports.any.js": [
|
||||
|
@ -712559,7 +712614,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"wasm/jsapi/constructor/instantiate.any.js": [
|
||||
"97350c5acd2c4e7d6380538ed7983ff5c53e5bf5",
|
||||
"356f87d02d34b0483944f993146927985e5867f6",
|
||||
"testharness"
|
||||
],
|
||||
"wasm/jsapi/constructor/validate.any.js": [
|
||||
|
@ -723703,7 +723758,7 @@
|
|||
"support"
|
||||
],
|
||||
"xhr/resources/authentication.py": [
|
||||
"f5bef5ba8262fbd51c4d907a9805a271cc19baa9",
|
||||
"618d285cf6e305cc301a821a9e89012dd5ca559e",
|
||||
"support"
|
||||
],
|
||||
"xhr/resources/base.xml": [
|
||||
|
@ -724497,18 +724552,6 @@
|
|||
"xhr/xmlhttprequest-unsent.htm": [
|
||||
"eb52d63eef971895f69f1b0151baa457250dd452",
|
||||
"testharness"
|
||||
],
|
||||
"xhtml/adopt-while-parsing-001-ref.html": [
|
||||
"5b512e72f5a1f3780c9c38be79968b095c277a39",
|
||||
"support"
|
||||
],
|
||||
"xhtml/adopt-while-parsing-001.html": [
|
||||
"74018b4ad0f342aa5b38ad337ce9329e6d92545d",
|
||||
"reftest"
|
||||
],
|
||||
"xhtml/adopt-while-parsing.xhtml": [
|
||||
"2d85d21558b1778e17376d12424f81c703c0c262",
|
||||
"support"
|
||||
]
|
||||
},
|
||||
"url_base": "/",
|
||||
|
|
|
@ -74,6 +74,3 @@
|
|||
[opacity end]
|
||||
expected: FAIL
|
||||
|
||||
[outline-width end]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[Event-dispatch-handlers-changed.html]
|
||||
[ Dispatch additional events inside an event listener ]
|
||||
expected: FAIL
|
||||
|
|
@ -32,7 +32,7 @@
|
|||
|
||||
|
||||
[single-byte-decoder.html?XMLHttpRequest]
|
||||
expected: CRASH
|
||||
expected: TIMEOUT
|
||||
[ISO-8859-2: iso_8859-2:1987 (XMLHttpRequest)]
|
||||
expected: FAIL
|
||||
|
||||
|
@ -55,10 +55,10 @@
|
|||
expected: FAIL
|
||||
|
||||
[windows-1252: iso_8859-1:1987 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
expected: FAIL
|
||||
|
||||
[windows-1254: iso_8859-9:1989 (XMLHttpRequest)]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1254: windows-1254 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
@ -66,15 +66,9 @@
|
|||
[windows-1257: cp1257 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1254: l5 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1254: x-cp1254 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1254: latin5 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1255: cp1255 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
@ -93,9 +87,6 @@
|
|||
[windows-1257: x-cp1257 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1253: x-cp1253 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1254: iso88599 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
@ -105,9 +96,6 @@
|
|||
[windows-1254: csisolatin5 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1254: cp1254 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1254: iso8859-9 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
@ -120,28 +108,22 @@
|
|||
[windows-1257: windows-1257 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1252: iso_8859-1 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1253: windows-1253 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1253: cp1253 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1252: x-cp1252 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1258: windows-1258 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1252: l1 (XMLHttpRequest)]
|
||||
[windows-1256: cp1256 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1252: windows-1252 (XMLHttpRequest)]
|
||||
[x-mac-cyrillic: x-mac-ukrainian (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1252: us-ascii (XMLHttpRequest)]
|
||||
[windows-1255: x-cp1255 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1256: x-cp1256 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
[windows-1256: windows-1256 (XMLHttpRequest)]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
||||
|
|
|
@ -312,6 +312,3 @@
|
|||
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -11,6 +11,3 @@
|
|||
[X-Content-Type-Options%3A%20nosniff%0C]
|
||||
expected: FAIL
|
||||
|
||||
[X-Content-Type-Options%3A%20'NosniFF']
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
[javascript-url-abort-return-value-undefined.tentative.html]
|
||||
expected: TIMEOUT
|
||||
[Not aborting fetch for javascript:undefined navigation]
|
||||
expected: TIMEOUT
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[traverse_the_history_1.html]
|
||||
[Multiple history traversals from the same task]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
[adopt-while-parsing-001.html]
|
||||
expected: TIMEOUT
|
|
@ -77,6 +77,12 @@
|
|||
[Empty buffer]
|
||||
expected: FAIL
|
||||
|
||||
[Synchronous options handling: Module argument]
|
||||
expected: FAIL
|
||||
|
||||
[Synchronous options handling: Buffer argument]
|
||||
expected: FAIL
|
||||
|
||||
|
||||
[instantiate.any.worker.html]
|
||||
[Invalid arguments]
|
||||
|
@ -157,3 +163,9 @@
|
|||
[Empty buffer]
|
||||
expected: FAIL
|
||||
|
||||
[Synchronous options handling: Module argument]
|
||||
expected: FAIL
|
||||
|
||||
[Synchronous options handling: Buffer argument]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
[send-authentication-basic-setrequestheader-existing-session.htm]
|
||||
[XMLHttpRequest: send() - "Basic" authenticated request using setRequestHeader() when there is an existing session]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[send-authentication-basic.htm]
|
||||
[XMLHttpRequest: send() - "Basic" authenticated requests with user name and password passed to open()]
|
||||
expected: FAIL
|
||||
|
|
@ -11,30 +11,3 @@
|
|||
[XMLHttpRequest user/pass options: user/pass in URL; pass in open()]
|
||||
expected: FAIL
|
||||
|
||||
[XMLHttpRequest user/pass options: user in URL]
|
||||
expected: FAIL
|
||||
|
||||
[XMLHttpRequest user/pass options: pass in URL, user/pass in open()]
|
||||
expected: FAIL
|
||||
|
||||
[XMLHttpRequest user/pass options: user in URL; user/pass in open()]
|
||||
expected: FAIL
|
||||
|
||||
[XMLHttpRequest user/pass options: user/pass in open()]
|
||||
expected: FAIL
|
||||
|
||||
[XMLHttpRequest user/pass options: user/pass in URL]
|
||||
expected: FAIL
|
||||
|
||||
[XMLHttpRequest user/pass options: user/pass in URL and open()]
|
||||
expected: FAIL
|
||||
|
||||
[XMLHttpRequest user/pass options: user in URL and open()]
|
||||
expected: FAIL
|
||||
|
||||
[XMLHttpRequest user/pass options: another user/pass in open(); must override cached credentials from previous test]
|
||||
expected: FAIL
|
||||
|
||||
[XMLHttpRequest user/pass options: user in open()]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
[transition_calc_implicit.html]
|
||||
expected: TIMEOUT
|
|
@ -0,0 +1,3 @@
|
|||
<!doctype html>
|
||||
<title>CSS Test: Reference</title>
|
||||
<p style="color:green">This text should be green.</p>
|
|
@ -0,0 +1,17 @@
|
|||
<!doctype html>
|
||||
<html class="reftest-wait">
|
||||
<title>CSS Test: Re-slotted text node inheritance</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-scoping/#slotted-pseudo">
|
||||
<link rel="match" href="reference/green-text.html">
|
||||
<script src="/common/reftest-wait.js"></script>
|
||||
<p id="host">This text should be green.</p>
|
||||
<script>
|
||||
const root = host.attachShadow({mode:"open"});
|
||||
root.innerHTML = `
|
||||
<slot style="color:green" name="no-match"></slot>
|
||||
<slot style="color:red"></slot>
|
||||
`;
|
||||
host.offsetTop;
|
||||
root.querySelector("slot").removeAttribute("name");
|
||||
takeScreenshot();
|
||||
</script>
|
|
@ -2,21 +2,22 @@
|
|||
layout: page
|
||||
title: Safari
|
||||
---
|
||||
To run Safari on macOS, some manual setup is required:
|
||||
To run Safari on macOS, some manual setup is required. Some steps are different
|
||||
for Safari and Safari Technology Preview, in which case only step is needed.
|
||||
|
||||
* Allow Safari to be controlled by SafariDriver: `safaridriver --enable`
|
||||
* Allow Safari to be controlled by SafariDriver:
|
||||
* `safaridriver --enable` or
|
||||
* `"/Applications/Safari Technology Preview.app/Contents/MacOS/safaridriver" --enable`
|
||||
|
||||
* Allow pop-up windows:
|
||||
`defaults write com.apple.Safari WebKitJavaScriptCanOpenWindowsAutomatically 1`
|
||||
* `defaults write com.apple.Safari WebKitJavaScriptCanOpenWindowsAutomatically 1` or
|
||||
* `defaults write com.apple.SafariTechnologyPreview WebKitJavaScriptCanOpenWindowsAutomatically 1`
|
||||
|
||||
* Turn on experimental features that are "off" by default:
|
||||
|
||||
* `defaults write com.apple.Safari ExperimentalServerTimingEnabled -bool true`
|
||||
|
||||
[//]: # (TODO\(cvazac\) Remove this if/when Server-Timing is enabled by default in Safari)
|
||||
* Turn on additional experimental features Safari Technology Preview:
|
||||
* `defaults write com.apple.SafariTechnologyPreview ExperimentalServerTimingEnabled 1`
|
||||
|
||||
* Trust the certificate:
|
||||
`security add-trusted-cert -k "$(security default-keychain | cut -d\" -f2)" tools/certs/cacert.pem`
|
||||
* `security add-trusted-cert -k "$(security default-keychain | cut -d\" -f2)" tools/certs/cacert.pem`
|
||||
|
||||
* Set `no_proxy='*'` in your environment. This is a
|
||||
workaround for a known
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
</table>
|
||||
|
||||
<script>
|
||||
async_test(function() {
|
||||
test(function() {
|
||||
var event_type = "bar";
|
||||
var target = document.getElementById("target");
|
||||
var parent = document.getElementById("parent");
|
||||
|
@ -39,6 +39,7 @@ async_test(function() {
|
|||
parent,
|
||||
target,
|
||||
target,
|
||||
target, // The additional listener for target runs as we copy its listeners twice
|
||||
parent,
|
||||
tbody,
|
||||
table,
|
||||
|
@ -47,7 +48,7 @@ async_test(function() {
|
|||
document,
|
||||
window
|
||||
];
|
||||
var expected_listeners = [0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1];
|
||||
var expected_listeners = [0,0,0,0,0,0,0,0,1,3,1,1,1,1,1,1,1];
|
||||
|
||||
var actual_targets = [], actual_listeners = [];
|
||||
var test_event_function = function(i) {
|
||||
|
@ -86,7 +87,5 @@ async_test(function() {
|
|||
|
||||
assert_array_equals(actual_targets, expected_targets, "actual_targets");
|
||||
assert_array_equals(actual_listeners, expected_listeners, "actual_listeners");
|
||||
|
||||
this.done();
|
||||
});
|
||||
</script>
|
||||
|
|
|
@ -180,12 +180,13 @@ function runUpdateDetailsAlgorithm(
|
|||
details,
|
||||
options = {
|
||||
requestShipping: true,
|
||||
}
|
||||
},
|
||||
initialDetails = failDetails,
|
||||
) {
|
||||
const testAssertion = buttonElement.textContent.trim();
|
||||
buttonElement.disabled = true;
|
||||
promise_test(async t => {
|
||||
const request = new PaymentRequest(validMethods, failDetails, options);
|
||||
const request = new PaymentRequest(validMethods, initialDetails, options);
|
||||
const detailsPromise = Promise.resolve(details);
|
||||
const acceptPromise = request.show(detailsPromise);
|
||||
assert_equals(request.id, "this cannot be changed", "id must never change.");
|
||||
|
@ -315,6 +316,18 @@ function runUpdateDetailsAlgorithm(
|
|||
When the payment sheet is shown, there should not be any errors shown.
|
||||
</button>
|
||||
</li>
|
||||
<li>
|
||||
<button onclick="
|
||||
const initialDetails = {total: passTotal, id: 'this cannot be changed'};
|
||||
const updatedDetails = {};
|
||||
runUpdateDetailsAlgorithm(
|
||||
this, updatedDetails, {requestShipping: false}, initialDetails);
|
||||
">
|
||||
Resolving the show promise with empty details will preserve the details from
|
||||
the constructor. When the payment sheet is shown, the string
|
||||
"✅ TEST HAS PASSED ✅" should be shown.
|
||||
</button>
|
||||
</li>
|
||||
<li>
|
||||
<button onclick="done();">Done!</button>
|
||||
</li>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<meta charset="utf-8" />
|
||||
<title>Tests for importScripts: script resource map</title>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
|
@ -10,14 +10,25 @@
|
|||
// script should be stored on the first import and thereafter that stored
|
||||
// script should be loaded. The worker asserts that the stored script was
|
||||
// loaded; if the assert fails then registration fails.
|
||||
promise_test(t => {
|
||||
const scope = 'resources/import-scripts-resource-map';
|
||||
return service_worker_unregister(t, scope)
|
||||
.then(() => {
|
||||
return navigator.serviceWorker.register(
|
||||
'resources/import-scripts-resource-map-worker.js', {scope: scope});
|
||||
})
|
||||
.then(r => r.unregister());
|
||||
}, 'import the same script URL multiple times');
|
||||
|
||||
promise_test(async t => {
|
||||
const SCOPE = "resources/import-scripts-resource-map";
|
||||
const SCRIPT = "resources/import-scripts-resource-map-worker.js";
|
||||
await service_worker_unregister(t, SCOPE);
|
||||
const registration = await navigator.serviceWorker.register(SCRIPT, {
|
||||
scope: SCOPE
|
||||
});
|
||||
await registration.unregister();
|
||||
}, "import the same script URL multiple times");
|
||||
|
||||
promise_test(async t => {
|
||||
const SCOPE = "resources/import-scripts-diff-resource-map";
|
||||
const SCRIPT = "resources/import-scripts-diff-resource-map-worker.js";
|
||||
await service_worker_unregister(t, SCOPE);
|
||||
const registration = await navigator.serviceWorker.register(SCRIPT, {
|
||||
scope: SCOPE
|
||||
});
|
||||
await registration.unregister();
|
||||
}, "call importScripts() with multiple arguments");
|
||||
</script>
|
||||
</body>
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
importScripts('/resources/testharness.js');
|
||||
|
||||
let echo1 = null;
|
||||
let echo2 = null;
|
||||
let arg1 = 'import-scripts-get.py?output=echo1&msg=test1';
|
||||
let arg2 = 'import-scripts-get.py?output=echo2&msg=test2';
|
||||
|
||||
importScripts(arg1, arg2);
|
||||
assert_equals(echo1, 'test1');
|
||||
assert_equals(echo2, 'test2');
|
|
@ -0,0 +1,6 @@
|
|||
def main(req, res):
|
||||
return ([
|
||||
('Cache-Control', 'no-cache, must-revalidate'),
|
||||
('Pragma', 'no-cache'),
|
||||
('Content-Type', 'application/javascript')],
|
||||
'%s = "%s";\n' % (req.GET['output'], req.GET['msg']))
|
|
@ -1,19 +1,19 @@
|
|||
parameters:
|
||||
channel: preview
|
||||
|
||||
# Should match https://web-platform-tests.org/running-tests/safari.html
|
||||
steps:
|
||||
- ${{ if eq(parameters.channel, 'preview') }}:
|
||||
- script: |
|
||||
# This is equivalent to `Homebrew/homebrew-cask-versions/safari-technology-preview`,
|
||||
# but the raw URL is used to bypass caching.
|
||||
HOMEBREW_NO_AUTO_UPDATE=1 brew cask install https://raw.githubusercontent.com/Homebrew/homebrew-cask-versions/master/Casks/safari-technology-preview.rb
|
||||
# https://web-platform-tests.org/running-tests/safari.html
|
||||
sudo "/Applications/Safari Technology Preview.app/Contents/MacOS/safaridriver" --enable
|
||||
defaults write com.apple.Safari WebKitJavaScriptCanOpenWindowsAutomatically 1
|
||||
defaults write com.apple.SafariTechnologyPreview WebKitJavaScriptCanOpenWindowsAutomatically 1
|
||||
defaults write com.apple.SafariTechnologyPreview ExperimentalServerTimingEnabled 1
|
||||
displayName: 'Install Safari Technology Preview'
|
||||
- ${{ if eq(parameters.channel, 'stable') }}:
|
||||
- script: |
|
||||
# https://web-platform-tests.org/running-tests/safari.html
|
||||
sudo safaridriver --enable
|
||||
defaults write com.apple.Safari WebKitJavaScriptCanOpenWindowsAutomatically 1
|
||||
displayName: 'Configure Safari'
|
||||
|
|
|
@ -11,7 +11,7 @@ class GetUpdatePropertyList(Step):
|
|||
def create(self, state):
|
||||
property_order, boolean_properties = products.load_product_update(
|
||||
state.config, state.product)
|
||||
state.property_order = property_order + state.extra_properties
|
||||
state.property_order = (property_order or []) + state.extra_properties
|
||||
state.boolean_properties = boolean_properties
|
||||
|
||||
|
||||
|
|
|
@ -10,14 +10,22 @@
|
|||
<body>
|
||||
<script>
|
||||
// TrustedURL assignments do not throw.
|
||||
let p = createHTML_policy(window, 1);
|
||||
test(t => {
|
||||
document.body.innerText = '';
|
||||
let p = createHTML_policy(window, 1);
|
||||
let html = p.createHTML(INPUTS.HTML);
|
||||
document.write(html);
|
||||
assert_equals(document.body.innerText, RESULTS.HTML);
|
||||
}, "document.write with html assigned via policy (successful URL transformation).");
|
||||
|
||||
// TrustedURL assignments do not throw. (Now for writeln.)
|
||||
test(t => {
|
||||
document.body.innerText = '';
|
||||
let html = p.createHTML(INPUTS.HTML);
|
||||
document.writeln(html);
|
||||
assert_equals(document.body.innerText, RESULTS.HTML);
|
||||
}, "document.writeln with html assigned via policy (successful URL transformation).");
|
||||
|
||||
// String assignments throw.
|
||||
test(t => {
|
||||
const old = document.body.innerText;
|
||||
|
@ -27,6 +35,15 @@
|
|||
assert_equals(document.body.innerText, old);
|
||||
}, "`document.write(string)` throws");
|
||||
|
||||
// String assignments throw. (Now for writeln.)
|
||||
test(t => {
|
||||
const old = document.body.innerText;
|
||||
assert_throws(new TypeError(), _ => {
|
||||
document.writeln('A string');
|
||||
});
|
||||
assert_equals(document.body.innerText, old);
|
||||
}, "`document.writeln(string)` throws");
|
||||
|
||||
// Null assignment throws.
|
||||
test(t => {
|
||||
const old = document.body.innerText;
|
||||
|
@ -35,4 +52,30 @@
|
|||
});
|
||||
assert_equals(document.body.innerText, old);
|
||||
}, "`document.write(null)` throws");
|
||||
|
||||
// Null assignment throws. (Now for writeln.)
|
||||
test(t => {
|
||||
const old = document.body.innerText;
|
||||
assert_throws(new TypeError(), _ => {
|
||||
document.writeln(null);
|
||||
});
|
||||
assert_equals(document.body.innerText, old);
|
||||
}, "`document.writeln(null)` throws");
|
||||
|
||||
let default_policy = TrustedTypes.createPolicy('default',
|
||||
{ createHTML: createHTMLJS }, true );
|
||||
|
||||
// Default policy works.
|
||||
test(t => {
|
||||
document.body.innerText = '';
|
||||
document.write(INPUTS.HTML);
|
||||
assert_equals(document.body.innerText, RESULTS.HTML);
|
||||
}, "`document.write(string)` observes default policy");
|
||||
|
||||
// Default policy works. (Now for writeln.)
|
||||
test(t => {
|
||||
document.body.innerText = '';
|
||||
document.writeln(INPUTS.HTML);
|
||||
assert_equals(document.body.innerText, RESULTS.HTML);
|
||||
}, "`document.writeln(string)` observes default policy");
|
||||
</script>
|
||||
|
|
|
@ -1,3 +1,15 @@
|
|||
/**
|
||||
* `t` should be a function that takes at least three arguments:
|
||||
*
|
||||
* - the name of the test;
|
||||
* - the expected error (to be passed to `assert_throws` or similar);
|
||||
* - a function that takes a `WasmModuleBuilder` and initializes it;
|
||||
* - (optionally) an options object.
|
||||
*
|
||||
* The function is expected to create a test that checks if instantiating a
|
||||
* module with the result of the `WasmModuleBuilder` and the options object
|
||||
* (if any) yields the correct error.
|
||||
*/
|
||||
function test_bad_imports(t) {
|
||||
for (const value of [null, true, "", Symbol(), 1, 0.1, NaN]) {
|
||||
t(`Non-object imports argument: ${format_value(value)}`,
|
||||
|
@ -15,7 +27,7 @@ function test_bad_imports(t) {
|
|||
builder => {
|
||||
builder.addImport("module", "fn", kSig_v_v);
|
||||
},
|
||||
value);
|
||||
imports);
|
||||
}
|
||||
|
||||
t(`Missing imports argument`,
|
||||
|
|
|
@ -64,9 +64,9 @@ promise_test(t => {
|
|||
return promise_rejects(t, new WebAssembly.CompileError(), WebAssembly.compile(buffer));
|
||||
}, "Empty buffer");
|
||||
|
||||
test(() => {
|
||||
promise_test(t => {
|
||||
const buffer = new Uint8Array(Array.from(emptyModuleBinary).concat([0, 0]));
|
||||
assert_throws(new WebAssembly.CompileError(), () => WebAssembly.compile(buffer));
|
||||
return promise_rejects(t, new WebAssembly.CompileError(), WebAssembly.compile(buffer));
|
||||
}, "Invalid code");
|
||||
|
||||
promise_test(() => {
|
||||
|
|
|
@ -76,6 +76,64 @@ for (const [name, fn] of instanceTestFactory) {
|
|||
}, `${name}: Module argument`);
|
||||
}
|
||||
|
||||
promise_test(() => {
|
||||
const builder = new WasmModuleBuilder();
|
||||
builder.addImportedGlobal("module", "global", kWasmI32);
|
||||
const buffer = builder.toBuffer();
|
||||
const order = [];
|
||||
|
||||
const imports = {
|
||||
get module() {
|
||||
order.push("module getter");
|
||||
return {
|
||||
get global() {
|
||||
order.push("global getter");
|
||||
return 0;
|
||||
},
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
const expected = [
|
||||
"module getter",
|
||||
"global getter",
|
||||
];
|
||||
const p = WebAssembly.instantiate(buffer, imports);
|
||||
assert_array_equals(order, []);
|
||||
return p.then(result => {
|
||||
assert_WebAssemblyInstantiatedSource(result);
|
||||
assert_array_equals(order, expected);
|
||||
});
|
||||
}, "Synchronous options handling: Buffer argument");
|
||||
|
||||
promise_test(() => {
|
||||
const builder = new WasmModuleBuilder();
|
||||
builder.addImportedGlobal("module", "global", kWasmI32);
|
||||
const buffer = builder.toBuffer();
|
||||
const module = new WebAssembly.Module(buffer);
|
||||
const order = [];
|
||||
|
||||
const imports = {
|
||||
get module() {
|
||||
order.push("module getter");
|
||||
return {
|
||||
get global() {
|
||||
order.push("global getter");
|
||||
return 0;
|
||||
},
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
const expected = [
|
||||
"module getter",
|
||||
"global getter",
|
||||
];
|
||||
const p = WebAssembly.instantiate(module, imports);
|
||||
assert_array_equals(order, expected);
|
||||
return p.then(instance => assert_Instance(instance, {}));
|
||||
}, "Synchronous options handling: Module argument");
|
||||
|
||||
promise_test(t => {
|
||||
const buffer = new Uint8Array();
|
||||
return promise_rejects(t, new WebAssembly.CompileError(), WebAssembly.instantiate(buffer));
|
||||
|
|
|
@ -11,9 +11,7 @@ def main(request, response):
|
|||
if token is not None:
|
||||
request.server.stash.put(token, "1")
|
||||
status = (401, 'Unauthorized')
|
||||
headers = [('WWW-Authenticate', 'Basic realm="test"'),
|
||||
('XHR-USER', expected_user_name),
|
||||
('SES-USER', session_user)]
|
||||
headers = [('WWW-Authenticate', 'Basic realm="test"')]
|
||||
return status, headers, 'FAIL (should be transparent)'
|
||||
else:
|
||||
if request.server.stash.take(token) == "1":
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue