OLD | NEW |
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/value/diagnostics/diagnostic_map.html"> | 8 <link rel="import" href="/tracing/value/diagnostics/diagnostic_map.html"> |
9 <link rel="import" href="/tracing/value/diagnostics/generic.html"> | 9 <link rel="import" href="/tracing/value/diagnostics/generic.html"> |
10 <link rel="import" href="/tracing/value/histogram.html"> | 10 <link rel="import" href="/tracing/value/histogram.html"> |
11 <link rel="import" href="/tracing/value/ui/histogram_span.html"> | 11 <link rel="import" href="/tracing/value/ui/histogram_span.html"> |
12 <link rel="import" href="/tracing/value/unit.html"> | 12 <link rel="import" href="/tracing/value/unit.html"> |
13 | 13 |
14 <script> | 14 <script> |
15 'use strict'; | 15 'use strict'; |
16 | 16 |
17 tr.b.unittest.testSuite(function() { | 17 tr.b.unittest.testSuite(function() { |
18 var DURATION_NUMERIC_BUILDER = tr.v.NumericBuilder.createLinear( | |
19 tr.v.Unit.byName.timeDurationInMs, tr.b.Range.fromExplicitRange(0, 1000), | |
20 10); | |
21 | |
22 test('basic', function() { | 18 test('basic', function() { |
23 var h = DURATION_NUMERIC_BUILDER.build(); | 19 var h = new tr.v.Histogram(tr.v.Unit.byName.unitlessNumber); |
24 h.add(-1, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('a')})); | 20 h.add(-1, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('a')})); |
25 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); | 21 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); |
26 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); | 22 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); |
27 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); | 23 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); |
28 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); | 24 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); |
29 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); | 25 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); |
30 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); | 26 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('b')})); |
31 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('c')})); | 27 h.add(0, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('c')})); |
32 h.add(500, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('c')})); | 28 h.add(500, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('c')})); |
33 h.add(999, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('d')})); | 29 h.add(999, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('d')})); |
34 h.add(1000, tr.v.d.DiagnosticMap.fromObject( | 30 h.add(1000, tr.v.d.DiagnosticMap.fromObject( |
35 {foo: new tr.v.d.Generic('d')})); | 31 {foo: new tr.v.d.Generic('d')})); |
36 | 32 |
37 var span = document.createElement('tr-v-ui-histogram-span'); | 33 var span = document.createElement('tr-v-ui-histogram-span'); |
38 span.histogram = h; | 34 span.histogram = h; |
39 this.addHTMLOutput(span); | 35 this.addHTMLOutput(span); |
40 }); | 36 }); |
41 | 37 |
42 test('undefined', function() { | 38 test('undefined', function() { |
43 var span = document.createElement('tr-v-ui-histogram-span'); | 39 var span = document.createElement('tr-v-ui-histogram-span'); |
44 span.histogram = undefined; | 40 span.histogram = undefined; |
45 this.addHTMLOutput(span); | 41 this.addHTMLOutput(span); |
46 }); | 42 }); |
47 | 43 |
48 test('emptyHistogram', function() { | 44 test('emptyHistogram', function() { |
49 var h = DURATION_NUMERIC_BUILDER.build(); | 45 var h = new tr.v.Histogram(tr.v.Unit.byName.unitlessNumber); |
50 | 46 |
51 var span = document.createElement('tr-v-ui-histogram-span'); | 47 var span = document.createElement('tr-v-ui-histogram-span'); |
52 span.histogram = h; | 48 span.histogram = h; |
53 this.addHTMLOutput(span); | 49 this.addHTMLOutput(span); |
54 }); | 50 }); |
55 | 51 |
56 test('nans', function() { | 52 test('nans', function() { |
57 var h = DURATION_NUMERIC_BUILDER.build(); | 53 var h = new tr.v.Histogram(tr.v.Unit.byName.unitlessNumber); |
58 h.add(undefined, tr.v.d.DiagnosticMap.fromObject( | 54 h.add(undefined, tr.v.d.DiagnosticMap.fromObject( |
59 {foo: new tr.v.d.Generic('b')})); | 55 {foo: new tr.v.d.Generic('b')})); |
60 h.add(NaN, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('c')})); | 56 h.add(NaN, tr.v.d.DiagnosticMap.fromObject({foo: new tr.v.d.Generic('c')})); |
61 h.customizeSummaryOptions({nans: true}); | 57 h.customizeSummaryOptions({nans: true}); |
62 | 58 |
63 var span = document.createElement('tr-v-ui-histogram-span'); | 59 var span = document.createElement('tr-v-ui-histogram-span'); |
64 span.histogram = h; | 60 span.histogram = h; |
65 this.addHTMLOutput(span); | 61 this.addHTMLOutput(span); |
66 }); | 62 }); |
67 | 63 |
68 }); | 64 }); |
69 </script> | 65 </script> |
OLD | NEW |