test_cache2-11-evict-memory.js (2016B)
1 "use strict"; 2 3 function run_test() { 4 do_get_profile(); 5 6 var memoryStorage = getCacheStorage("memory"); 7 var mc = new MultipleCallbacks(3, function () { 8 memoryStorage.asyncEvictStorage( 9 new EvictionCallback(true, function () { 10 memoryStorage.asyncVisitStorage( 11 new VisitCallback(0, 0, [], function () { 12 var diskStorage = getCacheStorage("disk"); 13 14 var expectedConsumption = 2048; 15 16 diskStorage.asyncVisitStorage( 17 new VisitCallback( 18 2, 19 expectedConsumption, 20 ["http://a/", "http://b/"], 21 function () { 22 finish_cache2_test(); 23 } 24 ), 25 true 26 ); 27 }), 28 true 29 ); 30 }) 31 ); 32 }); 33 34 asyncOpenCacheEntry( 35 "http://mem1/", 36 "memory", 37 Ci.nsICacheStorage.OPEN_NORMALLY, 38 null, 39 new OpenCallback(NEW, "m2m", "m2d", function () { 40 asyncOpenCacheEntry( 41 "http://mem1/", 42 "memory", 43 Ci.nsICacheStorage.OPEN_NORMALLY, 44 null, 45 new OpenCallback(NORMAL, "m2m", "m2d", function () { 46 mc.fired(); 47 }) 48 ); 49 }) 50 ); 51 52 asyncOpenCacheEntry( 53 "http://a/", 54 "disk", 55 Ci.nsICacheStorage.OPEN_NORMALLY, 56 null, 57 new OpenCallback(NEW, "a1m", "a1d", function () { 58 asyncOpenCacheEntry( 59 "http://a/", 60 "disk", 61 Ci.nsICacheStorage.OPEN_NORMALLY, 62 null, 63 new OpenCallback(NORMAL, "a1m", "a1d", function () { 64 mc.fired(); 65 }) 66 ); 67 }) 68 ); 69 70 asyncOpenCacheEntry( 71 "http://b/", 72 "disk", 73 Ci.nsICacheStorage.OPEN_NORMALLY, 74 null, 75 new OpenCallback(NEW, "a1m", "a1d", function () { 76 asyncOpenCacheEntry( 77 "http://b/", 78 "disk", 79 Ci.nsICacheStorage.OPEN_NORMALLY, 80 null, 81 new OpenCallback(NORMAL, "a1m", "a1d", function () { 82 mc.fired(); 83 }) 84 ); 85 }) 86 ); 87 88 do_test_pending(); 89 }