| |
1 /* Any copyright is dedicated to the Public Domain. |
| |
2 http://creativecommons.org/publicdomain/zero/1.0/ */ |
| |
3 |
| |
4 Cu.import("resource://services-sync/service.js"); |
| |
5 Cu.import("resource://services-sync/util.js"); |
| |
6 |
| |
7 function run_test() { |
| |
8 let debug = []; |
| |
9 let info = []; |
| |
10 |
| |
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 } |
| |
18 |
| |
19 Log.repository.rootLogger.addAppender(new Log.DumpAppender()); |
| |
20 |
| |
21 augmentLogger(Service._log); |
| |
22 |
| |
23 // Avoid daily ping |
| |
24 Svc.Prefs.set("lastPing", Math.floor(Date.now() / 1000)); |
| |
25 |
| |
26 _("Check that sync will log appropriately if already in 'progress'."); |
| |
27 Service._locked = true; |
| |
28 Service.sync(); |
| |
29 Service._locked = false; |
| |
30 |
| |
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 } |
| |
36 |