tor-browser

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

uncontrolled-page.https.html (1290B)


      1 <!DOCTYPE html>
      2 <title>Service Worker: Registration</title>
      3 <script src="/resources/testharness.js"></script>
      4 <script src="/resources/testharnessreport.js"></script>
      5 <script src="resources/test-helpers.sub.js"></script>
      6 <script>
      7 function fetch_url(url) {
      8  return new Promise(function(resolve, reject) {
      9      var request = new XMLHttpRequest();
     10      request.addEventListener('load', function(event) {
     11          if (request.status == 200)
     12            resolve(request.response);
     13          else
     14            reject(Error(request.statusText));
     15        });
     16      request.open('GET', url);
     17      request.send();
     18    });
     19 }
     20 var worker = 'resources/fail-on-fetch-worker.js';
     21 
     22 promise_test(function(t) {
     23    var scope = 'resources/scope/uncontrolled-page/';
     24    return service_worker_unregister_and_register(t, worker, scope)
     25      .then(function(reg) {
     26          t.add_cleanup(function() {
     27              return service_worker_unregister(t, scope);
     28            });
     29 
     30          return wait_for_state(t, reg.installing, 'activated');
     31        })
     32      .then(function() {
     33          return fetch_url('resources/simple.txt');
     34        })
     35      .then(function(text) {
     36          assert_equals(text, 'a simple text file\n');
     37        });
     38  }, 'Fetch events should not go through uncontrolled page.');
     39 </script>