44 lines
1.1 KiB
JavaScript
44 lines
1.1 KiB
JavaScript
/* 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";
|
|
|
|
/**
|
|
* Test focusability
|
|
*/
|
|
addAccessibleTask(
|
|
`
|
|
<div role="button" id="ariabutton">hello</div> <button id="button">world</button>
|
|
`,
|
|
async (browser, accDoc) => {
|
|
let ariabutton = getNativeInterface(accDoc, "ariabutton");
|
|
let button = getNativeInterface(accDoc, "button");
|
|
|
|
is(
|
|
ariabutton.getAttributeValue("AXFocused"),
|
|
0,
|
|
"aria button is not focused"
|
|
);
|
|
|
|
is(button.getAttributeValue("AXFocused"), 0, "button is not focused");
|
|
|
|
ok(
|
|
!ariabutton.isAttributeSettable("AXFocused"),
|
|
"aria button should not be focusable"
|
|
);
|
|
|
|
ok(button.isAttributeSettable("AXFocused"), "button is focusable");
|
|
|
|
let evt = waitForMacEvent(
|
|
"AXFocusedUIElementChanged",
|
|
iface => iface.getAttributeValue("AXDOMIdentifier") == "button"
|
|
);
|
|
|
|
button.setAttributeValue("AXFocused", true);
|
|
|
|
await evt;
|
|
|
|
is(button.getAttributeValue("AXFocused"), 1, "button is focused");
|
|
}
|
|
);
|