tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

service-worker-unregister.html (1202B)


      1 <!DOCTYPE html>
      2 <script src="/resources/testharness.js"></script>
      3 <script src="/resources/testharnessreport.js"></script>
      4 <script src="/service-workers/service-worker/resources/test-helpers.sub.js"></script>
      5 <script src="/speculation-rules/prerender/resources/utils.js"></script>
      6 <script src="/speculation-rules/prerender/resources/deferred-promise-utils.js"></script>
      7 <body>
      8 <script type="module">
      9 
     10 const params = new URLSearchParams(location.search);
     11 const uid = params.get('uid');
     12 
     13 // The main test page (restriction-service-worker-unregister.https.html) loads
     14 // the initiator page, then the initiator page will prerender itself with the
     15 // `prerendering` parameter.
     16 const isPrerendering = params.has('prerendering');
     17 
     18 if (!isPrerendering) {
     19  loadInitiatorPage();
     20 } else {
     21  const registration =
     22      await navigator.serviceWorker.getRegistration(location.href);
     23 
     24  const prerenderEventCollector = new PrerenderEventCollector();
     25  const promise = registration.unregister()
     26      .then(registration => {
     27        prerenderEventCollector.addEvent('service worker unregistered');
     28      });
     29  prerenderEventCollector.start(
     30      promise, 'ServiceWorkerRegistration.unregister');
     31 }
     32 
     33 </script>
     34 </body>