Home | History | Annotate | Download | only in script-tests
      1 description('Test behavior of the HTMLTableRowElement cells attribute in cases where there is unusual nesting.');
      2 
      3 function checkCellNesting(tag)
      4 {
      5     var row = document.createElement("tr");
      6     var container = document.createElement(tag);
      7     var cell = document.createElement("td");
      8     row.appendChild(container);
      9     container.appendChild(cell);
     10     return row.cells.length;
     11 }
     12 
     13 function checkHeaderCellNesting(tag)
     14 {
     15     var row = document.createElement("tr");
     16     var container = document.createElement(tag);
     17     var cell = document.createElement("th");
     18     row.appendChild(container);
     19     container.appendChild(cell);
     20     return row.cells.length;
     21 }
     22 
     23 var tags = [
     24     "col",
     25     "colgroup",
     26     "div",
     27     "form",
     28     "script",
     29     "table",
     30     "tbody",
     31     "tfoot",
     32     "thead",
     33     "tr",
     34 ];
     35 
     36 for (i = 0; i < tags.length; ++i)
     37     shouldBe('checkCellNesting("' + tags[i] + '")', '0');
     38 
     39 debug('');
     40 
     41 shouldBe('checkCellNesting("td")', '1');
     42 shouldBe('checkCellNesting("th")', '1');
     43 
     44 debug('');
     45 
     46 for (i = 0; i < tags.length; ++i)
     47     shouldBe('checkHeaderCellNesting("' + tags[i] + '")', '0');
     48 
     49 debug('');
     50 
     51 shouldBe('checkHeaderCellNesting("td")', '1');
     52 shouldBe('checkHeaderCellNesting("th")', '1');
     53 
     54 debug('');
     55 
     56 var successfullyParsed = true;
     57