Bug 459782 - check the name calculation rules for nsHTMLLinkAccessible. r=david.bolter/marco.zehe, a191=beltzner.

This commit is contained in:
Alexander Surkov 2008-11-28 12:12:15 +01:00
parent 1871e9b443
commit 8a491b2dd7

View File

@ -0,0 +1,100 @@
<html>
<head>
<title>nsIAccessible::name calculation for HTML links (html:a)</title>
<link rel="stylesheet"
type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css" />
<script type="application/javascript"
src="chrome://mochikit/content/MochiKit/packed.js"></script>
<script type="application/javascript"
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
<script type="application/javascript"
src="chrome://mochikit/content/a11y/accessible/common.js"></script>
<script type="application/javascript"
src="chrome://mochikit/content/a11y/accessible/nsIAccessible_name.js"></script>
<script type="application/javascript">
function doTest()
{
// aria-label
testName("aria_label", "anchor label");
// aria-labelledby
testName("aria_labelledby", "text");
// html:label
testName("label", "label");
// name from content
testName("namefromcontent", "1");
// name from content
testName("namefromimg", "img title");
// no name from content
testName("nonamefromcontent", null);
// title
testName("title", "title");
SimpleTest.finish();
}
SimpleTest.waitForExplicitFinish();
addLoadEvent(doTest);
</script>
</head>
<body>
<a target="_blank"
href="https://bugzilla.mozilla.org/show_bug.cgi?id=459782"
title="nsIAccessible::name calculation for HTML links (html:a)">
Mozilla Bug 459782
</a>
<p id="display"></p>
<div id="content" style="display: none"></div>
<pre id="test">
</pre>
<!-- aria-label, preferred to aria-labelledby -->
<a id="aria_label" href="mozilla.org"
aria-label="anchor label"
aria-labelledby="text">1</a>
<br/>
<!-- aria-labelledby, preferred to html:label -->
<span id="text">text</span>
<label for="aria_labelledby">label</label>
<a id="aria_labelledby" href="mozilla.org"
aria-labelledby="text">1</a>
<br/>
<!-- label, preferred to name from content -->
<label for="label">label</label>
<a id="label" href="mozilla.org">1</a>
<br/>
<!-- name from content, preferred to @title -->
<a id="namefromcontent" href="mozilla.org"
title="title">1</a>
<br/>
<!-- name from content, preferred to @title -->
<a id="namefromimg" href="mozilla.org"
title="title"><img alt="img title" /></a>
<!-- no name from content, ARIA role overrides this rule -->
<a id="nonamefromcontent" href="mozilla.org"
role="presentation">1</a>
<br/>
<!-- no content, name from @title -->
<a id="title" href="mozilla.org"
title="title"></a>
</body>
</html>