import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo

This commit is contained in:
Roy Tam 2018-01-19 03:59:58 +08:00
commit dcd9973243
150858 changed files with 23884658 additions and 0 deletions

View file

@ -0,0 +1,28 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>HTMLTableRowElement#cells</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<table>
<tr id="testTr">
<td>First</td>
<div><td>Second</td></div>
<td>Third
<table>
<tr><td>Nested first</td></tr>
</table>
</td>
<img>
</tr>
</table>
<script>
var tr = document.getElementById("testTr");
test(function () {
tr.insertBefore(document.createElementNS("foo", "td"), tr.children[1]);
assert_array_equals(tr.cells, [tr.children[0], tr.children[2], tr.children[3]]);
}, "HTMLTableRowElement cells ignores nested tables and non-HTML elements");
</script>

View file

@ -0,0 +1,54 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>HTMLTableRowElement#deleteCell</title>
<link rel="author" title="Intel" href="http://www.intel.com/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<table>
<tr id="testTr">
<td>ABCDE</td>
<td>12345</td>
<td>ABC12</td>
</tr>
</table>
<script>
var tr = document.getElementById("testTr");
test(function () {
tr.deleteCell(0);
assert_equals(tr.cells[0].innerHTML, "12345");
assert_equals(tr.cells.length, 2);
}, "HTMLTableRowElement deleteCell(0)");
test(function () {
tr.deleteCell(-1);
assert_equals(tr.cells[tr.cells.length - 1].innerHTML, "12345");
assert_equals(tr.cells.length, 1);
}, "HTMLTableRowElement deleteCell(-1)");
test(function () {
assert_throws("IndexSizeError", function () {
tr.deleteCell(-2);
});
}, "HTMLTableRowElement deleteCell(-2)");
test(function () {
assert_throws("IndexSizeError", function () {
tr.deleteCell(tr.cells.length);
});
}, "HTMLTableRowElement deleteCell(cells.length)");
test(function () {
assert_equals(tr.cells.length, 1);
tr.deleteCell(-1);
assert_equals(tr.cells.length, 0);
tr.deleteCell(-1);
assert_equals(tr.cells.length, 0);
}, "HTMLTableRowElement deleteCell(-1) with no cells");
</script>

View file

@ -0,0 +1,55 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>HTMLTableRowElement#insertCell</title>
<link rel="author" title="Intel" href="http://www.intel.com/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<table>
<tr id="testTr"></tr>
</table>
<script>
var tr = document.getElementById("testTr");
test(function () {
var tdEle = tr.insertCell(0);
assert_equals(tr.cells[0], tdEle);
assert_equals(tr.cells.length, 1);
}, "HTMLTableRowElement insertCell(0)");
test(function () {
var tdEle = tr.insertCell(-1);
assert_equals(tr.cells[tr.cells.length - 1], tdEle);
assert_equals(tr.cells.length, 2);
}, "HTMLTableRowElement insertCell(-1)");
test(function () {
var tdEle = tr.insertCell(tr.cells.length);
assert_equals(tr.cells[tr.cells.length - 1], tdEle);
assert_equals(tr.cells.length, 3);
}, "HTMLTableRowElement insertCell(cells.length)");
test(function () {
var tdEle = tr.insertCell();
assert_equals(tr.cells[tr.cells.length - 1], tdEle);
assert_equals(tr.cells.length, 4);
}, "HTMLTableRowElement insertCell()");
test(function () {
assert_throws("IndexSizeError", function () {
tr.insertCell(-2);
});
}, "HTMLTableRowElement insertCell(-2)");
test(function () {
assert_throws("IndexSizeError", function () {
tr.insertCell(tr.cells.length + 1);
});
}, "HTMLTableRowElement insertCell(cells.length + 1)");
</script>

View file

@ -0,0 +1,77 @@
<!DOCTYPE html>
<title>HTMLTableRowElement.rowIndex</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
test(function() {
var row = document.createElement("table")
.appendChild(document.createElement("div"))
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, -1);
});
test(function() {
var row = document.createElement("table")
.appendChild(document.createElement("thead"))
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, 0);
});
test(function() {
var row = document.createElement("table")
.appendChild(document.createElement("tbody"))
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, 0);
});
test(function() {
var row = document.createElement("table")
.appendChild(document.createElement("tfoot"))
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, 0);
});
test(function() {
var row = document.createElement("table")
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, 0);
});
test(function() {
var row = document.createElementNS("", "table")
.appendChild(document.createElement("thead"))
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, -1);
});
test(function() {
var row = document.createElementNS("", "table")
.appendChild(document.createElement("tbody"))
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, -1);
});
test(function() {
var row = document.createElementNS("", "table")
.appendChild(document.createElement("tfoot"))
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, -1);
});
test(function() {
var row = document.createElementNS("", "table")
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, -1);
});
test(function() {
var row = document.createElement("table")
.appendChild(document.createElementNS("", "thead"))
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, -1);
});
test(function() {
var row = document.createElement("table")
.appendChild(document.createElementNS("", "tbody"))
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, -1);
});
test(function() {
var row = document.createElement("table")
.appendChild(document.createElementNS("", "tfoot"))
.appendChild(document.createElement("tr"));
assert_equals(row.rowIndex, -1);
});
</script>

View file

@ -0,0 +1,130 @@
<!DOCTYPE html>
<meta charset=utf-8>
<title>HTMLTableRowElement.sectionRowIndex</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<table>
<thead>
<tr id="ht1"></tr>
</thead>
<tr id="t1"></tr>
<tr id="t2">
<td>
<table>
<thead>
<tr id="nht1"></tr>
</thead>
<tr></tr>
<tr id="nt1"></tr>
<tbody>
<tr id="nbt1"></tr>
</tbody>
</table>
</td>
</tr>
<tbody>
<tr></tr>
<tr id="bt1"></tr>
</tbody>
<tfoot>
<tr></tr>
<tr></tr>
<tr id="ft1"></tr>
</tfoot>
</table>
<script>
test(function() {
var tHeadRow = document.getElementById('ht1');
assert_equals(tHeadRow.sectionRowIndex, 0);
}, "Row in thead in HTML");
test(function() {
var tRow1 = document.getElementById('t1');
assert_equals(tRow1.sectionRowIndex, 0);
}, "Row in implicit tbody in HTML");
test(function() {
var tRow2 = document.getElementById('t2');
assert_equals(tRow2.sectionRowIndex, 1);
}, "Other row in implicit tbody in HTML");
test(function() {
var tBodyRow = document.getElementById('bt1');
assert_equals(tBodyRow.sectionRowIndex, 1);
}, "Row in explicit tbody in HTML");
test(function() {
var tFootRow = document.getElementById('ft1');
assert_equals(tFootRow.sectionRowIndex, 2);
}, "Row in tfoot in HTML");
test(function() {
var childHeadRow = document.getElementById('nht1');
assert_equals(childHeadRow.sectionRowIndex, 0);
}, "Row in thead in nested table in HTML");
test(function() {
var childRow = document.getElementById('nt1');
assert_equals(childRow.sectionRowIndex, 1);
}, "Row in implicit tbody in nested table in HTML");
test(function() {
var childBodyRow = document.getElementById('nbt1');
assert_equals(childBodyRow.sectionRowIndex, 0);
}, "Row in explicit tbody in nested table in HTML");
/* script create element test */
var mkTrElm = function (elst) {
var elm = document.createElement("table");
elst.forEach(function(item) {
elm = elm.appendChild(document.createElement(item));
});
return elm.appendChild(document.createElement("tr"));
};
test(function() {
assert_equals(mkTrElm([]).sectionRowIndex, 0);
}, "Row in script-created table");
test(function() {
assert_equals(mkTrElm(["div"]).sectionRowIndex, -1);
}, "Row in script-created div in table");
test(function() {
assert_equals(mkTrElm(["thead"]).sectionRowIndex, 0);
}, "Row in script-created thead in table");
test(function() {
assert_equals(mkTrElm(["tbody"]).sectionRowIndex, 0);
}, "Row in script-created tbody in table");
test(function() {
assert_equals(mkTrElm(["tfoot"]).sectionRowIndex, 0);
}, "Row in script-created tfoot in table");
test(function() {
assert_equals(mkTrElm(["tbody", "tr"]).sectionRowIndex, -1);
}, "Row in script-created tr in tbody in table");
test(function() {
assert_equals(mkTrElm(["tbody", "tr", "td"]).sectionRowIndex, -1);
}, "Row in script-created td in tr in tbody in table");
test(function() {
assert_equals(mkTrElm(["tbody", "tr", "td", "table"]).sectionRowIndex, 0);
}, "Row in script-created nested table");
test(function() {
assert_equals(mkTrElm(["tbody", "tr", "td", "table", "thead"]).sectionRowIndex, 0);
}, "Row in script-created thead in nested table");
test(function() {
assert_equals(mkTrElm(["tbody", "tr", "td", "table", "tbody"]).sectionRowIndex, 0);
}, "Row in script-created tbody in nested table");
test(function() {
assert_equals(mkTrElm(["tbody", "tr", "td", "table", "tfoot"]).sectionRowIndex, 0);
}, "Row in script-created tfoot in nested table");
</script>