diff options
Diffstat (limited to 'netwerk/test/unit/test_cache2-22-anon-visit.js')
-rw-r--r-- | netwerk/test/unit/test_cache2-22-anon-visit.js | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/netwerk/test/unit/test_cache2-22-anon-visit.js b/netwerk/test/unit/test_cache2-22-anon-visit.js new file mode 100644 index 000000000..bc8b15822 --- /dev/null +++ b/netwerk/test/unit/test_cache2-22-anon-visit.js @@ -0,0 +1,58 @@ +Components.utils.import('resource://gre/modules/LoadContextInfo.jsm'); + +function run_test() +{ + do_get_profile(); + + function checkNewBackEnd() + { + var storage = getCacheStorage("disk", LoadContextInfo.default); + storage.asyncVisitStorage( + new VisitCallback(1, 1024, ["http://an2/"], function() { + storage = getCacheStorage("disk", LoadContextInfo.anonymous); + storage.asyncVisitStorage( + new VisitCallback(1, 1024, ["http://an2/"], function() { + finish_cache2_test(); + }), + true + ); + }), + true + ); + } + + function checkOldBackEnd() + { + syncWithCacheIOThread(function() { + var storage = getCacheStorage("disk", LoadContextInfo.default); + storage.asyncVisitStorage( + new VisitCallback(2, 24, ["http://an2/"], function() { + storage = getCacheStorage("disk", LoadContextInfo.anonymous); + storage.asyncVisitStorage( + new VisitCallback(0, 0, ["http://an2/"], function() { + finish_cache2_test(); + }), + true + ); + }), + true + ); + }); + } + + var mc = new MultipleCallbacks(2, newCacheBackEndUsed() ? checkNewBackEnd : checkOldBackEnd, !newCacheBackEndUsed()); + + asyncOpenCacheEntry("http://an2/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, LoadContextInfo.default, + new OpenCallback(NEW|WAITFORWRITE, "an2", "an2", function(entry) { + mc.fired(); + }) + ); + + asyncOpenCacheEntry("http://an2/", "disk", Ci.nsICacheStorage.OPEN_NORMALLY, LoadContextInfo.anonymous, + new OpenCallback(NEW|WAITFORWRITE, "an2", "an2", function(entry) { + mc.fired(); + }) + ); + + do_test_pending(); +} |