| <!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="/core/test_utils.html"> |
| <link rel="import" href="/model/event_set.html"> |
| <link rel="import" href="/model/global_memory_dump.html"> |
| <link rel="import" href="/model/selection_state.html"> |
| <link rel="import" href="/ui/timeline_viewport.html"> |
| <link rel="import" href="/ui/tracks/alert_track.html"> |
| <link rel="import" href="/ui/tracks/drawing_container.html"> |
| |
| <script> |
| 'use strict'; |
| |
| tr.b.unittest.testSuite(function() { |
| var AlertTrack = tr.ui.tracks.AlertTrack; |
| var SelectionState = tr.model.SelectionState; |
| var Viewport = tr.ui.TimelineViewport; |
| |
| var ALERT_INFO_1 = new tr.model.EventInfo( |
| 'Alert 1', 'One alert'); |
| var ALERT_INFO_2 = new tr.model.EventInfo( |
| 'Alert 2', 'Another alert'); |
| |
| var createAlerts = function() { |
| var alerts = [ |
| new tr.model.Alert(ALERT_INFO_1, 5), |
| new tr.model.Alert(ALERT_INFO_1, 20), |
| new tr.model.Alert(ALERT_INFO_2, 35), |
| new tr.model.Alert(ALERT_INFO_2, 50) |
| ]; |
| return alerts; |
| }; |
| |
| test('instantiate', function() { |
| var alerts = createAlerts(); |
| alerts[1].selectionState = SelectionState.SELECTED; |
| |
| var div = document.createElement('div'); |
| var viewport = new Viewport(div); |
| var drawingContainer = new tr.ui.tracks.DrawingContainer(viewport); |
| div.appendChild(drawingContainer); |
| |
| var track = AlertTrack(viewport); |
| drawingContainer.appendChild(track); |
| |
| this.addHTMLOutput(div); |
| drawingContainer.invalidate(); |
| |
| track.alerts = alerts; |
| var dt = new tr.ui.TimelineDisplayTransform(); |
| dt.xSetWorldBounds(0, 50, track.clientWidth); |
| track.viewport.setDisplayTransformImmediately(dt); |
| |
| |
| assert.equal(5, track.items[0].start); |
| }); |
| |
| test('modelMapping', function() { |
| var alerts = createAlerts(); |
| |
| var div = document.createElement('div'); |
| var viewport = new Viewport(div); |
| var track = AlertTrack(viewport); |
| track.alerts = alerts; |
| |
| var a0 = track.items[0].modelItem; |
| assert.equal(a0, alerts[0]); |
| }); |
| }); |
| </script> |
| |