tor-browser

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

samesite-sw-helper.html (977B)


      1 <!DOCTYPE html>
      2 <meta charset="utf-8">
      3 <title>Navigation Preload Same Site SW registrator</title>
      4 <script src="/resources/testharness.js"></script>
      5 <script src="/resources/testharnessreport.js"></script>
      6 <script src="../../resources/test-helpers.sub.js"></script>
      7 <script>
      8 
      9 /**
     10 *  This is a helper file to register/unregister service worker in a same-site
     11 *  iframe.
     12 **/
     13 
     14 async function messageToParent(msg) {
     15  parent.postMessage(msg, '*');
     16 }
     17 
     18 onmessage = async (e) => {
     19  // t is a , but the helper function needs a test object.
     20  let t = {
     21    step_func: (func) => func,
     22  };
     23  if (e.data === "Register") {
     24    let reg = await service_worker_unregister_and_register(t, "samesite-worker.js", ".");
     25    let worker = reg.installing;
     26    await wait_for_state(t, worker, 'activated');
     27    await messageToParent("SW Registered");
     28  } else if (e.data == "Unregister") {
     29    await service_worker_unregister(t, ".");
     30    await messageToParent("SW Unregistered");
     31  }
     32 }
     33 
     34 </script>