blob: c0134e6a31e067aa4bb7e9221186144dee7ef320 [file] [log] [blame]
// Copyright 2017 The Chromium Authors. All
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
/**
* @fileoverview using private properties isn't a Closure violation in tests.
* @suppress {accessControls}
*/
ElementsTestRunner.selectReloadAndDump = function(next, node) {
ElementsTestRunner.selectNode(node).then(onSelected);
let reloaded = false;
let selected = false;
function onSelected() {
TestRunner.reloadPage(onReloaded);
TestRunner.addSniffer(Elements.ElementsPanel.prototype, '_lastSelectedNodeSelectedForTest', onReSelected);
}
function onReloaded() {
reloaded = true;
maybeDumpSelectedNode();
}
function onReSelected() {
selected = true;
maybeDumpSelectedNode();
}
function maybeDumpSelectedNode() {
if (!reloaded || !selected) {
return;
}
const selectedElement = ElementsTestRunner.firstElementsTreeOutline().selectedTreeElement;
const nodeName = (selectedElement ? selectedElement.node().nodeNameInCorrectCase() : 'null');
TestRunner.addResult('Selected node: \'' + nodeName + '\'');
next();
}
};