Files
ladybird/Tests/LibWeb/Text/input/Worker/Worker-script-fetch-referrer.html
Shannon Booth 093ad69f5b Tests/LibWeb: Do not hardcode URL path for echo server tests
Instead, use the URL used by the echo server.
2026-03-23 22:32:43 +01:00

42 lines
1.3 KiB
HTML

<!doctype html>
<script src="../include.js"></script>
<script>
asyncTest(async done => {
const server = httpTestServer();
const workerUrl = await server.createEcho("GET", "/worker-script-fetch-referrer/worker.js", {
status: 200,
headers: {
"Content-Type": "text/javascript",
},
reflect_headers_in_body: true,
body: "postMessage($HEADERS)",
});
const iframeUrl = await server.createEcho("GET", "/worker-script-fetch-referrer/iframe", {
status: 200,
headers: {
"Access-Control-Allow-Origin": "*",
"Content-Type": "text/html",
},
body: `
<!DOCTYPE html>
<script>
history.replaceState(null, "", new URL("/updated-via-history", location.href))
new Worker("${workerUrl}").onmessage = e => window.parent.postMessage(e.data, "*")
<\/script>`,
});
window.onmessage = e => {
const referrer = new URL(e.data["Referer"][0]);
referrer.port = "";
println("Got referrer: " + referrer);
done();
};
document.querySelector("iframe").src = iframeUrl;
});
</script>
<iframe></iframe>