blob: 6abd21d5cbf17d08c5d5b3c8b3aa65a321d989ad [file] [log] [blame]
// 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.
(async function() {
TestRunner.addResult(`Tests list of user metrics codes and invocations.\n`);
await TestRunner.loadModule('performance_test_runner');
await TestRunner.loadModule('cpu_profiler_test_runner');
InspectorFrontendHost.recordEnumeratedHistogram = function(name, code) {
if (name === 'DevTools.ActionTaken')
TestRunner.addResult('Action taken: ' + nameOf(Host.UserMetrics.Action, code));
else if (name === 'DevTools.PanelShown')
TestRunner.addResult('Panel shown: ' + nameOf(Host.UserMetrics._PanelCodes, code));
};
function nameOf(object, code) {
for (var name in object) {
if (object[name] === code)
return name;
}
return null;
}
TestRunner.addResult('recordActionTaken:');
TestRunner.dump(Host.UserMetrics.Action);
Host.userMetrics.actionTaken(Host.UserMetrics.Action.WindowDocked);
Host.userMetrics.actionTaken(Host.UserMetrics.Action.WindowUndocked);
TestRunner.addResult('\nrecordPanelShown:');
TestRunner.dump(Host.UserMetrics._PanelCodes);
UI.viewManager.showView('js_profiler');
UI.viewManager.showView('timeline');
TestRunner.addResult('\nTest that drawer usage is recorded by PanelShown');
TestRunner.addResult('Show drawer:');
UI.inspectorView._showDrawer(true);
TestRunner.addResult('Selecting tab from triple dots menu:');
UI.inspectorView._drawerTabbedLocation.showView(UI.inspectorView._drawerTabbedLocation._views.get("animations"), undefined, true);
TestRunner.addResult('Selecting tab from tabbed pane header:');
UI.inspectorView._drawerTabbedLocation._tabbedPane._tabs[0]._tabElement.dispatchEvent(new MouseEvent("mousedown"));
TestRunner.completeTest();
})();