blob: afc31b9041eda565bf1bf48929e545e07f71ddb2 (
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
registerCleanupFunction(function () {
while (gBrowser.tabs[1]) {
gBrowser.removeTab(gBrowser.tabs[1]);
}
});
add_task(async function () {
let prefs = await openPreferencesViaOpenPreferencesAPI("panePrivacy", {
leaveOpen: true,
});
is(prefs.selectedPane, "panePrivacy", "Privacy pane was selected");
let doc = gBrowser.contentDocument;
let notificationsDoNotDisturbBox = doc.getElementById(
"notificationsDoNotDisturbBox"
);
if (notificationsDoNotDisturbBox.hidden) {
todo(false, "Do not disturb is not available on this platform");
return;
}
let alertService;
try {
alertService = Cc["@mozilla.org/alerts-service;1"]
.getService(Ci.nsIAlertsService)
.QueryInterface(Ci.nsIAlertsDoNotDisturb);
} catch (ex) {
ok(true, "Do not disturb is not available on this platform: " + ex.message);
return;
}
let checkbox = doc.getElementById("notificationsDoNotDisturb");
ok(!checkbox.checked, "Checkbox should not be checked by default");
ok(
!alertService.manualDoNotDisturb,
"Do not disturb should be off by default"
);
let checkboxChanged = BrowserTestUtils.waitForEvent(checkbox, "command");
checkbox.click();
await checkboxChanged;
ok(
alertService.manualDoNotDisturb,
"Do not disturb should be enabled when checked"
);
checkboxChanged = BrowserTestUtils.waitForEvent(checkbox, "command");
checkbox.click();
await checkboxChanged;
ok(
!alertService.manualDoNotDisturb,
"Do not disturb should be disabled when unchecked"
);
});
|