1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-24 22:17:42 +00:00

Tests/LibWeb: Add text tests for navigation

This commit is contained in:
Aliaksandr Kalenik 2023-09-15 01:25:23 +02:00 committed by Andreas Kling
parent ead311eac7
commit 351567a01f
10 changed files with 85 additions and 0 deletions

View file

@ -0,0 +1 @@
Hello from iframe navigated using javascript url

View file

@ -0,0 +1,2 @@
message from test iframe (1)
message from test iframe (2)

View file

@ -0,0 +1,2 @@
Well
Hello friends!

View file

@ -0,0 +1,12 @@
<script src="../include.js"></script>
<script>
asyncTest((done) => {
const iframe = document.querySelector("iframe");
iframe.addEventListener("load", () => {
println(iframe.contentWindow.document.body.innerText);
done();
});
iframe.src = "javascript:'<body>Hello from iframe navigated using javascript url</body>'";
});
</script>
<iframe src="about:blank"></iframe>

View file

@ -0,0 +1,28 @@
<script src="../include.js"></script>
<script>
asyncTest(async done => {
const iframe = document.getElementById("testIframe");
function navigateIframe(src) {
return new Promise(resolve => {
iframe.addEventListener("load", () => {
resolve();
});
iframe.src = src;
});
}
let receivedMessageCount = 0;
window.addEventListener("message", event => {
println(event.data);
receivedMessageCount++;
if (receivedMessageCount === 2) {
done();
}
});
await navigateIframe("iframe-test-content-1.html");
await navigateIframe("iframe-test-content-2.html");
});
</script>
<iframe id="testIframe" src="about:blank"></iframe>

View file

@ -0,0 +1,24 @@
<script src="../include.js"></script>
<script>
asyncTest(async done => {
const iframe = document.getElementById("testIframe");
function navigateIframe(srcdoc) {
return new Promise(resolve => {
iframe.addEventListener("load", () => {
resolve();
});
iframe.srcdoc = srcdoc;
});
}
await navigateIframe("<h1>Well</h1>");
println(iframe.contentWindow.document.body.innerText);
await navigateIframe("<h2>Hello friends!</h2>");
println(iframe.contentWindow.document.body.innerText);
done();
});
</script>
<iframe id="testIframe" src="about:blank"></iframe>

View file

@ -0,0 +1,8 @@
<script src="../include.js"></script>
<script>
if (window.self !== window.top) {
parent.postMessage("message from test iframe (1)", "*");
} else {
test(() => {});
}
</script>

View file

@ -0,0 +1,8 @@
<script src="../include.js"></script>
<script>
if (window.self !== window.top) {
parent.postMessage("message from test iframe (2)", "*");
} else {
test(() => {});
}
</script>