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

Side by Side Diff: remoting/host/touch_injector_win_unittest.cc

Issue 1549493004: Use std::move() instead of .Pass() in remoting/host (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@move_not_pass
Patch Set: include <utility> Created 5 years 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
« no previous file with comments | « remoting/host/touch_injector_win.cc ('k') | remoting/host/video_frame_recorder.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "remoting/host/touch_injector_win.h" 5 #include "remoting/host/touch_injector_win.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <map> 10 #include <map>
11 #include <utility>
11 12
12 #include "base/stl_util.h" 13 #include "base/stl_util.h"
13 #include "remoting/proto/event.pb.h" 14 #include "remoting/proto/event.pb.h"
14 #include "testing/gmock/include/gmock/gmock.h" 15 #include "testing/gmock/include/gmock/gmock.h"
15 #include "testing/gtest/include/gtest/gtest.h" 16 #include "testing/gtest/include/gtest/gtest.h"
16 17
17 using ::testing::_; 18 using ::testing::_;
18 using ::testing::AtLeast; 19 using ::testing::AtLeast;
19 using ::testing::InSequence; 20 using ::testing::InSequence;
20 using ::testing::ExpectationSet; 21 using ::testing::ExpectationSet;
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
132 InjectTouchInput(1, EqualsSinglePointerTouchInfo(expected_touch_info))) 133 InjectTouchInput(1, EqualsSinglePointerTouchInfo(expected_touch_info)))
133 .WillOnce(Return(1)); 134 .WillOnce(Return(1));
134 135
135 expected_touch_info.pressure = 0; // Min 136 expected_touch_info.pressure = 0; // Min
136 EXPECT_CALL( 137 EXPECT_CALL(
137 *delegate_mock, 138 *delegate_mock,
138 InjectTouchInput(1, EqualsSinglePointerTouchInfo(expected_touch_info))) 139 InjectTouchInput(1, EqualsSinglePointerTouchInfo(expected_touch_info)))
139 .WillOnce(Return(1)); 140 .WillOnce(Return(1));
140 141
141 TouchInjectorWin injector; 142 TouchInjectorWin injector;
142 injector.SetInjectorDelegateForTest(delegate_mock.Pass()); 143 injector.SetInjectorDelegateForTest(std::move(delegate_mock));
143 EXPECT_TRUE(injector.Init()); 144 EXPECT_TRUE(injector.Init());
144 injector.InjectTouchEvent(event); 145 injector.InjectTouchEvent(event);
145 146
146 // Change to MOVE so that there still only one point. 147 // Change to MOVE so that there still only one point.
147 event.set_event_type(TouchEvent::TOUCH_POINT_MOVE); 148 event.set_event_type(TouchEvent::TOUCH_POINT_MOVE);
148 point->set_pressure(2.0f); 149 point->set_pressure(2.0f);
149 injector.InjectTouchEvent(event); 150 injector.InjectTouchEvent(event);
150 151
151 point->set_pressure(-3.0f); 152 point->set_pressure(-3.0f);
152 injector.InjectTouchEvent(event); 153 injector.InjectTouchEvent(event);
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
186 187
187 InSequence s; 188 InSequence s;
188 EXPECT_CALL(*delegate_mock, InitializeTouchInjection(_, _)) 189 EXPECT_CALL(*delegate_mock, InitializeTouchInjection(_, _))
189 .WillOnce(Return(1)); 190 .WillOnce(Return(1));
190 EXPECT_CALL( 191 EXPECT_CALL(
191 *delegate_mock, 192 *delegate_mock,
192 InjectTouchInput(1, EqualsSinglePointerTouchInfo(expected_touch_info))) 193 InjectTouchInput(1, EqualsSinglePointerTouchInfo(expected_touch_info)))
193 .WillOnce(Return(1)); 194 .WillOnce(Return(1));
194 195
195 TouchInjectorWin injector; 196 TouchInjectorWin injector;
196 injector.SetInjectorDelegateForTest(delegate_mock.Pass()); 197 injector.SetInjectorDelegateForTest(std::move(delegate_mock));
197 EXPECT_TRUE(injector.Init()); 198 EXPECT_TRUE(injector.Init());
198 injector.InjectTouchEvent(event); 199 injector.InjectTouchEvent(event);
199 } 200 }
200 201
201 // If initialization fails, it should not call any touch injection functions. 202 // If initialization fails, it should not call any touch injection functions.
202 TEST(TouchInjectorWinTest, InitFailed) { 203 TEST(TouchInjectorWinTest, InitFailed) {
203 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock( 204 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock(
204 new ::testing::StrictMock<TouchInjectorWinDelegateMock>()); 205 new ::testing::StrictMock<TouchInjectorWinDelegateMock>());
205 206
206 TouchEvent event; 207 TouchEvent event;
207 event.set_event_type(TouchEvent::TOUCH_POINT_START); 208 event.set_event_type(TouchEvent::TOUCH_POINT_START);
208 209
209 InSequence s; 210 InSequence s;
210 EXPECT_CALL(*delegate_mock, InitializeTouchInjection(_, _)) 211 EXPECT_CALL(*delegate_mock, InitializeTouchInjection(_, _))
211 .WillOnce(Return(0)); 212 .WillOnce(Return(0));
212 EXPECT_CALL(*delegate_mock, InjectTouchInput(_, _)).Times(0); 213 EXPECT_CALL(*delegate_mock, InjectTouchInput(_, _)).Times(0);
213 214
214 TouchInjectorWin injector; 215 TouchInjectorWin injector;
215 injector.SetInjectorDelegateForTest(delegate_mock.Pass()); 216 injector.SetInjectorDelegateForTest(std::move(delegate_mock));
216 EXPECT_FALSE(injector.Init()); 217 EXPECT_FALSE(injector.Init());
217 injector.InjectTouchEvent(event); 218 injector.InjectTouchEvent(event);
218 } 219 }
219 220
220 // Deinitialize and initialize should clean the state. 221 // Deinitialize and initialize should clean the state.
221 TEST(TouchInjectorWinTest, Reinitialize) { 222 TEST(TouchInjectorWinTest, Reinitialize) {
222 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock_before_deinitialize( 223 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock_before_deinitialize(
223 new ::testing::StrictMock<TouchInjectorWinDelegateMock>()); 224 new ::testing::StrictMock<TouchInjectorWinDelegateMock>());
224 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock_after_deinitialize( 225 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock_after_deinitialize(
225 new ::testing::StrictMock<TouchInjectorWinDelegateMock>()); 226 new ::testing::StrictMock<TouchInjectorWinDelegateMock>());
(...skipping 25 matching lines...) Expand all
251 // After deinitializing and then initializing, previous touch points should be 252 // After deinitializing and then initializing, previous touch points should be
252 // gone. 253 // gone.
253 id_to_flags.clear(); 254 id_to_flags.clear();
254 id_to_flags[1u] = kStartFlag; 255 id_to_flags[1u] = kStartFlag;
255 EXPECT_CALL( 256 EXPECT_CALL(
256 *delegate_mock_after_deinitialize, 257 *delegate_mock_after_deinitialize,
257 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags))) 258 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags)))
258 .WillOnce(Return(1)); 259 .WillOnce(Return(1));
259 260
260 TouchInjectorWin injector; 261 TouchInjectorWin injector;
261 injector.SetInjectorDelegateForTest(delegate_mock_before_deinitialize.Pass()); 262 injector.SetInjectorDelegateForTest(
263 std::move(delegate_mock_before_deinitialize));
262 264
263 EXPECT_TRUE(injector.Init()); 265 EXPECT_TRUE(injector.Init());
264 injector.InjectTouchEvent(first_event); 266 injector.InjectTouchEvent(first_event);
265 injector.Deinitialize(); 267 injector.Deinitialize();
266 268
267 injector.SetInjectorDelegateForTest(delegate_mock_after_deinitialize.Pass()); 269 injector.SetInjectorDelegateForTest(
270 std::move(delegate_mock_after_deinitialize));
268 EXPECT_TRUE(injector.Init()); 271 EXPECT_TRUE(injector.Init());
269 injector.InjectTouchEvent(second_event); 272 injector.InjectTouchEvent(second_event);
270 } 273 }
271 274
272 // Make sure that the flag is set to kStartFlag. 275 // Make sure that the flag is set to kStartFlag.
273 TEST(TouchInjectorWinTest, StartTouchPoint) { 276 TEST(TouchInjectorWinTest, StartTouchPoint) {
274 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock( 277 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock(
275 new ::testing::StrictMock<TouchInjectorWinDelegateMock>()); 278 new ::testing::StrictMock<TouchInjectorWinDelegateMock>());
276 279
277 TouchEvent event; 280 TouchEvent event;
278 event.set_event_type(TouchEvent::TOUCH_POINT_START); 281 event.set_event_type(TouchEvent::TOUCH_POINT_START);
279 TouchEventPoint* point = event.add_touch_points(); 282 TouchEventPoint* point = event.add_touch_points();
280 point->set_id(0u); 283 point->set_id(0u);
281 284
282 InSequence s; 285 InSequence s;
283 EXPECT_CALL(*delegate_mock, InitializeTouchInjection(_, _)) 286 EXPECT_CALL(*delegate_mock, InitializeTouchInjection(_, _))
284 .WillOnce(Return(1)); 287 .WillOnce(Return(1));
285 288
286 IdFlagMap id_to_flags; 289 IdFlagMap id_to_flags;
287 id_to_flags[0u] = kStartFlag; 290 id_to_flags[0u] = kStartFlag;
288 EXPECT_CALL( 291 EXPECT_CALL(
289 *delegate_mock, 292 *delegate_mock,
290 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags))) 293 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags)))
291 .WillOnce(Return(1)); 294 .WillOnce(Return(1));
292 295
293 TouchInjectorWin injector; 296 TouchInjectorWin injector;
294 injector.SetInjectorDelegateForTest(delegate_mock.Pass()); 297 injector.SetInjectorDelegateForTest(std::move(delegate_mock));
295 EXPECT_TRUE(injector.Init()); 298 EXPECT_TRUE(injector.Init());
296 injector.InjectTouchEvent(event); 299 injector.InjectTouchEvent(event);
297 } 300 }
298 301
299 // Start a point and then move, make sure the flag is set to kMoveFlag. 302 // Start a point and then move, make sure the flag is set to kMoveFlag.
300 TEST(TouchInjectorWinTest, MoveTouchPoint) { 303 TEST(TouchInjectorWinTest, MoveTouchPoint) {
301 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock( 304 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock(
302 new ::testing::StrictMock<TouchInjectorWinDelegateMock>()); 305 new ::testing::StrictMock<TouchInjectorWinDelegateMock>());
303 306
304 TouchEvent event; 307 TouchEvent event;
(...skipping 13 matching lines...) Expand all
318 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags))) 321 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags)))
319 .WillOnce(Return(1)); 322 .WillOnce(Return(1));
320 323
321 id_to_flags[0u] = kMoveFlag; 324 id_to_flags[0u] = kMoveFlag;
322 EXPECT_CALL( 325 EXPECT_CALL(
323 *delegate_mock, 326 *delegate_mock,
324 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags))) 327 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags)))
325 .WillOnce(Return(1)); 328 .WillOnce(Return(1));
326 329
327 TouchInjectorWin injector; 330 TouchInjectorWin injector;
328 injector.SetInjectorDelegateForTest(delegate_mock.Pass()); 331 injector.SetInjectorDelegateForTest(std::move(delegate_mock));
329 EXPECT_TRUE(injector.Init()); 332 EXPECT_TRUE(injector.Init());
330 injector.InjectTouchEvent(event); 333 injector.InjectTouchEvent(event);
331 event.set_event_type(TouchEvent::TOUCH_POINT_MOVE); 334 event.set_event_type(TouchEvent::TOUCH_POINT_MOVE);
332 injector.InjectTouchEvent(event); 335 injector.InjectTouchEvent(event);
333 } 336 }
334 337
335 // Start a point and then move, make sure the flag is set to kEndFlag. 338 // Start a point and then move, make sure the flag is set to kEndFlag.
336 TEST(TouchInjectorWinTest, EndTouchPoint) { 339 TEST(TouchInjectorWinTest, EndTouchPoint) {
337 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock( 340 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock(
338 new ::testing::StrictMock<TouchInjectorWinDelegateMock>()); 341 new ::testing::StrictMock<TouchInjectorWinDelegateMock>());
(...skipping 14 matching lines...) Expand all
353 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags))) 356 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags)))
354 .WillOnce(Return(1)); 357 .WillOnce(Return(1));
355 358
356 id_to_flags[0u] = kEndFlag; 359 id_to_flags[0u] = kEndFlag;
357 EXPECT_CALL( 360 EXPECT_CALL(
358 *delegate_mock, 361 *delegate_mock,
359 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags))) 362 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags)))
360 .WillOnce(Return(1)); 363 .WillOnce(Return(1));
361 364
362 TouchInjectorWin injector; 365 TouchInjectorWin injector;
363 injector.SetInjectorDelegateForTest(delegate_mock.Pass()); 366 injector.SetInjectorDelegateForTest(std::move(delegate_mock));
364 EXPECT_TRUE(injector.Init()); 367 EXPECT_TRUE(injector.Init());
365 injector.InjectTouchEvent(event); 368 injector.InjectTouchEvent(event);
366 event.set_event_type(TouchEvent::TOUCH_POINT_END); 369 event.set_event_type(TouchEvent::TOUCH_POINT_END);
367 injector.InjectTouchEvent(event); 370 injector.InjectTouchEvent(event);
368 } 371 }
369 372
370 // Start a point and then move, make sure the flag is set to kCancelFlag. 373 // Start a point and then move, make sure the flag is set to kCancelFlag.
371 TEST(TouchInjectorWinTest, CancelTouchPoint) { 374 TEST(TouchInjectorWinTest, CancelTouchPoint) {
372 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock( 375 scoped_ptr<TouchInjectorWinDelegateMock> delegate_mock(
373 new ::testing::StrictMock<TouchInjectorWinDelegateMock>()); 376 new ::testing::StrictMock<TouchInjectorWinDelegateMock>());
(...skipping 14 matching lines...) Expand all
388 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags))) 391 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags)))
389 .WillOnce(Return(1)); 392 .WillOnce(Return(1));
390 393
391 id_to_flags[0u] = kCancelFlag; 394 id_to_flags[0u] = kCancelFlag;
392 EXPECT_CALL( 395 EXPECT_CALL(
393 *delegate_mock, 396 *delegate_mock,
394 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags))) 397 InjectTouchInput(1, EqualsPointerTouchInfoFlag(id_to_flags)))
395 .WillOnce(Return(1)); 398 .WillOnce(Return(1));
396 399
397 TouchInjectorWin injector; 400 TouchInjectorWin injector;
398 injector.SetInjectorDelegateForTest(delegate_mock.Pass()); 401 injector.SetInjectorDelegateForTest(std::move(delegate_mock));
399 EXPECT_TRUE(injector.Init()); 402 EXPECT_TRUE(injector.Init());
400 injector.InjectTouchEvent(event); 403 injector.InjectTouchEvent(event);
401 event.set_event_type(TouchEvent::TOUCH_POINT_CANCEL); 404 event.set_event_type(TouchEvent::TOUCH_POINT_CANCEL);
402 injector.InjectTouchEvent(event); 405 injector.InjectTouchEvent(event);
403 } 406 }
404 407
405 // Note that points that haven't changed should be injected as MOVE. 408 // Note that points that haven't changed should be injected as MOVE.
406 // This tests: 409 // This tests:
407 // 1. Start first touch point. 410 // 1. Start first touch point.
408 // 2. Start second touch point. 411 // 2. Start second touch point.
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
457 460
458 id_to_flags.erase(1u); 461 id_to_flags.erase(1u);
459 id_to_flags[0u] = kCancelFlag; 462 id_to_flags[0u] = kCancelFlag;
460 id_to_flags[2u] = kCancelFlag; 463 id_to_flags[2u] = kCancelFlag;
461 EXPECT_CALL( 464 EXPECT_CALL(
462 *delegate_mock, 465 *delegate_mock,
463 InjectTouchInput(2, EqualsPointerTouchInfoFlag(id_to_flags))) 466 InjectTouchInput(2, EqualsPointerTouchInfoFlag(id_to_flags)))
464 .WillOnce(Return(1)); 467 .WillOnce(Return(1));
465 468
466 TouchInjectorWin injector; 469 TouchInjectorWin injector;
467 injector.SetInjectorDelegateForTest(delegate_mock.Pass()); 470 injector.SetInjectorDelegateForTest(std::move(delegate_mock));
468 EXPECT_TRUE(injector.Init()); 471 EXPECT_TRUE(injector.Init());
469 472
470 // Start first touch point. 473 // Start first touch point.
471 TouchEvent first_touch_start; 474 TouchEvent first_touch_start;
472 first_touch_start.set_event_type(TouchEvent::TOUCH_POINT_START); 475 first_touch_start.set_event_type(TouchEvent::TOUCH_POINT_START);
473 TouchEventPoint* point0 = first_touch_start.add_touch_points(); 476 TouchEventPoint* point0 = first_touch_start.add_touch_points();
474 point0->set_id(0u); 477 point0->set_id(0u);
475 injector.InjectTouchEvent(first_touch_start); 478 injector.InjectTouchEvent(first_touch_start);
476 479
477 // Add second touch point. 480 // Add second touch point.
(...skipping 30 matching lines...) Expand all
508 TouchEvent cancel_rest; 511 TouchEvent cancel_rest;
509 cancel_rest.set_event_type(TouchEvent::TOUCH_POINT_CANCEL); 512 cancel_rest.set_event_type(TouchEvent::TOUCH_POINT_CANCEL);
510 point0 = cancel_rest.add_touch_points(); 513 point0 = cancel_rest.add_touch_points();
511 point0->set_id(0u); 514 point0->set_id(0u);
512 point2 = cancel_rest.add_touch_points(); 515 point2 = cancel_rest.add_touch_points();
513 point2->set_id(2u); 516 point2->set_id(2u);
514 injector.InjectTouchEvent(cancel_rest); 517 injector.InjectTouchEvent(cancel_rest);
515 } 518 }
516 519
517 } // namespace remoting 520 } // namespace remoting
OLDNEW
« no previous file with comments | « remoting/host/touch_injector_win.cc ('k') | remoting/host/video_frame_recorder.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698