Source code

Revision control

Copy as Markdown

Other Tools

Test Info: Warnings

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
// From AppKit.framework/Headers/NSAccessibilityConstants.h
const NSAccessibilityPriorityMedium = 50;
const NSAccessibilityPriorityHigh = 90;
/**
* Test ariaNotify.
*/
addAccessibleTask(`<p id="p">p</p>`, async function testAriaNotify(browser) {
info("p.ariaNotify a normal");
let announced = waitForMacEventWithInfo("AXAnnouncementRequested", "p");
await invokeContentTask(browser, [], () => {
content.p = content.document.getElementById("p");
content.p.ariaNotify("a");
});
let evt = await announced;
ok(true, "Got AXAnnouncementRequested event");
is(evt.data.AXAnnouncementKey, "a", "AXAnnouncementKey correct");
is(
evt.data.AXPriorityKey,
NSAccessibilityPriorityMedium,
"AXPriorityKey correct"
);
info("p.ariaNotify b normal");
announced = waitForMacEventWithInfo("AXAnnouncementRequested", "p");
await invokeContentTask(browser, [], () => {
content.p.ariaNotify("b", { priority: "high" });
});
evt = await announced;
ok(true, "Got AXAnnouncementRequested event");
is(evt.data.AXAnnouncementKey, "b", "AXAnnouncementKey correct");
is(
evt.data.AXPriorityKey,
NSAccessibilityPriorityHigh,
"AXPriorityKey correct"
);
info("doc.ariaNotify c");
announced = waitForMacEventWithInfo(
"AXAnnouncementRequested",
DEFAULT_CONTENT_DOC_BODY_ID
);
await invokeContentTask(browser, [], () => {
content.document.ariaNotify("c");
});
evt = await announced;
ok(true, "Got AXAnnouncementRequested event");
is(evt.data.AXAnnouncementKey, "c", "AXAnnouncementKey correct");
is(
evt.data.AXPriorityKey,
NSAccessibilityPriorityMedium,
"AXPriorityKey correct"
);
});