<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[162067] trunk/LayoutTests</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/162067">162067</a></dd>
<dt>Author</dt> <dd>mario.prada@samsung.com</dd>
<dt>Date</dt> <dd>2014-01-15 05:15:49 -0800 (Wed, 15 Jan 2014)</dd>
</dl>
<h3>Log Message</h3>
<pre>AX: Merge layout test from Mac and GTK checking accessibility roles
https://bugs.webkit.org/show_bug.cgi?id=126685
Reviewed by Chris Fleizach.
Merged GTK and Mac tests into one cross-platform test that is
aware of the platform-specific differences by declaring which
elements are supported in which platforms and which platform
specific roles (if it's the case) should be expected.
* accessibility/roles-exposed-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/roles-exposed-expected.txt.
* accessibility/roles-exposed.html: Added.
* platform/gtk/accessibility/roles-exposed.html: Removed.
* platform/mac/accessibility/role-subrole-roledescription.html: Removed.
* platform/mac/accessibility/roles-exposed-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/role-subrole-roledescription-expected.txt.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsaccessibilityrolesexposedexpectedtxt">trunk/LayoutTests/accessibility/roles-exposed-expected.txt</a></li>
<li><a href="#trunkLayoutTestsaccessibilityrolesexposedhtml">trunk/LayoutTests/accessibility/roles-exposed.html</a></li>
<li><a href="#trunkLayoutTestsplatformmacaccessibilityrolesexposedexpectedtxt">trunk/LayoutTests/platform/mac/accessibility/roles-exposed-expected.txt</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsplatformgtkaccessibilityrolesexposedexpectedtxt">trunk/LayoutTests/platform/gtk/accessibility/roles-exposed-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformgtkaccessibilityrolesexposedhtml">trunk/LayoutTests/platform/gtk/accessibility/roles-exposed.html</a></li>
<li><a href="#trunkLayoutTestsplatformmacaccessibilityrolesubroleroledescriptionexpectedtxt">trunk/LayoutTests/platform/mac/accessibility/role-subrole-roledescription-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacaccessibilityrolesubroleroledescriptionhtml">trunk/LayoutTests/platform/mac/accessibility/role-subrole-roledescription.html</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (162066 => 162067)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2014-01-15 12:32:03 UTC (rev 162066)
+++ trunk/LayoutTests/ChangeLog        2014-01-15 13:15:49 UTC (rev 162067)
</span><span class="lines">@@ -1,3 +1,21 @@
</span><ins>+2014-01-15 Mario Sanchez Prada <mario.prada@samsung.com>
+
+ AX: Merge layout test from Mac and GTK checking accessibility roles
+ https://bugs.webkit.org/show_bug.cgi?id=126685
+
+ Reviewed by Chris Fleizach.
+
+ Merged GTK and Mac tests into one cross-platform test that is
+ aware of the platform-specific differences by declaring which
+ elements are supported in which platforms and which platform
+ specific roles (if it's the case) should be expected.
+
+ * accessibility/roles-exposed-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/roles-exposed-expected.txt.
+ * accessibility/roles-exposed.html: Added.
+ * platform/gtk/accessibility/roles-exposed.html: Removed.
+ * platform/mac/accessibility/role-subrole-roledescription.html: Removed.
+ * platform/mac/accessibility/roles-exposed-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/role-subrole-roledescription-expected.txt.
+
</ins><span class="cx"> 2014-01-15 Mihai Tica <mitica@adobe.com>
</span><span class="cx">
</span><span class="cx"> Reapplying:
</span></span></pre></div>
<a id="trunkLayoutTestsaccessibilityrolesexposedexpectedtxtfromrev162066trunkLayoutTestsplatformgtkaccessibilityrolesexposedexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/accessibility/roles-exposed-expected.txt (from rev 162066, trunk/LayoutTests/platform/gtk/accessibility/roles-exposed-expected.txt) (0 => 162067)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/accessibility/roles-exposed-expected.txt         (rev 0)
+++ trunk/LayoutTests/accessibility/roles-exposed-expected.txt        2014-01-15 13:15:49 UTC (rev 162067)
</span><span class="lines">@@ -0,0 +1,385 @@
</span><ins>+ X
+This tests that native elements and ARIA overrides result in the expected role, subrole and role description.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS: a[href]
+ AXRole: AXLink
+
+PASS: address
+ AXRole: AXLandmarkContentInfo
+
+PASS: article
+ AXRole: AXArticle
+
+PASS: aside
+ AXRole: AXLandmarkComplementary
+
+PASS: blockquote
+ AXRole: AXGroup
+
+PASS: button
+ AXRole: AXButton
+
+PASS: dl
+ AXRole: AXDescriptionList
+
+PASS: dt
+ AXRole: AXDescriptionTerm
+
+PASS: dd
+ AXRole: AXDescriptionValue
+
+PASS: div
+ AXRole: AXSection
+
+PASS: fieldset
+ AXRole: AXGroup
+
+PASS: legend
+ AXRole: AXLabel
+
+PASS: form
+ AXRole: AXForm
+
+PASS: header
+ AXRole: AXLandmarkBanner
+
+PASS: hgroup
+ AXRole: AXGroup
+
+PASS: h1
+ AXRole: AXHeading
+
+PASS: h2
+ AXRole: AXHeading
+
+PASS: h3
+ AXRole: AXHeading
+
+PASS: h4
+ AXRole: AXHeading
+
+PASS: h5
+ AXRole: AXHeading
+
+PASS: h6
+ AXRole: AXHeading
+
+PASS: hr
+ AXRole: AXSeparator
+
+PASS: img[alt='X']
+ AXRole: AXImage
+
+PASS: input[type='button']
+ AXRole: AXButton
+
+PASS: input[type='checkbox']
+ AXRole: AXCheckBox
+
+PASS: input[type='date']
+ AXRole: AXTextField
+
+PASS: input[type='datetime']
+ AXRole: AXTextField
+
+PASS: input[type='datetime-local']
+ AXRole: AXTextField
+
+PASS: input[type='email']
+ AXRole: AXTextField
+
+PASS: input[type='file']
+ AXRole: AXButton
+
+PASS: input[type='image']
+ AXRole: AXButton
+
+PASS: input[type='month']
+ AXRole: AXTextField
+
+PASS: input[type='number']
+ AXRole: AXTextField
+
+PASS: input[type='password']
+ AXRole: AXPasswordField
+
+PASS: input[type='radio']
+ AXRole: AXRadioButton
+
+PASS: input[type='range']
+ AXRole: AXSlider
+
+PASS: input[type='reset']
+ AXRole: AXButton
+
+PASS: input[type='search']
+ AXRole: AXTextField
+
+PASS: input[type='submit']
+ AXRole: AXButton
+
+PASS: input[type='tel']
+ AXRole: AXTextField
+
+PASS: input[type='text']
+ AXRole: AXTextField
+
+PASS: input[type='time']
+ AXRole: AXTextField
+
+PASS: input[type='url']
+ AXRole: AXTextField
+
+PASS: input[type='week']
+ AXRole: AXTextField
+
+PASS: math
+ AXRole: AXMath
+
+PASS: nav
+ AXRole: AXLandmarkNavigation
+
+PASS: ol
+ AXRole: AXList
+
+PASS: li
+ AXRole: AXListItem
+
+PASS: p
+ AXRole: AXParagraph
+
+PASS: pre
+ AXRole: AXGroup
+
+PASS: progress
+ AXRole: AXProgressIndicator
+
+PASS: select:not([multiple])
+ AXRole: AXComboBox
+
+PASS: select[multiple]
+ AXRole: AXList
+
+PASS: option
+ AXRole: AXListItem
+
+PASS: optgroup
+ AXRole: AXListItem
+
+PASS: table
+ AXRole: AXTable
+
+PASS: th
+ AXRole: AXCell
+
+PASS: td
+ AXRole: AXCell
+
+PASS: th
+ AXRole: AXCell
+
+PASS: textarea
+ AXRole: AXTextField
+
+PASS: ul
+ AXRole: AXList
+
+PASS: li
+ AXRole: AXListItem
+
+PASS: div[role=command]
+ AXRole: AXSection
+
+PASS: div[role=composite]
+ AXRole: AXSection
+
+PASS: div[role=input]
+ AXRole: AXSection
+
+PASS: div[role=landmark]
+ AXRole: AXSection
+
+PASS: div[role=range]
+ AXRole: AXSection
+
+PASS: div[role=roletype]
+ AXRole: AXSection
+
+PASS: div[role=section]
+ AXRole: AXSection
+
+PASS: div[role=sectionhead]
+ AXRole: AXSection
+
+PASS: div[role=select]
+ AXRole: AXSection
+
+PASS: div[role=structure]
+ AXRole: AXSection
+
+PASS: div[role=widget]
+ AXRole: AXSection
+
+PASS: div[role=window]
+ AXRole: AXSection
+
+PASS: div[role=alert]
+ AXRole: AXAlert
+
+PASS: div[role=alertdialog]
+ AXRole: AXAlert
+
+PASS: div[role=application]
+ AXRole: AXEmbedded
+
+PASS: div[role=article]
+ AXRole: AXArticle
+
+PASS: div[role=banner]
+ AXRole: AXLandmarkBanner
+
+PASS: div[role=button]
+ AXRole: AXButton
+
+PASS: div[role=checkbox]
+ AXRole: AXCheckBox
+
+PASS: div[role=combobox]
+ AXRole: AXComboBox
+
+PASS: div[role=complementary]
+ AXRole: AXLandmarkComplementary
+
+PASS: div[role=contentinfo]
+ AXRole: AXLandmarkContentInfo
+
+PASS: div[role=definition]
+ AXRole: AXDefinition
+
+PASS: div[role=dialog]
+ AXRole: AXDialog
+
+PASS: div[role=directory]
+ AXRole: AXList
+
+PASS: div[role=grid]
+ AXRole: AXTable
+
+PASS: div[role=gridcell]
+ AXRole: AXCell
+
+PASS: div[role=group]
+ AXRole: AXGroup
+
+PASS: div[role=heading]
+ AXRole: AXHeading
+
+PASS: div[role=img]
+ AXRole: AXImage
+
+PASS: div[role=link]
+ AXRole: AXLink
+
+PASS: div[role=list]
+ AXRole: AXList
+
+PASS: div[role=listitem]
+ AXRole: AXListItem
+
+PASS: div[role=option]
+ AXRole: AXListItem
+
+PASS: div[role=log]
+ AXRole: AXLog
+
+PASS: div[role=main]
+ AXRole: AXLandmarkMain
+
+PASS: div[role=marquee]
+ AXRole: AXMarquee
+
+PASS: div[role=math]
+ AXRole: AXMath
+
+PASS: div[role=menu]
+ AXRole: AXMenu
+
+PASS: div[role=menuitem]
+ AXRole: AXMenuItem
+
+PASS: div[role=menuitemcheckbox]
+ AXRole: AXCheckMenuItem
+
+PASS: div[role=menuitemradio]
+ AXRole: AXRadioMenuItem
+
+PASS: div[role=menubar]
+ AXRole: AXMenuBar
+
+PASS: div[role=menuitem]
+ AXRole: AXMenuItem
+
+PASS: div[role=menuitemcheckbox]
+ AXRole: AXCheckMenuItem
+
+PASS: div[role=menuitemradio]
+ AXRole: AXRadioMenuItem
+
+PASS: div[role=navigation]
+ AXRole: AXLandmarkNavigation
+
+PASS: div[role=note]
+ AXRole: AXComment
+
+PASS: div[role=progressbar]
+ AXRole: AXProgressIndicator
+
+PASS: div[role=radiogroup]
+ AXRole: AXGroup
+
+PASS: div[role=radio]
+ AXRole: AXRadioButton
+
+PASS: div[role=scrollbar]
+ AXRole: AXScrollBar
+
+PASS: div[role=search]
+ AXRole: AXLandmarkSearch
+
+PASS: div[role=separator]
+ AXRole: AXSeparator
+
+PASS: div[role=slider]
+ AXRole: AXSlider
+
+PASS: div[role=spinbutton]
+ AXRole: AXSpinButton
+
+PASS: div[role=tablist]
+ AXRole: AXTabGroup
+
+PASS: div[role=tab]
+ AXRole: AXTab
+
+PASS: div[role=textbox]
+ AXRole: AXTextField
+
+PASS: div[role=timer]
+ AXRole: AXTimer
+
+PASS: div[role=toolbar]
+ AXRole: AXToolbar
+
+PASS: div[role=treegrid]
+ AXRole: AXTable
+
+PASS: div[role=gridcell]
+ AXRole: AXCell
+
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins></span></pre></div>
<a id="trunkLayoutTestsaccessibilityrolesexposedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/accessibility/roles-exposed.html (0 => 162067)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/accessibility/roles-exposed.html         (rev 0)
+++ trunk/LayoutTests/accessibility/roles-exposed.html        2014-01-15 13:15:49 UTC (rev 162067)
</span><span class="lines">@@ -0,0 +1,358 @@
</span><ins>+<!DOCTYPE HTML>
+<html>
+<body>
+<script src="../resources/js-test-pre.js"></script>
+
+<!-- ==================================================================================================== -->
+<!-- HTML elements in alphabetical order, excepting the need for nesting (e.g. <li> is with its <ol> and <ul> parents) -->
+<!-- ==================================================================================================== -->
+<a data-platform="atk,mac" data-role="AXLink" data-subrole="" data-roledescription="link" href="#" data-note="[href]" class="ex">X</a>
+<!-- [ATK] Skipped: not focusable --><a data-platform="mac" data-role="" data-subrole="" data-roledescription="" data-note=":not([href])" class="ex">X</a>
+<!-- [ATK] Skipped: not focusable --><abbr data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</abbr>
+<!-- http://webkit.org/b/83989 --><address data-platform="atk,mac" data-role-atk="AXLandmarkContentInfo" data-role-mac="AXGroup" data-subrole="AXLandmarkContentInfo" data-roledescription="content information" class="ex">X</address>
+<!-- skipped <area> -->
+<article data-platform="atk,mac" data-role-atk="AXArticle" data-role-mac="AXGroup" data-subrole="AXDocumentArticle" data-roledescription="article" class="ex">X</article>
+<aside data-platform="atk,mac" data-role-atk="AXLandmarkComplementary" data-role-mac="AXGroup" data-subrole="AXLandmarkComplementary" data-roledescription="complementary" class="ex">X</aside>
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><audio data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</audio>
+<!-- [ATK] Skipped: not focusable --><b data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</b>
+<!-- [ATK] Skipped: not focusable --><bdo data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</bdo>
+<blockquote data-platform="atk,mac" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</blockquote>
+<button data-platform="atk,mac" data-role="AXButton" data-subrole="" data-roledescription="button" class="ex">X</button>
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><canvas data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</canvas>
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><cite data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</cite>
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><code data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</code>
+<!-- skipped <command> -->
+<!-- skipped <datalist> -->
+<!-- [ATK] Skipped: not focusable --><del data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</del>
+<!-- skipped <details/summary> http://webkit.org/b/108979 -->
+<!-- [ATK] Skipped: not focusable --><dfn data-platform="mac" data-role="AXGroup" data-subrole="AXDefinition" data-roledescription="definition" class="ex">X</dfn>
+<dl data-platform="atk,mac" data-role-atk="AXDescriptionList" data-role-mac="AXList" data-subrole="AXDescriptionList" data-alternatesubrole="AXDefinitionList" data-roledescription="description list" class="ex">
+ <dt data-platform="atk,mac" data-role-atk="AXDescriptionTerm" data-role-mac="AXGroup" data-subrole="AXTerm" data-roledescription="term" class="ex">X</dt>
+ <dd data-platform="atk,mac" data-role-atk="AXDescriptionValue" data-role-mac="AXGroup" data-subrole="AXDescription" data-roledescription="description" class="ex">X</dd>
+</dl>
+<div data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<!-- [ATK] Skipped: not focusable --><em data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</em>
+<!-- skipped <embed> -->
+<fieldset data-platform="atk,mac" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">
+ <legend data-platform="atk,mac" data-role="" data-role-atk="AXLabel" data-subrole="" data-roledescription="" class="ex">X</legend>
+</fieldset>
+<!-- skipped figure/figcaption http://webkit.org/b/108996 -->
+<!-- [ATK] Skipped: not focusable --><footer data-platform="mac" data-role="AXGroup" data-subrole="AXLandmarkContentInfo" data-roledescription="footer" class="ex">X</footer>
+<form data-platform="atk,mac" data-role-atk="AXForm" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</form>
+<!-- skipped <frame> -->
+<!-- skipped <frameset> -->
+<!-- skipped <head> -->
+<!-- http://webkit.org/b/109013 --><header data-platform="atk,mac" data-role-atk="AXLandmarkBanner" data-role-mac="AXGroup" data-subrole="AXLandmarkBanner" data-roledescription="banner" class="ex">X</header>
+<hgroup data-platform="atk,mac" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</hgroup>
+<h1 data-platform="atk,mac" data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h1>
+<h2 data-platform="atk,mac" data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h2>
+<h3 data-platform="atk,mac" data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h3>
+<h4 data-platform="atk,mac" data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h4>
+<h5 data-platform="atk,mac" data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h5>
+<h6 data-platform="atk,mac" data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h6>
+<!-- http://webkit.org/b/109015 --><hr data-platform="atk,mac" data-role="" data-role-atk="AXSeparator" data-subrole="" data-roledescription="" class="ex">
+<!-- skipped <html> -->
+<!-- [ATK] Skipped: not focusable --><i data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</i>
+<!-- skipped <iframe> -->
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><img data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex" data-note=":not([src]):not([alt])">
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><img data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex" alt="" data-note="[alt='']">
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><img data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex" src="foo.png" data-note="[src]:not([alt])">
+<img data-platform="atk,mac" data-role="AXImage" data-subrole="" data-roledescription="image" class="ex" alt="X" data-note="[alt='X']">
+<input data-platform="atk,mac" type="button" value="X" data-role="AXButton" data-subrole="" data-roledescription="button" class="ex" data-note="[type='button']">
+<!-- skipped <menu><input type="button"></menu> -->
+<!-- [ATK] Wrong role (webkit.org/b/125493) --><!-- http://webkit.org/b/109017 --><input data-platform="mac" type="color" value="X" data-role="AXColorWell" data-subrole="" data-roledescription="color well" class="ex" data-note="[type='color']">
+<input data-platform="atk,mac" type="checkbox" data-role="AXCheckBox" data-subrole="" data-roledescription="check box" class="ex" data-note="[type='checkbox']">
+<!-- skipped <menu><input type="checkbox"></menu> -->
+<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="date" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='date']">
+<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="datetime" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='datetime']">
+<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="datetime-local" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='datetime-local']">
+<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="email" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='email']">
+<input data-platform="atk,mac" type="file" data-role="AXButton" data-subrole="AXFileUploadButton" data-roledescription="file upload button" class="ex" data-note="[type='file']">
+<!-- [ATK] Skipped: not focusable --><input data-platform="mac" type="hidden" data-role="" data-subrole="" data-roledescription="" class="ex" data-note="[type='hidden']">
+<input data-platform="atk,mac" type="image" data-role="AXButton" data-subrole="" data-roledescription="button" class="ex" data-note="[type='image']">
+<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="month" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='month']">
+<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="number" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='number']">
+<input data-platform="atk,mac" type="password" value="X" data-role-atk="AXPasswordField" data-role-mac="AXTextField" data-subrole="AXSecureTextField" data-roledescription="secure text field" class="ex" data-note="[type='password']">
+<input data-platform="atk,mac" type="radio" data-role="AXRadioButton" data-subrole="" data-roledescription="radio button" class="ex" data-note="[type='radio']">
+<!-- skipped <menu><input type="radio"></menu> -->
+<input data-platform="atk,mac" type="range" data-role="AXSlider" data-subrole="" data-roledescription="slider" class="ex" data-note="[type='range']">
+<input data-platform="atk,mac" type="reset" data-role="AXButton" data-subrole="" data-roledescription="button" class="ex" data-note="[type='reset']">
+<input data-platform="atk,mac" type="search" value="X" data-role="AXTextField" data-subrole="AXSearchField" data-roledescription="search text field" class="ex" data-note="[type='search']">
+<input data-platform="atk,mac" type="submit" data-role="AXButton" data-subrole="" data-roledescription="button" class="ex" data-note="[type='submit']">
+<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="tel" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='tel']">
+<input data-platform="atk,mac" type="text" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='text']">
+<!-- skipped <input type="text"> with suggestions source element: http://www.w3.org/html/wg/drafts/html/master/forms.html#concept-input-list -->
+<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="time" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='time']">
+<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="url" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='url']">
+<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="week" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='week']">
+<!-- [ATK] Skipped: not focusable --><ins data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</ins>
+<!-- skipped <link> -->
+<!-- skipped <map> -->
+<!-- [ATK] Skipped: not focusable --><!-- http://webkit.org/b/109018 --><mark data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</mark>
+<math data-platform="atk,mac" data-role-atk="AXMath" data-role-mac="AXGroup" data-subrole="AXDocumentMath" data-roledescription="math" class="ex">X</math>
+<!-- skipped <menu> -->
+<!-- skipped <meta> -->
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><meter data-platform="mac" data-role="AXProgressIndicator" data-subrole="" data-roledescription="progress indicator" class="ex" value="0.75">X</meter>
+<nav data-platform="atk,mac" data-role-atk="AXLandmarkNavigation" data-role-mac="AXGroup" data-subrole="AXLandmarkNavigation" data-roledescription="navigation" class="ex">X</nav>
+<!-- skipped <noscript> -->
+<!-- skipped <object> -->
+<ol data-platform="atk,mac" data-role="AXList" data-subrole="AXContentList" data-roledescription="content list" class="ex">
+ <li data-platform="atk,mac" data-role-atk="AXListItem" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</li>
+</ol>
+<!-- skipped <optgroup> -->
+<!-- skipped <option> -->
+<!-- skipped <output> -->
+<p data-platform="atk,mac" data-role-atk="AXParagraph" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</p>
+<!-- skipped <param> -->
+<pre data-platform="atk,mac" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</pre>
+<progress data-platform="atk,mac" data-role="AXProgressIndicator" data-subrole="" data-roledescription="progress indicator" class="ex" value="0.75">X</progress>
+<!-- [ATK] Skipped: not focusable --><q data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</q>
+<!-- skipped <ruby/rp/rt> -->
+<!-- [ATK] Skipped: not focusable --><s data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</s>
+<!-- [ATK] Skipped: not focusable --><samp data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</samp>
+<!-- skipped <script> -->
+<!-- [ATK] Wrong role (webkit.org/b/125493) --><!-- http://webkit.org/b/109024 --><section data-platform="mac" data-role="AXGroup" data-subrole="AXDocumentRegion" data-roledescription="region" class="ex">X</section>
+<select data-platform="atk,mac" data-role-atk="AXComboBox" data-role-mac="AXPopUpButton" data-subrole="" data-roledescription="pop up button" class="ex" data-note=":not([multiple])">
+ <!-- [ATK] Object not exposed (webkit.org/b/125491) --><option data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</option>
+ <!-- [ATK] Object not exposed (webkit.org/b/125491) --><optgroup data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex" label="more">
+ <!-- [ATK] Object not exposed (webkit.org/b/125491) --><option data-platform="mac">X</option>
+ </optgroup>
+</select>
+<select data-platform="atk,mac" data-role="AXList" data-subrole="" data-roledescription="list" class="ex" multiple data-note="[multiple]">
+ <option data-platform="atk,mac" data-role-atk="AXListItem" data-role-mac="AXStaticText" data-subrole="" data-roledescription="text" class="ex">X</option>
+ <optgroup data-platform="atk,mac" data-role-atk="AXListItem" data-role-mac="AXStaticText" data-subrole="" data-roledescription="text" class="ex" label="more">
+ <option>Y</option>
+ <option>Z</option>
+ </optgroup>
+</select>
+<!-- [ATK] Skipped: not focusable --><small data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</small>
+<!-- skipped <source> -->
+<!-- [ATK] Skipped: not focusable --><span data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</span>
+<!-- [ATK] Skipped: not focusable --><strong data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</strong>
+<!-- skipped <style> -->
+<!-- [ATK] Skipped: not focusable --><sub data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</sub>
+<!-- [ATK] Skipped: not focusable --><sup data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</sup>
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><svg data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</svg>
+
+<table data-platform="atk,mac" data-role="AXTable" data-subrole="" data-roledescription="table" class="ex">
+ <!-- [ATK] Skipped: not to be exposed --><caption data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</caption>
+ <!-- Not to be exposed in ATK--><thead data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">
+ <!-- [ATK] Object not exposed (webkit.org/b/125491) --><tr data-platform="mac" data-role="AXRow" data-subrole="" data-roledescription="row" class="ex">
+ <!-- Need separate test to verify colheader/rowheader -->
+ <th data-platform="atk,mac" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</th>
+ </tr>
+ </thead>
+ <!-- [ATK] Skipped: not to be exposed --><tbody data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">
+ <!-- [ATK] Object not exposed (webkit.org/b/125491) --><tr data-platform="mac" data-role="AXRow" data-subrole="" data-roledescription="row" class="ex">
+ <td data-platform="atk,mac" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</td>
+ </tr>
+ </tbody>
+ <!-- [ATK] Skipped: not to be exposed --><tfoot data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">
+ <!-- [ATK] Object not exposed (webkit.org/b/125491) --><tr data-platform="mac" data-role="AXRow" data-subrole="" data-roledescription="row" class="ex">
+ <!-- Need separate test to verify colheader/rowheader -->
+ <th data-platform="atk,mac" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</th>
+ </tr>
+ </tfoot>
+</table>
+<textarea data-platform="atk,mac" data-role-atk="AXTextField" data-role-mac="AXTextArea" data-subrole="" data-roledescription="text entry area" class="ex">X</textarea>
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><time data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</time>
+<!-- skipped <title> -->
+<ul data-platform="atk,mac" data-role="AXList" data-subrole="AXContentList" data-roledescription="content list" class="ex">
+ <li data-platform="atk,mac" data-role-atk="AXListItem" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</li>
+</ul>
+<!-- [ATK] Skipped: not focusable --><var data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</var>
+<!-- skipped <video> -->
+<!-- [ATK] Skipped: not focusable --><wbr data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</wbr>
+<!-- Todo: I left off adding HTML5 elements here at previous element: https://dvcs.w3.org/hg/html-api-map/raw-file/default/Overview.html -->
+
+
+
+<!-- ==================================================================================================== -->
+<!-- Abstract ARIA roles in alphabetical order; only generic AXGroup role should be exposed on abstract roles -->
+<!-- ==================================================================================================== -->
+<div role="command" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="composite" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="input" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="landmark" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="range" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="roletype" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="section" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="sectionhead" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="select" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="structure" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="widget" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="window" data-platform="atk,mac" data-role-atk="AXSection" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+
+
+<!-- ==================================================================================================== -->
+<!-- Non-abstract ARIA roles in alphabetical order, excepting the need for nesting (e.g. row is with its grid parent) -->
+<!-- ==================================================================================================== -->
+<div role="alert" data-platform="atk,mac" data-role-atk="AXAlert" data-role-mac="AXGroup" data-subrole="AXApplicationAlert" data-roledescription="alert" class="ex">X</div>
+<div role="alertdialog" data-platform="atk,mac" data-role-atk="AXAlert" data-role-mac="AXGroup" data-subrole="AXApplicationAlertDialog" data-roledescription="alert dialog" class="ex">X</div>
+<div role="application" data-platform="atk,mac" data-role-atk="AXEmbedded" data-role-mac="AXGroup" data-subrole="AXLandmarkApplication" data-roledescription="application" class="ex">X</div>
+<div role="article" data-platform="atk,mac" data-role-atk="AXArticle" data-role-mac="AXGroup" data-subrole="AXDocumentArticle" data-roledescription="article" class="ex">X</div>
+<div role="banner" data-platform="atk,mac" data-role-atk="AXLandmarkBanner" data-role-mac="AXGroup" data-subrole="AXLandmarkBanner" data-roledescription="banner" class="ex">X</div>
+<div role="button" data-platform="atk,mac" data-role="AXButton" data-subrole="" data-roledescription="button" class="ex">X</div>
+<div role="checkbox" data-platform="atk,mac" data-role="AXCheckBox" data-subrole="" data-roledescription="check box" class="ex">X</div>
+<div role="combobox" data-platform="atk,mac" data-role="AXComboBox" data-subrole="" data-roledescription="combo box" class="ex">X</div>
+<div role="complementary" data-platform="atk,mac" data-role-atk="AXLandmarkComplementary" data-role-mac="AXGroup" data-subrole="AXLandmarkComplementary" data-roledescription="complementary" class="ex">X</div>
+<div role="contentinfo" data-platform="atk,mac" data-role-atk="AXLandmarkContentInfo" data-role-mac="AXGroup" data-subrole="AXLandmarkContentInfo" data-roledescription="content information" class="ex">X</div>
+<div role="definition" data-platform="atk,mac" data-role-atk="AXDefinition" data-role-mac="AXGroup" data-subrole="AXDefinition" data-roledescription="definition" class="ex">X</div>
+<div role="dialog" data-platform="atk,mac" data-role-atk="AXDialog" data-role-mac="AXGroup" data-subrole="AXApplicationDialog" data-roledescription="dialog" class="ex">X</div>
+<div role="directory" data-platform="atk,mac" data-role="AXList" data-subrole="AXContentList" data-roledescription="content list" class="ex">X</div>
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><div data-platform="mac" role="document" data-role="AXGroup" data-subrole="AXDocument" data-roledescription="document" class="ex">X</div>
+<!-- [ATK] Wrong role (webkit.org/b/125493) --><div data-platform="mac" role="form" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div data-platform="atk,mac" role="grid" data-role="AXTable" data-subrole="" data-roledescription="table" class="ex">
+ <!-- [ATK] Object not exposed (webkit.org/b/125491) --><div data-platform="mac" role="rowgroup" data-role="" data-subrole="" data-roledescription="" class="ex">
+ <!-- [ATK] Object not exposed (webkit.org/b/125491) --><div data-platform="mac" role="row" data-role="AXRow" data-subrole="" data-roledescription="row" class="ex">
+ <!-- Note: diff between rowheader, columnheader, and gridcell is in cross-reference from grid; need additional non-role verification in another test. -->
+ <!-- [ATK] Wrong role (webkit.org/b/125493) --><div data-platform="mac" role="rowheader" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
+ <!-- [ATK] Wrong role (webkit.org/b/125493) --><div data-platform="mac" role="columnheader" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
+ <div data-platform="atk,mac" role="gridcell" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
+ </div>
+ </div>
+</div>
+<div role="group" data-platform="atk,mac" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+<div role="heading" data-platform="atk,mac" data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</div>
+<div role="img" data-platform="atk,mac" data-role="AXImage" data-subrole="" data-roledescription="image" class="ex">X</div>
+<div role="link" data-platform="atk,mac" data-role="AXLink" data-subrole="" data-roledescription="link" class="ex">X</div>
+<div role="list" data-platform="atk,mac" data-role="AXList" data-subrole="AXContentList" data-roledescription="content list" class="ex">
+ <div role="listitem" data-platform="atk,mac" data-role-atk="AXListItem" data-role-mac="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
+</div>
+<!-- [ATK] Object not exposed (webkit.org/b/125491) --><div role="listbox" data-platform="mac" data-role="AXList" data-subrole="" data-roledescription="list" class="ex">
+ <div role="option" data-platform="atk,mac" data-role-atk="AXListItem" data-role-mac="AXStaticText" data-subrole="" data-roledescription="text" class="ex">X</div>
+</div>
+<div role="log" data-platform="atk,mac" data-role-atk="AXLog" data-role-mac="AXGroup" data-subrole="AXApplicationLog" data-roledescription="log" class="ex">X</div>
+<div role="main" data-platform="atk,mac" data-role-atk="AXLandmarkMain" data-role-mac="AXGroup" data-subrole="AXLandmarkMain" data-roledescription="main" class="ex">X</div>
+<div role="marquee" data-platform="atk,mac" data-role-atk="AXMarquee" data-role-mac="AXGroup" data-subrole="AXApplicationMarquee" data-roledescription="marquee" class="ex">X</div>
+<div role="math" data-platform="atk,mac" data-role-atk="AXMath" data-role-mac="AXGroup" data-subrole="AXDocumentMath" data-roledescription="math" class="ex">X</div>
+<div role="menu" data-platform="atk,mac" data-role="AXMenu" data-subrole="" data-roledescription="menu" class="ex">
+ <!-- Note: diff between menuitem types is an attribute; need additional non-role verification in another test. -->
+ <div role="menuitem" data-platform="atk,mac" data-role="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
+ <div role="menuitemcheckbox" data-platform="atk,mac" data-role-atk="AXCheckMenuItem" data-role-mac="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
+ <div role="menuitemradio" data-platform="atk,mac" data-role-atk="AXRadioMenuItem" data-role-mac="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
+</div>
+<div role="menubar" data-platform="atk,mac" data-role="AXMenuBar" data-subrole="" data-roledescription="menu bar" class="ex">
+ <!-- Note: diff between menuitem types is an attribute; need additional non-role verification in another test. -->
+ <div role="menuitem" data-platform="atk,mac" data-role="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
+ <div role="menuitemcheckbox" data-platform="atk,mac" data-role-atk="AXCheckMenuItem" data-role-mac="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
+ <div role="menuitemradio" data-platform="atk,mac" data-role-atk="AXRadioMenuItem" data-role-mac="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
+</div>
+<div role="navigation" data-platform="atk,mac" data-role-atk="AXLandmarkNavigation" data-role-mac="AXGroup" data-subrole="AXLandmarkNavigation" data-roledescription="navigation" class="ex">X</div>
+<div role="note" data-platform="atk,mac" data-role-atk="AXComment" data-role-mac="AXGroup" data-subrole="AXDocumentNote" data-roledescription="note" class="ex">X</div>
+<!-- [ATK] Skipped: not to be exposed --><div role="presentation" data-platform="mac" data-platform="atk,mac" data-role="" data-subrole="" data-roledescription="" class="ex">X</div>
+<div role="progressbar" data-platform="atk,mac" data-role="AXProgressIndicator" data-subrole="" data-roledescription="progress indicator" class="ex">X</div>
+<div role="radiogroup" data-platform="atk,mac" data-role-atk="AXGroup" data-role-mac="AXRadioGroup" data-subrole="" data-roledescription="radio group" class="ex">
+ <div role="radio" data-platform="atk,mac" data-role="AXRadioButton" data-subrole="" data-roledescription="radio button" class="ex">X</div>
+</div>
+<!-- [ATK] Wrong role (webkit.org/b/125493) --><div role="region" data-platform="mac" data-role="AXGroup" data-subrole="AXDocumentRegion" data-roledescription="region" class="ex">X</div>
+<div role="scrollbar" data-platform="atk,mac" data-role="AXScrollBar" data-subrole="" data-roledescription="scroll bar" class="ex">X</div>
+<div role="search" data-platform="atk,mac" data-role-atk="AXLandmarkSearch" data-role-mac="AXGroup" data-subrole="AXLandmarkSearch" data-roledescription="search" class="ex">X</div>
+<div role="separator" data-platform="atk,mac" data-role-atk="AXSeparator" data-role-mac="AXSplitter" data-subrole="" data-roledescription="splitter" class="ex">X</div>
+<div role="slider" data-platform="atk,mac" data-role="AXSlider" data-subrole="" data-roledescription="slider" class="ex">X</div>
+<div role="spinbutton" data-platform="atk,mac" data-role-atk="AXSpinButton" data-role-mac="AXIncrementor" data-subrole="" data-roledescription="stepper" class="ex">X</div>
+<!-- [ATK] Wrong role (webkit.org/b/125493) --><div role="status" data-platform="mac" data-role="AXGroup" data-subrole="AXApplicationStatus" data-roledescription="application status" class="ex">X</div>
+<div role="tablist" data-platform="atk,mac" data-role="AXTabGroup" data-subrole="" data-roledescription="tab group" class="ex">
+ <div role="tab" data-platform="atk,mac" data-role-atk="AXTab" data-role-mac="AXRadioButton" data-subrole="" data-roledescription="tab" class="ex">X</div>
+</div>
+<!-- [ATK] Wrong role (webkit.org/b/125493) --><div role="tabpanel" data-platform="mac" data-role="AXGroup" data-subrole="AXTabPanel" data-roledescription="tab panel" class="ex">X</div>
+<div role="textbox" data-platform="atk,mac" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex">X</div>
+<div role="timer" data-platform="atk,mac" data-role-atk="AXTimer" data-role-mac="AXGroup" data-subrole="AXApplicationTimer" data-roledescription="timer" class="ex">X</div>
+<div role="toolbar" data-platform="atk,mac" data-role="AXToolbar" data-subrole="" data-roledescription="toolbar" class="ex">X</div>
+<!-- [ATK] Wrong role (webkit.org/b/125493) --><div role="tooltip" data-platform="mac" data-role="AXGroup" data-subrole="AXUserInterfaceTooltip" data-roledescription="tooltip" class="ex">X</div>
+<!-- [ATK] Wrong role (webkit.org/b/125493) --><div role="tree" data-platform="mac" data-role="AXOutline" data-subrole="" data-roledescription="outline" class="ex">
+ <!-- [ATK] Wrong role (webkit.org/b/125493) --><div role="treeitem" data-platform="mac" data-role="AXRow" data-subrole="AXOutlineRow" data-roledescription="outline row" class="ex">X</div>
+ <!-- [ATK] Wrong role (webkit.org/b/125493) --><div role="group" data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">
+ <!-- [ATK] Wrong role (webkit.org/b/125493) --><div role="treeitem" data-platform="mac" data-role="AXRow" data-subrole="AXOutlineRow" data-roledescription="outline row" class="ex">X</div>
+ </div>
+</div>
+<div role="treegrid" data-platform="atk,mac" data-role="AXTable" data-subrole="" data-roledescription="table" class="ex">
+ <!-- [ATK] Object not exposed (webkit.org/b/125491) --><div role="rowgroup" data-platform="mac" data-role="" data-subrole="" data-roledescription="" class="ex">
+ <!-- [ATK] Object not exposed (webkit.org/b/125491) --><div role="row" data-platform="mac" data-role="AXRow" data-subrole="" data-roledescription="row" class="ex">
+ <!-- Note: diff between rowheader, columnheader, and gridcell is in cross-reference from grid; need additional non-role verification in another test. -->
+ <!-- [ATK] Wrong role (webkit.org/b/125493) --><div role="rowheader" data-platform="mac" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
+ <!-- [ATK] Wrong role (webkit.org/b/125493) --><div role="columnheader" data-platform="mac" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
+ <div role="gridcell" data-platform="atk,mac" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
+ </div>
+ </div>
+</div>
+
+<div id="console"></div>
+<script>
+if (window.testRunner && window.accessibilityController) {
+ description("This tests that native elements and ARIA overrides result in the expected role, subrole and role description.")
+ var currentPlatform = accessibilityController.platformName;
+ var examples = document.querySelectorAll('.ex');
+ var indent = "\n "; // newline and six spaces
+ var el, supportedPlatforms, ariaRole, axElement, role, subrole, roleDescription, output, expectedRole, expectation, matchedForPlatform, result;
+ for (var i = 0, c = examples.length; i < c; i++) {
+ el = examples[i];
+
+ supportedPlatforms = el.getAttribute('data-platform');
+ if (!supportedPlatforms || supportedPlatforms.indexOf(currentPlatform) == -1)
+ continue;
+
+ el.id = 'ex' + i;
+ ariaRole = el.getAttribute('role');
+ axElement = accessibilityController.accessibleElementById(el.id);
+ if (axElement) {
+ role = axElement.role;
+ subrole = axElement.subrole;
+ roleDescription = axElement.roleDescription;
+ } else {
+ role = 'AXRole: ';
+ subrole = 'AXSubrole: ';
+ roleDescription = 'AXRoleDescription: ';
+ }
+
+ output = el.tagName.toLowerCase() + (ariaRole?("[role="+ariaRole+"]"):'');
+ if (el.getAttribute('data-note')) {
+ output += el.getAttribute('data-note');
+ }
+ output += indent;
+ output += role + indent;
+
+ expectedRole = "";
+ if (el.hasAttribute('data-role-' + currentPlatform)) {
+ expectedRole = el.getAttribute('data-role-' + currentPlatform);
+ } else if (el.hasAttribute('data-role')) {
+ expectedRole = el.getAttribute('data-role');
+ }
+
+ expectation = expectedRole;
+ matchedResults = (role.replace('AXRole: ','') == expectedRole)
+
+ // In the Mac platform more things than just the role are tested so we need to
+ // expand a bit the output and expected results, as well as add some extra checks.
+ if (currentPlatform == "mac") {
+ output += subrole + indent;
+ output += roleDescription + indent;
+
+ expectation += "/";
+ expectation += el.getAttribute('data-subrole');
+ if (el.getAttribute('data-alternatesubrole')) expectation += " or " + el.getAttribute('data-alternatesubrole');
+ expectation += "/" + el.getAttribute('data-roledescription');
+
+ matchedResults = matchedResults && (subrole.replace('AXSubrole: ','') == el.getAttribute('data-subrole') || subrole.replace('AXSubrole: ','') == el.getAttribute('data-alternatesubrole'));
+ matchedResults = matchedResults && (roleDescription.replace('AXRoleDescription: ','') == el.getAttribute('data-roledescription'));
+ }
+
+ result = document.getElementById('console');
+ if (matchedResults) {
+ result.innerText += "PASS: " + output + "\n";
+ } else {
+ result.innerText += "FAIL: " + output + "Expected: " + expectation + "\n\n";
+ }
+ }
+
+ // Once tests are complete, hide all the example markup.
+ examples = document.querySelectorAll('.ex');
+ for (var i = 0, c = examples.length; i < c; i++) {
+ el = examples[i];
+ el.style.display = 'none';
+ }
+}
+</script>
+<script src="../resources/js-test-post.js"></script>
+</body>
+</html>
</ins></span></pre></div>
<a id="trunkLayoutTestsplatformgtkaccessibilityrolesexposedexpectedtxt"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/platform/gtk/accessibility/roles-exposed-expected.txt (162066 => 162067)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/gtk/accessibility/roles-exposed-expected.txt        2014-01-15 12:32:03 UTC (rev 162066)
+++ trunk/LayoutTests/platform/gtk/accessibility/roles-exposed-expected.txt        2014-01-15 13:15:49 UTC (rev 162067)
</span><span class="lines">@@ -1,416 +0,0 @@
</span><del>-This tests that native elements and ARIA overrides result in the expected role and role description.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS: a[href]
- AXRole: AXLink
-
-PASS: address
- AXRole: AXLandmarkContentInfo
-
-PASS: article
- AXRole: AXArticle
-
-PASS: aside
- AXRole: AXLandmarkComplementary
-
-PASS: blockquote
- AXRole: AXGroup
-
-PASS: button
- AXRole: AXButton
-
-PASS: dl
- AXRole: AXDescriptionList
-
-PASS: dt
- AXRole: AXDescriptionTerm
-
-PASS: dd
- AXRole: AXDescriptionValue
-
-PASS: div
- AXRole: AXSection
-
-PASS: fieldset
- AXRole: AXGroup
-
-PASS: legend
- AXRole: AXLabel
-
-PASS: form
- AXRole: AXForm
-
-PASS: header
- AXRole: AXLandmarkBanner
-
-PASS: hgroup
- AXRole: AXGroup
-
-PASS: h1
- AXRole: AXHeading
-
-PASS: h2
- AXRole: AXHeading
-
-PASS: h3
- AXRole: AXHeading
-
-PASS: h4
- AXRole: AXHeading
-
-PASS: h5
- AXRole: AXHeading
-
-PASS: h6
- AXRole: AXHeading
-
-PASS: hr
- AXRole: AXSeparator
-
-PASS: img[alt='X']
- AXRole: AXImage
-
-PASS: input[type='button']
- AXRole: AXButton
-
-PASS: input[type='checkbox']
- AXRole: AXCheckBox
-
-PASS: input[type='date']
- AXRole: AXTextField
-
-PASS: input[type='datetime']
- AXRole: AXTextField
-
-PASS: input[type='datetime-local']
- AXRole: AXTextField
-
-PASS: input[type='email']
- AXRole: AXTextField
-
-PASS: input[type='file']
- AXRole: AXButton
-
-PASS: input[type='image']
- AXRole: AXButton
-
-PASS: input[type='month']
- AXRole: AXTextField
-
-PASS: input[type='number']
- AXRole: AXTextField
-
-PASS: input[type='password']
- AXRole: AXPasswordField
-
-PASS: input[type='radio']
- AXRole: AXRadioButton
-
-PASS: input[type='range']
- AXRole: AXSlider
-
-PASS: input[type='reset']
- AXRole: AXButton
-
-PASS: input[type='search']
- AXRole: AXTextField
-
-PASS: input[type='submit']
- AXRole: AXButton
-
-PASS: input[type='tel']
- AXRole: AXTextField
-
-PASS: input[type='text']
- AXRole: AXTextField
-
-PASS: input[type='time']
- AXRole: AXTextField
-
-PASS: input[type='url']
- AXRole: AXTextField
-
-PASS: input[type='week']
- AXRole: AXTextField
-
-PASS: math
- AXRole: AXMath
-
-PASS: nav
- AXRole: AXLandmarkNavigation
-
-PASS: ol
- AXRole: AXList
-
-PASS: li
- AXRole: AXListItem
-
-PASS: p
- AXRole: AXParagraph
-
-PASS: pre
- AXRole: AXGroup
-
-PASS: progress
- AXRole: AXProgressIndicator
-
-PASS: select:not([multiple])
- AXRole: AXComboBox
-
-PASS: select[multiple]
- AXRole: AXList
-
-PASS: option
- AXRole: AXListItem
-
-PASS: optgroup
- AXRole: AXListItem
-
-PASS: table
- AXRole: AXTable
-
-FAIL: tr
- AXRole: (no element)
- Expected: AXRow
-
-PASS: th
- AXRole: AXCell
-
-FAIL: tr
- AXRole: (no element)
- Expected: AXRow
-
-PASS: td
- AXRole: AXCell
-
-FAIL: tr
- AXRole: (no element)
- Expected: AXRow
-
-PASS: th
- AXRole: AXCell
-
-PASS: textarea
- AXRole: AXTextField
-
-PASS: ul
- AXRole: AXList
-
-PASS: li
- AXRole: AXListItem
-
-PASS: div[role=command]
- AXRole: AXSection
-
-PASS: div[role=composite]
- AXRole: AXSection
-
-PASS: div[role=input]
- AXRole: AXSection
-
-PASS: div[role=landmark]
- AXRole: AXSection
-
-PASS: div[role=range]
- AXRole: AXSection
-
-PASS: div[role=roletype]
- AXRole: AXSection
-
-PASS: div[role=section]
- AXRole: AXSection
-
-PASS: div[role=sectionhead]
- AXRole: AXSection
-
-PASS: div[role=select]
- AXRole: AXSection
-
-PASS: div[role=structure]
- AXRole: AXSection
-
-PASS: div[role=widget]
- AXRole: AXSection
-
-PASS: div[role=window]
- AXRole: AXSection
-
-PASS: div[role=alert]
- AXRole: AXAlert
-
-PASS: div[role=alertdialog]
- AXRole: AXAlert
-
-PASS: div[role=application]
- AXRole: AXEmbedded
-
-PASS: div[role=article]
- AXRole: AXArticle
-
-PASS: div[role=banner]
- AXRole: AXLandmarkBanner
-
-PASS: div[role=button]
- AXRole: AXButton
-
-PASS: div[role=checkbox]
- AXRole: AXCheckBox
-
-PASS: div[role=combobox]
- AXRole: AXComboBox
-
-PASS: div[role=complementary]
- AXRole: AXLandmarkComplementary
-
-PASS: div[role=contentinfo]
- AXRole: AXLandmarkContentInfo
-
-PASS: div[role=definition]
- AXRole: AXDefinition
-
-PASS: div[role=dialog]
- AXRole: AXDialog
-
-PASS: div[role=directory]
- AXRole: AXList
-
-PASS: div[role=grid]
- AXRole: AXTable
-
-FAIL: div[role=rowgroup]
- AXRole: (no element)
- Expected:
-
-FAIL: div[role=row]
- AXRole: (no element)
- Expected: AXRow
-
-PASS: div[role=gridcell]
- AXRole: AXCell
-
-PASS: div[role=group]
- AXRole: AXGroup
-
-PASS: div[role=heading]
- AXRole: AXHeading
-
-PASS: div[role=img]
- AXRole: AXImage
-
-PASS: div[role=link]
- AXRole: AXLink
-
-PASS: div[role=list]
- AXRole: AXList
-
-PASS: div[role=listitem]
- AXRole: AXListItem
-
-FAIL: div[role=listbox]
- AXRole: AXList
- Expected: AXListBox
-
-PASS: div[role=option]
- AXRole: AXListItem
-
-PASS: div[role=log]
- AXRole: AXLog
-
-PASS: div[role=main]
- AXRole: AXLandmarkMain
-
-PASS: div[role=marquee]
- AXRole: AXMarquee
-
-PASS: div[role=math]
- AXRole: AXMath
-
-PASS: div[role=menu]
- AXRole: AXMenu
-
-PASS: div[role=menuitem]
- AXRole: AXMenuItem
-
-PASS: div[role=menuitemcheckbox]
- AXRole: AXCheckMenuItem
-
-PASS: div[role=menuitemradio]
- AXRole: AXRadioMenuItem
-
-PASS: div[role=menubar]
- AXRole: AXMenuBar
-
-PASS: div[role=menuitem]
- AXRole: AXMenuItem
-
-PASS: div[role=menuitemcheckbox]
- AXRole: AXCheckMenuItem
-
-PASS: div[role=menuitemradio]
- AXRole: AXRadioMenuItem
-
-PASS: div[role=navigation]
- AXRole: AXLandmarkNavigation
-
-PASS: div[role=note]
- AXRole: AXComment
-
-PASS: div[role=progressbar]
- AXRole: AXProgressIndicator
-
-PASS: div[role=radiogroup]
- AXRole: AXGroup
-
-PASS: div[role=radio]
- AXRole: AXRadioButton
-
-PASS: div[role=scrollbar]
- AXRole: AXScrollBar
-
-PASS: div[role=search]
- AXRole: AXLandmarkSearch
-
-PASS: div[role=separator]
- AXRole: AXSeparator
-
-PASS: div[role=slider]
- AXRole: AXSlider
-
-PASS: div[role=spinbutton]
- AXRole: AXSpinButton
-
-PASS: div[role=tablist]
- AXRole: AXTabGroup
-
-PASS: div[role=tab]
- AXRole: AXTab
-
-PASS: div[role=textbox]
- AXRole: AXTextField
-
-PASS: div[role=timer]
- AXRole: AXTimer
-
-PASS: div[role=toolbar]
- AXRole: AXToolbar
-
-PASS: div[role=treegrid]
- AXRole: AXTable
-
-FAIL: div[role=rowgroup]
- AXRole: (no element)
- Expected:
-
-FAIL: div[role=row]
- AXRole: (no element)
- Expected: AXRow
-
-PASS: div[role=gridcell]
- AXRole: AXCell
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
</del></span></pre></div>
<a id="trunkLayoutTestsplatformgtkaccessibilityrolesexposedhtml"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/platform/gtk/accessibility/roles-exposed.html (162066 => 162067)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/gtk/accessibility/roles-exposed.html        2014-01-15 12:32:03 UTC (rev 162066)
+++ trunk/LayoutTests/platform/gtk/accessibility/roles-exposed.html        2014-01-15 13:15:49 UTC (rev 162067)
</span><span class="lines">@@ -1,324 +0,0 @@
</span><del>-<!DOCTYPE HTML>
-<html>
-<body>
-<script src="../../../resources/js-test-pre.js"></script>
-
-<!-- ==================================================================================================== -->
-<!-- HTML elements in alphabetical order, excepting the need for nesting (e.g. <li> is with its <ol> and <ul> parents) -->
-<!-- ==================================================================================================== -->
-<a data-role="AXLink" href="#" data-note="[href]" class="ex">X</a>
-<!-- skipped ATK: not focusable <a data-role="" data-note=":not([href])" class="ex">X</a>-->
-<!-- skipped ATK: not focusable <abbr data-role="" class="ex">X</abbr>-->
-<address data-role="AXLandmarkContentInfo" class="ex">X</address>
-<!-- skipped <area> -->
-<article data-role="AXArticle" class="ex">X</article>
-<aside data-role="AXLandmarkComplementary" class="ex">X</aside>
-<!-- http://webkit.org/b/125491 <audio data-role="" class="ex">X</audio>-->
-<!-- skipped ATK: not focusable <b data-role="" class="ex">X</b>-->
-<!-- skipped ATK: not focusable <bdo data-role="" class="ex">X</bdo>-->
-<blockquote data-role="AXGroup" class="ex">X</blockquote>
-<button data-role="AXButton" class="ex">X</button>
-<!-- http://webkit.org/b/125491 <canvas data-role="" class="ex">X</canvas>-->
-<!-- http://webkit.org/b/125491 <cite data-role="" class="ex">X</cite>-->
-<!-- http://webkit.org/b/125491 <code data-role="" class="ex">X</code>-->
-<!-- skipped <command> -->
-<!-- skipped <datalist> -->
-<!-- skipped ATK: not focusable <del data-role="" class="ex">X</del>-->
-<!-- skipped <details/summary> http://webkit.org/b/108979 -->
-<!-- skipped <dfn data-role="AXGroup" class="ex">X</dfn> -->
-<dl data-role="AXDescriptionList" class="ex">
- <dt data-role="AXDescriptionTerm" class="ex">X</dt>
- <dd data-role="AXDescriptionValue" class="ex">X</dd>
-</dl>
-<div data-role="AXSection" class="ex">X</div>
-<!-- skipped ATK: not focusable <em data-role="" class="ex">X</em>-->
-<!-- skipped <embed> -->
-<fieldset data-role="AXGroup" class="ex">
- <legend data-role="AXLabel" class="ex">X</legend>
-</fieldset>
-<!-- skipped figure/figcaption http://webkit.org/b/108996 -->
-<!-- skipped <footer data-role="AXGroup" class="ex">X</footer> -->
-<form data-role="AXForm" class="ex">X</form>
-<!-- skipped <frame> -->
-<!-- skipped <frameset> -->
-<!-- skipped <head> -->
-<header data-role="AXLandmarkBanner" class="ex">X</header>
-<hgroup data-role="AXGroup" class="ex">X</hgroup>
-<h1 data-role="AXHeading" class="ex">X</h1>
-<h2 data-role="AXHeading" class="ex">X</h2>
-<h3 data-role="AXHeading" class="ex">X</h3>
-<h4 data-role="AXHeading" class="ex">X</h4>
-<h5 data-role="AXHeading" class="ex">X</h5>
-<h6 data-role="AXHeading" class="ex">X</h6>
-<hr data-role="AXSeparator" class="ex">
-<!-- skipped <html> -->
-<!-- skipped ATK: not focusable <i data-role="" class="ex">X</i>-->
-<!-- skipped <iframe> -->
-<!-- http://webkit.org/b/125491 <img data-role="" class="ex" data-note=":not([src]):not([alt])">-->
-<!-- http://webkit.org/b/125491 <img data-role="" class="ex" alt="" data-note="[alt='']">-->
-<!-- http://webkit.org/b/125491 <img data-role="" class="ex" src="foo.png" data-note="[src]:not([alt])">-->
-<img data-role="AXImage" class="ex" alt="X" data-note="[alt='X']">
-<input type="button" value="X" data-role="AXButton" class="ex" data-note="[type='button']">
-<!-- skipped <menu><input type="button"></menu> -->
-<!-- http://webkit.org/b/125493 <input type="color" value="X" data-role="AXColorWell" class="ex" data-note="[type='color']">-->
-<input type="checkbox" data-role="AXCheckBox" class="ex" data-note="[type='checkbox']">
-<!-- skipped <menu><input type="checkbox"></menu> -->
-<!-- http://webkit.org/b/109017 --><input type="date" value="X" data-role="AXTextField" class="ex" data-note="[type='date']">
-<!-- http://webkit.org/b/109017 --><input type="datetime" value="X" data-role="AXTextField" class="ex" data-note="[type='datetime']">
-<!-- http://webkit.org/b/109017 --><input type="datetime-local" value="X" data-role="AXTextField" class="ex" data-note="[type='datetime-local']">
-<!-- http://webkit.org/b/109017 --><input type="email" value="X" data-role="AXTextField" class="ex" data-note="[type='email']">
-<input type="file" data-role="AXButton" class="ex" data-note="[type='file']">
-<!-- skipped ATK: not visible <input type="hidden" data-role="" class="ex" data-note="[type='hidden']">-->
-<input type="image" data-role="AXButton" class="ex" data-note="[type='image']">
-<!-- http://webkit.org/b/109017 --><input type="month" value="X" data-role="AXTextField" class="ex" data-note="[type='month']">
-<!-- http://webkit.org/b/109017 --><input type="number" value="X" data-role="AXTextField" class="ex" data-note="[type='number']">
-<input type="password" value="X" data-role="AXPasswordField" class="ex" data-note="[type='password']">
-<input type="radio" data-role="AXRadioButton" class="ex" data-note="[type='radio']">
-<!-- skipped <menu><input type="radio"></menu> -->
-<input type="range" data-role="AXSlider" class="ex" data-note="[type='range']">
-<input type="reset" data-role="AXButton" class="ex" data-note="[type='reset']">
-<input type="search" value="X" data-role="AXTextField" class="ex" data-note="[type='search']">
-<input type="submit" data-role="AXButton" class="ex" data-note="[type='submit']">
-<!-- http://webkit.org/b/109017 --><input type="tel" value="X" data-role="AXTextField" class="ex" data-note="[type='tel']">
-<input type="text" value="X" data-role="AXTextField" class="ex" data-note="[type='text']">
-<!-- skipped <input type="text"> with suggestions source element: http://www.w3.org/html/wg/drafts/html/master/forms.html#concept-input-list -->
-<!-- http://webkit.org/b/109017 --><input type="time" value="X" data-role="AXTextField" class="ex" data-note="[type='time']">
-<!-- http://webkit.org/b/109017 --><input type="url" value="X" data-role="AXTextField" class="ex" data-note="[type='url']">
-<!-- http://webkit.org/b/109017 --><input type="week" value="X" data-role="AXTextField" class="ex" data-note="[type='week']">
-<!-- skipped ATK: not focusable <ins data-role="" class="ex">X</ins>-->
-<!-- skipped <link> -->
-<!-- skipped <map> -->
-<!-- skipped ATK: not focusable -- http://webkit.org/b/109018 <mark data-role="" class="ex">X</mark>-->
-<math data-role="AXMath" class="ex">X</math>
-<!-- skipped <menu> -->
-<!-- skipped <meta> -->
-<!-- http://webkit.org/b/125491 <meter data-role="AXProgressIndicator" class="ex" value="0.75">X</meter>-->
-<nav data-role="AXLandmarkNavigation" class="ex">X</nav>
-<!-- skipped <noscript> -->
-<!-- skipped <object> -->
-<ol data-role="AXList" class="ex">
- <li data-role="AXListItem" class="ex">X</li>
-</ol>
-<!-- skipped <optgroup> -->
-<!-- skipped <option> -->
-<!-- skipped <output> -->
-<p data-role="AXParagraph" class="ex">X</p>
-<!-- skipped <param> -->
-<pre data-role="AXGroup" class="ex">X</pre>
-<progress data-role="AXProgressIndicator" class="ex" value="0.75">X</progress>
-<!-- skipped ATK: not focusable <q data-role="" class="ex">X</q> -->
-<!-- skipped <ruby/rp/rt> -->
-<!-- skipped ATK: not focusable <s data-role="" class="ex">X</s> -->
-<!-- skipped ATK: not focusable <samp data-role="" class="ex">X</samp> -->
-<!-- skipped <script> -->
-<!-- http://webkit.org/b/125493 <section data-role="AXSection" class="ex">X</section> -->
-<select data-role="AXComboBox" class="ex" data-note=":not([multiple])">
-<!-- http://webkit.org/b/125491 <option data-role="" class="ex">X</option> -->
-<!-- http://webkit.org/b/125491 <optgroup data-role="" class="ex" label="more"> <option>X</option> </optgroup> -->
-</select>
-<select data-role="AXList" class="ex" multiple data-note="[multiple]">
- <option data-role="AXListItem" class="ex">X</option>
- <optgroup data-role="AXListItem" class="ex" label="more">
- <option>Y</option>
- <option>Z</option>
- </optgroup>
-</select>
-<!-- skipped ATK: not focusable <small data-role="" class="ex">X</small> -->
-<!-- skipped <source> -->
-<!-- skipped ATK: not focusable <span data-role="" class="ex">X</span> -->
-<!-- skipped ATK: not focusable <strong data-role="" class="ex">X</strong> -->
-<!-- skipped <style> -->
-<!-- skipped ATK: not focusable <sub data-role="" class="ex">X</sub> -->
-<!-- skipped ATK: not focusable <sup data-role="" class="ex">X</sup> -->
-<!-- http://webkit.org/b/125491 <svg data-role="" class="ex">X</svg> -->
-
-<table data-role="AXTable" class="ex">
-<!-- skipped ATK: not to be exposed <caption data-role="" class="ex">X</caption> -->
- <thead data-role=""><!-- skipped ATK: not to be exposed -->
- <tr data-role="AXRow" class="ex"><!-- http://webkit.org/b/125491 -->
- <!-- Need separate test to verify colheader/rowheader -->
- <th data-role="AXCell" class="ex">X</th>
- </tr>
- </thead>
- <tbody data-role=""><!-- skipped ATK: not to be exposed -->
- <tr data-role="AXRow" class="ex"><!-- http://webkit.org/b/125491 -->
- <td data-role="AXCell" class="ex">X</td>
- </tr>
- </tbody>
- <tfoot data-role=""><!-- skipped ATK: not to be exposed -->
- <tr data-role="AXRow" class="ex"><!-- http://webkit.org/b/125491 -->
- <!-- Need separate test to verify colheader/rowheader -->
- <th data-role="AXCell" class="ex">X</th>
- </tr>
- </tfoot>
-</table>
-<textarea data-role="AXTextField" class="ex">X</textarea>
-<!-- http://webkit.org/b/125491 <time data-role="" class="ex">X</time> -->
-<!-- skipped <title> -->
-<ul data-role="AXList" class="ex">
- <li data-role="AXListItem" class="ex">X</li>
-</ul>
-<!-- skipped ATK: not focusable <var data-role="" class="ex">X</var> -->
-<!-- http://webkit.org/b/125491 <video> -->
-<!-- skipped ATK: not focusable <wbr data-role="" class="ex">X</wbr> -->
-<!-- Todo: I left off adding HTML5 elements here at previous element: https://dvcs.w3.org/hg/html-api-map/raw-file/default/Overview.html -->
-
-
-
-<!-- ====================================================================================================== -->
-<!-- Abstract ARIA roles in alphabetical order; only generic AXSection role should be exposed on abstract roles -->
-<!-- ====================================================================================================== -->
-<div role="command" data-role="AXSection" class="ex">X</div>
-<div role="composite" data-role="AXSection" class="ex">X</div>
-<div role="input" data-role="AXSection" class="ex">X</div>
-<div role="landmark" data-role="AXSection" class="ex">X</div>
-<div role="range" data-role="AXSection" class="ex">X</div>
-<div role="roletype" data-role="AXSection" class="ex">X</div>
-<div role="section" data-role="AXSection" class="ex">X</div>
-<div role="sectionhead" data-role="AXSection" class="ex">X</div>
-<div role="select" data-role="AXSection" class="ex">X</div>
-<div role="structure" data-role="AXSection" class="ex">X</div>
-<div role="widget" data-role="AXSection" class="ex">X</div>
-<div role="window" data-role="AXSection" class="ex">X</div>
-
-
-<!-- ==================================================================================================== -->
-<!-- Non-abstract ARIA roles in alphabetical order, excepting the need for nesting (e.g. row is with its grid parent) -->
-<!-- ==================================================================================================== -->
-<div role="alert" data-role="AXAlert" class="ex">X</div>
-<div role="alertdialog" data-role="AXAlert" class="ex">X</div>
-<div role="application" data-role="AXEmbedded" class="ex">X</div>
-<div role="article" data-role="AXArticle" class="ex">X</div>
-<div role="banner" data-role="AXLandmarkBanner" class="ex">X</div>
-<div role="button" data-role="AXButton" class="ex">X</div>
-<div role="checkbox" data-role="AXCheckBox" class="ex">X</div>
-<div role="combobox" data-role="AXComboBox" class="ex">X</div>
-<div role="complementary" data-role="AXLandmarkComplementary" class="ex">X</div>
-<div role="contentinfo" data-role="AXLandmarkContentInfo" class="ex">X</div>
-<div role="definition" data-role="AXDefinition" class="ex">X</div>
-<div role="dialog" data-role="AXDialog" class="ex">X</div>
-<div role="directory" data-role="AXList" class="ex">X</div>
-<!-- http://webkit.org/b/125493 <div role="document" data-role="AXGroup" class="ex">X</div>-->
-<!-- skipped ATK: wrong role <div role="form" data-role="AXForm" class="ex">X</div>-->
-<div role="grid" data-role="AXTable" class="ex">
- <div role="rowgroup" data-role="" class="ex"><!-- http://webkit.org/b/125491 -->
- <div role="row" data-role="AXRow" class="ex"><!-- http://webkit.org/b/125491 -->
- <!-- Note: diff between rowheader, columnheader, and gridcell is in cross-reference from grid; need additional non-role verification in another test. -->
- <!-- http://webkit.org/b/125493<div role="rowheader" data-role="AXCell" class="ex">X</div>-->
- <!-- http://webkit.org/b/125493<div role="columnheader" data-role="AXCell" class="ex">X</div>-->
- <div role="gridcell" data-role="AXCell" class="ex">X</div>
- </div>
- </div>
-</div>
-<div role="group" data-role="AXGroup" class="ex">X</div>
-<div role="heading" data-role="AXHeading" class="ex">X</div>
-<div role="img" data-role="AXImage" class="ex">X</div>
-<div role="link" data-role="AXLink" class="ex">X</div>
-<div role="list" data-role="AXList" class="ex">
- <div role="listitem" data-role="AXListItem" class="ex">X</div>
-</div>
-<div role="listbox" data-role="AXListBox" class="ex"><!-- http://webkit.org/b/125491 -->
- <div role="option" data-role="AXListItem" class="ex">X</div>
-</div>
-<div role="log" data-role="AXLog" class="ex">X</div>
-<div role="main" data-role="AXLandmarkMain" class="ex">X</div>
-<div role="marquee" data-role="AXMarquee" class="ex">X</div>
-<div role="math" data-role="AXMath" class="ex">X</div>
-<div role="menu" data-role="AXMenu" class="ex">
- <!-- Note: diff between menuitem types is an attribute; need additional non-role verification in another test. -->
- <div role="menuitem" data-role="AXMenuItem" class="ex">X</div>
- <div role="menuitemcheckbox" data-role="AXCheckMenuItem" class="ex">X</div>
- <div role="menuitemradio" data-role="AXRadioMenuItem" class="ex">X</div>
-</div>
-<div role="menubar" data-role="AXMenuBar" class="ex">
- <!-- Note: diff between menuitem types is an attribute; need additional non-role verification in another test. -->
- <div role="menuitem" data-role="AXMenuItem" class="ex">X</div>
- <div role="menuitemcheckbox" data-role="AXCheckMenuItem" class="ex">X</div>
- <div role="menuitemradio" data-role="AXRadioMenuItem" class="ex">X</div>
-</div>
-<div role="navigation" data-role="AXLandmarkNavigation" class="ex">X</div>
-<div role="note" data-role="AXComment" class="ex">X</div>
-<!-- skipped: presentation elements should not be exposed directly <div role="presentation" data-role="" class="ex">X</div>-->
-<div role="progressbar" data-role="AXProgressIndicator" class="ex">X</div>
-<div role="radiogroup" data-role="AXGroup" class="ex">
- <div role="radio" data-role="AXRadioButton" class="ex">X</div>
-</div>
-<!-- http://webkit.org/b/125493 <div role="region" data-role="AXGroup" class="ex">X</div>-->
-<div role="scrollbar" data-role="AXScrollBar" class="ex">X</div>
-<div role="search" data-role="AXLandmarkSearch" class="ex">X</div>
-<div role="separator" data-role="AXSeparator" class="ex">X</div>
-<div role="slider" data-role="AXSlider" class="ex">X</div>
-<div role="spinbutton" data-role="AXSpinButton" class="ex">X</div>
-<!-- http://webkit.org/b/125493 <div role="status" data-role="AXGroup" class="ex">X</div>-->
-<div role="tablist" data-role="AXTabGroup" class="ex">
- <div role="tab" data-role="AXTab" class="ex">X</div>
-</div>
-<!-- skipped ATK: wrong role <div role="tabpanel" data-role="AXGroup" panel" class="ex">X</div>-->
-<div role="textbox" data-role="AXTextField" class="ex">X</div>
-<div role="timer" data-role="AXTimer" class="ex">X</div>
-<div role="toolbar" data-role="AXToolbar" class="ex">X</div>
-<!-- http://webkit.org/b/125493 <div role="tooltip" data-role="AXGroup" class="ex">X</div>-->
-<!-- http://webkit.org/b/125493 <div role="tree" data-role="AXOutline" class="ex">-->
-<!-- http://webkit.org/b/125493 <div role="treeitem" data-role="AXRow" class="ex">X</div>-->
-<!-- http://webkit.org/b/125493 <div role="group" data-role="" class="ex">-->
-<!-- http://webkit.org/b/125493 <div role="treeitem" data-role="AXRow" class="ex">X</div>-->
-<!--</div>-->
-<!--</div>-->
-<div role="treegrid" data-role="AXTable" class="ex">
- <div role="rowgroup" data-role="" class="ex"><!-- http://webkit.org/b/125491 -->
- <div role="row" data-role="AXRow" class="ex"><!-- http://webkit.org/b/125491 -->
- <!-- Note: diff between rowheader, columnheader, and gridcell is in cross-reference from grid; need additional non-role verification in another test. -->
- <!-- http://webkit.org/b/125493<div role="rowheader" data-role="AXCell" class="ex">X</div>-->
- <!-- http://webkit.org/b/125493<div role="columnheader" data-role="AXCell" class="ex">X</div>-->
- <div role="gridcell" data-role="AXCell" class="ex">X</div>
- </div>
- </div>
-</div>
-
-
-<div id="console"></div>
-<script>
-if (window.testRunner && window.accessibilityController) {
- description("This tests that native elements and ARIA overrides result in the expected role and role description.")
- var examples = document.querySelectorAll('.ex');
- var indent = "\n "; // newline and six spaces
- var el, ariaRole, axElement, role, output, expectation, result;
- for (var i = 0, c = examples.length; i < c; i++) {
- el = examples[i];
- el.id = 'ex' + i;
- ariaRole = el.getAttribute('role');
- axElement = accessibilityController.accessibleElementById(el.id);
- if (axElement)
- role = axElement.role;
- else
- role = 'AXRole: (no element)';
-
- output = el.tagName.toLowerCase() + (ariaRole?("[role="+ariaRole+"]"):'');
- if (el.getAttribute('data-note')) {
- output += el.getAttribute('data-note');
- }
- output += indent;
- output += role + indent;
-
- expectation = el.getAttribute('data-role');
-
- result = document.getElementById('console');
-
- // Test AXRole
- if (role.replace('AXRole: ','') == el.getAttribute('data-role'))
- result.innerText += "PASS: " + output + "\n";
- else
- result.innerText += "FAIL: " + output + "Expected: " + expectation + "\n\n";
- }
-
- // Once tests are complete, hide all the example markup.
- examples = document.querySelectorAll('.ex');
- for (var i = 0, c = examples.length; i < c; i++) {
- el = examples[i];
- el.style.display = 'none';
- }
-}
-</script>
-<script src="../../../resources/js-test-post.js"></script>
-</body>
-</html>
</del></span></pre></div>
<a id="trunkLayoutTestsplatformmacaccessibilityrolesubroleroledescriptionexpectedtxt"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/platform/mac/accessibility/role-subrole-roledescription-expected.txt (162066 => 162067)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/accessibility/role-subrole-roledescription-expected.txt        2014-01-15 12:32:03 UTC (rev 162066)
+++ trunk/LayoutTests/platform/mac/accessibility/role-subrole-roledescription-expected.txt        2014-01-15 13:15:49 UTC (rev 162067)
</span><span class="lines">@@ -1,950 +0,0 @@
</span><del>- X
-This tests that native elements and ARIA overrides result in the expected role, subrole, and role description.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS: a[href]
- AXRole: AXLink
- AXSubrole:
- AXRoleDescription: link
-
-PASS: a:not([href])
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: abbr
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: address
- AXRole: AXGroup
- AXSubrole: AXLandmarkContentInfo
- AXRoleDescription: content information
-
-PASS: article
- AXRole: AXGroup
- AXSubrole: AXDocumentArticle
- AXRoleDescription: article
-
-PASS: aside
- AXRole: AXGroup
- AXSubrole: AXLandmarkComplementary
- AXRoleDescription: complementary
-
-PASS: audio
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: b
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: bdo
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: blockquote
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: button
- AXRole: AXButton
- AXSubrole:
- AXRoleDescription: button
-
-PASS: canvas
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: cite
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: code
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: del
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: dfn
- AXRole: AXGroup
- AXSubrole: AXDefinition
- AXRoleDescription: definition
-
-PASS: dl
- AXRole: AXList
- AXSubrole: AXDefinitionList
- AXRoleDescription: description list
-
-PASS: dt
- AXRole: AXGroup
- AXSubrole: AXTerm
- AXRoleDescription: term
-
-PASS: dd
- AXRole: AXGroup
- AXSubrole: AXDescription
- AXRoleDescription: description
-
-PASS: div
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: em
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: fieldset
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: legend
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: footer
- AXRole: AXGroup
- AXSubrole: AXLandmarkContentInfo
- AXRoleDescription: footer
-
-PASS: form
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: header
- AXRole: AXGroup
- AXSubrole: AXLandmarkBanner
- AXRoleDescription: banner
-
-PASS: hgroup
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: h1
- AXRole: AXHeading
- AXSubrole:
- AXRoleDescription: heading
-
-PASS: h2
- AXRole: AXHeading
- AXSubrole:
- AXRoleDescription: heading
-
-PASS: h3
- AXRole: AXHeading
- AXSubrole:
- AXRoleDescription: heading
-
-PASS: h4
- AXRole: AXHeading
- AXSubrole:
- AXRoleDescription: heading
-
-PASS: h5
- AXRole: AXHeading
- AXSubrole:
- AXRoleDescription: heading
-
-PASS: h6
- AXRole: AXHeading
- AXSubrole:
- AXRoleDescription: heading
-
-PASS: hr
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: i
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: img:not([src]):not([alt])
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: img[alt='']
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: img[src]:not([alt])
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: img[alt='X']
- AXRole: AXImage
- AXSubrole:
- AXRoleDescription: image
-
-PASS: input[type='button']
- AXRole: AXButton
- AXSubrole:
- AXRoleDescription: button
-
-PASS: input[type='color']
- AXRole: AXColorWell
- AXSubrole:
- AXRoleDescription: color well
-
-PASS: input[type='checkbox']
- AXRole: AXCheckBox
- AXSubrole:
- AXRoleDescription: check box
-
-PASS: input[type='date']
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: input[type='datetime']
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: input[type='datetime-local']
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: input[type='email']
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: input[type='file']
- AXRole: AXButton
- AXSubrole: AXFileUploadButton
- AXRoleDescription: file upload button
-
-PASS: input[type='hidden']
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: input[type='image']
- AXRole: AXButton
- AXSubrole:
- AXRoleDescription: button
-
-PASS: input[type='month']
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: input[type='number']
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: input[type='password']
- AXRole: AXTextField
- AXSubrole: AXSecureTextField
- AXRoleDescription: secure text field
-
-PASS: input[type='radio']
- AXRole: AXRadioButton
- AXSubrole:
- AXRoleDescription: radio button
-
-PASS: input[type='range']
- AXRole: AXSlider
- AXSubrole:
- AXRoleDescription: slider
-
-PASS: input[type='reset']
- AXRole: AXButton
- AXSubrole:
- AXRoleDescription: button
-
-PASS: input[type='search']
- AXRole: AXTextField
- AXSubrole: AXSearchField
- AXRoleDescription: search text field
-
-PASS: input[type='submit']
- AXRole: AXButton
- AXSubrole:
- AXRoleDescription: button
-
-PASS: input[type='tel']
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: input[type='text']
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: input[type='time']
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: input[type='url']
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: input[type='week']
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: ins
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: mark
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: math
- AXRole: AXGroup
- AXSubrole: AXDocumentMath
- AXRoleDescription: math
-
-PASS: meter
- AXRole: AXProgressIndicator
- AXSubrole:
- AXRoleDescription: progress indicator
-
-PASS: nav
- AXRole: AXGroup
- AXSubrole: AXLandmarkNavigation
- AXRoleDescription: navigation
-
-PASS: ol
- AXRole: AXList
- AXSubrole: AXContentList
- AXRoleDescription: content list
-
-PASS: li
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: p
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: pre
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: progress
- AXRole: AXProgressIndicator
- AXSubrole:
- AXRoleDescription: progress indicator
-
-PASS: q
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: s
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: samp
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: section
- AXRole: AXGroup
- AXSubrole: AXDocumentRegion
- AXRoleDescription: region
-
-PASS: select:not([multiple])
- AXRole: AXPopUpButton
- AXSubrole:
- AXRoleDescription: pop up button
-
-PASS: option
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: optgroup
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: select[multiple]
- AXRole: AXList
- AXSubrole:
- AXRoleDescription: list
-
-PASS: option
- AXRole: AXStaticText
- AXSubrole:
- AXRoleDescription: text
-
-PASS: optgroup
- AXRole: AXStaticText
- AXSubrole:
- AXRoleDescription: text
-
-PASS: small
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: span
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: strong
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: sub
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: sup
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: svg
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: table
- AXRole: AXTable
- AXSubrole:
- AXRoleDescription: table
-
-PASS: caption
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: thead
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: tr
- AXRole: AXRow
- AXSubrole:
- AXRoleDescription: row
-
-PASS: th
- AXRole: AXCell
- AXSubrole:
- AXRoleDescription: cell
-
-PASS: tbody
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: tr
- AXRole: AXRow
- AXSubrole:
- AXRoleDescription: row
-
-PASS: td
- AXRole: AXCell
- AXSubrole:
- AXRoleDescription: cell
-
-PASS: tfoot
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: tr
- AXRole: AXRow
- AXSubrole:
- AXRoleDescription: row
-
-PASS: th
- AXRole: AXCell
- AXSubrole:
- AXRoleDescription: cell
-
-PASS: textarea
- AXRole: AXTextArea
- AXSubrole:
- AXRoleDescription: text entry area
-
-PASS: time
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: ul
- AXRole: AXList
- AXSubrole: AXContentList
- AXRoleDescription: content list
-
-PASS: li
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: var
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: wbr
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: div[role=command]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=composite]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=input]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=landmark]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=range]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=roletype]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=section]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=sectionhead]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=select]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=structure]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=widget]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=window]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=alert]
- AXRole: AXGroup
- AXSubrole: AXApplicationAlert
- AXRoleDescription: alert
-
-PASS: div[role=alertdialog]
- AXRole: AXGroup
- AXSubrole: AXApplicationAlertDialog
- AXRoleDescription: alert dialog
-
-PASS: div[role=application]
- AXRole: AXGroup
- AXSubrole: AXLandmarkApplication
- AXRoleDescription: application
-
-PASS: div[role=article]
- AXRole: AXGroup
- AXSubrole: AXDocumentArticle
- AXRoleDescription: article
-
-PASS: div[role=banner]
- AXRole: AXGroup
- AXSubrole: AXLandmarkBanner
- AXRoleDescription: banner
-
-PASS: div[role=button]
- AXRole: AXButton
- AXSubrole:
- AXRoleDescription: button
-
-PASS: div[role=checkbox]
- AXRole: AXCheckBox
- AXSubrole:
- AXRoleDescription: check box
-
-PASS: div[role=combobox]
- AXRole: AXComboBox
- AXSubrole:
- AXRoleDescription: combo box
-
-PASS: div[role=complementary]
- AXRole: AXGroup
- AXSubrole: AXLandmarkComplementary
- AXRoleDescription: complementary
-
-PASS: div[role=contentinfo]
- AXRole: AXGroup
- AXSubrole: AXLandmarkContentInfo
- AXRoleDescription: content information
-
-PASS: div[role=definition]
- AXRole: AXGroup
- AXSubrole: AXDefinition
- AXRoleDescription: definition
-
-PASS: div[role=dialog]
- AXRole: AXGroup
- AXSubrole: AXApplicationDialog
- AXRoleDescription: dialog
-
-PASS: div[role=directory]
- AXRole: AXList
- AXSubrole: AXContentList
- AXRoleDescription: content list
-
-PASS: div[role=document]
- AXRole: AXGroup
- AXSubrole: AXDocument
- AXRoleDescription: document
-
-PASS: div[role=form]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=grid]
- AXRole: AXTable
- AXSubrole:
- AXRoleDescription: table
-
-PASS: div[role=rowgroup]
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: div[role=row]
- AXRole: AXRow
- AXSubrole:
- AXRoleDescription: row
-
-PASS: div[role=rowheader]
- AXRole: AXCell
- AXSubrole:
- AXRoleDescription: cell
-
-PASS: div[role=columnheader]
- AXRole: AXCell
- AXSubrole:
- AXRoleDescription: cell
-
-PASS: div[role=gridcell]
- AXRole: AXCell
- AXSubrole:
- AXRoleDescription: cell
-
-PASS: div[role=group]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=heading]
- AXRole: AXHeading
- AXSubrole:
- AXRoleDescription: heading
-
-PASS: div[role=img]
- AXRole: AXImage
- AXSubrole:
- AXRoleDescription: image
-
-PASS: div[role=link]
- AXRole: AXLink
- AXSubrole:
- AXRoleDescription: link
-
-PASS: div[role=list]
- AXRole: AXList
- AXSubrole: AXContentList
- AXRoleDescription: content list
-
-PASS: div[role=listitem]
- AXRole: AXGroup
- AXSubrole:
- AXRoleDescription: group
-
-PASS: div[role=listbox]
- AXRole: AXList
- AXSubrole:
- AXRoleDescription: list
-
-PASS: div[role=option]
- AXRole: AXStaticText
- AXSubrole:
- AXRoleDescription: text
-
-PASS: div[role=log]
- AXRole: AXGroup
- AXSubrole: AXApplicationLog
- AXRoleDescription: log
-
-PASS: div[role=main]
- AXRole: AXGroup
- AXSubrole: AXLandmarkMain
- AXRoleDescription: main
-
-PASS: div[role=marquee]
- AXRole: AXGroup
- AXSubrole: AXApplicationMarquee
- AXRoleDescription: marquee
-
-PASS: div[role=math]
- AXRole: AXGroup
- AXSubrole: AXDocumentMath
- AXRoleDescription: math
-
-PASS: div[role=menu]
- AXRole: AXMenu
- AXSubrole:
- AXRoleDescription: menu
-
-PASS: div[role=menuitem]
- AXRole: AXMenuItem
- AXSubrole:
- AXRoleDescription: menu item
-
-PASS: div[role=menuitemcheckbox]
- AXRole: AXMenuItem
- AXSubrole:
- AXRoleDescription: menu item
-
-PASS: div[role=menuitemradio]
- AXRole: AXMenuItem
- AXSubrole:
- AXRoleDescription: menu item
-
-PASS: div[role=menubar]
- AXRole: AXMenuBar
- AXSubrole:
- AXRoleDescription: menu bar
-
-PASS: div[role=menuitem]
- AXRole: AXMenuItem
- AXSubrole:
- AXRoleDescription: menu item
-
-PASS: div[role=menuitemcheckbox]
- AXRole: AXMenuItem
- AXSubrole:
- AXRoleDescription: menu item
-
-PASS: div[role=menuitemradio]
- AXRole: AXMenuItem
- AXSubrole:
- AXRoleDescription: menu item
-
-PASS: div[role=navigation]
- AXRole: AXGroup
- AXSubrole: AXLandmarkNavigation
- AXRoleDescription: navigation
-
-PASS: div[role=note]
- AXRole: AXGroup
- AXSubrole: AXDocumentNote
- AXRoleDescription: note
-
-PASS: div[role=presentation]
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: div[role=progressbar]
- AXRole: AXProgressIndicator
- AXSubrole:
- AXRoleDescription: progress indicator
-
-PASS: div[role=radiogroup]
- AXRole: AXRadioGroup
- AXSubrole:
- AXRoleDescription: radio group
-
-PASS: div[role=radio]
- AXRole: AXRadioButton
- AXSubrole:
- AXRoleDescription: radio button
-
-PASS: div[role=region]
- AXRole: AXGroup
- AXSubrole: AXDocumentRegion
- AXRoleDescription: region
-
-PASS: div[role=scrollbar]
- AXRole: AXScrollBar
- AXSubrole:
- AXRoleDescription: scroll bar
-
-PASS: div[role=search]
- AXRole: AXGroup
- AXSubrole: AXLandmarkSearch
- AXRoleDescription: search
-
-PASS: div[role=separator]
- AXRole: AXSplitter
- AXSubrole:
- AXRoleDescription: splitter
-
-PASS: div[role=slider]
- AXRole: AXSlider
- AXSubrole:
- AXRoleDescription: slider
-
-PASS: div[role=spinbutton]
- AXRole: AXIncrementor
- AXSubrole:
- AXRoleDescription: stepper
-
-PASS: div[role=status]
- AXRole: AXGroup
- AXSubrole: AXApplicationStatus
- AXRoleDescription: application status
-
-PASS: div[role=tablist]
- AXRole: AXTabGroup
- AXSubrole:
- AXRoleDescription: tab group
-
-PASS: div[role=tab]
- AXRole: AXRadioButton
- AXSubrole:
- AXRoleDescription: tab
-
-PASS: div[role=tabpanel]
- AXRole: AXGroup
- AXSubrole: AXTabPanel
- AXRoleDescription: tab panel
-
-PASS: div[role=textbox]
- AXRole: AXTextField
- AXSubrole:
- AXRoleDescription: text field
-
-PASS: div[role=timer]
- AXRole: AXGroup
- AXSubrole: AXApplicationTimer
- AXRoleDescription: timer
-
-PASS: div[role=toolbar]
- AXRole: AXToolbar
- AXSubrole:
- AXRoleDescription: toolbar
-
-PASS: div[role=tooltip]
- AXRole: AXGroup
- AXSubrole: AXUserInterfaceTooltip
- AXRoleDescription: tooltip
-
-PASS: div[role=tree]
- AXRole: AXOutline
- AXSubrole:
- AXRoleDescription: outline
-
-PASS: div[role=treeitem]
- AXRole: AXRow
- AXSubrole: AXOutlineRow
- AXRoleDescription: outline row
-
-PASS: div[role=group]
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: div[role=treeitem]
- AXRole: AXRow
- AXSubrole: AXOutlineRow
- AXRoleDescription: outline row
-
-PASS: div[role=treegrid]
- AXRole: AXTable
- AXSubrole:
- AXRoleDescription: table
-
-PASS: div[role=rowgroup]
- AXRole:
- AXSubrole:
- AXRoleDescription:
-
-PASS: div[role=row]
- AXRole: AXRow
- AXSubrole:
- AXRoleDescription: row
-
-PASS: div[role=rowheader]
- AXRole: AXCell
- AXSubrole:
- AXRoleDescription: cell
-
-PASS: div[role=columnheader]
- AXRole: AXCell
- AXSubrole:
- AXRoleDescription: cell
-
-PASS: div[role=gridcell]
- AXRole: AXCell
- AXSubrole:
- AXRoleDescription: cell
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
</del></span></pre></div>
<a id="trunkLayoutTestsplatformmacaccessibilityrolesubroleroledescriptionhtml"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/platform/mac/accessibility/role-subrole-roledescription.html (162066 => 162067)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/accessibility/role-subrole-roledescription.html        2014-01-15 12:32:03 UTC (rev 162066)
+++ trunk/LayoutTests/platform/mac/accessibility/role-subrole-roledescription.html        2014-01-15 13:15:49 UTC (rev 162067)
</span><span class="lines">@@ -1,340 +0,0 @@
</span><del>-<!DOCTYPE HTML>
-<html>
-<body>
-<script src="../../../resources/js-test-pre.js"></script>
-
-
-<!-- ==================================================================================================== -->
-<!-- HTML elements in alphabetical order, excepting the need for nesting (e.g. <li> is with its <ol> and <ul> parents) -->
-<!-- ==================================================================================================== -->
-<a data-role="AXLink" data-subrole="" data-roledescription="link" href="#" data-note="[href]" class="ex">X</a>
-<a data-role="" data-subrole="" data-roledescription="" data-note=":not([href])" class="ex">X</a>
-<abbr data-role="" data-subrole="" data-roledescription="" class="ex">X</abbr>
-<!-- http://webkit.org/b/83989 --><address data-role="AXGroup" data-subrole="AXLandmarkContentInfo" data-roledescription="content information" class="ex">X</address>
-<!-- skipped <area> -->
-<article data-role="AXGroup" data-subrole="AXDocumentArticle" data-roledescription="article" class="ex">X</article>
-<aside data-role="AXGroup" data-subrole="AXLandmarkComplementary" data-roledescription="complementary" class="ex">X</aside>
-<audio data-role="" data-subrole="" data-roledescription="" class="ex">X</audio>
-<b data-role="" data-subrole="" data-roledescription="" class="ex">X</b>
-<bdo data-role="" data-subrole="" data-roledescription="" class="ex">X</bdo>
-<blockquote data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</blockquote>
-<button data-role="AXButton" data-subrole="" data-roledescription="button" class="ex">X</button>
-<canvas data-role="" data-subrole="" data-roledescription="" class="ex">X</canvas>
-<cite data-role="" data-subrole="" data-roledescription="" class="ex">X</cite>
-<code data-role="" data-subrole="" data-roledescription="" class="ex">X</code>
-<!-- skipped <command> -->
-<!-- skipped <datalist> -->
-<del data-role="" data-subrole="" data-roledescription="" class="ex">X</del>
-<!-- skipped <details/summary> http://webkit.org/b/108979 -->
-<dfn data-role="AXGroup" data-subrole="AXDefinition" data-roledescription="definition" class="ex">X</dfn>
-<dl data-role="AXList" data-subrole="AXDescriptionList" data-alternatesubrole="AXDefinitionList" data-roledescription="description list" class="ex">
- <dt data-role="AXGroup" data-subrole="AXTerm" data-roledescription="term" class="ex">X</dt>
- <dd data-role="AXGroup" data-subrole="AXDescription" data-roledescription="description" class="ex">X</dd>
-</dl>
-<div data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<em data-role="" data-subrole="" data-roledescription="" class="ex">X</em>
-<!-- skipped <embed> -->
-<fieldset data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">
- <legend data-role="" data-subrole="" data-roledescription="" class="ex">X</legend>
-</fieldset>
-<!-- skipped figure/figcaption http://webkit.org/b/108996 -->
-<footer data-role="AXGroup" data-subrole="AXLandmarkContentInfo" data-roledescription="footer" class="ex">X</footer>
-<form data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</form>
-<!-- skipped <frame> -->
-<!-- skipped <frameset> -->
-<!-- skipped <head> -->
-<!-- http://webkit.org/b/109013 --><header data-role="AXGroup" data-subrole="AXLandmarkBanner" data-roledescription="banner" class="ex">X</header>
-<hgroup data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</hgroup>
-<h1 data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h1>
-<h2 data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h2>
-<h3 data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h3>
-<h4 data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h4>
-<h5 data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h5>
-<h6 data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</h6>
-<!-- http://webkit.org/b/109015 --><hr data-role="" data-subrole="" data-roledescription="" class="ex">
-<!-- skipped <html> -->
-<i data-role="" data-subrole="" data-roledescription="" class="ex">X</i>
-<!-- skipped <iframe> -->
-<img data-role="" data-subrole="" data-roledescription="" class="ex" data-note=":not([src]):not([alt])">
-<img data-role="" data-subrole="" data-roledescription="" class="ex" alt="" data-note="[alt='']">
-<img data-role="" data-subrole="" data-roledescription="" class="ex" src="foo.png" data-note="[src]:not([alt])">
-<img data-role="AXImage" data-subrole="" data-roledescription="image" class="ex" alt="X" data-note="[alt='X']">
-<input type="button" value="X" data-role="AXButton" data-subrole="" data-roledescription="button" class="ex" data-note="[type='button']">
-<!-- skipped <menu><input type="button"></menu> -->
-<!-- http://webkit.org/b/109017 --><input type="color" value="X" data-role="AXColorWell" data-subrole="" data-roledescription="color well" class="ex" data-note="[type='color']">
-<input type="checkbox" data-role="AXCheckBox" data-subrole="" data-roledescription="check box" class="ex" data-note="[type='checkbox']">
-<!-- skipped <menu><input type="checkbox"></menu> -->
-<!-- http://webkit.org/b/109017 --><input type="date" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='date']">
-<!-- http://webkit.org/b/109017 --><input type="datetime" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='datetime']">
-<!-- http://webkit.org/b/109017 --><input type="datetime-local" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='datetime-local']">
-<!-- http://webkit.org/b/109017 --><input type="email" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='email']">
-<input type="file" data-role="AXButton" data-subrole="AXFileUploadButton" data-roledescription="file upload button" class="ex" data-note="[type='file']">
-<input type="hidden" data-role="" data-subrole="" data-roledescription="" class="ex" data-note="[type='hidden']">
-<input type="image" data-role="AXButton" data-subrole="" data-roledescription="button" class="ex" data-note="[type='image']">
-<!-- http://webkit.org/b/109017 --><input type="month" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='month']">
-<!-- http://webkit.org/b/109017 --><input type="number" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='number']">
-<input type="password" value="X" data-role="AXTextField" data-subrole="AXSecureTextField" data-roledescription="secure text field" class="ex" data-note="[type='password']">
-<input type="radio" data-role="AXRadioButton" data-subrole="" data-roledescription="radio button" class="ex" data-note="[type='radio']">
-<!-- skipped <menu><input type="radio"></menu> -->
-<input type="range" data-role="AXSlider" data-subrole="" data-roledescription="slider" class="ex" data-note="[type='range']">
-<input type="reset" data-role="AXButton" data-subrole="" data-roledescription="button" class="ex" data-note="[type='reset']">
-<input type="search" value="X" data-role="AXTextField" data-subrole="AXSearchField" data-roledescription="search text field" class="ex" data-note="[type='search']">
-<input type="submit" data-role="AXButton" data-subrole="" data-roledescription="button" class="ex" data-note="[type='submit']">
-<!-- http://webkit.org/b/109017 --><input type="tel" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='tel']">
-<input type="text" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='text']">
-<!-- skipped <input type="text"> with suggestions source element: http://www.w3.org/html/wg/drafts/html/master/forms.html#concept-input-list -->
-<!-- http://webkit.org/b/109017 --><input type="time" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='time']">
-<!-- http://webkit.org/b/109017 --><input type="url" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='url']">
-<!-- http://webkit.org/b/109017 --><input type="week" value="X" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex" data-note="[type='week']">
-<ins data-role="" data-subrole="" data-roledescription="" class="ex">X</ins>
-<!-- skipped <link> -->
-<!-- skipped <map> -->
-<!-- http://webkit.org/b/109018 --><mark data-role="" data-subrole="" data-roledescription="" class="ex">X</mark>
-<math data-role="AXGroup" data-subrole="AXDocumentMath" data-roledescription="math" class="ex">X</math>
-<!-- skipped <menu> -->
-<!-- skipped <meta> -->
-<meter data-role="AXProgressIndicator" data-subrole="" data-roledescription="progress indicator" class="ex" value="0.75">X</meter>
-<nav data-role="AXGroup" data-subrole="AXLandmarkNavigation" data-roledescription="navigation" class="ex">X</nav>
-<!-- skipped <noscript> -->
-<!-- skipped <object> -->
-<ol data-role="AXList" data-subrole="AXContentList" data-roledescription="content list" class="ex">
- <li data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</li>
-</ol>
-<!-- skipped <optgroup> -->
-<!-- skipped <option> -->
-<!-- skipped <output> -->
-<p data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</p>
-<!-- skipped <param> -->
-<pre data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</pre>
-<progress data-role="AXProgressIndicator" data-subrole="" data-roledescription="progress indicator" class="ex" value="0.75">X</progress>
-<q data-role="" data-subrole="" data-roledescription="" class="ex">X</q>
-<!-- skipped <ruby/rp/rt> -->
-<s data-role="" data-subrole="" data-roledescription="" class="ex">X</s>
-<samp data-role="" data-subrole="" data-roledescription="" class="ex">X</samp>
-<!-- skipped <script> -->
-<!-- http://webkit.org/b/109024 --><section data-role="AXGroup" data-subrole="AXDocumentRegion" data-roledescription="region" class="ex">X</section>
-<select data-role="AXPopUpButton" data-subrole="" data-roledescription="pop up button" class="ex" data-note=":not([multiple])">
- <option data-role="" data-subrole="" data-roledescription="" class="ex">X</option>
- <optgroup data-role="" data-subrole="" data-roledescription="" class="ex" label="more">
- <option>X</option>
- </optgroup>
-</select>
-<select data-role="AXList" data-subrole="" data-roledescription="list" class="ex" multiple data-note="[multiple]">
- <option data-role="AXStaticText" data-subrole="" data-roledescription="text" class="ex">X</option>
- <optgroup data-role="AXStaticText" data-subrole="" data-roledescription="text" class="ex" label="more">
- <option>Y</option>
- <option>Z</option>
- </optgroup>
-</select>
-<small data-role="" data-subrole="" data-roledescription="" class="ex">X</small>
-<!-- skipped <source> -->
-<span data-role="" data-subrole="" data-roledescription="" class="ex">X</span>
-<strong data-role="" data-subrole="" data-roledescription="" class="ex">X</strong>
-<!-- skipped <style> -->
-<sub data-role="" data-subrole="" data-roledescription="" class="ex">X</sub>
-<sup data-role="" data-subrole="" data-roledescription="" class="ex">X</sup>
-<svg data-role="" data-subrole="" data-roledescription="" class="ex">X</svg>
-
-<table data-role="AXTable" data-subrole="" data-roledescription="table" class="ex">
- <caption data-role="" data-subrole="" data-roledescription="" class="ex">X</caption>
- <thead data-role="" data-subrole="" data-roledescription="" class="ex">
- <tr data-role="AXRow" data-subrole="" data-roledescription="row" class="ex">
- <!-- Need separate test to verify colheader/rowheader -->
- <th data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</th>
- </tr>
- </thead>
- <tbody data-role="" data-subrole="" data-roledescription="" class="ex">
- <tr data-role="AXRow" data-subrole="" data-roledescription="row" class="ex">
- <td data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</td>
- </tr>
- </tbody>
- <tfoot data-role="" data-subrole="" data-roledescription="" class="ex">
- <tr data-role="AXRow" data-subrole="" data-roledescription="row" class="ex">
- <!-- Need separate test to verify colheader/rowheader -->
- <th data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</th>
- </tr>
- </tfoot>
-</table>
-<textarea data-role="AXTextArea" data-subrole="" data-roledescription="text entry area" class="ex">X</textarea>
-<time data-role="" data-subrole="" data-roledescription="" class="ex">X</time>
-<!-- skipped <title> -->
-<ul data-role="AXList" data-subrole="AXContentList" data-roledescription="content list" class="ex">
- <li data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</li>
-</ul>
-<var data-role="" data-subrole="" data-roledescription="" class="ex">X</var>
-<!-- skipped <video> -->
-<wbr data-role="" data-subrole="" data-roledescription="" class="ex">X</wbr>
-<!-- Todo: I left off adding HTML5 elements here at previous element: https://dvcs.w3.org/hg/html-api-map/raw-file/default/Overview.html -->
-
-
-
-<!-- ==================================================================================================== -->
-<!-- Abstract ARIA roles in alphabetical order; only generic AXGroup role should be exposed on abstract roles -->
-<!-- ==================================================================================================== -->
-<div role="command" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="composite" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="input" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="landmark" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="range" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="roletype" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="section" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="sectionhead" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="select" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="structure" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="widget" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="window" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-
-
-<!-- ==================================================================================================== -->
-<!-- Non-abstract ARIA roles in alphabetical order, excepting the need for nesting (e.g. row is with its grid parent) -->
-<!-- ==================================================================================================== -->
-<div role="alert" data-role="AXGroup" data-subrole="AXApplicationAlert" data-roledescription="alert" class="ex">X</div>
-<div role="alertdialog" data-role="AXGroup" data-subrole="AXApplicationAlertDialog" data-roledescription="alert dialog" class="ex">X</div>
-<div role="application" data-role="AXGroup" data-subrole="AXLandmarkApplication" data-roledescription="application" class="ex">X</div>
-<div role="article" data-role="AXGroup" data-subrole="AXDocumentArticle" data-roledescription="article" class="ex">X</div>
-<div role="banner" data-role="AXGroup" data-subrole="AXLandmarkBanner" data-roledescription="banner" class="ex">X</div>
-<div role="button" data-role="AXButton" data-subrole="" data-roledescription="button" class="ex">X</div>
-<div role="checkbox" data-role="AXCheckBox" data-subrole="" data-roledescription="check box" class="ex">X</div>
-<div role="combobox" data-role="AXComboBox" data-subrole="" data-roledescription="combo box" class="ex">X</div>
-<div role="complementary" data-role="AXGroup" data-subrole="AXLandmarkComplementary" data-roledescription="complementary" class="ex">X</div>
-<div role="contentinfo" data-role="AXGroup" data-subrole="AXLandmarkContentInfo" data-roledescription="content information" class="ex">X</div>
-<div role="definition" data-role="AXGroup" data-subrole="AXDefinition" data-roledescription="definition" class="ex">X</div>
-<div role="dialog" data-role="AXGroup" data-subrole="AXApplicationDialog" data-roledescription="dialog" class="ex">X</div>
-<div role="directory" data-role="AXList" data-subrole="AXContentList" data-roledescription="content list" class="ex">X</div>
-<div role="document" data-role="AXGroup" data-subrole="AXDocument" data-roledescription="document" class="ex">X</div>
-<div role="form" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="grid" data-role="AXTable" data-subrole="" data-roledescription="table" class="ex">
- <div role="rowgroup" data-role="" data-subrole="" data-roledescription="" class="ex">
- <div role="row" data-role="AXRow" data-subrole="" data-roledescription="row" class="ex">
- <!-- Note: diff between rowheader, columnheader, and gridcell is in cross-reference from grid; need additional non-role verification in another test. -->
- <div role="rowheader" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
- <div role="columnheader" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
- <div role="gridcell" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
- </div>
- </div>
-</div>
-<div role="group" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-<div role="heading" data-role="AXHeading" data-subrole="" data-roledescription="heading" class="ex">X</div>
-<div role="img" data-role="AXImage" data-subrole="" data-roledescription="image" class="ex">X</div>
-<div role="link" data-role="AXLink" data-subrole="" data-roledescription="link" class="ex">X</div>
-<div role="list" data-role="AXList" data-subrole="AXContentList" data-roledescription="content list" class="ex">
- <div role="listitem" data-role="AXGroup" data-subrole="" data-roledescription="group" class="ex">X</div>
-</div>
-<div role="listbox" data-role="AXList" data-subrole="" data-roledescription="list" class="ex">
- <div role="option" data-role="AXStaticText" data-subrole="" data-roledescription="text" class="ex">X</div>
-</div>
-<div role="log" data-role="AXGroup" data-subrole="AXApplicationLog" data-roledescription="log" class="ex">X</div>
-<div role="main" data-role="AXGroup" data-subrole="AXLandmarkMain" data-roledescription="main" class="ex">X</div>
-<div role="marquee" data-role="AXGroup" data-subrole="AXApplicationMarquee" data-roledescription="marquee" class="ex">X</div>
-<div role="math" data-role="AXGroup" data-subrole="AXDocumentMath" data-roledescription="math" class="ex">X</div>
-<div role="menu" data-role="AXMenu" data-subrole="" data-roledescription="menu" class="ex">
- <!-- Note: diff between menuitem types is an attribute; need additional non-role verification in another test. -->
- <div role="menuitem" data-role="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
- <div role="menuitemcheckbox" data-role="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
- <div role="menuitemradio" data-role="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
-</div>
-<div role="menubar" data-role="AXMenuBar" data-subrole="" data-roledescription="menu bar" class="ex">
- <!-- Note: diff between menuitem types is an attribute; need additional non-role verification in another test. -->
- <div role="menuitem" data-role="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
- <div role="menuitemcheckbox" data-role="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
- <div role="menuitemradio" data-role="AXMenuItem" data-subrole="" data-roledescription="menu item" class="ex">X</div>
-</div>
-<div role="navigation" data-role="AXGroup" data-subrole="AXLandmarkNavigation" data-roledescription="navigation" class="ex">X</div>
-<div role="note" data-role="AXGroup" data-subrole="AXDocumentNote" data-roledescription="note" class="ex">X</div>
-<div role="presentation" data-role="" data-subrole="" data-roledescription="" class="ex">X</div>
-<div role="progressbar" data-role="AXProgressIndicator" data-subrole="" data-roledescription="progress indicator" class="ex">X</div>
-<div role="radiogroup" data-role="AXRadioGroup" data-subrole="" data-roledescription="radio group" class="ex">
- <div role="radio" data-role="AXRadioButton" data-subrole="" data-roledescription="radio button" class="ex">X</div>
-</div>
-<div role="region" data-role="AXGroup" data-subrole="AXDocumentRegion" data-roledescription="region" class="ex">X</div>
-<div role="scrollbar" data-role="AXScrollBar" data-subrole="" data-roledescription="scroll bar" class="ex">X</div>
-<div role="search" data-role="AXGroup" data-subrole="AXLandmarkSearch" data-roledescription="search" class="ex">X</div>
-<div role="separator" data-role="AXSplitter" data-subrole="" data-roledescription="splitter" class="ex">X</div>
-<div role="slider" data-role="AXSlider" data-subrole="" data-roledescription="slider" class="ex">X</div>
-<div role="spinbutton" data-role="AXIncrementor" data-subrole="" data-roledescription="stepper" class="ex">X</div>
-<div role="status" data-role="AXGroup" data-subrole="AXApplicationStatus" data-roledescription="application status" class="ex">X</div>
-<div role="tablist" data-role="AXTabGroup" data-subrole="" data-roledescription="tab group" class="ex">
- <div role="tab" data-role="AXRadioButton" data-subrole="" data-roledescription="tab" class="ex">X</div>
-</div>
-<div role="tabpanel" data-role="AXGroup" data-subrole="AXTabPanel" data-roledescription="tab panel" class="ex">X</div>
-<div role="textbox" data-role="AXTextField" data-subrole="" data-roledescription="text field" class="ex">X</div>
-<div role="timer" data-role="AXGroup" data-subrole="AXApplicationTimer" data-roledescription="timer" class="ex">X</div>
-<div role="toolbar" data-role="AXToolbar" data-subrole="" data-roledescription="toolbar" class="ex">X</div>
-<div role="tooltip" data-role="AXGroup" data-subrole="AXUserInterfaceTooltip" data-roledescription="tooltip" class="ex">X</div>
-<div role="tree" data-role="AXOutline" data-subrole="" data-roledescription="outline" class="ex">
- <div role="treeitem" data-role="AXRow" data-subrole="AXOutlineRow" data-roledescription="outline row" class="ex">X</div>
- <div role="group" data-role="" data-subrole="" data-roledescription="" class="ex">
- <div role="treeitem" data-role="AXRow" data-subrole="AXOutlineRow" data-roledescription="outline row" class="ex">X</div>
- </div>
-</div>
-<div role="treegrid" data-role="AXTable" data-subrole="" data-roledescription="table" class="ex">
- <div role="rowgroup" data-role="" data-subrole="" data-roledescription="" class="ex">
- <div role="row" data-role="AXRow" data-subrole="" data-roledescription="row" class="ex">
- <!-- Note: diff between rowheader, columnheader, and gridcell is in cross-reference from grid; need additional non-role verification in another test. -->
- <div role="rowheader" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
- <div role="columnheader" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
- <div role="gridcell" data-role="AXCell" data-subrole="" data-roledescription="cell" class="ex">X</div>
- </div>
- </div>
-</div>
-
-
-<div id="console"></div>
-<script>
-if (window.testRunner && window.accessibilityController) {
- description("This tests that native elements and ARIA overrides result in the expected role, subrole, and role description.")
- var examples = document.querySelectorAll('.ex');
- var indent = "\n "; // newline and six spaces
- var el, ariaRole, axElement, role, subrole, roleDescription, output, expectation, result;
- for (var i = 0, c = examples.length; i < c; i++) {
- el = examples[i];
- el.id = 'ex' + i;
- ariaRole = el.getAttribute('role');
- axElement = accessibilityController.accessibleElementById(el.id);
- if (axElement) {
- role = axElement.role;
- subrole = axElement.subrole;
- roleDescription = axElement.roleDescription;
- } else {
- role = 'AXRole: ';
- subrole = 'AXSubrole: ';
- roleDescription = 'AXRoleDescription: ';
- }
-
- output = el.tagName.toLowerCase() + (ariaRole?("[role="+ariaRole+"]"):'');
- if (el.getAttribute('data-note')) {
- output += el.getAttribute('data-note');
- }
- output += indent;
- output += role + indent;
- output += subrole + indent;
- output += roleDescription + indent;
-
- expectation = el.getAttribute('data-role') + "/";
- expectation += el.getAttribute('data-subrole');
- if (el.getAttribute('data-alternatesubrole')) expectation += " or " + el.getAttribute('data-alternatesubrole');
- expectation += "/" + el.getAttribute('data-roledescription');
-
- result = document.getElementById('console');
-
- // Test AXRole, AXSubrole, and AXRoleDescription.
- if (role.replace('AXRole: ','') == el.getAttribute('data-role')
- && (subrole.replace('AXSubrole: ','') == el.getAttribute('data-subrole') || subrole.replace('AXSubrole: ','') == el.getAttribute('data-alternatesubrole'))
- && roleDescription.replace('AXRoleDescription: ','') == el.getAttribute('data-roledescription')) {
- result.innerText += "PASS: " + output + "\n";
- } else {
- result.innerText += "FAIL: " + output + "Expected: " + expectation + "\n\n";
- }
- }
-
- // Once tests are complete, hide all the example markup.
- examples = document.querySelectorAll('.ex');
- for (var i = 0, c = examples.length; i < c; i++) {
- el = examples[i];
- el.style.display = 'none';
- }
-}
-</script>
-<script src="../../../resources/js-test-post.js"></script>
-</body>
-</html>
</del></span></pre></div>
<a id="trunkLayoutTestsplatformmacaccessibilityrolesexposedexpectedtxtfromrev162066trunkLayoutTestsplatformmacaccessibilityrolesubroleroledescriptionexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/platform/mac/accessibility/roles-exposed-expected.txt (from rev 162066, trunk/LayoutTests/platform/mac/accessibility/role-subrole-roledescription-expected.txt) (0 => 162067)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac/accessibility/roles-exposed-expected.txt         (rev 0)
+++ trunk/LayoutTests/platform/mac/accessibility/roles-exposed-expected.txt        2014-01-15 13:15:49 UTC (rev 162067)
</span><span class="lines">@@ -0,0 +1,950 @@
</span><ins>+ X
+This tests that native elements and ARIA overrides result in the expected role, subrole and role description.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS: a[href]
+ AXRole: AXLink
+ AXSubrole:
+ AXRoleDescription: link
+
+PASS: a:not([href])
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: abbr
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: address
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkContentInfo
+ AXRoleDescription: content information
+
+PASS: article
+ AXRole: AXGroup
+ AXSubrole: AXDocumentArticle
+ AXRoleDescription: article
+
+PASS: aside
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkComplementary
+ AXRoleDescription: complementary
+
+PASS: audio
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: b
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: bdo
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: blockquote
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: button
+ AXRole: AXButton
+ AXSubrole:
+ AXRoleDescription: button
+
+PASS: canvas
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: cite
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: code
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: del
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: dfn
+ AXRole: AXGroup
+ AXSubrole: AXDefinition
+ AXRoleDescription: definition
+
+PASS: dl
+ AXRole: AXList
+ AXSubrole: AXDefinitionList
+ AXRoleDescription: description list
+
+PASS: dt
+ AXRole: AXGroup
+ AXSubrole: AXTerm
+ AXRoleDescription: term
+
+PASS: dd
+ AXRole: AXGroup
+ AXSubrole: AXDescription
+ AXRoleDescription: description
+
+PASS: div
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: em
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: fieldset
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: legend
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: footer
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkContentInfo
+ AXRoleDescription: footer
+
+PASS: form
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: header
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkBanner
+ AXRoleDescription: banner
+
+PASS: hgroup
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: h1
+ AXRole: AXHeading
+ AXSubrole:
+ AXRoleDescription: heading
+
+PASS: h2
+ AXRole: AXHeading
+ AXSubrole:
+ AXRoleDescription: heading
+
+PASS: h3
+ AXRole: AXHeading
+ AXSubrole:
+ AXRoleDescription: heading
+
+PASS: h4
+ AXRole: AXHeading
+ AXSubrole:
+ AXRoleDescription: heading
+
+PASS: h5
+ AXRole: AXHeading
+ AXSubrole:
+ AXRoleDescription: heading
+
+PASS: h6
+ AXRole: AXHeading
+ AXSubrole:
+ AXRoleDescription: heading
+
+PASS: hr
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: i
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: img:not([src]):not([alt])
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: img[alt='']
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: img[src]:not([alt])
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: img[alt='X']
+ AXRole: AXImage
+ AXSubrole:
+ AXRoleDescription: image
+
+PASS: input[type='button']
+ AXRole: AXButton
+ AXSubrole:
+ AXRoleDescription: button
+
+PASS: input[type='color']
+ AXRole: AXColorWell
+ AXSubrole:
+ AXRoleDescription: color well
+
+PASS: input[type='checkbox']
+ AXRole: AXCheckBox
+ AXSubrole:
+ AXRoleDescription: check box
+
+PASS: input[type='date']
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: input[type='datetime']
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: input[type='datetime-local']
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: input[type='email']
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: input[type='file']
+ AXRole: AXButton
+ AXSubrole: AXFileUploadButton
+ AXRoleDescription: file upload button
+
+PASS: input[type='hidden']
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: input[type='image']
+ AXRole: AXButton
+ AXSubrole:
+ AXRoleDescription: button
+
+PASS: input[type='month']
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: input[type='number']
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: input[type='password']
+ AXRole: AXTextField
+ AXSubrole: AXSecureTextField
+ AXRoleDescription: secure text field
+
+PASS: input[type='radio']
+ AXRole: AXRadioButton
+ AXSubrole:
+ AXRoleDescription: radio button
+
+PASS: input[type='range']
+ AXRole: AXSlider
+ AXSubrole:
+ AXRoleDescription: slider
+
+PASS: input[type='reset']
+ AXRole: AXButton
+ AXSubrole:
+ AXRoleDescription: button
+
+PASS: input[type='search']
+ AXRole: AXTextField
+ AXSubrole: AXSearchField
+ AXRoleDescription: search text field
+
+PASS: input[type='submit']
+ AXRole: AXButton
+ AXSubrole:
+ AXRoleDescription: button
+
+PASS: input[type='tel']
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: input[type='text']
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: input[type='time']
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: input[type='url']
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: input[type='week']
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: ins
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: mark
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: math
+ AXRole: AXGroup
+ AXSubrole: AXDocumentMath
+ AXRoleDescription: math
+
+PASS: meter
+ AXRole: AXProgressIndicator
+ AXSubrole:
+ AXRoleDescription: progress indicator
+
+PASS: nav
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkNavigation
+ AXRoleDescription: navigation
+
+PASS: ol
+ AXRole: AXList
+ AXSubrole: AXContentList
+ AXRoleDescription: content list
+
+PASS: li
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: p
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: pre
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: progress
+ AXRole: AXProgressIndicator
+ AXSubrole:
+ AXRoleDescription: progress indicator
+
+PASS: q
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: s
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: samp
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: section
+ AXRole: AXGroup
+ AXSubrole: AXDocumentRegion
+ AXRoleDescription: region
+
+PASS: select:not([multiple])
+ AXRole: AXPopUpButton
+ AXSubrole:
+ AXRoleDescription: pop up button
+
+PASS: option
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: optgroup
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: select[multiple]
+ AXRole: AXList
+ AXSubrole:
+ AXRoleDescription: list
+
+PASS: option
+ AXRole: AXStaticText
+ AXSubrole:
+ AXRoleDescription: text
+
+PASS: optgroup
+ AXRole: AXStaticText
+ AXSubrole:
+ AXRoleDescription: text
+
+PASS: small
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: span
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: strong
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: sub
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: sup
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: svg
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: table
+ AXRole: AXTable
+ AXSubrole:
+ AXRoleDescription: table
+
+PASS: caption
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: thead
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: tr
+ AXRole: AXRow
+ AXSubrole:
+ AXRoleDescription: row
+
+PASS: th
+ AXRole: AXCell
+ AXSubrole:
+ AXRoleDescription: cell
+
+PASS: tbody
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: tr
+ AXRole: AXRow
+ AXSubrole:
+ AXRoleDescription: row
+
+PASS: td
+ AXRole: AXCell
+ AXSubrole:
+ AXRoleDescription: cell
+
+PASS: tfoot
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: tr
+ AXRole: AXRow
+ AXSubrole:
+ AXRoleDescription: row
+
+PASS: th
+ AXRole: AXCell
+ AXSubrole:
+ AXRoleDescription: cell
+
+PASS: textarea
+ AXRole: AXTextArea
+ AXSubrole:
+ AXRoleDescription: text entry area
+
+PASS: time
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: ul
+ AXRole: AXList
+ AXSubrole: AXContentList
+ AXRoleDescription: content list
+
+PASS: li
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: var
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: wbr
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: div[role=command]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=composite]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=input]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=landmark]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=range]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=roletype]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=section]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=sectionhead]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=select]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=structure]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=widget]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=window]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=alert]
+ AXRole: AXGroup
+ AXSubrole: AXApplicationAlert
+ AXRoleDescription: alert
+
+PASS: div[role=alertdialog]
+ AXRole: AXGroup
+ AXSubrole: AXApplicationAlertDialog
+ AXRoleDescription: alert dialog
+
+PASS: div[role=application]
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkApplication
+ AXRoleDescription: application
+
+PASS: div[role=article]
+ AXRole: AXGroup
+ AXSubrole: AXDocumentArticle
+ AXRoleDescription: article
+
+PASS: div[role=banner]
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkBanner
+ AXRoleDescription: banner
+
+PASS: div[role=button]
+ AXRole: AXButton
+ AXSubrole:
+ AXRoleDescription: button
+
+PASS: div[role=checkbox]
+ AXRole: AXCheckBox
+ AXSubrole:
+ AXRoleDescription: check box
+
+PASS: div[role=combobox]
+ AXRole: AXComboBox
+ AXSubrole:
+ AXRoleDescription: combo box
+
+PASS: div[role=complementary]
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkComplementary
+ AXRoleDescription: complementary
+
+PASS: div[role=contentinfo]
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkContentInfo
+ AXRoleDescription: content information
+
+PASS: div[role=definition]
+ AXRole: AXGroup
+ AXSubrole: AXDefinition
+ AXRoleDescription: definition
+
+PASS: div[role=dialog]
+ AXRole: AXGroup
+ AXSubrole: AXApplicationDialog
+ AXRoleDescription: dialog
+
+PASS: div[role=directory]
+ AXRole: AXList
+ AXSubrole: AXContentList
+ AXRoleDescription: content list
+
+PASS: div[role=document]
+ AXRole: AXGroup
+ AXSubrole: AXDocument
+ AXRoleDescription: document
+
+PASS: div[role=form]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=grid]
+ AXRole: AXTable
+ AXSubrole:
+ AXRoleDescription: table
+
+PASS: div[role=rowgroup]
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: div[role=row]
+ AXRole: AXRow
+ AXSubrole:
+ AXRoleDescription: row
+
+PASS: div[role=rowheader]
+ AXRole: AXCell
+ AXSubrole:
+ AXRoleDescription: cell
+
+PASS: div[role=columnheader]
+ AXRole: AXCell
+ AXSubrole:
+ AXRoleDescription: cell
+
+PASS: div[role=gridcell]
+ AXRole: AXCell
+ AXSubrole:
+ AXRoleDescription: cell
+
+PASS: div[role=group]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=heading]
+ AXRole: AXHeading
+ AXSubrole:
+ AXRoleDescription: heading
+
+PASS: div[role=img]
+ AXRole: AXImage
+ AXSubrole:
+ AXRoleDescription: image
+
+PASS: div[role=link]
+ AXRole: AXLink
+ AXSubrole:
+ AXRoleDescription: link
+
+PASS: div[role=list]
+ AXRole: AXList
+ AXSubrole: AXContentList
+ AXRoleDescription: content list
+
+PASS: div[role=listitem]
+ AXRole: AXGroup
+ AXSubrole:
+ AXRoleDescription: group
+
+PASS: div[role=listbox]
+ AXRole: AXList
+ AXSubrole:
+ AXRoleDescription: list
+
+PASS: div[role=option]
+ AXRole: AXStaticText
+ AXSubrole:
+ AXRoleDescription: text
+
+PASS: div[role=log]
+ AXRole: AXGroup
+ AXSubrole: AXApplicationLog
+ AXRoleDescription: log
+
+PASS: div[role=main]
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkMain
+ AXRoleDescription: main
+
+PASS: div[role=marquee]
+ AXRole: AXGroup
+ AXSubrole: AXApplicationMarquee
+ AXRoleDescription: marquee
+
+PASS: div[role=math]
+ AXRole: AXGroup
+ AXSubrole: AXDocumentMath
+ AXRoleDescription: math
+
+PASS: div[role=menu]
+ AXRole: AXMenu
+ AXSubrole:
+ AXRoleDescription: menu
+
+PASS: div[role=menuitem]
+ AXRole: AXMenuItem
+ AXSubrole:
+ AXRoleDescription: menu item
+
+PASS: div[role=menuitemcheckbox]
+ AXRole: AXMenuItem
+ AXSubrole:
+ AXRoleDescription: menu item
+
+PASS: div[role=menuitemradio]
+ AXRole: AXMenuItem
+ AXSubrole:
+ AXRoleDescription: menu item
+
+PASS: div[role=menubar]
+ AXRole: AXMenuBar
+ AXSubrole:
+ AXRoleDescription: menu bar
+
+PASS: div[role=menuitem]
+ AXRole: AXMenuItem
+ AXSubrole:
+ AXRoleDescription: menu item
+
+PASS: div[role=menuitemcheckbox]
+ AXRole: AXMenuItem
+ AXSubrole:
+ AXRoleDescription: menu item
+
+PASS: div[role=menuitemradio]
+ AXRole: AXMenuItem
+ AXSubrole:
+ AXRoleDescription: menu item
+
+PASS: div[role=navigation]
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkNavigation
+ AXRoleDescription: navigation
+
+PASS: div[role=note]
+ AXRole: AXGroup
+ AXSubrole: AXDocumentNote
+ AXRoleDescription: note
+
+PASS: div[role=presentation]
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: div[role=progressbar]
+ AXRole: AXProgressIndicator
+ AXSubrole:
+ AXRoleDescription: progress indicator
+
+PASS: div[role=radiogroup]
+ AXRole: AXRadioGroup
+ AXSubrole:
+ AXRoleDescription: radio group
+
+PASS: div[role=radio]
+ AXRole: AXRadioButton
+ AXSubrole:
+ AXRoleDescription: radio button
+
+PASS: div[role=region]
+ AXRole: AXGroup
+ AXSubrole: AXDocumentRegion
+ AXRoleDescription: region
+
+PASS: div[role=scrollbar]
+ AXRole: AXScrollBar
+ AXSubrole:
+ AXRoleDescription: scroll bar
+
+PASS: div[role=search]
+ AXRole: AXGroup
+ AXSubrole: AXLandmarkSearch
+ AXRoleDescription: search
+
+PASS: div[role=separator]
+ AXRole: AXSplitter
+ AXSubrole:
+ AXRoleDescription: splitter
+
+PASS: div[role=slider]
+ AXRole: AXSlider
+ AXSubrole:
+ AXRoleDescription: slider
+
+PASS: div[role=spinbutton]
+ AXRole: AXIncrementor
+ AXSubrole:
+ AXRoleDescription: stepper
+
+PASS: div[role=status]
+ AXRole: AXGroup
+ AXSubrole: AXApplicationStatus
+ AXRoleDescription: application status
+
+PASS: div[role=tablist]
+ AXRole: AXTabGroup
+ AXSubrole:
+ AXRoleDescription: tab group
+
+PASS: div[role=tab]
+ AXRole: AXRadioButton
+ AXSubrole:
+ AXRoleDescription: tab
+
+PASS: div[role=tabpanel]
+ AXRole: AXGroup
+ AXSubrole: AXTabPanel
+ AXRoleDescription: tab panel
+
+PASS: div[role=textbox]
+ AXRole: AXTextField
+ AXSubrole:
+ AXRoleDescription: text field
+
+PASS: div[role=timer]
+ AXRole: AXGroup
+ AXSubrole: AXApplicationTimer
+ AXRoleDescription: timer
+
+PASS: div[role=toolbar]
+ AXRole: AXToolbar
+ AXSubrole:
+ AXRoleDescription: toolbar
+
+PASS: div[role=tooltip]
+ AXRole: AXGroup
+ AXSubrole: AXUserInterfaceTooltip
+ AXRoleDescription: tooltip
+
+PASS: div[role=tree]
+ AXRole: AXOutline
+ AXSubrole:
+ AXRoleDescription: outline
+
+PASS: div[role=treeitem]
+ AXRole: AXRow
+ AXSubrole: AXOutlineRow
+ AXRoleDescription: outline row
+
+PASS: div[role=group]
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: div[role=treeitem]
+ AXRole: AXRow
+ AXSubrole: AXOutlineRow
+ AXRoleDescription: outline row
+
+PASS: div[role=treegrid]
+ AXRole: AXTable
+ AXSubrole:
+ AXRoleDescription: table
+
+PASS: div[role=rowgroup]
+ AXRole:
+ AXSubrole:
+ AXRoleDescription:
+
+PASS: div[role=row]
+ AXRole: AXRow
+ AXSubrole:
+ AXRoleDescription: row
+
+PASS: div[role=rowheader]
+ AXRole: AXCell
+ AXSubrole:
+ AXRoleDescription: cell
+
+PASS: div[role=columnheader]
+ AXRole: AXCell
+ AXSubrole:
+ AXRoleDescription: cell
+
+PASS: div[role=gridcell]
+ AXRole: AXCell
+ AXSubrole:
+ AXRoleDescription: cell
+
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
</ins></span></pre>
</div>
</div>
</body>
</html>