diff options
Diffstat (limited to 'testing/web-platform/tests/service-workers/service-worker/resources/controlled-frame-postMessage.html')
-rw-r--r-- | testing/web-platform/tests/service-workers/service-worker/resources/controlled-frame-postMessage.html | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/testing/web-platform/tests/service-workers/service-worker/resources/controlled-frame-postMessage.html b/testing/web-platform/tests/service-workers/service-worker/resources/controlled-frame-postMessage.html new file mode 100644 index 0000000000..c4428e88a3 --- /dev/null +++ b/testing/web-platform/tests/service-workers/service-worker/resources/controlled-frame-postMessage.html @@ -0,0 +1,39 @@ +<html> +<body> +<script> +var messageData; +function registerMessage() +{ + navigator.serviceWorker.onmessage = (e) => { + if (window.messageData === undefined) + window.messageData = e.data; + } +} + +function listenToMessages() +{ + messageData = []; + setTimeout(() => { + navigator.serviceWorker.addEventListener("message", (e) => { + messageData.push(e.data); + }, { once:true }); + }, 500); + setTimeout(() => { + navigator.serviceWorker.onmessage = (e) => { + messageData.push(e.data); + }; + }, 1000); +} + +if (window.location.search === "?repeatMessages") { + setTimeout(() => { + registerMessage(); + }, 500); +} else if (window.location.search.includes("listener")) { + listenToMessages(); +} else { + registerMessage(); +} +</script> +</body> +</html> |