blob: a9f6ab6e7dc850e215f6aba9fe47d90640de3151 [file] [log] [blame]
<!DOCTYPE html>
<!--
Copyright 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/model/event_set.html">
<link rel="import" href="/tracing/model/model.html">
<link rel="import" href="/tracing/model/power_series.html">
<link rel="import" href="/tracing/ui/analysis/power_sample_table.html">
<link rel="import" href="/tracing/value/unit.html">
<script>
'use strict';
tr.b.unittest.testSuite(function() {
var EventSet = tr.model.EventSet;
var Model = tr.Model;
var PowerSeries = tr.model.PowerSeries;
test('instantiate_undefinedPowerSamples', function() {
var table = document.createElement('tr-ui-a-power-sample-table');
table.samples = undefined;
this.addHTMLOutput(table);
assert.lengthOf(table.$.table.tableRows, 0);
});
test('instantiate_noPowerSamples', function() {
var table = document.createElement('tr-ui-a-power-sample-table');
table.samples = new EventSet([]);
this.addHTMLOutput(table);
assert.lengthOf(table.$.table.tableRows, 0);
});
test('instantiate_onePowerSample', function() {
var series = new PowerSeries(new Model().device);
series.addPowerSample(0, 1000);
var table = document.createElement('tr-ui-a-power-sample-table');
table.samples = new EventSet(series.samples);
this.addHTMLOutput(table);
assert.sameDeepMembers(table.$.table.tableRows, series.samples);
});
test('instantiate_twoPowerSamples', function() {
var series = new PowerSeries(new Model().device);
series.addPowerSample(0, 1000);
series.addPowerSample(1, 2000);
var table = document.createElement('tr-ui-a-power-sample-table');
table.samples = new EventSet(series.samples);
this.addHTMLOutput(table);
assert.sameDeepMembers(table.$.table.tableRows, series.samples);
});
test('instantiate_columnsInitialized', function() {
var series = new PowerSeries(new Model().device);
series.addPowerSample(0, 1000);
var table = document.createElement('tr-ui-a-power-sample-table');
table.samples = new EventSet(series.samples);
this.addHTMLOutput(table);
var columns = table.$.table.tableColumns;
assert.lengthOf(columns, 2);
assert.equal(columns[0].title, 'Time');
assert.equal(columns[0].width, '100px');
var timestampSpan = columns[0].value(series.samples[0]);
assert.equal(timestampSpan.tagName, 'TR-V-UI-SCALAR-SPAN');
assert.equal(timestampSpan.value, 0);
assert.equal(timestampSpan.unit, tr.v.Unit.byName.timeStampInMs);
assert.equal(columns[1].title, 'Power');
assert.equal(columns[1].width, '100%');
var powerSpan = columns[1].value(series.samples[0]);
assert.equal(powerSpan.tagName, 'TR-V-UI-SCALAR-SPAN');
assert.equal(powerSpan.value, 1);
assert.equal(powerSpan.unit, tr.v.Unit.byName.powerInWatts);
});
});
</script>