test_general.html (4884B)
1 <html> 2 3 <head> 4 <title>nsIAccessible value testing</title> 5 6 <link rel="stylesheet" type="text/css" 7 href="chrome://mochikit/content/tests/SimpleTest/test.css" /> 8 9 <style type="text/css"> 10 .offscreen { 11 position: absolute; 12 left: -5000px; 13 top: -5000px; 14 height: 100px; 15 width: 100px; 16 } 17 </style> 18 19 <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script> 20 21 <script type="application/javascript" 22 src="../common.js"></script> 23 24 <script src="chrome://mochikit/content/chrome-harness.js"></script> 25 26 <script type="application/javascript"> 27 function doTest() { 28 function testValue(aID, aValue) { 29 var acc = getAccessible(aID); 30 if (!acc) 31 return; 32 is(acc.value, aValue, "Wrong value for " + aID + "!"); 33 } 34 35 var href = getRootDirectory(window.location.href) + "foo"; 36 37 // roles that can't live as HTMLLinkAccessibles 38 testValue("aria_menuitem_link", ""); 39 testValue("aria_button_link", ""); 40 testValue("aria_checkbox_link", ""); 41 testValue("aria_application_link", ""); 42 testValue("aria_main_link", ""); 43 testValue("aria_navigation_link", ""); 44 45 // roles that can live as HTMLLinkAccessibles 46 testValue("aria_link_link", href); 47 48 // //////////////////////////////////////////////////////////////////////// 49 // ARIA textboxes 50 51 testValue("aria_textbox1", "helo"); 52 // Textbox containing list. 53 testValue("aria_textbox2", "1. test"); 54 55 // //////////////////////////////////////////////////////////////////////// 56 // ARIA comboboxes 57 58 // aria-activedescendant defines a current item the value is computed from 59 testValue("aria_combobox1", kDiscBulletText + "Zoom"); 60 61 // aria-selected defines a selected item the value is computed from, 62 // list control is pointed by aria-owns relation. 63 testValue("aria_combobox2", kDiscBulletText + "Zoom"); 64 65 // aria-selected defines a selected item the value is computed from, 66 // list control is a child of combobox. 67 testValue("aria_combobox3", kDiscBulletText + "2"); 68 69 // //////////////////////////////////////////////////////////////////////// 70 // HTML controls 71 testValue("combobox1", "item1"); 72 testValue("combobox2", "item2"); 73 74 SimpleTest.finish(); 75 } 76 77 SimpleTest.waitForExplicitFinish(); 78 addA11yLoadEvent(doTest); 79 </script> 80 81 </head> 82 83 <body> 84 85 <a target="_blank" 86 href="https://bugzilla.mozilla.org/show_bug.cgi?id=494807" 87 title="Do not expose a11y info specific to hyperlinks when role is overridden using ARIA"> 88 Bug 494807 89 </a> 90 <a target="_blank" 91 href="https://bugzilla.mozilla.org/show_bug.cgi?id=819273" 92 title="ARIA combobox should have accessible value"> 93 Bug 819273 94 </a> 95 <a target="_blank" 96 href="https://bugzilla.mozilla.org/show_bug.cgi?id=887250" 97 title="ARIA textbox role doesn't expose value"> 98 Bug 887250 99 </a> 100 <p id="display"></p> 101 <div id="content" style="display: none"> 102 </div> 103 <pre id="test"> 104 </pre> 105 106 <a id="aria_menuitem_link" role="menuitem" href="foo">menuitem</a> 107 <a id="aria_button_link" role="button" href="foo">button</a> 108 <a id="aria_checkbox_link" role="checkbox" href="foo">checkbox</a> 109 110 <!-- landmark links --> 111 <a id="aria_application_link" role="application" href="foo">app</a> 112 <a id="aria_main_link" role="main" href="foo">main</a> 113 <a id="aria_navigation_link" role="navigation" href="foo">nav</a> 114 115 <!-- strange edge case: please don't do this in the wild --> 116 <a id="aria_link_link" role="link" href="foo">link</a> 117 118 <div id="aria_textbox1" role="textbox">helo</div> 119 <div id="aria_textbox2" contenteditable role="textbox"> 120 <ol><li>test</li></ol> 121 </div> 122 123 <div id="aria_combobox1" role="combobox" 124 aria-owns="aria_combobox1_owned_listbox" 125 aria-activedescendant="aria_combobox1_selected_option"> 126 </div> 127 <ul role="listbox" id="aria_combobox1_owned_listbox"> 128 <li role="option">Zebra</li> 129 <li role="option" id="aria_combobox1_selected_option">Zoom</li> 130 </ul> 131 132 <div id="aria_combobox2" role="combobox" 133 aria-owns="aria_combobox2_owned_listbox"> 134 </div> 135 <ul role="listbox" id="aria_combobox2_owned_listbox"> 136 <li role="option">Zebra</li> 137 <li role="option" aria-selected="true">Zoom</li> 138 </ul> 139 140 <div id="aria_combobox3" role="combobox"> 141 <div role="textbox"></div> 142 <ul role="listbox"> 143 <li role="option">1</li> 144 <li role="option" aria-selected="true">2</li> 145 <li role="option">3</li> 146 </ul> 147 </div> 148 149 <select id="combobox1"> 150 <option id="cb1_item1">item1</option> 151 <option id="cb1_item2">item2</option> 152 </select> 153 <select id="combobox2"> 154 <option id="cb2_item1">item1</option> 155 <option id="cb2_item2" selected="true">item2</option> 156 </select> 157 158 </body> 159 </html>