Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 Cu.import("resource://gre/modules/Services.jsm");
3 function test() {
4 waitForExplicitFinish();
6 let mutObserverAlarmSet = null;
7 let mutObserverAlarmFired = null;
9 let alarmSet = false;
11 loadWebapp("alarm.webapp", undefined, function onLoad() {
12 let principal = document.getElementById("content").contentDocument.defaultView.document.nodePrincipal;
13 let permValue = Services.perms.testExactPermissionFromPrincipal(principal, "alarms");
14 is(permValue, Ci.nsIPermissionManager.ALLOW_ACTION, "Alarm permission: allow.");
16 let msgSet = gAppBrowser.contentDocument.getElementById("msgSet");
17 mutObserverAlarmSet = new MutationObserver(function(mutations) {
18 is(msgSet.textContent, "Success.", "Alarm added.");
19 alarmSet = true;
20 });
21 mutObserverAlarmSet.observe(msgSet, { childList: true });
23 let msgFired = gAppBrowser.contentDocument.getElementById("msgFired");
24 mutObserverAlarmFired = new MutationObserver(function(mutations) {
25 is(msgFired.textContent, "Alarm fired.", "Alarm fired.");
27 ok(alarmSet, "Alarm set before firing.");
29 finish();
30 });
31 mutObserverAlarmFired.observe(msgFired, { childList: true });
32 });
34 registerCleanupFunction(function() {
35 mutObserverAlarmSet.disconnect();
36 mutObserverAlarmFired.disconnect();
37 });
38 }