blob: db44d395bdad8ece570b168f02ada1c31129bf82 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../../resources/js-test-pre.js"></script>
</head>
<body id="body">
<div id="content">
<select id="test0" disabled>
<option value="1">Cork</option>
<option value="2">Cupertino</option>
<option value="3">London</option>
<option value="4">New York</option>
<option value="5">Singapore</option>
<option value="6">Tokyo</option>
</select>
<select id="test1" disabled aria-disabled="false">
<option value="1">Cork</option>
<option value="2">Cupertino</option>
<option value="3">London</option>
<option value="4">New York</option>
<option value="5">Singapore</option>
<option value="6">Tokyo</option>
</select>
<select id="test2" disabled aria-disabled="true">
<option value="1">Cork</option>
<option value="2">Cupertino</option>
<option value="3">London</option>
<option value="4">New York</option>
<option value="5">Singapore</option>
<option value="6">Tokyo</option>
</select>
<p id="description"></p>
<div id="console"></div>
</div>
<script>
description("This tests that menu lists that are disabled will not be triggered by AXPress actions.");
// We don't test for enabled controls because opening menu lists waits on the UI process to display the menu.
var numOfTests = 3, notificationCount = 0;
var lists = [null, null, null];
if (window.accessibilityController) {
jsTestIsAsync = true;
pressNext(0);
}
function pressNext(testId) {
if (testId > numOfTests)
return;
var menulist = accessibilityController.accessibleElementById("test" + testId);
menulist.addNotificationListener(pressListener);
menulist.press();
lists[testId] = menulist;
window.setTimeout(function() {
pressNext(testId + 1);
}, 0);
}
function pressListener(notification) {
if (notification == "AXPressDidFail" || notification == "AXPressDidSucceed")
notificationCount++;
debug("Got notification: " + notification);
lists[notificationCount-1].removeNotificationListener(pressListener);
if (notificationCount == numOfTests) {
finishJSTest();
}
}
</script>
<script src="../../resources/js-test-post.js"></script>
</body>
</html>