Index: LayoutTests/imported/web-platform-tests/html/semantics/tabular-data/the-table-element/createTBody.html |
diff --git a/LayoutTests/imported/web-platform-tests/html/semantics/tabular-data/the-table-element/createTBody.html b/LayoutTests/imported/web-platform-tests/html/semantics/tabular-data/the-table-element/createTBody.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..4f9616f50cc71c74cb4fb55f8f1e21a813f97317 |
--- /dev/null |
+++ b/LayoutTests/imported/web-platform-tests/html/semantics/tabular-data/the-table-element/createTBody.html |
@@ -0,0 +1,165 @@ |
+<!doctype html> |
+<meta charset=utf-8> |
+<title>HTMLTableElement.createTBody</title> |
+<script src=../../../../../../resources/testharness.js></script> |
+<script src=../../../../../../resources/testharnessreport.js></script> |
+<div id=log></div> |
+<script> |
+function assert_tbody(tbody) { |
+ assert_equals(tbody.localName, "tbody"); |
+ assert_equals(tbody.namespaceURI, htmlNS); |
+ assert_equals(tbody.prefix, null); |
+} |
+var htmlNS = "http://www.w3.org/1999/xhtml"; |
+test(function() { |
+ var table = document.createElement("table"); |
+ var tbody = table.createTBody(); |
+ assert_equals(table.firstChild, tbody); |
+ assert_tbody(tbody); |
+}, "No child nodes"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before = table.appendChild(document.createElement("tbody")); |
+ assert_array_equals(table.childNodes, [before]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before, tbody]); |
+ assert_tbody(tbody); |
+}, "One tbody child node"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before1 = table.appendChild(document.createElement("tbody")); |
+ var before2 = table.appendChild(document.createElement("tbody")); |
+ assert_array_equals(table.childNodes, [before1, before2]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before1, before2, tbody]); |
+ assert_tbody(tbody); |
+}, "Two tbody child nodes"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before1 = table.appendChild(document.createElement("thead")); |
+ var before2 = table.appendChild(document.createElement("tbody")); |
+ assert_array_equals(table.childNodes, [before1, before2]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before1, before2, tbody]); |
+ assert_tbody(tbody); |
+}, "A thead and a tbody child node"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before1 = table.appendChild(document.createElement("tfoot")); |
+ var before2 = table.appendChild(document.createElement("tbody")); |
+ assert_array_equals(table.childNodes, [before1, before2]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before1, before2, tbody]); |
+ assert_tbody(tbody); |
+}, "A tfoot and a tbody child node"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before = table.appendChild(document.createElement("tbody")); |
+ var after = table.appendChild(document.createElement("thead")); |
+ assert_array_equals(table.childNodes, [before, after]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before, tbody, after]); |
+ assert_tbody(tbody); |
+}, "A tbody and a thead child node"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before = table.appendChild(document.createElement("tbody")); |
+ var after = table.appendChild(document.createElement("tfoot")); |
+ assert_array_equals(table.childNodes, [before, after]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before, tbody, after]); |
+ assert_tbody(tbody); |
+}, "A tbody and a tfoot child node"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before1 = table.appendChild(document.createElement("tbody")); |
+ var before2 = table.appendChild(document.createElement("tbody")); |
+ var after = table.appendChild(document.createElement("div")); |
+ assert_array_equals(table.childNodes, [before1, before2, after]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before1, before2, tbody, after]); |
+ assert_tbody(tbody); |
+}, "Two tbody child nodes and a div"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before = table.appendChild(document.createElement("tbody")); |
+ var after = table.appendChild(document.createElementNS("x", "tbody")); |
+ assert_array_equals(table.childNodes, [before, after]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before, tbody, after]); |
+ assert_tbody(tbody); |
+}, "One HTML and one namespaced tbody child node"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before1 = table.appendChild(document.createElement("tbody")); |
+ var before2 = before1.appendChild(document.createElement("tbody")); |
+ assert_array_equals(table.childNodes, [before1]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before1, tbody]); |
+ assert_tbody(tbody); |
+}, "Two nested tbody child nodes"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before1 = table.appendChild(document.createElement("thead")); |
+ var before2 = before1.appendChild(document.createElement("tbody")); |
+ assert_array_equals(table.childNodes, [before1]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before1, tbody]); |
+ assert_tbody(tbody); |
+}, "A tbody node inside a thead child node"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before1 = table.appendChild(document.createElement("tfoot")); |
+ var before2 = before1.appendChild(document.createElement("tbody")); |
+ assert_array_equals(table.childNodes, [before1]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before1, tbody]); |
+ assert_tbody(tbody); |
+}, "A tbody node inside a tfoot child node"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before = table.appendChild(document.createElement("tbody")); |
+ var after1 = table.appendChild(document.createElement("thead")); |
+ var after2 = after1.appendChild(document.createElement("tbody")); |
+ assert_array_equals(table.childNodes, [before, after1]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before, tbody, after1]); |
+ assert_tbody(tbody); |
+}, "A tbody node inside a thead child node after a tbody child node"); |
+ |
+test(function() { |
+ var table = document.createElement("table"); |
+ var before = table.appendChild(document.createElement("tbody")); |
+ var after1 = table.appendChild(document.createElement("tfoot")); |
+ var after2 = after1.appendChild(document.createElement("tbody")); |
+ assert_array_equals(table.childNodes, [before, after1]); |
+ |
+ var tbody = table.createTBody(); |
+ assert_array_equals(table.childNodes, [before, tbody, after1]); |
+ assert_tbody(tbody); |
+}, "A tbody node inside a tfoot child node after a tbody child node"); |
+</script> |