summaryrefslogtreecommitdiffstats
path: root/dom/workers/test/serviceworkers/unresolved_fetch_worker.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/workers/test/serviceworkers/unresolved_fetch_worker.js')
-rw-r--r--dom/workers/test/serviceworkers/unresolved_fetch_worker.js19
1 files changed, 19 insertions, 0 deletions
diff --git a/dom/workers/test/serviceworkers/unresolved_fetch_worker.js b/dom/workers/test/serviceworkers/unresolved_fetch_worker.js
new file mode 100644
index 000000000..71fbad781
--- /dev/null
+++ b/dom/workers/test/serviceworkers/unresolved_fetch_worker.js
@@ -0,0 +1,19 @@
+var keepPromiseAlive;
+onfetch = function(event) {
+ event.waitUntil(
+ clients.matchAll()
+ .then(clients => {
+ clients.forEach(client => {
+ client.postMessage("continue");
+ });
+ })
+ );
+
+ // Never resolve, and keep it alive on our global so it can't get GC'ed and
+ // make this test weird and intermittent.
+ event.respondWith((keepPromiseAlive = new Promise(function(res, rej) {})));
+}
+
+onactivate = function(event) {
+ event.waitUntil(clients.claim());
+}