tor-browser

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

test_cache2-15-conditional-304.js (1448B)


      1 "use strict";
      2 
      3 function run_test() {
      4  do_get_profile();
      5 
      6  // Open for write, write
      7  asyncOpenCacheEntry(
      8    "http://304/",
      9    "disk",
     10    Ci.nsICacheStorage.OPEN_NORMALLY,
     11    null,
     12    new OpenCallback(NEW, "31m", "31d", function () {
     13      // Open normally but wait for validation from the server
     14      asyncOpenCacheEntry(
     15        "http://304/",
     16        "disk",
     17        Ci.nsICacheStorage.OPEN_NORMALLY,
     18        null,
     19        new OpenCallback(REVAL, "31m", "31d", function (entry) {
     20          // emulate 304 from the server
     21          executeSoon(function () {
     22            entry.setValid(); // this will trigger OpenCallbacks bellow
     23          });
     24        })
     25      );
     26 
     27      var mc = new MultipleCallbacks(3, finish_cache2_test);
     28 
     29      asyncOpenCacheEntry(
     30        "http://304/",
     31        "disk",
     32        Ci.nsICacheStorage.OPEN_NORMALLY,
     33        null,
     34        new OpenCallback(NORMAL, "31m", "31d", function () {
     35          mc.fired();
     36        })
     37      );
     38      asyncOpenCacheEntry(
     39        "http://304/",
     40        "disk",
     41        Ci.nsICacheStorage.OPEN_NORMALLY,
     42        null,
     43        new OpenCallback(NORMAL, "31m", "31d", function () {
     44          mc.fired();
     45        })
     46      );
     47      asyncOpenCacheEntry(
     48        "http://304/",
     49        "disk",
     50        Ci.nsICacheStorage.OPEN_NORMALLY,
     51        null,
     52        new OpenCallback(NORMAL, "31m", "31d", function () {
     53          mc.fired();
     54        })
     55      );
     56    })
     57  );
     58 
     59  do_test_pending();
     60 }