summaryrefslogtreecommitdiffstats
path: root/test/wpt/tests/fetch/api/request/destination/resources/fetch-destination-worker-iframe.js
diff options
context:
space:
mode:
Diffstat (limited to 'test/wpt/tests/fetch/api/request/destination/resources/fetch-destination-worker-iframe.js')
-rw-r--r--test/wpt/tests/fetch/api/request/destination/resources/fetch-destination-worker-iframe.js20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/wpt/tests/fetch/api/request/destination/resources/fetch-destination-worker-iframe.js b/test/wpt/tests/fetch/api/request/destination/resources/fetch-destination-worker-iframe.js
new file mode 100644
index 0000000..7634583
--- /dev/null
+++ b/test/wpt/tests/fetch/api/request/destination/resources/fetch-destination-worker-iframe.js
@@ -0,0 +1,20 @@
+self.addEventListener('fetch', function(event) {
+ if (event.request.url.includes('dummy')) {
+ event.waitUntil(async function() {
+ let destination = new URL(event.request.url).searchParams.get("dest");
+ let clients = await self.clients.matchAll({"includeUncontrolled": true});
+ clients.forEach(function(client) {
+ if (client.url.includes("fetch-destination-iframe")) {
+ if (event.request.destination == destination) {
+ client.postMessage("PASS");
+ } else {
+ client.postMessage("FAIL");
+ }
+ }
+ })
+ }());
+ }
+ event.respondWith(fetch(event.request));
+});
+
+