Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(29)

Side by Side Diff: ash/laser/laser_pointer_controller_unittest.cc

Issue 2362063002: cros: Laser pointer fades out on release, do not cover palette. (Closed)
Patch Set: Fixed patch set 5 errors. Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ash/laser/laser_pointer_controller.h" 5 #include "ash/laser/laser_pointer_controller.h"
6 #include "ash/laser/laser_pointer_controller_test_api.h" 6 #include "ash/laser/laser_pointer_controller_test_api.h"
7 #include "ash/laser/laser_pointer_points_test_api.h" 7 #include "ash/laser/laser_pointer_points_test_api.h"
8 #include "ash/laser/laser_pointer_view.h" 8 #include "ash/laser/laser_pointer_view.h"
9 #include "ash/shell.h" 9 #include "ash/shell.h"
10 #include "ash/test/ash_test_base.h" 10 #include "ash/test/ash_test_base.h"
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
104 points_.Clear(); 104 points_.Clear();
105 EXPECT_TRUE(points_.IsEmpty()); 105 EXPECT_TRUE(points_.IsEmpty());
106 } 106 }
107 107
108 // Test the laser pointer points collection to verify that old points are 108 // Test the laser pointer points collection to verify that old points are
109 // removed. 109 // removed.
110 TEST_F(LaserPointerPointsTest, LaserPointerInternalCollectionDeletion) { 110 TEST_F(LaserPointerPointsTest, LaserPointerInternalCollectionDeletion) {
111 LaserPointerPointsTestApi points_test_api_(&points_); 111 LaserPointerPointsTestApi points_test_api_(&points_);
112 112
113 // When a point older than kTestPointsLifetime (5 seconds) is added, it 113 // When a point older than kTestPointsLifetime (5 seconds) is added, it
114 // should get removed. 114 // should get removed. The age of the point is a number between 0.0 and 1.0,
115 // with 0.0 specifying a newly added point and 1.0 specifying the age of a
116 // point added |kTestPointsLifetime| ago.
115 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(1)); 117 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(1));
116 EXPECT_EQ(1, points_test_api_.GetNumberOfPoints()); 118 EXPECT_EQ(1, points_test_api_.GetNumberOfPoints());
119 EXPECT_FLOAT_EQ(0.0, points_test_api_.GetPointAtIndex(0).age);
120
121 // Verify when we move forward in time by one second, the age of the last
122 // point, added one second ago is 1 / |kTestPointsLifetime|.
117 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(1)); 123 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(1));
118 EXPECT_EQ(2, points_test_api_.GetNumberOfPoints()); 124 EXPECT_EQ(2, points_test_api_.GetNumberOfPoints());
119 125 EXPECT_FLOAT_EQ(0.2, points_test_api_.GetPointAtIndex(0).age);
126 EXPECT_FLOAT_EQ(0.0, points_test_api_.GetPointAtIndex(1).age);
120 // Verify adding a point 10 seconds later will clear all other points, since 127 // Verify adding a point 10 seconds later will clear all other points, since
121 // they are older than 5 seconds. 128 // they are older than 5 seconds.
122 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(10)); 129 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(10));
123 EXPECT_EQ(1, points_test_api_.GetNumberOfPoints()); 130 EXPECT_EQ(1, points_test_api_.GetNumberOfPoints());
124 131
125 // Verify adding 3 points one second apart each will add 3 points to the 132 // Verify adding 3 points one second apart each will add 3 points to the
126 // collection, since all 4 poitns are younger than 5 seconds. 133 // collection, since all 4 points are younger than 5 seconds. All 4 points are
134 // added 1 second apart so their age should be 0.2 apart.
127 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(1)); 135 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(1));
128 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(1)); 136 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(1));
129 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(1)); 137 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(1));
130 EXPECT_EQ(4, points_test_api_.GetNumberOfPoints()); 138 EXPECT_EQ(4, points_test_api_.GetNumberOfPoints());
139 EXPECT_FLOAT_EQ(0.6, points_test_api_.GetPointAtIndex(0).age);
140 EXPECT_FLOAT_EQ(0.4, points_test_api_.GetPointAtIndex(1).age);
141 EXPECT_FLOAT_EQ(0.2, points_test_api_.GetPointAtIndex(2).age);
142 EXPECT_FLOAT_EQ(0.0, points_test_api_.GetPointAtIndex(3).age);
131 143
132 // Verify adding 1 point three seconds later will remove 2 points which are 144 // Verify adding 1 point three seconds later will remove 2 points which are
133 // older than 5 seconds. 145 // older than 5 seconds.
134 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(3)); 146 points_test_api_.MoveForwardInTime(base::TimeDelta::FromSeconds(3));
135 EXPECT_EQ(3, points_test_api_.GetNumberOfPoints()); 147 EXPECT_EQ(3, points_test_api_.GetNumberOfPoints());
136 } 148 }
137 149
138 // Test to ensure the class responsible for drawing the laser pointer receives 150 // Test to ensure the class responsible for drawing the laser pointer receives
139 // points from stylus movements as expected. 151 // points from stylus movements as expected.
140 TEST_F(LaserPointerControllerTest, LaserPointerRenderer) { 152 TEST_F(LaserPointerControllerTest, LaserPointerRenderer) {
(...skipping 11 matching lines...) Expand all
152 controller_test_api_.SetEnabled(true); 164 controller_test_api_.SetEnabled(true);
153 EXPECT_FALSE(controller_test_api_.IsShowingLaserPointer()); 165 EXPECT_FALSE(controller_test_api_.IsShowingLaserPointer());
154 166
155 // Verify moving the stylus 4 times will not display the laser pointer. 167 // Verify moving the stylus 4 times will not display the laser pointer.
156 GetEventGenerator().MoveMouseToInHost(gfx::Point(2, 2)); 168 GetEventGenerator().MoveMouseToInHost(gfx::Point(2, 2));
157 GetEventGenerator().MoveMouseToInHost(gfx::Point(3, 3)); 169 GetEventGenerator().MoveMouseToInHost(gfx::Point(3, 3));
158 GetEventGenerator().MoveMouseToInHost(gfx::Point(4, 4)); 170 GetEventGenerator().MoveMouseToInHost(gfx::Point(4, 4));
159 GetEventGenerator().MoveMouseToInHost(gfx::Point(5, 5)); 171 GetEventGenerator().MoveMouseToInHost(gfx::Point(5, 5));
160 EXPECT_FALSE(controller_test_api_.IsShowingLaserPointer()); 172 EXPECT_FALSE(controller_test_api_.IsShowingLaserPointer());
161 173
162 // Verify pressing the stylus will show the laser pointer and add a point. 174 // Verify pressing the stylus will show the laser pointer and add a point but
175 // will not activate fading out.
163 GetEventGenerator().PressLeftButton(); 176 GetEventGenerator().PressLeftButton();
164 EXPECT_TRUE(controller_test_api_.IsShowingLaserPointer()); 177 EXPECT_TRUE(controller_test_api_.IsShowingLaserPointer());
178 EXPECT_FALSE(controller_test_api_.IsFadingAway());
165 EXPECT_EQ(1, controller_test_api_.laser_points().GetNumberOfPoints()); 179 EXPECT_EQ(1, controller_test_api_.laser_points().GetNumberOfPoints());
166 180
167 // Verify dragging the stylus 2 times will add 2 more points. 181 // Verify dragging the stylus 2 times will add 2 more points.
168 GetEventGenerator().MoveMouseToInHost(gfx::Point(6, 6)); 182 GetEventGenerator().MoveMouseToInHost(gfx::Point(6, 6));
169 GetEventGenerator().MoveMouseToInHost(gfx::Point(7, 7)); 183 GetEventGenerator().MoveMouseToInHost(gfx::Point(7, 7));
170 EXPECT_EQ(3, controller_test_api_.laser_points().GetNumberOfPoints()); 184 EXPECT_EQ(3, controller_test_api_.laser_points().GetNumberOfPoints());
171 185
172 // Verify releasing the stylus hides the laser pointer. 186 // Verify releasing the stylus still shows the laser pointer, which is fading
187 // away.
173 GetEventGenerator().ReleaseLeftButton(); 188 GetEventGenerator().ReleaseLeftButton();
174 EXPECT_FALSE(controller_test_api_.IsShowingLaserPointer()); 189 EXPECT_TRUE(controller_test_api_.IsShowingLaserPointer());
190 EXPECT_TRUE(controller_test_api_.IsFadingAway());
175 191
176 // Verify that disabling the mode does not display the laser pointer. 192 // Verify that disabling the mode does not display the laser pointer.
177 controller_test_api_.SetEnabled(false); 193 controller_test_api_.SetEnabled(false);
178 EXPECT_FALSE(controller_test_api_.IsShowingLaserPointer()); 194 EXPECT_FALSE(controller_test_api_.IsShowingLaserPointer());
179 195
180 // Verify that disabling the mode while laser pointer is displayed does not 196 // Verify that disabling the mode while laser pointer is displayed does not
181 // display the laser pointer. 197 // display the laser pointer.
182 controller_test_api_.SetEnabled(true); 198 controller_test_api_.SetEnabled(true);
183 GetEventGenerator().PressLeftButton(); 199 GetEventGenerator().PressLeftButton();
184 GetEventGenerator().MoveMouseToInHost(gfx::Point(6, 6)); 200 GetEventGenerator().MoveMouseToInHost(gfx::Point(6, 6));
(...skipping 12 matching lines...) Expand all
197 // from the stylus, even when enabled. 213 // from the stylus, even when enabled.
198 GetEventGenerator().ExitPenPointerMode(); 214 GetEventGenerator().ExitPenPointerMode();
199 controller_test_api_.SetEnabled(true); 215 controller_test_api_.SetEnabled(true);
200 GetEventGenerator().PressLeftButton(); 216 GetEventGenerator().PressLeftButton();
201 GetEventGenerator().MoveMouseToInHost(gfx::Point(10, 10)); 217 GetEventGenerator().MoveMouseToInHost(gfx::Point(10, 10));
202 GetEventGenerator().MoveMouseToInHost(gfx::Point(11, 11)); 218 GetEventGenerator().MoveMouseToInHost(gfx::Point(11, 11));
203 EXPECT_FALSE(controller_test_api_.IsShowingLaserPointer()); 219 EXPECT_FALSE(controller_test_api_.IsShowingLaserPointer());
204 GetEventGenerator().ReleaseLeftButton(); 220 GetEventGenerator().ReleaseLeftButton();
205 } 221 }
206 } // namespace ash 222 } // namespace ash
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698