summaryrefslogtreecommitdiffstats
path: root/dom/tests/mochitest/fetch/sw_reroute.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
commit6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch)
treea68f146d7fa01f0134297619fbe7e33db084e0aa /dom/tests/mochitest/fetch/sw_reroute.js
parentInitial commit. (diff)
downloadthunderbird-6bf0a5cb5034a7e684dcc3500e841785237ce2dd.tar.xz
thunderbird-6bf0a5cb5034a7e684dcc3500e841785237ce2dd.zip
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'dom/tests/mochitest/fetch/sw_reroute.js')
-rw-r--r--dom/tests/mochitest/fetch/sw_reroute.js43
1 files changed, 43 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 0000000000..73f4aecae6
--- /dev/null
+++ b/dom/tests/mochitest/fetch/sw_reroute.js
@@ -0,0 +1,43 @@
+var gRegistration;
+var iframe;
+
+function testScript(script) {
+ var scope = "./reroute.html?" + script.replace(".js", "");
+ function setupSW(registration) {
+ gRegistration = registration;
+
+ iframe = document.createElement("iframe");
+ iframe.src = scope;
+ document.body.appendChild(iframe);
+ }
+
+ SpecialPowers.pushPrefEnv(
+ {
+ set: [
+ ["dom.serviceWorkers.enabled", true],
+ ["dom.serviceWorkers.testing.enabled", true],
+ ["dom.serviceWorkers.exemptFromPerDomainMax", true],
+ ["dom.serviceWorkers.idle_timeout", 60000],
+ ],
+ },
+ function () {
+ var scriptURL = location.href.includes("sw_empty_reroute.html")
+ ? "empty.js"
+ : "reroute.js";
+ navigator.serviceWorker
+ .register(scriptURL, { scope })
+ .then(swr => waitForState(swr.installing, "activated", swr))
+ .then(setupSW);
+ }
+ );
+}
+
+function finishTest() {
+ iframe.remove();
+ gRegistration.unregister().then(SimpleTest.finish, function (e) {
+ dump("unregistration failed: " + e + "\n");
+ SimpleTest.finish();
+ });
+}
+
+SimpleTest.waitForExplicitFinish();