Update web-platform-tests to revision 3137d1d2d7757366a69f8a449b458b5057e0e81e

This commit is contained in:
Ms2ger 2016-12-28 09:51:21 +01:00
parent 81ca858678
commit d6ba94ca28
2339 changed files with 89274 additions and 9328 deletions

View file

@ -0,0 +1,56 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>Meta refresh is blocked by the allow-scripts sandbox flag at its creation time, not when refresh comes due</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<link rel="help" href="https://html.spec.whatwg.org/multipage/semantics.html#attr-meta-http-equiv-refresh">
<div id="log"></div>
<script>
"use strict";
const sourceIFrame = document.createElement("iframe");
sourceIFrame.setAttribute("sandbox", "allow-same-origin");
const destIFrame = document.createElement("iframe");
let sourceLoadCount = 0;
let destLoadCount = 0;
sourceIFrame.onload = () => {
++sourceLoadCount;
if (sourceLoadCount === 2) {
assert_unreached("The iframe from which the meta came from must not refresh");
}
maybeStartTest();
};
destIFrame.onload = () => {
++destLoadCount;
if (destLoadCount === 2) {
assert_unreached("The iframe into which the meta was moved must not refresh");
}
maybeStartTest();
};
function maybeStartTest() {
if (sourceLoadCount === 1 && destLoadCount === 1) {
// Test that no refreshes occur within 3 seconds
step_timeout(done, 3000);
const meta = sourceIFrame.contentDocument.querySelector("meta");
destIFrame.contentDocument.body.appendChild(meta);
}
}
sourceIFrame.src = "support/refresh.sub.html?input=" + encodeURIComponent("1; url=foo");
destIFrame.src = "support/ufoo";
document.body.appendChild(sourceIFrame);
document.body.appendChild(destIFrame);
</script>

View file

@ -0,0 +1,54 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>Meta refresh of the original iframe is not blocked if moved into a sandboxed iframe</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<link rel="help" href="https://html.spec.whatwg.org/multipage/semantics.html#attr-meta-http-equiv-refresh">
<div id="log"></div>
<script>
"use strict";
const sourceIFrame = document.createElement("iframe");
const destIFrame = document.createElement("iframe");
destIFrame.setAttribute("sandbox", "allow-same-origin");
let sourceLoadCount = 0;
let destLoadCount = 0;
sourceIFrame.onload = () => {
++sourceLoadCount;
if (sourceLoadCount === 2) {
assert_equals(sourceIFrame.contentDocument.body.textContent.trim(), "foo");
done();
}
maybeStartTest();
};
destIFrame.onload = () => {
++destLoadCount;
if (destLoadCount === 2) {
assert_unreached("The iframe into which the meta was moved must not refresh");
}
maybeStartTest();
};
function maybeStartTest() {
if (sourceLoadCount === 1 && destLoadCount === 1) {
const meta = sourceIFrame.contentDocument.querySelector("meta");
destIFrame.contentDocument.body.appendChild(meta);
}
}
sourceIFrame.src = "support/refresh.sub.html?input=" + encodeURIComponent("1; url=foo");
destIFrame.src = "support/ufoo";
document.body.appendChild(sourceIFrame);
document.body.appendChild(destIFrame);
</script>

View file

@ -0,0 +1,30 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>Meta refresh applies even when dynamically appended</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<link rel="help" href="https://html.spec.whatwg.org/multipage/semantics.html#pragma-directives">
<div id="log"></div>
<script>
"use strict";
const iframe = document.createElement("iframe");
let loadCount = 0;
iframe.onload = () => {
++loadCount;
const iDocument = iframe.contentDocument;
if (loadCount === 1) {
iDocument.body.innerHTML = `<meta http-equiv="refresh" content="1; url=foo">`;
} else if (loadCount === 2) {
assert_equals(iDocument.body.textContent.trim(), "foo");
done();
}
};
iframe.src = "support/ufoo";
document.body.appendChild(iframe);
</script>

View file

@ -0,0 +1,51 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>When moving between documents, must refresh the original document</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<link rel="help" href="https://html.spec.whatwg.org/multipage/semantics.html#attr-meta-http-equiv-refresh">
<div id="log"></div>
<script>
"use strict";
const sourceIFrame = document.createElement("iframe");
const destIFrame = document.createElement("iframe");
let sourceLoadCount = 0;
let destLoadCount = 0;
sourceIFrame.onload = () => {
++sourceLoadCount;
if (sourceLoadCount === 2) {
assert_equals(sourceIFrame.contentDocument.body.textContent.trim(), "foo");
done();
}
maybeStartTest();
};
destIFrame.onload = () => {
++destLoadCount;
if (destLoadCount === 2) {
assert_unreached("The iframe into which the meta was moved must not refresh");
}
maybeStartTest();
};
function maybeStartTest() {
if (sourceLoadCount === 1 && destLoadCount === 1) {
const meta = sourceIFrame.contentDocument.querySelector("meta");
destIFrame.contentDocument.body.appendChild(meta);
}
}
sourceIFrame.src = "support/refresh.sub.html?input=" + encodeURIComponent("1; url=foo");
destIFrame.src = "support/ufoo";
document.body.appendChild(sourceIFrame);
document.body.appendChild(destIFrame);
</script>

View file

@ -0,0 +1,36 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>Meta refresh only applies while in the document tree, not in a shadow tree</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<link rel="help" href="https://html.spec.whatwg.org/multipage/semantics.html#pragma-directives">
<div id="log"></div>
<script>
"use strict";
const iframe = document.createElement("iframe");
iframe.src = "support/ufoo";
let loadCount = 0;
iframe.onload = () => {
++loadCount;
const iDocument = iframe.contentDocument;
if (loadCount === 1) {
const div = iDocument.createElement("div");
assert_true('attachShadow' in div, 'attachShadow support');
const shadowRoot = div.attachShadow({ mode: "open" });
shadowRoot.innerHTML = `<meta http-equiv="refresh" content="1; url=foo">`;
iDocument.body.appendChild(div);
// Want to make sure no refreshes happen
step_timeout(done, 3000);
} else {
assert_unreached("Got more than 1 load event");
}
};
document.body.appendChild(iframe);
</script>

View file

@ -0,0 +1,18 @@
<!doctype html>
<title>Test aspects of the reset event</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
async_test((t) => {
var form = document.createElement("form")
form.onreset = t.step_func_done((e) => {
assert_true(e.bubbles)
assert_true(e.cancelable)
assert_true(e.isTrusted)
assert_equals(e.target, form)
})
form.reset()
assert_unreached()
})
</script>

View file

@ -38,9 +38,9 @@ test(function () {
}, "The form attribute must return the fieldset's form owner");
test(function () {
assert_true(children_outer instanceof HTMLFormControlsCollection,
"The elements attribute should be an HTMLFormControlsCollection object");
}, "The elements must return an HTMLFormControlsCollection object");
assert_equals(children_outer.constructor, HTMLCollection,
"The elements attribute should be an HTMLCollection object");
}, "The elements must return an HTMLCollection object");
test(function () {
var fs_inner = document.getElementById("fs_inner");

View file

@ -10,7 +10,7 @@
<input type=radio name=group1 id=radio2>
<input type=radio name=groüp2 id=radio3>
<input type=radio name=groÜp2 id=radio4>
<input type=radio name=groüp2 id=radio4>
<input type=radio id=radio5>
<input type=radio id=radio6 disabled>
@ -23,7 +23,6 @@
<input type=radio name=group4 id=radio10>
<input type=radio name=group4 id=radio11 checked>
<script>
var radio1 = document.getElementById('radio1'),
radio2 = document.getElementById('radio2'),
@ -64,7 +63,7 @@
radio4.checked = true;
assert_false(radio3.checked);
assert_true(radio4.checked);
}, "radio inputs with name attributes groüp2 and groÜp2 belong to the same radio button group");
}, "radio inputs with non-ASCII name attributes belong to the same radio button group");
test(function(){
assert_true(radio8.checked);

View file

@ -47,20 +47,21 @@ test(function () {
//dateTime
test(function () {
assert_equals( makeTime('2000-02-01T03:04:05Z','2001-02-01T03:04:05Z').dateTime, '2000-02-01T03:04:05Z' );
}, 'the datetime attribute should be reflected by the dateTime IDL property');
}, 'the datetime attribute should be reflected by the .dateTime property');
test(function () {
assert_equals( typeof makeTime().dateTime, 'string', 'typeof test' );
assert_equals( makeTime().dateTime, '', 'value test' );
}, 'the dateTime IDL property should default to an empty string');
test(function () {
assert_equals( makeTime(false,false,'2000-02-01T03:04:05Z').dateTime, '2000-02-01T03:04:05Z' );
}, 'the dateTime IDL property should be read/write');
}, 'the dateTime property should be read/write');
test(function () {
assert_equals( makeTime('go fish').dateTime, 'go fish' );
}, 'the datetime attribute should be reflected by the .dateTime property even if it is invalid');
test(function() {
test(function () {
assert_equals( makeTime(false,'2000-02-01T03:04:05Z').dateTime, '' );
}, 'the datetime attribute should not reflect the textContent');
</script>
</body>