tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

createTBody.html (6503B)


      1 <!doctype html>
      2 <meta charset=utf-8>
      3 <title>HTMLTableElement.createTBody</title>
      4 <script src=/resources/testharness.js></script>
      5 <script src=/resources/testharnessreport.js></script>
      6 <div id=log></div>
      7 <script>
      8 function assert_tbody(tbody) {
      9  assert_equals(tbody.localName, "tbody");
     10  assert_equals(tbody.namespaceURI, htmlNS);
     11  assert_equals(tbody.prefix, null);
     12 }
     13 var htmlNS = "http://www.w3.org/1999/xhtml";
     14 test(function() {
     15  var table = document.createElement("table");
     16  var tbody = table.createTBody();
     17  assert_equals(table.firstChild, tbody);
     18  assert_tbody(tbody);
     19 }, "No child nodes");
     20 
     21 test(function() {
     22  var table = document.createElement("table");
     23  var before = table.appendChild(document.createElement("tbody"));
     24  assert_array_equals(table.childNodes, [before]);
     25 
     26  var tbody = table.createTBody();
     27  assert_array_equals(table.childNodes, [before, tbody]);
     28  assert_tbody(tbody);
     29 }, "One tbody child node");
     30 
     31 test(function() {
     32  var table = document.createElement("table");
     33  var before1 = table.appendChild(document.createElement("tbody"));
     34  var before2 = table.appendChild(document.createElement("tbody"));
     35  assert_array_equals(table.childNodes, [before1, before2]);
     36 
     37  var tbody = table.createTBody();
     38  assert_array_equals(table.childNodes, [before1, before2, tbody]);
     39  assert_tbody(tbody);
     40 }, "Two tbody child nodes");
     41 
     42 test(function() {
     43  var table = document.createElement("table");
     44  var before1 = table.appendChild(document.createElement("thead"));
     45  var before2 = table.appendChild(document.createElement("tbody"));
     46  assert_array_equals(table.childNodes, [before1, before2]);
     47 
     48  var tbody = table.createTBody();
     49  assert_array_equals(table.childNodes, [before1, before2, tbody]);
     50  assert_tbody(tbody);
     51 }, "A thead and a tbody child node");
     52 
     53 test(function() {
     54  var table = document.createElement("table");
     55  var before1 = table.appendChild(document.createElement("tfoot"));
     56  var before2 = table.appendChild(document.createElement("tbody"));
     57  assert_array_equals(table.childNodes, [before1, before2]);
     58 
     59  var tbody = table.createTBody();
     60  assert_array_equals(table.childNodes, [before1, before2, tbody]);
     61  assert_tbody(tbody);
     62 }, "A tfoot and a tbody child node");
     63 
     64 test(function() {
     65  var table = document.createElement("table");
     66  var before = table.appendChild(document.createElement("tbody"));
     67  var after = table.appendChild(document.createElement("thead"));
     68  assert_array_equals(table.childNodes, [before, after]);
     69 
     70  var tbody = table.createTBody();
     71  assert_array_equals(table.childNodes, [before, tbody, after]);
     72  assert_tbody(tbody);
     73 }, "A tbody and a thead child node");
     74 
     75 test(function() {
     76  var table = document.createElement("table");
     77  var before = table.appendChild(document.createElement("tbody"));
     78  var after = table.appendChild(document.createElement("tfoot"));
     79  assert_array_equals(table.childNodes, [before, after]);
     80 
     81  var tbody = table.createTBody();
     82  assert_array_equals(table.childNodes, [before, tbody, after]);
     83  assert_tbody(tbody);
     84 }, "A tbody and a tfoot child node");
     85 
     86 test(function() {
     87  var table = document.createElement("table");
     88  var before1 = table.appendChild(document.createElement("tbody"));
     89  var before2 = table.appendChild(document.createElement("tbody"));
     90  var after = table.appendChild(document.createElement("div"));
     91  assert_array_equals(table.childNodes, [before1, before2, after]);
     92 
     93  var tbody = table.createTBody();
     94  assert_array_equals(table.childNodes, [before1, before2, tbody, after]);
     95  assert_tbody(tbody);
     96 }, "Two tbody child nodes and a div");
     97 
     98 test(function() {
     99  var table = document.createElement("table");
    100  var before = table.appendChild(document.createElement("tbody"));
    101  var after = table.appendChild(document.createElementNS("x", "tbody"));
    102  assert_array_equals(table.childNodes, [before, after]);
    103 
    104  var tbody = table.createTBody();
    105  assert_array_equals(table.childNodes, [before, tbody, after]);
    106  assert_tbody(tbody);
    107 }, "One HTML and one namespaced tbody child node");
    108 
    109 test(function() {
    110  var table = document.createElement("table");
    111  var before1 = table.appendChild(document.createElement("tbody"));
    112  var before2 = before1.appendChild(document.createElement("tbody"));
    113  assert_array_equals(table.childNodes, [before1]);
    114 
    115  var tbody = table.createTBody();
    116  assert_array_equals(table.childNodes, [before1, tbody]);
    117  assert_tbody(tbody);
    118 }, "Two nested tbody child nodes");
    119 
    120 test(function() {
    121  var table = document.createElement("table");
    122  var before1 = table.appendChild(document.createElement("thead"));
    123  var before2 = before1.appendChild(document.createElement("tbody"));
    124  assert_array_equals(table.childNodes, [before1]);
    125 
    126  var tbody = table.createTBody();
    127  assert_array_equals(table.childNodes, [before1, tbody]);
    128  assert_tbody(tbody);
    129 }, "A tbody node inside a thead child node");
    130 
    131 test(function() {
    132  var table = document.createElement("table");
    133  var before1 = table.appendChild(document.createElement("tfoot"));
    134  var before2 = before1.appendChild(document.createElement("tbody"));
    135  assert_array_equals(table.childNodes, [before1]);
    136 
    137  var tbody = table.createTBody();
    138  assert_array_equals(table.childNodes, [before1, tbody]);
    139  assert_tbody(tbody);
    140 }, "A tbody node inside a tfoot child node");
    141 
    142 test(function() {
    143  var table = document.createElement("table");
    144  var before = table.appendChild(document.createElement("tbody"));
    145  var after1 = table.appendChild(document.createElement("thead"));
    146  var after2 = after1.appendChild(document.createElement("tbody"));
    147  assert_array_equals(table.childNodes, [before, after1]);
    148 
    149  var tbody = table.createTBody();
    150  assert_array_equals(table.childNodes, [before, tbody, after1]);
    151  assert_tbody(tbody);
    152 }, "A tbody node inside a thead child node after a tbody child node");
    153 
    154 test(function() {
    155  var table = document.createElement("table");
    156  var before = table.appendChild(document.createElement("tbody"));
    157  var after1 = table.appendChild(document.createElement("tfoot"));
    158  var after2 = after1.appendChild(document.createElement("tbody"));
    159  assert_array_equals(table.childNodes, [before, after1]);
    160 
    161  var tbody = table.createTBody();
    162  assert_array_equals(table.childNodes, [before, tbody, after1]);
    163  assert_tbody(tbody);
    164 }, "A tbody node inside a tfoot child node after a tbody child node");
    165 
    166 test(function() {
    167  var table = document.createElementNS(htmlNS, "foo:table");
    168  var tbody = table.createTBody();
    169 
    170  assert_equals(tbody.prefix, null);
    171 }, "A prefixed table creates tbody without prefix");
    172 
    173 </script>