mirror of
https://github.com/servo/servo.git
synced 2025-08-03 12:40:06 +01:00
Update web-platform-tests to revision fb898b46adaf656c9807ed0b8adb39d84162cb98
This commit is contained in:
parent
6a4e6174a7
commit
eed68f662b
222 changed files with 12791 additions and 14492 deletions
|
@ -0,0 +1,73 @@
|
|||
<!--
|
||||
Test same-document navigation inside an srcdoc iframe using location.hash
|
||||
-->
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/resources/testdriver.js"></script>
|
||||
<script src="/resources/testdriver-vendor.js"></script>
|
||||
<script>
|
||||
async function test() {
|
||||
// Wait until 'document' is available.
|
||||
await new Promise(resolve => window.addEventListener('load', resolve));
|
||||
|
||||
// Create an iframe, wait until is is loaded.
|
||||
let iframe = document.createElement('iframe');
|
||||
await new Promise(resolve => {
|
||||
iframe.srcdoc = "srcdoc document";
|
||||
iframe.onload = resolve;
|
||||
document.body.appendChild(iframe);
|
||||
});
|
||||
|
||||
assert_equals(iframe.contentDocument.body.innerText, "srcdoc document");
|
||||
assert_equals(iframe.contentWindow.location.href, "about:srcdoc");
|
||||
|
||||
function iframeHashChanged() {
|
||||
return new Promise(resolve => {
|
||||
iframe.contentWindow.onhashchange = resolve;
|
||||
})
|
||||
}
|
||||
|
||||
// 1) hash = "1".
|
||||
{
|
||||
let hash_changed = iframeHashChanged();
|
||||
await test_driver.bless("hash = '1'", () => {
|
||||
iframe.contentWindow.location.hash = "1";
|
||||
});
|
||||
await hash_changed;
|
||||
assert_equals(iframe.contentWindow.location.href, "about:srcdoc#1");
|
||||
}
|
||||
|
||||
// 2) hash = "2".
|
||||
{
|
||||
let hash_changed = iframeHashChanged();
|
||||
await test_driver.bless("hash = '2'", () => {
|
||||
iframe.contentWindow.location.hash = "2";
|
||||
});
|
||||
await hash_changed;
|
||||
assert_equals(iframe.contentWindow.location.href, "about:srcdoc#2");
|
||||
}
|
||||
|
||||
// 3) history.back().
|
||||
{
|
||||
let hash_changed = iframeHashChanged();
|
||||
await test_driver.bless("history.back()", () => {
|
||||
history.back();
|
||||
});
|
||||
await hash_changed;
|
||||
assert_equals(iframe.contentWindow.location.href, "about:srcdoc#1");
|
||||
}
|
||||
|
||||
// 4) history.forward().
|
||||
{
|
||||
let hash_changed = iframeHashChanged();
|
||||
await test_driver.bless("history.forward()", () => {
|
||||
history.forward();
|
||||
});
|
||||
await hash_changed;
|
||||
assert_equals(iframe.contentWindow.location.href, "about:srcdoc#2");
|
||||
}
|
||||
|
||||
done();
|
||||
}
|
||||
test();
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue