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

Side by Side Diff: tracing/tracing/value/ui/histogram_span_test.html

Issue 3009553002: Refactor Histogram relationship diagnostics. (Closed)
Patch Set: Created 3 years, 3 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 unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <!-- 2 <!--
3 Copyright (c) 2015 The Chromium Authors. All rights reserved. 3 Copyright (c) 2015 The Chromium Authors. All rights reserved.
4 Use of this source code is governed by a BSD-style license that can be 4 Use of this source code is governed by a BSD-style license that can be
5 found in the LICENSE file. 5 found in the LICENSE file.
6 --> 6 -->
7 7
8 <link rel="import" href="/tracing/base/assert_utils.html"> 8 <link rel="import" href="/tracing/base/assert_utils.html">
9 <link rel="import" href="/tracing/ui/base/deep_utils.html"> 9 <link rel="import" href="/tracing/ui/base/deep_utils.html">
10 <link rel="import" href="/tracing/value/histogram.html"> 10 <link rel="import" href="/tracing/value/histogram.html">
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after
246 span.referenceHistogram = tr.v.Histogram.create('', 246 span.referenceHistogram = tr.v.Histogram.create('',
247 tr.b.Unit.byName.unitlessNumber, [2, 20, 200], { 247 tr.b.Unit.byName.unitlessNumber, [2, 20, 200], {
248 binBoundaries: tr.v.HistogramBinBoundaries.SINGULAR, 248 binBoundaries: tr.v.HistogramBinBoundaries.SINGULAR,
249 }); 249 });
250 this.addHTMLOutput(span); 250 this.addHTMLOutput(span);
251 }); 251 });
252 252
253 test('breakdownUnit', async function() { 253 test('breakdownUnit', async function() {
254 const root = new tr.v.Histogram('root', tr.b.Unit.byName.sizeInBytes); 254 const root = new tr.v.Histogram('root', tr.b.Unit.byName.sizeInBytes);
255 const sampleBreakdown = new tr.v.d.Breakdown(); 255 const sampleBreakdown = new tr.v.d.Breakdown();
256 sampleBreakdown.set('x', 30 << 20); 256 sampleBreakdown.set('x', 30 << 20, 'a');
257 sampleBreakdown.set('y', 70 << 20); 257 sampleBreakdown.set('y', 70 << 20, 'b');
258 root.addSample(100 << 20, {sampleBreakdown}); 258 root.addSample(100 << 20, {sampleBreakdown});
259 const rhb = new tr.v.d.RelatedHistogramBreakdown();
260 root.diagnostics.set('rhb', rhb);
261 const aHist = new tr.v.Histogram('a', tr.b.Unit.byName.sizeInBytes); 259 const aHist = new tr.v.Histogram('a', tr.b.Unit.byName.sizeInBytes);
262 rhb.set('a', aHist);
263 aHist.addSample(10 << 20); 260 aHist.addSample(10 << 20);
264 const bHist = new tr.v.Histogram('b', tr.b.Unit.byName.sizeInBytes); 261 const bHist = new tr.v.Histogram('b', tr.b.Unit.byName.sizeInBytes);
265 rhb.set('b', bHist);
266 bHist.addSample(90 << 20); 262 bHist.addSample(90 << 20);
267 const span = document.createElement('tr-v-ui-histogram-span'); 263 const span = document.createElement('tr-v-ui-histogram-span');
268 this.addHTMLOutput(span); 264 this.addHTMLOutput(span);
269 span.histogram = root; 265 span.histogram = root;
270 assert.isDefined(tr.ui.b.findDeepElementMatchingPredicate( 266 assert.isDefined(tr.ui.b.findDeepElementMatchingPredicate(
271 span, e => e.textContent === '100.0 MiB')); 267 span, e => e.textContent === '100.0 MiB'));
272 assert.isDefined(tr.ui.b.findDeepElementMatchingPredicate( 268 assert.isDefined(tr.ui.b.findDeepElementMatchingPredicate(
273 span, e => e.textContent === '30.0 MiB')); 269 span, e => e.textContent === '30.0 MiB'));
274 assert.isDefined(tr.ui.b.findDeepElementMatchingPredicate( 270 assert.isDefined(tr.ui.b.findDeepElementMatchingPredicate(
275 span, e => e.textContent === '70.0 MiB')); 271 span, e => e.textContent === '70.0 MiB'));
(...skipping 11 matching lines...) Expand all
287 {value: 1, diagnostics: new Map([ 283 {value: 1, diagnostics: new Map([
288 ['sample diagnostic', new tr.v.d.GenericSet(['value1'])], 284 ['sample diagnostic', new tr.v.d.GenericSet(['value1'])],
289 ])}, 285 ])},
290 {value: 10, diagnostics: new Map([ 286 {value: 10, diagnostics: new Map([
291 ['sample diagnostic', new tr.v.d.GenericSet(['value10'])], 287 ['sample diagnostic', new tr.v.d.GenericSet(['value10'])],
292 ])}, 288 ])},
293 ], { 289 ], {
294 diagnostics: new Map([ 290 diagnostics: new Map([
295 [tr.v.d.RESERVED_NAMES.BENCHMARKS, new tr.v.d.GenericSet([ 291 [tr.v.d.RESERVED_NAMES.BENCHMARKS, new tr.v.d.GenericSet([
296 'system_health.common_desktop'])], 292 'system_health.common_desktop'])],
297 ['breakdown', new tr.v.d.RelatedHistogramBreakdown()], 293 ['breakdown', new tr.v.d.Breakdown()],
298 ]), 294 ]),
299 }); 295 });
300 this.addHTMLOutput(span); 296 this.addHTMLOutput(span);
301 const metric = tr.ui.b.findDeepElementMatching( 297 const metric = tr.ui.b.findDeepElementMatching(
302 span, '#metric_diagnostics'); 298 span, '#metric_diagnostics');
303 assert.strictEqual(span.rowState.diagnosticsTab, metric.tabLabel); 299 assert.strictEqual(span.rowState.diagnosticsTab, metric.tabLabel);
304 const tabs = tr.ui.b.findDeepElementMatching( 300 const tabs = tr.ui.b.findDeepElementMatching(
305 span, 'TR-UI-B-TAB-VIEW'); 301 span, 'TR-UI-B-TAB-VIEW');
306 assert.strictEqual(tabs.selectedSubView, metric); 302 assert.strictEqual(tabs.selectedSubView, metric);
307 303
308 const sample = tr.ui.b.findDeepElementMatching( 304 const sample = tr.ui.b.findDeepElementMatching(
309 span, '#sample_diagnostics_container'); 305 span, '#sample_diagnostics_container');
310 await span.rowState.update({diagnosticsTab: sample.tabLabel}); 306 await span.rowState.update({diagnosticsTab: sample.tabLabel});
311 // Need to wait an extra frame here because updateDiagnostics_ cannot await 307 // Need to wait an extra frame here because updateDiagnostics_ cannot await
312 // on onSelectedDiagnosticsChanged_, which is called via the 308 // on onSelectedDiagnosticsChanged_, which is called via the
313 // selected-tab-change event. 309 // selected-tab-change event.
314 await tr.b.animationFrame(); 310 await tr.b.animationFrame();
315 assert.strictEqual(tabs.selectedSubView, sample); 311 assert.strictEqual(tabs.selectedSubView, sample);
316 312
317 const metadata = tr.ui.b.findDeepElementMatching( 313 const metadata = tr.ui.b.findDeepElementMatching(
318 span, '#metadata_diagnostics'); 314 span, '#metadata_diagnostics');
319 await span.rowState.update({diagnosticsTab: metadata.tabLabel}); 315 await span.rowState.update({diagnosticsTab: metadata.tabLabel});
320 assert.strictEqual(tabs.selectedSubView, metadata); 316 assert.strictEqual(tabs.selectedSubView, metadata);
321 }); 317 });
322 }); 318 });
323 </script> 319 </script>
OLDNEW
« no previous file with comments | « tracing/tracing/value/ui/histogram_span.html ('k') | tracing/tracing/value/ui/related_histogram_map_span.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698