mirror of
https://github.com/react/react-native-devtools-frontend.git
synced 2026-10-07 04:26:32 +08:00
Bug: chromium:1207342 Change-Id: I0ad653fd36421d8e14a013cf8d81cb5c94caffdf Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3104561 Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
40 lines
1.2 KiB
JavaScript
40 lines
1.2 KiB
JavaScript
// Copyright 2017 The Chromium Authors. All rights reserved.
|
|
// 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.
|
|
*/
|
|
self.ElementsTestRunner = self.ElementsTestRunner || {};
|
|
|
|
ElementsTestRunner.selectReloadAndDump = function(next, node) {
|
|
ElementsTestRunner.selectNode(node).then(onSelected);
|
|
let reloaded = false;
|
|
let selected = false;
|
|
|
|
function onSelected() {
|
|
TestRunner.addSniffer(Elements.ElementsPanel.prototype, 'lastSelectedNodeSelectedForTest', onReSelected);
|
|
TestRunner.reloadPage(onReloaded);
|
|
}
|
|
|
|
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();
|
|
}
|
|
};
|