mirror of
https://github.com/servo/servo.git
synced 2025-09-06 04:58:21 +01:00
Update web-platform-tests to revision 2d68590d46a990bf28a08d6384a59962d2e56bf6
This commit is contained in:
parent
bc03d32142
commit
ad4cc3691e
135 changed files with 1613 additions and 341 deletions
|
@ -0,0 +1,12 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
</head>
|
||||
<body>
|
||||
navigated document!
|
||||
<script>
|
||||
top.postMessage("navigated", "*");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,12 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
</head>
|
||||
<body>
|
||||
Refreshed document!
|
||||
<script>
|
||||
top.postMessage("refreshed", "*");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,11 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
location.href="document-navigated.html";
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,8 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="refresh" content="0;document-refreshed.html">
|
||||
</head>
|
||||
<body></body>
|
||||
</html>
|
|
@ -0,0 +1,14 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Resource Timing embed navigate - back button navigation</title>
|
||||
<script src="/common/get-host-info.sub.js"></script>
|
||||
<script src="nested-contexts.js"></script>
|
||||
<script>
|
||||
setup_back_navigation("embed-navigate-back.html");
|
||||
</script>
|
||||
<embed type="text/html">
|
||||
<script>
|
||||
document.getElementsByTagName("embed")[0].src = pre_navigate_url;
|
||||
</script>
|
|
@ -0,0 +1,15 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Resource Timing embed navigate</title>
|
||||
<script src="/common/get-host-info.sub.js"></script>
|
||||
<script src="nested-contexts.js"></script>
|
||||
<script>
|
||||
setup_navigate_test();
|
||||
</script>
|
||||
<div id=log></div>
|
||||
<embed type="text/html">
|
||||
<script>
|
||||
document.getElementsByTagName("embed")[0].src = pre_navigate_url;
|
||||
</script>
|
|
@ -0,0 +1,15 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Resource Timing embed refresh</title>
|
||||
<script src="/common/get-host-info.sub.js"></script>
|
||||
<script src="nested-contexts.js"></script>
|
||||
<script>
|
||||
setup_refresh_test();
|
||||
</script>
|
||||
<div id=log></div>
|
||||
<embed type="text/html">
|
||||
<script>
|
||||
document.getElementsByTagName("embed")[0].src = pre_refresh_url;
|
||||
</script>
|
|
@ -0,0 +1,14 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Resource Timing iframe navigate - back button navigation</title>
|
||||
<script src="/common/get-host-info.sub.js"></script>
|
||||
<script src="nested-contexts.js"></script>
|
||||
<script>
|
||||
setup_back_navigation("iframe-navigate-back.html");
|
||||
</script>
|
||||
<iframe></iframe>
|
||||
<script>
|
||||
document.getElementsByTagName("iframe")[0].src = pre_navigate_url;
|
||||
</script>
|
|
@ -0,0 +1,15 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Resource Timing iframe navigate</title>
|
||||
<script src="/common/get-host-info.sub.js"></script>
|
||||
<script src="nested-contexts.js"></script>
|
||||
<script>
|
||||
setup_navigate_test();
|
||||
</script>
|
||||
<div id=log></div>
|
||||
<iframe></iframe>
|
||||
<script>
|
||||
document.getElementsByTagName("iframe")[0].src = pre_navigate_url;
|
||||
</script>
|
|
@ -0,0 +1,15 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Resource Timing iframe refresh</title>
|
||||
<script src="/common/get-host-info.sub.js"></script>
|
||||
<script src="nested-contexts.js"></script>
|
||||
<script>
|
||||
setup_refresh_test();
|
||||
</script>
|
||||
<div id=log></div>
|
||||
<iframe></iframe>
|
||||
<script>
|
||||
document.getElementsByTagName("iframe")[0].src = pre_refresh_url;
|
||||
</script>
|
|
@ -0,0 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<script>
|
||||
window.onload = function() {history.back();}
|
||||
</script>
|
|
@ -0,0 +1,95 @@
|
|||
let destination = location;
|
||||
if (location.search == "?crossorigin") {
|
||||
const host_info = get_host_info()
|
||||
destination = location.protocol + "//" + host_info["REMOTE_HOST"] + ":" + location.port;
|
||||
}
|
||||
|
||||
const pre_navigate_url = new URL("/resource-timing/resources/document-that-navigates.html", destination).href;
|
||||
const post_navigate_url = new URL("/resource-timing/resources/document-navigated.html", destination).href;
|
||||
const pre_refresh_url = new URL("/resource-timing/resources/document-that-refreshes.html", destination).href;
|
||||
const post_refresh_url = new URL("/resource-timing/resources/document-refreshed.html", destination).href;
|
||||
|
||||
function setup_navigate_or_refresh(type, pre, post) {
|
||||
function verify_document_navigate_not_observable() {
|
||||
let entries = performance.getEntriesByType("resource");
|
||||
let found_first_document = false;
|
||||
for (entry of entries) {
|
||||
if (entry.name == pre) {
|
||||
found_first_document = true;
|
||||
}
|
||||
if (entry.name == post) {
|
||||
opener.postMessage("FAIL - " + type + " document should not be observable", "*");
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (!found_first_document) {
|
||||
opener.postMessage("FAIL - initial document should be observable", "*");
|
||||
return;
|
||||
}
|
||||
opener.postMessage("PASS", "*");
|
||||
}
|
||||
window.addEventListener("message", e=>{
|
||||
if (e.data == type) {
|
||||
verify_document_navigate_not_observable();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function setup_navigate_test() {
|
||||
setup_navigate_or_refresh("navigated", pre_navigate_url, post_navigate_url);
|
||||
}
|
||||
|
||||
function setup_refresh_test() {
|
||||
setup_navigate_or_refresh("refreshed", pre_refresh_url, post_refresh_url);
|
||||
}
|
||||
|
||||
function setup_back_navigation(pushed_url) {
|
||||
function verify_document_navigate_not_observable() {
|
||||
let entries = performance.getEntriesByType("resource");
|
||||
let found_first_document = false;
|
||||
for (entry of entries) {
|
||||
if (entry.name == pre_navigate_url) {
|
||||
found_first_document = true;
|
||||
}
|
||||
if (entry.name == post_navigate_url) {
|
||||
opener.postMessage("FAIL - navigated document exposed", "*");
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (!found_first_document) {
|
||||
opener.postMessage("FAIL - first document not exposed", "*");
|
||||
return;
|
||||
}
|
||||
opener.postMessage("PASS", "*");
|
||||
}
|
||||
window.addEventListener("message", e=>{
|
||||
if (e.data == "navigated") {
|
||||
if (sessionStorage.navigated) {
|
||||
delete sessionStorage.navigated;
|
||||
verify_document_navigate_not_observable();
|
||||
} else {
|
||||
sessionStorage.navigated = true;
|
||||
setTimeout(() => {
|
||||
history.pushState({}, "", pushed_url);
|
||||
location.href="navigate_back.html";
|
||||
}, 0);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function open_test_window(url, message) {
|
||||
promise_test(() => {
|
||||
return new Promise((resolve, reject) => {
|
||||
let openee = window.open(url);
|
||||
addEventListener("message", e => {
|
||||
openee.close();
|
||||
if (e.data == "PASS") {
|
||||
resolve();
|
||||
} else {
|
||||
reject(e.data);
|
||||
}
|
||||
});
|
||||
});
|
||||
}, message);
|
||||
}
|
|
@ -0,0 +1,14 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Resource Timing object navigate - back button navigation</title>
|
||||
<script src="/common/get-host-info.sub.js"></script>
|
||||
<script src="nested-contexts.js"></script>
|
||||
<script>
|
||||
setup_back_navigation("object-navigate-back.html");
|
||||
</script>
|
||||
<object></object>
|
||||
<script>
|
||||
document.getElementsByTagName("object")[0].data = pre_navigate_url;
|
||||
</script>
|
|
@ -0,0 +1,15 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Resource Timing object navigate</title>
|
||||
<script src="/common/get-host-info.sub.js"></script>
|
||||
<script src="nested-contexts.js"></script>
|
||||
<script>
|
||||
setup_navigate_test();
|
||||
</script>
|
||||
<div id=log></div>
|
||||
<object></object>
|
||||
<script>
|
||||
document.getElementsByTagName("object")[0].data = pre_navigate_url;
|
||||
</script>
|
|
@ -0,0 +1,15 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Resource Timing object refresh</title>
|
||||
<script src="/common/get-host-info.sub.js"></script>
|
||||
<script src="nested-contexts.js"></script>
|
||||
<script>
|
||||
setup_refresh_test();
|
||||
</script>
|
||||
<div id=log></div>
|
||||
<object></object>
|
||||
<script>
|
||||
document.getElementsByTagName("object")[0].data = pre_refresh_url;
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue