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

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

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