1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/docshell/test/unit/test_bug442584.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,34 @@ 1.4 +var prefetch = Cc["@mozilla.org/prefetch-service;1"]. 1.5 + getService(Ci.nsIPrefetchService); 1.6 +var ios = Cc["@mozilla.org/network/io-service;1"]. 1.7 + getService(Ci.nsIIOService); 1.8 +var prefs = Cc["@mozilla.org/preferences-service;1"]. 1.9 + getService(Ci.nsIPrefBranch); 1.10 + 1.11 +function run_test() { 1.12 + // Fill up the queue 1.13 + prefs.setBoolPref("network.prefetch-next", true); 1.14 + for (var i = 0; i < 5; i++) { 1.15 + var uri = ios.newURI("http://localhost/" + i, null, null); 1.16 + prefetch.prefetchURI(uri, uri, null, true); 1.17 + } 1.18 + 1.19 + // Make sure the queue has items in it... 1.20 + var queue = prefetch.enumerateQueue(); 1.21 + do_check_true(queue.hasMoreElements()); 1.22 + 1.23 + // Now disable the pref to force the queue to empty... 1.24 + prefs.setBoolPref("network.prefetch-next", false); 1.25 + queue = prefetch.enumerateQueue(); 1.26 + do_check_false(queue.hasMoreElements()); 1.27 + 1.28 + // Now reenable the pref, and add more items to the queue. 1.29 + prefs.setBoolPref("network.prefetch-next", true); 1.30 + for (var i = 0; i < 5; i++) { 1.31 + var uri = ios.newURI("http://localhost/" + i, null, null); 1.32 + prefetch.prefetchURI(uri, uri, null, true); 1.33 + } 1.34 + queue = prefetch.enumerateQueue(); 1.35 + do_check_true(queue.hasMoreElements()); 1.36 +} 1.37 +