summaryrefslogtreecommitdiffstats
path: root/dom/tests/mochitest/fetch/sw_reroute.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/tests/mochitest/fetch/sw_reroute.js')
-rw-r--r--dom/tests/mochitest/fetch/sw_reroute.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/dom/tests/mochitest/fetch/sw_reroute.js b/dom/tests/mochitest/fetch/sw_reroute.js
new file mode 100644
index 000000000..11ad7b76e
--- /dev/null
+++ b/dom/tests/mochitest/fetch/sw_reroute.js
@@ -0,0 +1,31 @@
+var gRegistration;
+
+function testScript(script) {
+ function setupSW(registration) {
+ gRegistration = registration;
+
+ var iframe = document.createElement("iframe");
+ iframe.src = "reroute.html?" + script.replace(".js", "");
+ document.body.appendChild(iframe);
+ }
+
+ SpecialPowers.pushPrefEnv({
+ "set": [["dom.serviceWorkers.enabled", true],
+ ["dom.serviceWorkers.testing.enabled", true],
+ ["dom.serviceWorkers.exemptFromPerDomainMax", true]]
+ }, function() {
+ navigator.serviceWorker.ready.then(setupSW);
+ var scriptURL = location.href.includes("sw_empty_reroute.html")
+ ? "empty.js" : "reroute.js";
+ navigator.serviceWorker.register(scriptURL, {scope: "/"});
+ });
+}
+
+function finishTest() {
+ gRegistration.unregister().then(SimpleTest.finish, function(e) {
+ dump("unregistration failed: " + e + "\n");
+ SimpleTest.finish();
+ });
+}
+
+SimpleTest.waitForExplicitFinish();