blob: 57cd9ba5cb1f1a1a5cbc9c4683dfef1bbc235166 [file] [log] [blame]
<!DOCTYPE html>
<!--
Copyright (c) 2015 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.
-->
<link rel="import" href="/tracing/value/diagnostics/diagnostic_map.html">
<link rel="import" href="/tracing/value/diagnostics/generic.html">
<link rel="import" href="/tracing/value/numeric.html">
<link rel="import" href="/tracing/value/ui/histogram_span.html">
<link rel="import" href="/tracing/value/unit.html">
<script>
'use strict';
tr.b.unittest.testSuite(function() {
var DURATION_NUMERIC_BUILDER = tr.v.NumericBuilder.createLinear(
tr.v.Unit.byName.timeDurationInMs, tr.b.Range.fromExplicitRange(0, 1000),
10);
test('basic', function() {
var h = DURATION_NUMERIC_BUILDER.build();
h.add(-1, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('a')}));
h.add(0, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('b')}));
h.add(0, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('b')}));
h.add(0, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('b')}));
h.add(0, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('b')}));
h.add(0, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('b')}));
h.add(0, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('b')}));
h.add(0, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('c')}));
h.add(500, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('c')}));
h.add(999, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('d')}));
h.add(1000, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('d')}));
var span = document.createElement('tr-v-ui-histogram-span');
span.histogram = h;
this.addHTMLOutput(span);
});
test('undefined', function() {
var span = document.createElement('tr-v-ui-histogram-span');
span.histogram = undefined;
this.addHTMLOutput(span);
});
test('emptyHistogram', function() {
var h = DURATION_NUMERIC_BUILDER.build();
var span = document.createElement('tr-v-ui-histogram-span');
span.histogram = h;
this.addHTMLOutput(span);
});
test('nans', function() {
var h = DURATION_NUMERIC_BUILDER.build();
h.add(undefined, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('b')}));
h.add(NaN, new tr.v.d.DiagnosticMap({foo: new tr.v.d.Generic('c')}));
h.customizeSummaryOptions({nans: true});
var span = document.createElement('tr-v-ui-histogram-span');
span.histogram = h;
this.addHTMLOutput(span);
});
});
</script>