<!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/ui/array_of_numbers_span.html">
<script>
'use strict';

tr.b.unittest.testSuite(function() {
  test('instantiateInAverageMode', function() {
    var span = document.createElement('tr-v-ui-array-of-numbers-span');
    span.numbers = [1, 2, 3];
    span.summaryMode = tr.v.ui.ArrayOfNumbersSummaryModes.AVERAGE_MODE;
    this.addHTMLOutput(span);
    assert.equal(span.shadowRoot.textContent, '2');
  });

  test('instantiateInTotalsMode', function() {
    var span = document.createElement('tr-v-ui-array-of-numbers-span');
    span.numbers = [1, 2, 3];
    span.summaryMode = tr.v.ui.ArrayOfNumbersSummaryModes.TOTALS_MODE;
    this.addHTMLOutput(span);
    assert.equal(span.shadowRoot.textContent, '6');
  });
});
</script>
