summaryrefslogtreecommitdiffstats
path: root/docshell/test/unit/test_bug442584.js
blob: 174bdb7e308485423c391cd1fd41f477db957954 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
var prefetch = Cc["@mozilla.org/prefetch-service;1"].
               getService(Ci.nsIPrefetchService);
var ios = Cc["@mozilla.org/network/io-service;1"].
          getService(Ci.nsIIOService);
var prefs = Cc["@mozilla.org/preferences-service;1"].
            getService(Ci.nsIPrefBranch);

function run_test() {
  // Fill up the queue
  prefs.setBoolPref("network.prefetch-next", true);
  for (var i = 0; i < 5; i++) {
    var uri = ios.newURI("http://localhost/" + i, null, null);
    prefetch.prefetchURI(uri, uri, null, true);
  }

  // Make sure the queue has items in it...
  do_check_true(prefetch.hasMoreElements());

  // Now disable the pref to force the queue to empty...
  prefs.setBoolPref("network.prefetch-next", false);
  do_check_false(prefetch.hasMoreElements());

  // Now reenable the pref, and add more items to the queue.
  prefs.setBoolPref("network.prefetch-next", true);
  for (var i = 0; i < 5; i++) {
    var uri = ios.newURI("http://localhost/" + i, null, null);
    prefetch.prefetchURI(uri, uri, null, true);
  }
  do_check_true(prefetch.hasMoreElements());
}