3 Copyright (c) 2014 The Chromium Authors. All rights reserved.
4 Use of this source code is governed by a BSD-style license that can be
5 found in the LICENSE file.
8 <link rel="import" href="/tracing/timeline_viewport.html">
9 <link rel="import" href="/tracing/timing_tool.html">
14 tv.unittest.testSuite(function() {
15 function create100PxWideViewportInto10WideWorld() {
16 var vp = new tracing.TimelineViewport(document.createElement('div'));
17 var tempDisplayTransform = new tracing.TimelineDisplayTransform();
18 tempDisplayTransform.xSetWorldBounds(0, 10, 100);
19 vp.setDisplayTransformImmediately(tempDisplayTransform);
21 assertEquals(0, vp.currentDisplayTransform.xViewToWorld(0));
22 assertEquals(10, vp.currentDisplayTransform.xViewToWorld(100));
27 test('dragLeftInterestRegion', function() {
28 var vp = create100PxWideViewportInto10WideWorld();
29 vp.interestRange.min = 1;
30 vp.interestRange.max = 9;
31 var tool = new tracing.TimingTool(vp);
33 tool.mouseDownAt_(1.1, 0);
34 assertTrue(vp.interestRange.leftSelected);
35 tool.mouseMoveAt_(1.5, 0, true);
36 assertEquals(1.5, vp.interestRange.min);
38 assertEquals(1.5, vp.interestRange.min);
39 assertFalse(vp.interestRange.leftSelected);
42 test('dragRightInterestRegion', function() {
43 var vp = create100PxWideViewportInto10WideWorld();
44 vp.interestRange.min = 1;
45 vp.interestRange.max = 9;
46 var tool = new tracing.TimingTool(vp);
48 tool.mouseDownAt_(9.1, 0);
49 assertTrue(vp.interestRange.rightSelected);
50 tool.mouseMoveAt_(8, 0, true);
51 assertEquals(8, vp.interestRange.max);
53 assertEquals(8, vp.interestRange.max);
54 assertFalse(vp.interestRange.leftSelected);
57 test('dragInNewSpace', function() {
58 var vp = create100PxWideViewportInto10WideWorld();
59 vp.interestRange.min = 1;
60 vp.interestRange.max = 9;
61 var tool = new tracing.TimingTool(vp);
63 tool.mouseDownAt_(5, 0);
64 assertTrue(vp.interestRange.rightSelected);
65 assertEquals(5, vp.interestRange.min);
66 assertEquals(5, vp.interestRange.max);
67 tool.mouseMoveAt_(4, 0, true);
68 assertEquals(4, vp.interestRange.min);
69 assertEquals(5, vp.interestRange.max);
70 assertTrue(vp.interestRange.leftSelected);
72 assertEquals(4, vp.interestRange.min);
73 assertFalse(vp.interestRange.leftSelected);
74 assertFalse(vp.interestRange.rightSelected);