|
1 function run_test() |
|
2 { |
|
3 do_get_profile(); |
|
4 |
|
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 } |
|
9 |
|
10 var mc = new MultipleCallbacks(3, function() { |
|
11 var storage = getCacheStorage("disk"); |
|
12 storage.asyncEvictStorage( |
|
13 new EvictionCallback(true, function() { |
|
14 storage.asyncVisitStorage( |
|
15 new VisitCallback(0, 0, [], function() { |
|
16 var storage = getCacheStorage("memory"); |
|
17 storage.asyncVisitStorage( |
|
18 new VisitCallback(0, 0, [], function() { |
|
19 finish_cache2_test(); |
|
20 }), |
|
21 true |
|
22 ); |
|
23 }), |
|
24 true |
|
25 ); |
|
26 }) |
|
27 ); |
|
28 }, !newCacheBackEndUsed()); |
|
29 |
|
30 asyncOpenCacheEntry("http://mem1/", "memory", Ci.nsICacheStorage.OPEN_NORMALLY, null, |
|
31 new OpenCallback(NEW, "m2m", "m2d", function(entry) { |
|
32 asyncOpenCacheEntry("http://mem1/", "memory", Ci.nsICacheStorage.OPEN_NORMALLY, null, |
|
33 new OpenCallback(NORMAL, "m2m", "m2d", function(entry) { |
|
34 mc.fired(); |
|
35 }) |
|
36 ); |
|
37 }) |
|
38 ); |
|
39 |
|
40 asyncOpenCacheEntry("http://a/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null, |
|
41 new OpenCallback(NEW, "a1m", "a1d", function(entry) { |
|
42 asyncOpenCacheEntry("http://a/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null, |
|
43 new OpenCallback(NORMAL, "a1m", "a1d", function(entry) { |
|
44 mc.fired(); |
|
45 }) |
|
46 ); |
|
47 }) |
|
48 ); |
|
49 |
|
50 asyncOpenCacheEntry("http://b/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null, |
|
51 new OpenCallback(NEW, "b1m", "b1d", function(entry) { |
|
52 asyncOpenCacheEntry("http://b/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, null, |
|
53 new OpenCallback(NORMAL, "b1m", "b1d", function(entry) { |
|
54 mc.fired(); |
|
55 }) |
|
56 ); |
|
57 }) |
|
58 ); |
|
59 |
|
60 do_test_pending(); |
|
61 } |