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

Side by Side Diff: tracing/tracing/value/diagnostics/related_histogram_breakdown_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
(Empty)
1 <!DOCTYPE html>
2 <!--
3 Copyright 2016 The Chromium Authors. All rights reserved.
4 Use of this source code is governed by a BSD-style license that can be
5 found in the LICENSE file.
6 -->
7
8 <link rel="import" href="/tracing/extras/chrome/chrome_user_friendly_category_dr iver.html">
9 <link rel="import" href="/tracing/model/event_set.html">
10 <link rel="import" href="/tracing/value/diagnostics/related_histogram_breakdown. html">
11 <link rel="import" href="/tracing/value/histogram.html">
12 <link rel="import" href="/tracing/value/histogram_set.html">
13
14 <script>
15 'use strict';
16
17 tr.b.unittest.testSuite(function() {
18 const TEST_BOUNDARIES = tr.v.HistogramBinBoundaries.createLinear(0, 10, 10);
19
20 test('build', function() {
21 const histograms = new tr.v.HistogramSet();
22 let events = new tr.model.EventSet([
23 {
24 guid: 9,
25 title: 'V8.Execute',
26 cpuSelfTime: 1,
27 stableId: '11.11'
28 },
29 {
30 guid: 10,
31 title: 'V8.Execute',
32 cpuSelfTime: 2,
33 stableId: '22.22'
34 },
35 {
36 guid: 11,
37 title: 'UpdateLayoutTree',
38 cpuSelfTime: 3,
39 stableId: '33.33'
40 },
41 {
42 guid: 12,
43 title: 'UpdateLayoutTree',
44 cpuSelfTime: undefined,
45 stableId: '44.44'
46 }
47 ]);
48
49 const sampleForEvent = undefined;
50 const diagnostic = tr.v.d.RelatedHistogramBreakdown.buildFromEvents(
51 histograms, 'foo-', events,
52 tr.e.chrome.ChromeUserFriendlyCategoryDriver.fromEvent,
53 tr.b.Unit.byName.timeDurationInMs, sampleForEvent, TEST_BOUNDARIES);
54
55 assert.lengthOf(diagnostic, 2);
56 const scriptHist = histograms.getHistogramNamed('foo-script_execute');
57 assert.instanceOf(scriptHist, tr.v.Histogram);
58 assert.lengthOf(scriptHist.allBins[2].diagnosticMaps, 1);
59 assert.strictEqual(scriptHist, diagnostic.get('script_execute'));
60 events = [...events];
61 let relatedEvents = scriptHist.allBins[2].diagnosticMaps[0]
62 .get('relatedEvents');
63 assert.lengthOf(relatedEvents, 1);
64 assert.strictEqual(events[0], [...relatedEvents][0]);
65 assert.lengthOf(scriptHist.allBins[3].diagnosticMaps, 1);
66 assert.lengthOf(
67 scriptHist.allBins[3].diagnosticMaps[0]
68 .get('relatedEvents'), 1);
69 assert.strictEqual(events[1],
70 [...scriptHist.allBins[3].diagnosticMaps[0]
71 .get('relatedEvents')][0]);
72
73 const styleHist = histograms.getHistogramNamed('foo-style');
74 assert.instanceOf(styleHist, tr.v.Histogram);
75 assert.lengthOf(styleHist.allBins[4].diagnosticMaps, 1);
76 relatedEvents = styleHist.allBins[4].diagnosticMaps[0]
77 .get('relatedEvents');
78 assert.strictEqual(styleHist, diagnostic.get('style'));
79 assert.lengthOf(relatedEvents, 1);
80 assert.strictEqual(events[2], [...relatedEvents][0]);
81 });
82 });
83 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698