tor-browser

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

service-worker.js (671B)


      1 'use strict';
      2 importScripts('/resources/testharness.js', 'helpers.js');
      3 
      4 onmessage = msg => {
      5  const client = msg.source;
      6  if (msg.data === 'SEND') {
      7    sendingTest(client);
      8  } else {
      9    receivingTest(msg, client);
     10  }
     11 };
     12 
     13 function sendingTest(client) {
     14  const orig = createOriginalReadableStream();
     15  try {
     16    client.postMessage(orig, [orig]);
     17  } catch (e) {
     18    client.postMessage(e.message);
     19  }
     20 }
     21 
     22 function receivingTest(msg, client) {
     23  try {
     24    msg.waitUntil(testMessage(msg)
     25                  .then(() => client.postMessage('OK'))
     26                  .catch(e => client.postMessage(`BAD: ${e}`)));
     27  } catch (e) {
     28    client.postMessage(`BAD: ${e}`);
     29  }
     30 }