forked from mirrors/gecko-dev
		
	
		
			
				
	
	
		
			57 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/* 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"
 | 
						|
  );
 | 
						|
});
 |