blob: 6222e2d43eb7a5c670c0307aee01e6cb8ba273f3 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../../resources/js-test-pre.js"></script>
</head>
<body id="body">
<header>header</header>
<footer>footer</footer>
<section>section</section>
<article>article</article>
<nav>nav</nav>
<aside>aside</aside>
<article>
<header>Should be IGNORED because it's inside an article, so it should not be a landmark</header>
<footer>Should be IGNORED because it's inside an article, so it should not be a landmark</footer>
</article>
<section>
<header>Should be IGNORED because it's inside a section, so it should not be a landmark</header>
<footer>Should be IGNORED because it's inside a section, so it should not be a landmark</footer>
</section>
<p id="description"></p>
<div id="console"></div>
<script>
description("This tests that the HTML5 section elements map to the correct AX roles.");
if (window.accessibilityController) {
document.getElementById("body").focus();
var body = accessibilityController.focusedElement;
shouldBe("body.childAtIndex(0).subrole", "'AXSubrole: AXLandmarkBanner'");
shouldBe("body.childAtIndex(1).subrole", "'AXSubrole: AXLandmarkContentInfo'");
shouldBe("body.childAtIndex(2).subrole", "'AXSubrole: '");
shouldBe("body.childAtIndex(3).subrole", "'AXSubrole: AXDocumentArticle'");
shouldBe("body.childAtIndex(4).subrole", "'AXSubrole: AXLandmarkNavigation'");
shouldBe("body.childAtIndex(5).subrole", "'AXSubrole: AXLandmarkComplementary'");
// When a header and footer are inside an article, they should not be landmarks.
shouldBe("body.childAtIndex(6).childAtIndex(0).subrole", "'AXSubrole: '");
// When a header and footer are inside a section, they should not be landmarks.
shouldBe("body.childAtIndex(7).childAtIndex(0).subrole", "'AXSubrole: '");
}
</script>
<script src="../../resources/js-test-post.js"></script>
</body>
</html>