Sync web-platform-tests up to revision a5b95cb31914507088a4eda16f7674bbc6f3313f
[WebKit-https.git] / LayoutTests / imported / w3c / web-platform-tests / html / semantics / tabular-data / the-tr-element / insertCell.html
1 <!DOCTYPE html>
2 <meta charset="utf-8">
3 <title>HTMLTableRowElement#insertCell</title>
4 <link rel="author" title="Intel" href="http://www.intel.com/">
5 <script src="/resources/testharness.js"></script>
6 <script src="/resources/testharnessreport.js"></script>
7
8 <div id="log"></div>
9
10 <table>
11   <tr id="testTr"></tr>
12 </table>
13
14 <script>
15
16 var tr = document.getElementById("testTr");
17
18 test(function () {
19   var tdEle = tr.insertCell(0);
20   assert_equals(tr.cells[0], tdEle);
21   assert_equals(tr.cells.length, 1);
22 }, "HTMLTableRowElement insertCell(0)");
23
24 test(function () {
25   var tdEle = tr.insertCell(-1);
26   assert_equals(tr.cells[tr.cells.length - 1], tdEle);
27   assert_equals(tr.cells.length, 2);
28 }, "HTMLTableRowElement insertCell(-1)");
29
30
31 test(function () {
32   var tdEle = tr.insertCell(tr.cells.length);
33   assert_equals(tr.cells[tr.cells.length - 1], tdEle);
34   assert_equals(tr.cells.length, 3);
35 }, "HTMLTableRowElement insertCell(cells.length)");
36
37 test(function () {
38   var tdEle = tr.insertCell();
39   assert_equals(tr.cells[tr.cells.length - 1], tdEle);
40   assert_equals(tr.cells.length, 4);
41 }, "HTMLTableRowElement insertCell()");
42
43 test(function () {
44   assert_throws("IndexSizeError", function () {
45     tr.insertCell(-2);
46   });
47 }, "HTMLTableRowElement insertCell(-2)");
48
49 test(function () {
50   assert_throws("IndexSizeError", function () {
51     tr.insertCell(tr.cells.length + 1);
52   });
53 }, "HTMLTableRowElement insertCell(cells.length + 1)");
54
55 test(function () {
56   var table = document.createElementNS("http://www.w3.org/1999/xhtml", "foo:table")
57   var row = table.insertRow(0);
58   var cell = row.insertCell(0);
59
60   assert_equals(row.cells[0], cell);
61   assert_equals(cell.prefix, null);
62 }, "HTMLTableRowElement insertCell will not copy table's prefix");
63
64 </script>