87 lines
3.0 KiB
HTML
87 lines
3.0 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
|
<html>
|
|
<head>
|
|
<script src="../resources/js-test-pre.js"></script>
|
|
<script src="../resources/accessibility-helper.js"></script>
|
|
</head>
|
|
<body id="body">
|
|
|
|
<div id="examples">
|
|
|
|
<a class="ex" href="#" data-expected="">foo</a>
|
|
<a class="ex" href="#" title="bar" data-expected="bar">foo</a>
|
|
<a class="ex" href="#" title="bar" aria-help="baz" data-expected="baz">foo</a>
|
|
<a class="ex" href="#" title="foo" data-expected=""><!-- no contents, so @title used as label, not help --></a>
|
|
|
|
<h1 class="ex" title="bar" data-expected="bar"><a class="ex" href="#" data-expected="">foo</a></h1>
|
|
|
|
<button class="ex" data-expected="">foo</button>
|
|
<button class="ex" title="bar" data-expected="bar">foo</button>
|
|
<button class="ex" title="bar" aria-help="baz" data-expected="baz">foo</button>
|
|
<button class="ex" title="foo" data-expected=""><!-- no contents, so @title used as label, not help --></button>
|
|
|
|
<table class="ex" summary="table summary" data-expected="table summary">
|
|
<caption class="ex" data-expected="">caption</caption>
|
|
<tr>
|
|
<td>
|
|
<input class="ex" type="checkbox" data-expected="">
|
|
<div class="ex" role="text" data-expected="">text</div>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<main class="ex" aria-help="bar" data-expected="bar">
|
|
<button class="ex" data-expected="">foo</button>
|
|
</main>
|
|
|
|
<main class="ex" role="group" title="bar" data-expected="">
|
|
<div class="ex" role="group" data-expected="">foo</div>
|
|
</main>
|
|
|
|
<a href="" class="ex" title="bar" data-expected="bar">
|
|
<div class="ex" data-expected="">foo</div>
|
|
</a>
|
|
|
|
</div>
|
|
|
|
<p id="description"></p>
|
|
<div id="console"></div>
|
|
|
|
<script>
|
|
|
|
if (window.testRunner && window.accessibilityController) {
|
|
|
|
description("Tests accessibility help text in a variety of examples.");
|
|
|
|
var examples = document.querySelectorAll("#examples .ex");
|
|
for (var i = 0, c = examples.length; i < c; i++) {
|
|
var el = examples[i];
|
|
if (!el)
|
|
continue;
|
|
var expectation = el.getAttribute("data-expected");
|
|
var id = el.id;
|
|
var tag = el.tagName.toLowerCase();
|
|
if (!id)
|
|
el.id = id = "generatedId_" + i;
|
|
var ax = accessibilityController.accessibleElementById(id);
|
|
if (!ax)
|
|
continue;
|
|
var output = platformValueForW3CDescription(ax);
|
|
var result = document.getElementById("console");
|
|
if (expectation === output)
|
|
result.textContent += "PASS: Help text for <" + tag +"> is \"" + output + "\"\n";
|
|
else
|
|
result.textContent += "FAIL: Help text for <" + tag +"> is \"" + output + "\" but expected \"" + expectation + "\"\n";
|
|
}
|
|
|
|
// Once tests are complete, hide all the example markup.
|
|
document.getElementById("examples").style.display = "none";
|
|
|
|
}
|
|
|
|
</script>
|
|
|
|
<script src="../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|