Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2638)

Unified Diff: dashboard/dashboard/elements/report-page.html

Issue 2716683004: [Dashboard] Start using /list_tests's test_path_dict mode in test-picker (Closed)
Patch Set: fix v8 case Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « dashboard/dashboard/elements/chart-legend.html ('k') | dashboard/dashboard/elements/test-picker.html » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: dashboard/dashboard/elements/report-page.html
diff --git a/dashboard/dashboard/elements/report-page.html b/dashboard/dashboard/elements/report-page.html
index cce77e7b274fbc70d016f74b2b6c0793141279d4..054410de0082754588a0c9f81200ccb6ea942d48 100644
--- a/dashboard/dashboard/elements/report-page.html
+++ b/dashboard/dashboard/elements/report-page.html
@@ -7,6 +7,7 @@ found in the LICENSE file.
<link rel="import" href="/dashboard/elements/chart-container.html">
<link rel="import" href="/dashboard/elements/test-picker.html">
<link rel="import" href="/dashboard/static/events.html">
+<link rel="import" href="/dashboard/static/series_group.html">
<link rel="import" href="/dashboard/static/simple_xhr.html">
<link rel="import" href="/dashboard/static/uri.html">
@@ -125,22 +126,36 @@ found in the LICENSE file.
* @param {Object} event Event object.
*/
onUriLoad: function(event) {
- var params = event.detail.params;
- var pageState = event.detail.state;
+ const params = event.detail.params;
+ const pageState = event.detail.state;
if (!pageState) {
return;
}
// Set page level parameters.
this.graphParams = {};
- for (var key in params) {
+ for (const key in params) {
this.graphParams[key] = params[key];
}
// Add charts.
- var chartStates = pageState['charts'];
- for (var i = 0; i < chartStates.length; i++) {
- this.addChart(chartStates[i], false);
+ const legacyChartStates = pageState['charts'];
+ const chartStates = [];
+
+ for (const legacyChartState of legacyChartStates) {
+ const elements = [];
+ for (const legacyElement of legacyChartState) {
+ const element = d.SeriesGroup.fromLegacyChartStateElement(
+ legacyElement);
+ elements.push(element);
+ }
+ chartStates.push(Promise.all(elements));
}
+
+ Promise.all(chartStates).then(states => {
+ for (const state of states) {
+ this.addChart(state, false);
+ }
+ });
},
/**
@@ -158,11 +173,10 @@ found in the LICENSE file.
/**
* Adds a chart.
- * @param {Array.<Array>} testPathAndSelected A list of two-element
- * Arrays, each containing a test path and selected series to plot.
+ * @param {Array.<d.SeriesGroup>} seriesGroups A list of SeriesGroups.
* @param {boolean} isPrepend True for prepend, false for append.
*/
- addChart: function(testPathAndSelected, isPrepend) {
+ addChart: function(seriesGroups, isPrepend) {
// TODO(sullivan): This should be done with a polymer template, not
// JavaScript-built DOM!!
var container = this.$['charts-container'];
@@ -184,7 +198,10 @@ found in the LICENSE file.
chart.addEventListener(
'revisionrange', this.onRevisionRangeChanged.bind(this));
this.setChartData(chart);
- chart.addSeriesGroup(testPathAndSelected, true);
+
+ for (const seriesGroup of seriesGroups) {
+ chart.addSeriesGroup2(seriesGroup, true);
+ }
this.testPicker.hasChart = true;
},
@@ -241,9 +258,13 @@ found in the LICENSE file.
* On 'Add' button clicked, add a chart for the current selection.
*/
onAddChartButtonClicked: function(event) {
- var selection = this.testPicker.getCurrentSelection();
- if (selection && selection.isValid()) {
- this.addChart(selection.getTestPathAndSelectedSeries(), true);
+ const selectedPaths = this.testPicker.getCurrentSelection();
+ if (selectedPaths) {
+ const mainPath = this.testPicker.getCurrentSelectedPath();
+ const unselectedPaths = this.testPicker.getCurrentUnselected();
+ const seriesGroup = new d.SeriesGroup(mainPath, selectedPaths,
+ unselectedPaths);
+ this.addChart([seriesGroup], true);
}
this.fireNumChartChangedEvent();
},
« no previous file with comments | « dashboard/dashboard/elements/chart-legend.html ('k') | dashboard/dashboard/elements/test-picker.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698