tor-browser

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

event-upload-progress-crossorigin.any.js (1023B)


      1 // META: title=XMLHttpRequest: upload progress event for cross-origin requests
      2 // META: script=/common/get-host-info.sub.js
      3 
      4 const remote = get_host_info().HTTP_REMOTE_ORIGIN + "/xhr/resources/corsenabled.py",
      5  redirect = "resources/redirect.py?code=307&location=" + remote;
      6 
      7 [remote, redirect].forEach(url => {
      8  async_test(test => {
      9    const client = new XMLHttpRequest();
     10    client.upload.onprogress = test.step_func_done()
     11    client.onload = test.unreached_func()
     12    client.open("POST", url)
     13    client.send("On time: " + url)
     14  }, "Upload events registered on time (" + url + ")");
     15 });
     16 
     17 [remote, redirect].forEach(url => {
     18  async_test(test => {
     19    const client = new XMLHttpRequest();
     20    client.onload = test.step_func_done();
     21    client.open("POST", url);
     22    client.send("Too late: " + url);
     23    client.upload.onloadstart = test.unreached_func(); // registered too late
     24    client.upload.onprogress = test.unreached_func(); // registered too late
     25  }, "Upload events registered too late (" + url + ")");
     26 });