tor-browser

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

test_bug263127.js (1209B)


      1 "use strict";
      2 
      3 const { HttpServer } = ChromeUtils.importESModule(
      4  "resource://testing-common/httpd.sys.mjs"
      5 );
      6 
      7 var server;
      8 const BUGID = "263127";
      9 
     10 var listener = {
     11  QueryInterface: ChromeUtils.generateQI(["nsIDownloadObserver"]),
     12 
     13  onDownloadComplete(downloader, request, status, file) {
     14    do_test_pending();
     15    server.stop(do_test_finished);
     16 
     17    if (!file) {
     18      do_throw("Download failed");
     19    }
     20 
     21    try {
     22      file.remove(false);
     23    } catch (e) {
     24      do_throw(e);
     25    }
     26 
     27    Assert.ok(!file.exists());
     28 
     29    do_test_finished();
     30  },
     31 };
     32 
     33 function run_test() {
     34  // start server
     35  server = new HttpServer();
     36  server.start(-1);
     37 
     38  // Initialize downloader
     39  var channel = NetUtil.newChannel({
     40    uri: "http://localhost:" + server.identity.primaryPort + "/",
     41    loadUsingSystemPrincipal: true,
     42  });
     43  var targetFile = Services.dirsvc.get("TmpD", Ci.nsIFile);
     44  targetFile.append("bug" + BUGID + ".test");
     45  if (targetFile.exists()) {
     46    targetFile.remove(false);
     47  }
     48 
     49  var downloader = Cc["@mozilla.org/network/downloader;1"].createInstance(
     50    Ci.nsIDownloader
     51  );
     52  downloader.init(listener, targetFile);
     53 
     54  // Start download
     55  channel.asyncOpen(downloader);
     56 
     57  do_test_pending();
     58 }