<
html>
<
head>
<
title>nsIAccessible::description tests</
title>
<
link rel=
"stylesheet" type=
"text/css" href=
"chrome://mochikit/content/tests/SimpleTest/test.css" />
<
script src=
"chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></
script>
<
script type=
"application/javascript"
src=
"common.js"></
script>
<
script type=
"application/javascript"
src=
"name.js"></
script>
<
script type=
"application/javascript">
function doTest() {
// Description from aria-describedby attribute
testDescr(
"img1",
"aria description");
// No description from @
title attribute because it is used to generate
// name.
testDescr(
"img2",
"");
// Description from @
title attribute, name is generated from @alt
// attribute.
testDescr(
"img3",
"description");
// No description from aria-describedby since it is the same as the
// @alt attribute which is used as the name
testDescr(
"img4",
"");
// No description from @
title attribute since it is the same as the
// @alt attribute which is used as the name
testDescr(
"img5",
"");
// Description from content of h2.
testDescr(
"p",
"heading");
// Description from aria-description attribute
testDescr(
"p2",
"I describe");
// Description from contents of h2 when both aria-describedby and
// aria-description are present
testDescr(
"p3",
"heading");
// From
table summary (
caption is used as a name)
testDescr(
"table1",
"summary");
// Empty (
summary is used as a name)
testDescr(
"table2",
"");
// From
title (
summary is used as a name)
testDescr(
"table3",
"title");
// No description from <desc> element since it is the same as the
// <
title> element.
testDescr(
"svg",
"");
// role=
"alert" referenced by aria-describedby should include subtree.
testDescr(
"inputDescribedByAlert",
"Error");
SimpleTest.finish();
}
SimpleTest.waitForExplicitFinish();
addA11yLoadEvent(doTest);
</
script>
</
head>
<
body>
<a target=
"_blank"
href=
"https://bugzilla.mozilla.org/show_bug.cgi?id=489944"
title=
"@title attribute no longer exposed on accDescription">
Mozilla Bug 489944
</a>
<a target=
"_blank"
href=
"https://bugzilla.mozilla.org/show_bug.cgi?id=666212"
title=
"summary attribute content mapped to accessible name in MSAA">
Mozilla Bug 666212
</a>
<a target=
"_blank"
href=
"https://bugzilla.mozilla.org/show_bug.cgi/id=1031188"
title=
"Ensure that accDescription never duplicates AccessibleName">
Mozilla Bug 1031188
</a>
<p id=
"display"></p>
<
div id=
"content" style=
"display: none"></
div>
<
pre id=
"test">
</
pre>
<p id=
"description">aria description</p>
<
img id=
"img1" aria-describedby=
"description" />
<
img id=
"img2" title=
"title" />
<
img id=
"img3" alt=
"name" title=
"description" />
<
img id=
"img4" alt=
"aria description" aria-describedby=
"description">
<
img id=
"img5" alt=
"image" title=
"image">
<h2 id=
"heading">heading</h2>
<p id=
"p" aria-describedby=
"heading" role=
"button">click me</p>
<p id=
"p2" aria-description=
"I describe" role=
"button">click me</p>
<p id=
"p3" aria-description=
"I do not describe" aria-describedby=
"heading" role=
"button">
click me</p>
<table id="table1" summary="summary">
<caption>caption</caption>
<tr><td>cell</td></tr>
</table>
<table id="table2" summary="summary">
<tr><td>cell</td></tr>
</table>
<table id="table3" summary="summary" title="title">
<tr><td>cell</td></tr>
</table>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1"
viewBox="0 0 100 100" preserveAspectRatio="xMidYMid slice"
id="svg"
style="width:100px; height:100px;">
<title>SVG Image</title>
<desc>SVG Image</desc>
<linearGradient id="gradient">
<stop class="begin" offset="0%"/>
<stop class="end" offset="100%"/>
</linearGradient>
<rect x="0" y="0" width="100" height="100" style="fill:url(#gradient)" />
<circle cx="50" cy="50" r="30" style="fill:url(#gradient)" />
</svg>
<div id="alert" role="alert">Error</div>
<input type="text" id="inputDescribedByAlert" aria-describedby="alert">
</body>
</html>