| <!-- This test was made after noticing that all th elements in the table were included in the columnHeaders, |
| and the only criterion for including a cell to rowHeaders was only scope attribute (but not th). |
| --> |
| <html> |
| <script> |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| </script> |
| <body> |
| |
| <table id="table1"> |
| <thead> |
| <tr> |
| <th>No</th> |
| <th>Country</th> |
| <th>Capital</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <th>1.</th> |
| <td>Poland</td> |
| <td>Warsaw</td> |
| </tr> |
| <tr> |
| <th>2.</th> |
| <td>Russia</td> |
| <td>Moscow</td> |
| </tr> |
| <tr> |
| <th>3.</th> |
| <td>Ukraine</td> |
| <td>Kiev</td> |
| </tr> |
| </tbody> |
| </table> |
| |
| <br> |
| <br> |
| <p>This tests that the columnHeaders() and rowHeaders() functions return the correct headers for a table cell.</p> |
| <div id="result"></div> |
| |
| <script> |
| if (window.accessibilityController) { |
| var table = accessibilityController.accessibleElementById("table1"); |
| var cell1 = table.cellForColumnAndRow(0, 3); |
| var colHeaders1 = cell1.columnHeaders(); |
| var rowHeaders1 = cell1.rowHeaders(); |
| var cell2 = table.cellForColumnAndRow(1, 2); |
| var colHeaders2 = cell2.columnHeaders(); |
| var rowHeaders2 = cell2.rowHeaders(); |
| |
| result.innerText += "The table cell at (0,3) should have exactly one column header, currently it has " + colHeaders1.length + " column header(s).\n"; |
| result.innerText += "The table cell at (0,3) should have exactly 0 row headers, currently it has " + rowHeaders1.length + " row header(s).\n\n"; |
| result.innerText += "The table cell at (1,2) should have exactly one column header, currently it has " + colHeaders2.length + " column header(s).\n"; |
| result.innerText += "The table cell at (1,2) should have exactly one row header, currently it has " + rowHeaders2.length + " row header(s).\n\n"; |
| } |
| </script> |
| |
| </body> |
| </html> |