summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/service-workers/service-worker/resources/dummy-worker-interceptor.js
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/service-workers/service-worker/resources/dummy-worker-interceptor.js')
-rw-r--r--testing/web-platform/tests/service-workers/service-worker/resources/dummy-worker-interceptor.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/testing/web-platform/tests/service-workers/service-worker/resources/dummy-worker-interceptor.js b/testing/web-platform/tests/service-workers/service-worker/resources/dummy-worker-interceptor.js
new file mode 100644
index 000000000..43244e1d9
--- /dev/null
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/dummy-worker-interceptor.js
@@ -0,0 +1,21 @@
+importScripts('get-host-info.sub.js');
+
+var worker_text = 'postMessage("worker loading intercepted by service worker"); ';
+
+self.onfetch = function(event) {
+ if (event.request.url.indexOf('synthesized') != -1) {
+ event.respondWith(new Response(worker_text));
+ } else if (event.request.url.indexOf('same-origin') != -1) {
+ event.respondWith(fetch('dummy-worker-script.py'));
+ } else if (event.request.url.indexOf('cors') != -1) {
+ var path = (new URL('dummy-worker-script.py', self.location)).pathname;
+ var url = get_host_info()['HTTPS_REMOTE_ORIGIN'] + path;
+ var mode = "no-cors";
+ if (event.request.url.indexOf('no-cors') == -1) {
+ url += '?ACAOrigin=*';
+ mode = "cors";
+ }
+ event.respondWith(fetch(url, { mode: mode }));
+ }
+};
+