mirror of
https://github.com/servo/servo.git
synced 2025-08-09 07:25:35 +01:00
Update web-platform-tests to revision 1cee79240e1a6e2df18faa0ed27c7febada1e3fb
This commit is contained in:
parent
74bf0ce5c2
commit
e77be0ce0f
90 changed files with 1854 additions and 260 deletions
|
@ -1,6 +1,6 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title><a download> triggered download in sandbox is allowed by allow-downloads-without-user-activation.</title>
|
||||
<title><a download> triggered download in sandbox is allowed by allow-downloads.</title>
|
||||
<link rel="help" href="https://html.spec.whatwg.org/multipage/#attr-iframe-sandbox">
|
||||
<link rel="help" href="https://html.spec.whatwg.org/multipage/#the-iframe-element">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
|
@ -14,7 +14,7 @@ async_test(t => {
|
|||
const token = "{{$id:uuid()}}";
|
||||
var iframe = document.createElement("iframe");
|
||||
iframe.srcdoc = "<a>Download</a>";
|
||||
iframe.sandbox = "allow-same-origin allow-downloads-without-user-activation";
|
||||
iframe.sandbox = "allow-same-origin allow-downloads";
|
||||
iframe.onload = t.step_func(function () {
|
||||
iframe.contentWindow.addEventListener(
|
||||
"unload", t.unreached_func("Unexpected navigation."));
|
||||
|
@ -26,6 +26,6 @@ async_test(t => {
|
|||
});
|
||||
|
||||
document.body.appendChild(iframe);
|
||||
}, "<a download> triggered download in sandbox is allowed by allow-downloads-without-user-activation.");
|
||||
}, "<a download> triggered download in sandbox is allowed by allow-downloads.");
|
||||
</script>
|
||||
</body>
|
|
@ -1,6 +1,6 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>Navigation resulted download in sandbox is allowed by allow-downloads-without-user-activation.</title>
|
||||
<title>Navigation resulted download in sandbox is allowed by allow-downloads.</title>
|
||||
<meta name="timeout" content="long" />
|
||||
<link rel="help" href="https://html.spec.whatwg.org/multipage/#attr-iframe-sandbox">
|
||||
<link rel="help" href="https://html.spec.whatwg.org/multipage/#the-iframe-element">
|
||||
|
@ -15,7 +15,7 @@ async_test(t => {
|
|||
const token = "{{$id:uuid()}}";
|
||||
var iframe = document.createElement("iframe");
|
||||
iframe.srcdoc = "<a>Download</a>";
|
||||
iframe.sandbox = "allow-same-origin allow-downloads-without-user-activation";
|
||||
iframe.sandbox = "allow-same-origin allow-downloads";
|
||||
iframe.onload = t.step_func(function () {
|
||||
iframe.contentWindow.addEventListener(
|
||||
"unload", t.unreached_func("Unexpected navigation."));
|
||||
|
@ -29,6 +29,6 @@ async_test(t => {
|
|||
});
|
||||
|
||||
document.body.appendChild(iframe);
|
||||
}, "Navigation resulted download in sandbox is allowed by allow-downloads-without-user-activation.");
|
||||
}, "Navigation resulted download in sandbox is allowed by allow-downloads.");
|
||||
</script>
|
||||
</body>
|
|
@ -6,5 +6,7 @@ def main(request, response):
|
|||
else:
|
||||
result = request.POST.first('foo') == 'bar'
|
||||
|
||||
result = result and request.url_parts.query == 'query=1'
|
||||
|
||||
return ([("Content-Type", "text/plain")],
|
||||
"OK" if result else "FAIL")
|
||||
|
|
|
@ -96,7 +96,7 @@ function run_simple_test() {
|
|||
var testframe = document.getElementById("testframe");
|
||||
var testdocument = testframe.contentWindow.document;
|
||||
testdocument.body.innerHTML =
|
||||
"<form id=testform method=post action=\"/html/semantics/forms/form-submission-0/resources/form-submission.py\" enctype=\"" + test_obj.enctype + "\">" +
|
||||
"<form id=testform method=post action=\"/html/semantics/forms/form-submission-0/resources/form-submission.py?query=1\" enctype=\"" + test_obj.enctype + "\">" +
|
||||
test_obj.input +
|
||||
test_obj.submitelement +
|
||||
"</form>";
|
||||
|
|
|
@ -0,0 +1,77 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>summary element: clicking on anchor containing inline element</title>
|
||||
<link rel="author" title="Yu Han" href="mailto:yuzhehan@chromium.org">
|
||||
<link rel="help" href="https://html.spec.whatwg.org/C/#the-summary-element">
|
||||
<link rel="help" href="https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-a-element">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
|
||||
<details id="details_i">
|
||||
<summary>Anchor text is wrapped with <i> tag <a href="#with_i_tag"><i id="with_i">permalink</i></a></summary>
|
||||
<p>asdf</p>
|
||||
</details>
|
||||
|
||||
<details id="details_span">
|
||||
<summary>This one uses <span>. <a href="#with_span_tag"><span id="with_span">permalink</span></a></summary>
|
||||
<p>asdf</p>
|
||||
</details>
|
||||
|
||||
<details id="details_svg">
|
||||
<summary>
|
||||
<svg style="width: 100px;" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
|
||||
<a href="#inside_svg_w_circle">
|
||||
<circle id="svg_circle" cx="50" cy="40" r="35"/>
|
||||
</a>
|
||||
<a href="#inside_svg_w_text">
|
||||
<text id="svg_text" x="50" y="90" text-anchor="middle">
|
||||
<circle>
|
||||
</text>
|
||||
</a>
|
||||
</svg>
|
||||
</summary>
|
||||
<p>asdf</p>
|
||||
</details>
|
||||
|
||||
<script>
|
||||
function testClickingOnInlineElement(detailsId, targetId, expected, testName) {
|
||||
const details = document.getElementById(detailsId);
|
||||
const target = document.getElementById(targetId);
|
||||
const test = async_test(testName);
|
||||
|
||||
const promise = new Promise((resolve, reject) => {
|
||||
window.onhashchange = test.step_func_done(() => {
|
||||
assert_false(details.open);
|
||||
assert_true(location.hash === expected);
|
||||
resolve();
|
||||
});
|
||||
});
|
||||
|
||||
if (target.click) {
|
||||
target.click();
|
||||
}
|
||||
else {
|
||||
// svg element don't have click method
|
||||
target.dispatchEvent(new MouseEvent('click', {
|
||||
view: window,
|
||||
bubbles: true,
|
||||
cancelable: true
|
||||
}));
|
||||
}
|
||||
return promise;
|
||||
};
|
||||
|
||||
async function testAll() {
|
||||
try {
|
||||
await testClickingOnInlineElement("details_i", "with_i", "#with_i_tag", "Expected <a> containing <i> to navigate");
|
||||
await testClickingOnInlineElement("details_span", "with_span", "#with_span_tag", "Expected <a> containing <span> to navigate");
|
||||
await testClickingOnInlineElement("details_svg", "svg_circle", "#inside_svg_w_circle", "Expected <a>, inside svg, containing <circle> to navigate");
|
||||
await testClickingOnInlineElement("details_svg", "svg_text", "#inside_svg_w_text", "Expected <a>, inside svg, containing <text> to navigate");
|
||||
} catch (exception) {
|
||||
assert_unreached("should NOT-THROW exception");
|
||||
}
|
||||
};
|
||||
|
||||
var allTests = async_test("Clicking on anchor with embedded inline element should navigate instead of opening details");
|
||||
testAll().then(()=>{ allTests.done(); });
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue