Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<title>nsIAccessible::description tests</title>
<link rel="stylesheet" type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css" />
<script type="application/javascript"
<script type="application/javascript"
<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");
<a target="_blank"
title="@title attribute no longer exposed on accDescription">
Mozilla Bug 489944
<a target="_blank"
title="summary attribute content mapped to accessible name in MSAA">
Mozilla Bug 666212
<a target="_blank"
title="Ensure that accDescription never duplicates AccessibleName">
Mozilla Bug 1031188
<p id="display"></p>
<div id="content" style="display: none"></div>
<pre id="test">
<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">
<table id="table2" summary="summary">
<table id="table3" summary="summary" title="title">
<svg xmlns="" version="1.1"
viewBox="0 0 100 100" preserveAspectRatio="xMidYMid slice"
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%"/>
<rect x="0" y="0" width="100" height="100" style="fill:url(#gradient)" />
<circle cx="50" cy="50" r="30" style="fill:url(#gradient)" />
<div id="alert" role="alert">Error</div>
<input type="text" id="inputDescribedByAlert" aria-describedby="alert">