74 lines
2.8 KiB
HTML
74 lines
2.8 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
|
<html>
|
|
<head>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
</head>
|
|
<body id="body">
|
|
|
|
<p id="description"></p>
|
|
|
|
All "li" elements accept the button should be presentational.
|
|
<div role="group" id="container1" tabindex="0">
|
|
<ul role="presentation">
|
|
<li>apples</li>
|
|
<li>bananas</li>
|
|
<li role="button">cantalope</li>
|
|
<li>dates</li>
|
|
</ul>
|
|
</div>
|
|
|
|
Nested list inside a presentational list should not be presentational
|
|
<div role="group" id="container2" tabindex="0">
|
|
<ul role="presentation">
|
|
<li>This item should not expose an AXGroup; </li>
|
|
<li>this one should not either.</li>
|
|
<li>However, because the nested UL and LI do not have explicit role of presentation,</li>
|
|
<ul>
|
|
<li> this list item should expose an AXGroup, </li>
|
|
<li> and this one should, too. </li>
|
|
</ul>
|
|
<li>but this one is static text again.</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div id="console"></div>
|
|
|
|
<script>
|
|
|
|
description("This tests that when a list has the presentational role, and it has required required children, those required children \"li\" are also presentational.");
|
|
|
|
if (window.accessibilityController) {
|
|
|
|
// test the list in container 1
|
|
document.getElementById("container1").focus();
|
|
var container = accessibilityController.focusedElement;
|
|
shouldBe("container.childAtIndex(0).role", "'AXRole: AXStaticText'");
|
|
shouldBe("container.childAtIndex(0).stringValue", "'AXValue: apples'");
|
|
shouldBe("container.childAtIndex(1).stringValue", "'AXValue: bananas'");
|
|
shouldBe("container.childAtIndex(3).stringValue", "'AXValue: dates'");
|
|
|
|
shouldBe("container.childAtIndex(2).role", "'AXRole: AXButton'");
|
|
shouldBe("container.childAtIndex(2).title", "'AXTitle: cantalope'");
|
|
|
|
// test the list in container 2
|
|
document.getElementById("container2").focus();
|
|
var container2 = accessibilityController.focusedElement;
|
|
shouldBe("container2.childAtIndex(0).role", "'AXRole: AXStaticText'");
|
|
shouldBe("container2.childAtIndex(1).role", "'AXRole: AXStaticText'");
|
|
shouldBe("container2.childAtIndex(2).role", "'AXRole: AXStaticText'");
|
|
shouldBe("container2.childAtIndex(4).role", "'AXRole: AXStaticText'");
|
|
|
|
// this nested list should not inherit presentational
|
|
shouldBe("container2.childAtIndex(3).role", "'AXRole: AXList'");
|
|
shouldBe("container2.childAtIndex(3).childAtIndex(0).role", "'AXRole: AXGroup'");
|
|
shouldBe("container2.childAtIndex(3).childAtIndex(0).childAtIndex(0).role", "'AXRole: AXListMarker'");
|
|
shouldBe("container2.childAtIndex(3).childAtIndex(0).childAtIndex(1).role", "'AXRole: AXStaticText'");
|
|
|
|
}
|
|
|
|
</script>
|
|
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|