services/sync/tests/unit/test_service_sync_locked.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 /* Any copyright is dedicated to the Public Domain.
     2    http://creativecommons.org/publicdomain/zero/1.0/ */
     4 Cu.import("resource://services-sync/service.js");
     5 Cu.import("resource://services-sync/util.js");
     7 function run_test() {
     8   let debug = [];
     9   let info  = [];
    11   function augmentLogger(old) {
    12     let d = old.debug;
    13     let i = old.info;
    14     old.debug = function(m) { debug.push(m); d.call(old, m); }
    15     old.info  = function(m) { info.push(m);  i.call(old, m); }
    16     return old;
    17   }
    19   Log.repository.rootLogger.addAppender(new Log.DumpAppender());
    21   augmentLogger(Service._log);
    23   // Avoid daily ping
    24   Svc.Prefs.set("lastPing", Math.floor(Date.now() / 1000));
    26   _("Check that sync will log appropriately if already in 'progress'.");
    27   Service._locked = true;
    28   Service.sync();
    29   Service._locked = false;
    31   do_check_eq(debug[debug.length - 2],
    32               "Exception: Could not acquire lock. Label: \"service.js: login\". No traceback available");
    33   do_check_eq(info[info.length - 1],
    34               "Cannot start sync: already syncing?");
    35 }

mercurial