tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

test_geolocation_provider_timeout.js (1041B)


      1 const { HttpServer } = ChromeUtils.importESModule(
      2  "resource://testing-common/httpd.sys.mjs"
      3 );
      4 
      5 var httpserver = null;
      6 var geolocation = null;
      7 
      8 function geoHandler(metadata, response) {
      9  response.processAsync();
     10 }
     11 
     12 function successCallback() {
     13  // The call shouldn't be sucessful.
     14  Assert.ok(false);
     15  do_test_finished();
     16 }
     17 
     18 function errorCallback() {
     19  Assert.ok(true);
     20  do_test_finished();
     21 }
     22 
     23 function run_test() {
     24  do_test_pending();
     25 
     26  httpserver = new HttpServer();
     27  httpserver.registerPathHandler("/geo", geoHandler);
     28  httpserver.start(-1);
     29  Services.prefs.setCharPref(
     30    "geo.provider.network.url",
     31    "http://localhost:" + httpserver.identity.primaryPort + "/geo"
     32  );
     33  Services.prefs.setBoolPref("geo.provider.network.scan", false);
     34 
     35  // Setting timeout to a very low value to ensure time out will happen.
     36  Services.prefs.setIntPref("geo.provider.network.timeout", 5);
     37 
     38  geolocation = Cc["@mozilla.org/geolocation;1"].getService(Ci.nsISupports);
     39  geolocation.getCurrentPosition(successCallback, errorCallback);
     40 }