Index: third_party/WebKit/LayoutTests/inspector-protocol/dom/dom-childNodeCount.js |
diff --git a/third_party/WebKit/LayoutTests/inspector-protocol/dom/dom-childNodeCount.js b/third_party/WebKit/LayoutTests/inspector-protocol/dom/dom-childNodeCount.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..87a82d9453d98d3d15b068b480f72bcfe0ec0cbd |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/inspector-protocol/dom/dom-childNodeCount.js |
@@ -0,0 +1,35 @@ |
+(async function(testRunner) { |
+ var {page, session, dp} = await testRunner.startHTML(` |
+ <div id='container' style='display:none'><div>child1</div><div>child2</div></div> |
+ `, ''); |
+ var NodeTracker = await testRunner.loadScript('../resources/node-tracker.js'); |
+ var nodeTracker = new NodeTracker(dp); |
+ var containerNodeId; |
+ dp.DOM.onChildNodeCountUpdated(message => { |
+ if (message.params.nodeId === containerNodeId) |
+ testRunner.log('childCountUpdated: ' + message.params.childNodeCount); |
+ }); |
+ var response = await dp.DOM.getDocument(); |
+ var message = await dp.DOM.querySelector({nodeId: response.result.root.nodeId, selector: '#container' }); |
+ |
+ containerNodeId = message.result.nodeId; |
+ testRunner.log('Node arrived with childNodeCount: ' + nodeTracker.nodeForId(containerNodeId).childNodeCount); |
+ |
+ await Promise.all([ |
+ session.evaluate(addNode), |
+ session.evaluate(removeNode), |
+ session.evaluate(removeNode), |
+ session.evaluate(removeNode), |
+ ]); |
+ testRunner.completeTest(); |
+ |
+ function addNode() { |
+ var container = document.getElementById('container'); |
+ container.appendChild(document.createElement('div')); |
+ } |
+ |
+ function removeNode() { |
+ var container = document.getElementById('container'); |
+ container.firstChild.remove(); |
+ } |
+}) |