| Index: third_party/WebKit/LayoutTests/http/tests/inspector-unit/datagrid-items-attached-to-dom.js
|
| diff --git a/third_party/WebKit/LayoutTests/http/tests/inspector-unit/datagrid-items-attached-to-dom.js b/third_party/WebKit/LayoutTests/http/tests/inspector-unit/datagrid-items-attached-to-dom.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..efdcc8dbf3f600c8b2d589c17fb7ccc65b2f22a7
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/http/tests/inspector-unit/datagrid-items-attached-to-dom.js
|
| @@ -0,0 +1,55 @@
|
| +TestRunner.loadLazyModules(['data_grid']).then(test);
|
| +function test() {
|
| + TestRunner.addResult("This tests viewport datagrid.");
|
| +
|
| + var div = document.createElement("div");
|
| + UI.inspectorView.element.appendChild(div);
|
| +
|
| + var columns = [{id: "id", title: "ID column", width: "250px"}];
|
| + var dataGrid = new DataGrid.DataGrid(columns);
|
| + div.appendChild(dataGrid.element);
|
| + dataGrid.element.style.height = '150px';
|
| +
|
| + var rootNode = dataGrid.rootNode();
|
| + var nodes = [];
|
| +
|
| + for (var i = 0; i < 15; i++) {
|
| + var node = new DataGrid.DataGridNode({id: "a" + i});
|
| + rootNode.appendChild(node);
|
| + nodes.push(node);
|
| + }
|
| +
|
| + dumpVisibleNodes();
|
| +
|
| + TestRunner.addResult("Testing removal of some nodes");
|
| + nodes[0].remove();
|
| + nodes[1].remove();
|
| + nodes[3].remove();
|
| + nodes[5].remove();
|
| +
|
| + TestRunner.addResult("Should be missing node 0, 1, 3, 5 from dom:");
|
| + dumpVisibleNodes();
|
| +
|
| + TestRunner.addResult("Testing adding of some nodes back");
|
| + rootNode.insertChild(nodes[0], 0);
|
| + rootNode.insertChild(nodes[1], 1);
|
| + rootNode.insertChild(nodes[3], 3);
|
| + rootNode.insertChild(nodes[5], 5);
|
| +
|
| + TestRunner.addResult("Should have nodes 0, 1, 3, 5 back in dom and previously added nodes removed:");
|
| + dumpVisibleNodes();
|
| +
|
| + TestRunner.completeTest();
|
| +
|
| + function dumpVisibleNodes() {
|
| + TestRunner.addResult("Nodes attached to dom:");
|
| + for (var node of nodes) {
|
| + var element = node.existingElement();
|
| + if (!element)
|
| + continue;
|
| + if (div.contains(element))
|
| + TestRunner.addResult(node.data.id);
|
| + }
|
| + TestRunner.addResult("");
|
| + }
|
| +}
|
|
|