test_sels_table.html (4324B)
1 <!DOCTYPE HTML PUBLIC "-//w3c//dtd html 4.0 transitional//en"> 2 <html> 3 <head> 4 <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 5 <title>nsIAccesible selection methods testing for HTML table</title> 6 <link rel="stylesheet" type="text/css" 7 href="chrome://mochikit/content/tests/SimpleTest/test.css" /> 8 9 <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script> 10 11 <script type="application/javascript" 12 src="../common.js"></script> 13 <script type="application/javascript" 14 src="../role.js"></script> 15 <script type="application/javascript" 16 src="../states.js"></script> 17 <script type="application/javascript" 18 src="../table.js"></script> 19 20 <script type="text/javascript"> 21 22 function doTest() { 23 // //////////////////////////////////////////////////////////////////////// 24 // table 25 26 var cellsArray = 27 [ 28 [undefined, undefined, undefined, kColSpanned, undefined, undefined, undefined, undefined], 29 [undefined, undefined, undefined, undefined, undefined, undefined, undefined, kRowSpanned], 30 [undefined, undefined, kColSpanned, undefined, undefined, undefined, undefined, kRowSpanned], 31 [undefined, kRowSpanned, kSpanned, undefined, undefined, kRowSpanned, undefined, kRowSpanned], 32 ]; 33 34 testTableSelection("table", cellsArray); 35 36 var accTable = getAccessible("table", [nsIAccessibleTable]); 37 ok(!accTable.isProbablyForLayout(), "table is not for layout"); 38 39 // //////////////////////////////////////////////////////////////////////// 40 // table instane 41 42 cellsArray = 43 [ 44 [undefined, undefined, undefined, -1, -1], 45 [undefined, undefined, undefined, -1, -1], 46 [undefined, undefined, kColSpanned, kColSpanned, -1], 47 [kRowSpanned, undefined, undefined, -1, -1], 48 [kRowSpanned, undefined, kRowSpanned, undefined, undefined], 49 ]; 50 51 testTableSelection("tableinsane", cellsArray); 52 53 SimpleTest.finish(); 54 } 55 56 SimpleTest.waitForExplicitFinish(); 57 addA11yLoadEvent(doTest); 58 </script> 59 </head> 60 <body> 61 62 <a target="_blank" 63 href="https://bugzilla.mozilla.org/show_bug.cgi?id=410052" 64 title="Fix our nsHTMLAccessibleTable class so GetIndexAt and GetRowAtIndex and GetColumnAtIndex behave consistently"> 65 Mozilla Bug 410052 66 </a> 67 <a target="_blank" 68 href="https://bugzilla.mozilla.org/show_bug.cgi?id=501635" 69 title="nsHTMLTableAccessible::GetSelectedCells contains index duplicates for spanned rows or columns"> 70 Mozilla Bug 501635 71 </a> 72 <a target="_blank" 73 href="https://bugzilla.mozilla.org/show_bug.cgi?id=501659" 74 title="HTML table's isRowSelected/isColumnSelected shouldn't fail if row or column has cell holes"> 75 Mozilla Bug 501659 76 </a> 77 78 <p id="display"></p> 79 <div id="content" style="display: none"></div> 80 <pre id="test"> 81 </pre> 82 83 <!-- Test Table --> 84 <br><br><b> Testing Table:</b><br><br> 85 <center> 86 <table cellpadding="2" cellspacing="2" border="1" width="50%" id="table"> 87 <tbody> 88 <tr> 89 <td><br></td> 90 <td><br></td> 91 <td rowspan="1" colspan="2"><br></td> 92 <td><br></td> 93 <td><br></td> 94 <td><br></td> 95 <td rowspan="4" colspan="1"><br></td> 96 </tr> 97 <tr> 98 <td><br></td> 99 <td><br></td> 100 <td><br></td> 101 <td><br></td> 102 <td><br></td> 103 <td><br></td> 104 <td><br></td> 105 </tr> 106 <tr> 107 <td><br></td> 108 <td rowspan="2" colspan="2">c1</td> 109 <td><br></td> 110 <td><br></td> 111 <td rowspan="2" colspan="1"><br></td> 112 <td><br></td> 113 </tr> 114 <tr> 115 <td><br></td> 116 <td><br></td> 117 <td><br></td> 118 <td><br></td> 119 </tr> 120 </tbody> 121 </table> 122 123 <table border="1" id="tableinsane"> 124 <thead> 125 <tr> 126 <th>col1</th> 127 <th>col2</th> 128 <th>col3</th> 129 </tr> 130 </thead> 131 <tbody> 132 <tr> 133 <td>1</td> 134 <td>2</td> 135 <td>3</td> 136 </tr> 137 <tr> 138 <td rowspan="3">4</td> 139 <td colspan="4">5</td> 140 </tr> 141 <tr> 142 <td>6</td> 143 <td rowspan="2">7</td> 144 </tr> 145 <tr> 146 <td>8</td> 147 <td>9</td> 148 <td>10</td> 149 </tr> 150 </tbody> 151 </table> 152 153 </center> 154 </body> 155 </html>