netwerk/test/unit/test_cache2-07-visit-memory.js

Wed, 31 Dec 2014 13:27:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 13:27:57 +0100
branch
TOR_BUG_3246
changeset 6
8bccb770b82d
permissions
-rw-r--r--

Ignore runtime configuration files generated during quality assurance.

     1 function run_test()
     2 {
     3   do_get_profile();
     5   if (!newCacheBackEndUsed()) {
     6     do_check_true(true, "This test doesn't run when the old cache back end is used since the behavior is different");
     7     return;
     8   }
    10   // Add entry to the memory storage
    11   var mc = new MultipleCallbacks(5, function() {
    12     // Check it's there by visiting the storage
    13     syncWithCacheIOThread(function() {
    14       var storage = getCacheStorage("memory");
    15       storage.asyncVisitStorage(
    16         new VisitCallback(1, 12, ["http://mem1/"], function() {
    17           storage = getCacheStorage("disk");
    18           storage.asyncVisitStorage(
    19             // Previous tests should store 4 disk entries + 1 memory entry
    20             new VisitCallback(5, 60, ["http://a/", "http://b/", "http://c/", "http://d/", "http://mem1/"], function() {
    21               finish_cache2_test();
    22             }),
    23             true
    24           );
    25         }),
    26         true
    27       );
    28     });
    29   });
    31   asyncOpenCacheEntry("http://mem1/", "memory", Ci.nsICacheStorage.OPEN_NORMALLY, null,
    32     new OpenCallback(NEW, "m1m", "m1d", function(entry) {
    33       asyncOpenCacheEntry("http://mem1/", "memory", Ci.nsICacheStorage.OPEN_NORMALLY, null,
    34         new OpenCallback(NORMAL, "m1m", "m1d", function(entry) {
    35           mc.fired();
    36         })
    37       );
    38     })
    39   );
    41   asyncOpenCacheEntry("http://a/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null,
    42     new OpenCallback(NEW, "a1m", "a1d", function(entry) {
    43       asyncOpenCacheEntry("http://a/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null,
    44         new OpenCallback(NORMAL, "a1m", "a1d", function(entry) {
    45           mc.fired();
    46         })
    47       );
    48     })
    49   );
    51   asyncOpenCacheEntry("http://b/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null,
    52     new OpenCallback(NEW, "a1m", "a1d", function(entry) {
    53       asyncOpenCacheEntry("http://b/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null,
    54         new OpenCallback(NORMAL, "a1m", "a1d", function(entry) {
    55           mc.fired();
    56         })
    57       );
    58     })
    59   );
    61   asyncOpenCacheEntry("http://c/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null,
    62     new OpenCallback(NEW, "a1m", "a1d", function(entry) {
    63       asyncOpenCacheEntry("http://c/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null,
    64         new OpenCallback(NORMAL, "a1m", "a1d", function(entry) {
    65           mc.fired();
    66         })
    67       );
    68     })
    69   );
    71   asyncOpenCacheEntry("http://d/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null,
    72     new OpenCallback(NEW, "a1m", "a1d", function(entry) {
    73       asyncOpenCacheEntry("http://d/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null,
    74         new OpenCallback(NORMAL, "a1m", "a1d", function(entry) {
    75           mc.fired();
    76         })
    77       );
    78     })
    79   );
    81   do_test_pending();
    82 }

mercurial