tor-browser

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

window_worker_xhr_3rdparty.html (1706B)


      1 <!--
      2  Any copyright is dedicated to the Public Domain.
      3  http://creativecommons.org/publicdomain/zero/1.0/
      4 -->
      5 <!DOCTYPE HTML>
      6 <html>
      7 <!--
      8 Tests of DOM Worker Threads XHR(Bug 450452 )
      9 -->
     10 <body>
     11 <div id="content" style="display: none"></div>
     12 <script class="testbody" type="text/javascript">
     13 
     14  function ok(a, msg) {
     15    opener.postMessage({type: "test", test: !!a, msg }, "*");
     16  }
     17 
     18  function is(a, b, msg) {
     19    ok(a === b, msg);
     20  }
     21 
     22  function finish() {
     23    opener.postMessage({type: "finish" }, "*");
     24  }
     25 
     26  var worker = new Worker("xhr_worker.js");
     27 
     28  var gotUploadLoad = false, gotLoadend = false;
     29 
     30  worker.onmessage = function(event) {
     31    is(event.target, worker);
     32    var args = event.data;
     33    switch (args.type) {
     34      case "progress": {
     35        ok(parseInt(args.current) <= parseInt(args.total));
     36        break;
     37      }
     38      case "error": {
     39        ok(false, "XHR error: " + args.error);
     40        break;
     41      }
     42      case "upload.load": {
     43        gotUploadLoad = true;
     44        break;
     45      }
     46      case "load": {
     47        ok(gotUploadLoad, "Should have gotten upload load event");
     48        gotLoadend = true;
     49        is(args.data, "a=cookie_is_set", "correct data");
     50        document.getElementById("content").textContent = args.data;
     51        break;
     52      }
     53      case "loadend": {
     54        ok(gotLoadend, "Should have gotten load.");
     55        finish();
     56        break;
     57      }
     58      default: {
     59        ok(false, "Unexpected message");
     60        finish();
     61      }
     62    }
     63  };
     64 
     65  worker.onerror = function(event) {
     66    is(event.target, worker);
     67    ok(false, "Worker had an error:" + event.message);
     68    finish();
     69  }
     70 
     71  worker.postMessage("worker_file_getcookie.sjs");
     72 
     73 </script>
     74 </body>
     75 </html>