Accessibility/ARIA1.0TestSuiteFailures
Here's a list of ARIA 1.0 tests failed on Firefox we were reported about. We use three statuses to designate the progress on a test failure:
- green - test doesn't fail anymore, the fix was landed;
- yellow - we agree we have a bug, it will be fixed it in reasonable time;
- unknown - we have concerns about expected behavior, the issue is under discussion;
- red - we think expected results are incorrect, no plans for a fix;
- none - the issue hasn't been investigated yet.
Test No | Code snippet | Description | Comment |
---|---|---|---|
<div role="tree" aria-owns="treeitem1"></div> <div role="treeitem" id="treeitem1" aria-owns="group1">Level 1 Item</div> <div role="group" id="group1" aria-owns="test"></div> <div role="treeitem" id="test">Level 2 Item</div> |
2nd tree item should have level 2 |
Target: ?? |
|
|
EVENT_OBJECT_SELECTION then EVENT_OBJECT_STATECHANGE on newly focused item, but arrange events so state change does not occur on focused item, to avoid extra selection change announcements |
Target: ?? |
|
<div id="test" role="main" aria-hidden="false"> Placeholder content </div> |
Not mapped. The accessible object has no state or property associated with aria-hidden="false". Firefox exposes 'hidden:false' object attribute. |
Target: Firefox 21 |
|
<div id="test" role="main" aria-invalid="grammar"> Placeholder content </div> |
Set IA2_STATE_INVALID_ENTRY, AND
Expose "grammar" as a text attribute. Firefox doesn't expose the text attribute. |
Target: Firefox 21 |
|
<div id="test" role="main" aria-owns="obj1"> Placeholder content </div> <div id="obj1">obj1</div> |
ATK: The accessibility tree is NOT modified.
Accessible "obj1" has a RELATION_NODE_CHILD_OF pointing to accessible "test", "test" has a RELATION_NODE_PARENT_OF pointing to accessible "obj1". Firefox doesn't expose the node_parent_of relation. |
Target: Firefox 22 |
|
<div id="test" role="grid" aria-readonly="false"> Placeholder content </div> |
Grid should have editable state. |
Target: Firefox 21 |
|
<div id="test" role="gridcell" aria-selected="undefined"> Placeholder content </div> |
Accessible has ROLE_SYSTEM_CELL, AND aria-selected is not mapped. Firefox exposes selectable state. |
Comment: Not selectable items of a grid control is not practically useful to keep it as default behavior. As opposite to this statement Rich says that a grid control is rather managed by focus than selection so having cells/rows/ not selectable by default is ok. I think Firefox could do either way. Note, it's totally ok with AT to keep rows and cells both selectable (example: Mozilla XUL tree). |
|
<div role="listbox"> <div id="test" role="option" aria-selected="undefined"> Placeholder content </div> </div> |
Firefox exposes selectable state while it shouldn't |
Comment: In Firefox 3.6 we fixed opposite bug to the required behavior to stay consistent with aria-checked implementation. |
|
<div id="test" role="tablist" aria-level="1"> <div id="obj1" role="tab">obj1</div> <div role="tablist" aria-level="2"> <div id="obj2" role="tab">obj2</div> </div> </div> |
IAccessible2::groupPostion should expose level |
Comment: IAccessible2 groupPosition isn't applied to things like headings which have level only. Tablist may be considered as the same thing. |
|
<div id="test" role="columnheader" aria-selected="undefined"> Placeholder content </div> |
Firefox exposes selectable state while it shouldn't. |
Target: Firefox 25 |
|
<div role="menu"> <div id="test" role="menuitemradio" aria-selected="true"> Placeholder content </div> <div id="obj1" role="menuitemradio">obj1</div> <div id="obj2" role="menuitemradio">obj2</div> </div> |
div@id="test" should expose selectable/selected states. |
Comment: Technically selectable/selected states are not useful for menu items because it dupes focusable/focused states. In practice Firefox exposes selectable/selected states on XUL menu items however it doesn't fire selection change events what is inconsistent. IE doesn't expose selectable/selected states on menus. Note, ARIA doesn't require selectable states on menuitem and menuitemcheckbox roles which makes the requirement not consistent. |
|
<div role="radiogroup"> <div id="test" role="radio" aria-selected="true"> Placeholder content </div> <div id="obj1" role="radio">obj1</div> </div> |
div@id="test" should expose selectable/selected states. |
Comment: radios never exposed selectable/selected states, I don't see why ARIA radios would make an exception. |
|
<table role="presentation"> <tr> <td aria-hidden="true">Test me</td> </tr> </table> |
aria-hidden is a global attribute and should nullify the presentational role on the <td>. |
Target: Firefox 19. |
|
<ul role="presentation"> <li id="test" aria-checked="true" aria-expanded="true"> vegetables </li> </ul> |
Do not map the list item with aria-checked and aria-expanded attributes to the accessibility API. | Target: Firefox 20 Refer to: |
|
<div id="test" role="menuitemradio" aria-checked="mixed"> Radio menu item with aria-checked='mixed' </div> |
Value is represented in accessibility API in the same manner as the value of "false". |
Comment: mixed value on radios don't make any sense since radios don't support tristate. The "false" value is not a fallback value on radios. That means the browser *must* introduce a special check for the case that doesn't have *practical* usage on the web. |
|
<INPUT type="checkbox" id="test"> that is referenced by a <label for="test">foo<input value="bar">baz</label>. <style type="text/css"> label:before { content: "foo"; } label:after { content: "baz"; } </style> <label for="test" title="bar"><input id="test" type="password" name="test" title="bar"></label> |
Firefox is missing a space delimiter in the name computation. Firefox gives 'foo barbaz'. Accessible name should be "foo bar baz". |
Target: Firefox 21 |
|
<input type="checkbox" id="test" /> <label for="test">Flash the screen <span role="menu"> <span role="menuitem" aria-selected="true">1</span> <span role="menuitem" hidden>2</span> <span role="menuitem" hidden>3</span> </span> times. </label> |
Accessible name should be "Flash the screen 1 times". Firefox leaves out the selected menu item in the name computation. |
Comment: Firefox menus don't expose selected item as value. So it's not included into the name. |
|
<input type="checkbox" id="test" /> <label for="test">Flash the screen <div role="combobox"> <div role="textbox"></div> <ul role="listbox"> <li role="option" aria-selected="true">1</li> <li role="option">2</li> <li role="option">3</li> </ul> </div> times. </label> |
Accessible name should be "Flash the screen* 1 times". Firefox leaves out the selected option in the name computation. |
Target: Firefox 21
Status: green |
|
<input type="checkbox" id="test" /> <label for="test"> foo <input role="slider" type="range" value="5" min="1" max="10" aria-valuenow="5" aria-valuemin="1" aria-valuemax="10"> baz </label> |
Accessible name should be "foo 5 baz". Dupes: |
Target: Firefox 19 |
|
<input type="image" src="test.png" id="test" title="foo" /> |
Accessible name should be "foo" (from @title). Firefox exposes "Submit Query". |
Comment: We had a bug |
|
<style type="text/css"> label:before { content: "foo"; } label:after { content: "baz"; } </style> <label for="test" title="bar"><input id="test" type="file" name="test" title="bar"></label> |
Accessible name is "foo bar baz".. Firefox exposes a name containing "Browse" from "Browse" button. |
Comment: File input control is a button and label controls. Title attribute from file input element is propagated to these controls. Sine the button has a visual label ("Browse") then label is preferred over title attribute. |
|
<input type="image" src="foo.jpg" id="test" title="crazy"/> |
Accessible name is equal to the value of the title attribute, which is "crazy". Firefox exposes @src attribute value instead. |
Target: Firefox 21 |
|
<div role="list"> <div role="listitem">Item 1 <div role="group"> <div role="listitem">Item 1A</div> <div role="listitem">Item 1B</div> </div> </div> <div role="listitem">Item 2 <div role="group"> <div role="listitem">Item 2A</div> <div role="listitem">Item 2B</div> </div> </div> </div> |
Level should be calculated properly for nested listitems. |
Target: Firefox 24 |
|
<div id="test" aria-live="polite" aria-atomic="false">content</div> |
atomic:false and container-atomic:false object attributes shouldn't be exposed |
Target: Firefox 24 |