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

Side by Side Diff: chrome/browser/sync_file_system/drive_backend/sync_task_manager_unittest.cc

Issue 2083363002: Remove calls to deprecated MessageLoop methods in chrome. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "chrome/browser/sync_file_system/drive_backend/sync_task_manager.h" 5 #include "chrome/browser/sync_file_system/drive_backend/sync_task_manager.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 #include <deque> 8 #include <deque>
9 #include <string> 9 #include <string>
10 #include <utility> 10 #include <utility>
(...skipping 296 matching lines...) Expand 10 before | Expand all | Expand 10 after
307 307
308 TEST(SyncTaskManagerTest, ScheduleTask) { 308 TEST(SyncTaskManagerTest, ScheduleTask) {
309 base::MessageLoop message_loop; 309 base::MessageLoop message_loop;
310 TaskManagerClient client(0 /* maximum_background_task */); 310 TaskManagerClient client(0 /* maximum_background_task */);
311 int callback_count = 0; 311 int callback_count = 0;
312 SyncStatusCode callback_status = SYNC_STATUS_OK; 312 SyncStatusCode callback_status = SYNC_STATUS_OK;
313 313
314 client.ScheduleTask(kStatus1, base::Bind(&IncrementAndAssign, 0, 314 client.ScheduleTask(kStatus1, base::Bind(&IncrementAndAssign, 0,
315 &callback_count, 315 &callback_count,
316 &callback_status)); 316 &callback_status));
317 message_loop.RunUntilIdle(); 317 base::RunLoop().RunUntilIdle();
318 318
319 EXPECT_EQ(kStatus1, callback_status); 319 EXPECT_EQ(kStatus1, callback_status);
320 EXPECT_EQ(kStatus1, client.last_operation_status()); 320 EXPECT_EQ(kStatus1, client.last_operation_status());
321 321
322 EXPECT_EQ(1, callback_count); 322 EXPECT_EQ(1, callback_count);
323 EXPECT_EQ(1, client.maybe_schedule_next_task_count()); 323 EXPECT_EQ(1, client.maybe_schedule_next_task_count());
324 EXPECT_EQ(1, client.task_scheduled_count()); 324 EXPECT_EQ(1, client.task_scheduled_count());
325 EXPECT_EQ(0, client.idle_task_scheduled_count()); 325 EXPECT_EQ(0, client.idle_task_scheduled_count());
326 } 326 }
327 327
328 TEST(SyncTaskManagerTest, ScheduleTwoTasks) { 328 TEST(SyncTaskManagerTest, ScheduleTwoTasks) {
329 base::MessageLoop message_loop; 329 base::MessageLoop message_loop;
330 TaskManagerClient client(0 /* maximum_background_task */); 330 TaskManagerClient client(0 /* maximum_background_task */);
331 int callback_count = 0; 331 int callback_count = 0;
332 SyncStatusCode callback_status = SYNC_STATUS_OK; 332 SyncStatusCode callback_status = SYNC_STATUS_OK;
333 333
334 client.ScheduleTask(kStatus1, base::Bind(&IncrementAndAssign, 0, 334 client.ScheduleTask(kStatus1, base::Bind(&IncrementAndAssign, 0,
335 &callback_count, 335 &callback_count,
336 &callback_status)); 336 &callback_status));
337 client.ScheduleTask(kStatus2, base::Bind(&IncrementAndAssign, 1, 337 client.ScheduleTask(kStatus2, base::Bind(&IncrementAndAssign, 1,
338 &callback_count, 338 &callback_count,
339 &callback_status)); 339 &callback_status));
340 message_loop.RunUntilIdle(); 340 base::RunLoop().RunUntilIdle();
341 341
342 EXPECT_EQ(kStatus2, callback_status); 342 EXPECT_EQ(kStatus2, callback_status);
343 EXPECT_EQ(kStatus2, client.last_operation_status()); 343 EXPECT_EQ(kStatus2, client.last_operation_status());
344 344
345 EXPECT_EQ(2, callback_count); 345 EXPECT_EQ(2, callback_count);
346 EXPECT_EQ(1, client.maybe_schedule_next_task_count()); 346 EXPECT_EQ(1, client.maybe_schedule_next_task_count());
347 EXPECT_EQ(2, client.task_scheduled_count()); 347 EXPECT_EQ(2, client.task_scheduled_count());
348 EXPECT_EQ(0, client.idle_task_scheduled_count()); 348 EXPECT_EQ(0, client.idle_task_scheduled_count());
349 } 349 }
350 350
351 TEST(SyncTaskManagerTest, ScheduleIdleTask) { 351 TEST(SyncTaskManagerTest, ScheduleIdleTask) {
352 base::MessageLoop message_loop; 352 base::MessageLoop message_loop;
353 TaskManagerClient client(0 /* maximum_background_task */); 353 TaskManagerClient client(0 /* maximum_background_task */);
354 354
355 client.ScheduleTaskIfIdle(kStatus1); 355 client.ScheduleTaskIfIdle(kStatus1);
356 message_loop.RunUntilIdle(); 356 base::RunLoop().RunUntilIdle();
357 357
358 EXPECT_EQ(kStatus1, client.last_operation_status()); 358 EXPECT_EQ(kStatus1, client.last_operation_status());
359 359
360 EXPECT_EQ(1, client.maybe_schedule_next_task_count()); 360 EXPECT_EQ(1, client.maybe_schedule_next_task_count());
361 EXPECT_EQ(1, client.task_scheduled_count()); 361 EXPECT_EQ(1, client.task_scheduled_count());
362 EXPECT_EQ(1, client.idle_task_scheduled_count()); 362 EXPECT_EQ(1, client.idle_task_scheduled_count());
363 } 363 }
364 364
365 TEST(SyncTaskManagerTest, ScheduleIdleTaskWhileNotIdle) { 365 TEST(SyncTaskManagerTest, ScheduleIdleTaskWhileNotIdle) {
366 base::MessageLoop message_loop; 366 base::MessageLoop message_loop;
367 TaskManagerClient client(0 /* maximum_background_task */); 367 TaskManagerClient client(0 /* maximum_background_task */);
368 int callback_count = 0; 368 int callback_count = 0;
369 SyncStatusCode callback_status = SYNC_STATUS_OK; 369 SyncStatusCode callback_status = SYNC_STATUS_OK;
370 370
371 client.ScheduleTask(kStatus1, base::Bind(&IncrementAndAssign, 0, 371 client.ScheduleTask(kStatus1, base::Bind(&IncrementAndAssign, 0,
372 &callback_count, 372 &callback_count,
373 &callback_status)); 373 &callback_status));
374 client.ScheduleTaskIfIdle(kStatus2); 374 client.ScheduleTaskIfIdle(kStatus2);
375 message_loop.RunUntilIdle(); 375 base::RunLoop().RunUntilIdle();
376 376
377 // Idle task must not have run. 377 // Idle task must not have run.
378 EXPECT_EQ(kStatus1, callback_status); 378 EXPECT_EQ(kStatus1, callback_status);
379 EXPECT_EQ(kStatus1, client.last_operation_status()); 379 EXPECT_EQ(kStatus1, client.last_operation_status());
380 380
381 EXPECT_EQ(1, callback_count); 381 EXPECT_EQ(1, callback_count);
382 EXPECT_EQ(1, client.maybe_schedule_next_task_count()); 382 EXPECT_EQ(1, client.maybe_schedule_next_task_count());
383 EXPECT_EQ(1, client.task_scheduled_count()); 383 EXPECT_EQ(1, client.task_scheduled_count());
384 EXPECT_EQ(0, client.idle_task_scheduled_count()); 384 EXPECT_EQ(0, client.idle_task_scheduled_count());
385 } 385 }
386 386
387 TEST(SyncTaskManagerTest, ScheduleAndCancelSyncTask) { 387 TEST(SyncTaskManagerTest, ScheduleAndCancelSyncTask) {
388 base::MessageLoop message_loop; 388 base::MessageLoop message_loop;
389 389
390 int callback_count = 0; 390 int callback_count = 0;
391 SyncStatusCode status = SYNC_STATUS_UNKNOWN; 391 SyncStatusCode status = SYNC_STATUS_UNKNOWN;
392 392
393 bool task_started = false; 393 bool task_started = false;
394 bool task_completed = false; 394 bool task_completed = false;
395 395
396 { 396 {
397 SyncTaskManager task_manager(base::WeakPtr<SyncTaskManager::Client>(), 397 SyncTaskManager task_manager(base::WeakPtr<SyncTaskManager::Client>(),
398 0 /* maximum_background_task */, 398 0 /* maximum_background_task */,
399 base::ThreadTaskRunnerHandle::Get(), 399 base::ThreadTaskRunnerHandle::Get(),
400 nullptr /* worker_pool */); 400 nullptr /* worker_pool */);
401 task_manager.Initialize(SYNC_STATUS_OK); 401 task_manager.Initialize(SYNC_STATUS_OK);
402 message_loop.RunUntilIdle(); 402 base::RunLoop().RunUntilIdle();
403 task_manager.ScheduleSyncTask( 403 task_manager.ScheduleSyncTask(
404 FROM_HERE, std::unique_ptr<SyncTask>( 404 FROM_HERE, std::unique_ptr<SyncTask>(
405 new MultihopSyncTask(&task_started, &task_completed)), 405 new MultihopSyncTask(&task_started, &task_completed)),
406 SyncTaskManager::PRIORITY_MED, 406 SyncTaskManager::PRIORITY_MED,
407 base::Bind(&IncrementAndAssign, 0, &callback_count, &status)); 407 base::Bind(&IncrementAndAssign, 0, &callback_count, &status));
408 } 408 }
409 message_loop.RunUntilIdle(); 409 base::RunLoop().RunUntilIdle();
410 410
411 EXPECT_EQ(0, callback_count); 411 EXPECT_EQ(0, callback_count);
412 EXPECT_EQ(SYNC_STATUS_UNKNOWN, status); 412 EXPECT_EQ(SYNC_STATUS_UNKNOWN, status);
413 EXPECT_TRUE(task_started); 413 EXPECT_TRUE(task_started);
414 EXPECT_FALSE(task_completed); 414 EXPECT_FALSE(task_completed);
415 } 415 }
416 416
417 TEST(SyncTaskManagerTest, ScheduleTaskAtPriority) { 417 TEST(SyncTaskManagerTest, ScheduleTaskAtPriority) {
418 base::MessageLoop message_loop; 418 base::MessageLoop message_loop;
419 SyncTaskManager task_manager(base::WeakPtr<SyncTaskManager::Client>(), 419 SyncTaskManager task_manager(base::WeakPtr<SyncTaskManager::Client>(),
420 0 /* maximum_background_task */, 420 0 /* maximum_background_task */,
421 base::ThreadTaskRunnerHandle::Get(), 421 base::ThreadTaskRunnerHandle::Get(),
422 nullptr /* worker_pool */); 422 nullptr /* worker_pool */);
423 task_manager.Initialize(SYNC_STATUS_OK); 423 task_manager.Initialize(SYNC_STATUS_OK);
424 message_loop.RunUntilIdle(); 424 base::RunLoop().RunUntilIdle();
425 425
426 int callback_count = 0; 426 int callback_count = 0;
427 SyncStatusCode callback_status1 = SYNC_STATUS_OK; 427 SyncStatusCode callback_status1 = SYNC_STATUS_OK;
428 SyncStatusCode callback_status2 = SYNC_STATUS_OK; 428 SyncStatusCode callback_status2 = SYNC_STATUS_OK;
429 SyncStatusCode callback_status3 = SYNC_STATUS_OK; 429 SyncStatusCode callback_status3 = SYNC_STATUS_OK;
430 SyncStatusCode callback_status4 = SYNC_STATUS_OK; 430 SyncStatusCode callback_status4 = SYNC_STATUS_OK;
431 SyncStatusCode callback_status5 = SYNC_STATUS_OK; 431 SyncStatusCode callback_status5 = SYNC_STATUS_OK;
432 432
433 // This will run first even if its priority is low, since there're no 433 // This will run first even if its priority is low, since there're no
434 // pending tasks. 434 // pending tasks.
(...skipping 24 matching lines...) Expand all
459 SyncTaskManager::PRIORITY_MED, 459 SyncTaskManager::PRIORITY_MED,
460 base::Bind(&IncrementAndAssign, 3, &callback_count, &callback_status4)); 460 base::Bind(&IncrementAndAssign, 3, &callback_count, &callback_status4));
461 461
462 // This runs third (expected counter == 2). 462 // This runs third (expected counter == 2).
463 task_manager.ScheduleTask( 463 task_manager.ScheduleTask(
464 FROM_HERE, 464 FROM_HERE,
465 base::Bind(&DumbTask, kStatus5), 465 base::Bind(&DumbTask, kStatus5),
466 SyncTaskManager::PRIORITY_HIGH, 466 SyncTaskManager::PRIORITY_HIGH,
467 base::Bind(&IncrementAndAssign, 2, &callback_count, &callback_status5)); 467 base::Bind(&IncrementAndAssign, 2, &callback_count, &callback_status5));
468 468
469 message_loop.RunUntilIdle(); 469 base::RunLoop().RunUntilIdle();
470 470
471 EXPECT_EQ(kStatus1, callback_status1); 471 EXPECT_EQ(kStatus1, callback_status1);
472 EXPECT_EQ(kStatus2, callback_status2); 472 EXPECT_EQ(kStatus2, callback_status2);
473 EXPECT_EQ(kStatus3, callback_status3); 473 EXPECT_EQ(kStatus3, callback_status3);
474 EXPECT_EQ(kStatus4, callback_status4); 474 EXPECT_EQ(kStatus4, callback_status4);
475 EXPECT_EQ(kStatus5, callback_status5); 475 EXPECT_EQ(kStatus5, callback_status5);
476 EXPECT_EQ(5, callback_count); 476 EXPECT_EQ(5, callback_count);
477 } 477 }
478 478
479 TEST(SyncTaskManagerTest, BackgroundTask_Sequential) { 479 TEST(SyncTaskManagerTest, BackgroundTask_Sequential) {
(...skipping 14 matching lines...) Expand all
494 task_manager.ScheduleSyncTask( 494 task_manager.ScheduleSyncTask(
495 FROM_HERE, std::unique_ptr<SyncTask>( 495 FROM_HERE, std::unique_ptr<SyncTask>(
496 new BackgroundTask("app_id", MAKE_PATH("/hoge"), &stats)), 496 new BackgroundTask("app_id", MAKE_PATH("/hoge"), &stats)),
497 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status)); 497 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status));
498 498
499 task_manager.ScheduleSyncTask( 499 task_manager.ScheduleSyncTask(
500 FROM_HERE, std::unique_ptr<SyncTask>(new BackgroundTask( 500 FROM_HERE, std::unique_ptr<SyncTask>(new BackgroundTask(
501 "app_id", MAKE_PATH("/hoge/fuga/piyo"), &stats)), 501 "app_id", MAKE_PATH("/hoge/fuga/piyo"), &stats)),
502 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status)); 502 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status));
503 503
504 message_loop.RunUntilIdle(); 504 base::RunLoop().RunUntilIdle();
505 505
506 EXPECT_EQ(SYNC_STATUS_OK, status); 506 EXPECT_EQ(SYNC_STATUS_OK, status);
507 EXPECT_EQ(0, stats.running_background_task); 507 EXPECT_EQ(0, stats.running_background_task);
508 EXPECT_EQ(3, stats.finished_task); 508 EXPECT_EQ(3, stats.finished_task);
509 EXPECT_EQ(1, stats.max_parallel_task); 509 EXPECT_EQ(1, stats.max_parallel_task);
510 } 510 }
511 511
512 TEST(SyncTaskManagerTest, BackgroundTask_Parallel) { 512 TEST(SyncTaskManagerTest, BackgroundTask_Parallel) {
513 base::MessageLoop message_loop; 513 base::MessageLoop message_loop;
514 SyncTaskManager task_manager(base::WeakPtr<SyncTaskManager::Client>(), 514 SyncTaskManager task_manager(base::WeakPtr<SyncTaskManager::Client>(),
(...skipping 12 matching lines...) Expand all
527 task_manager.ScheduleSyncTask( 527 task_manager.ScheduleSyncTask(
528 FROM_HERE, std::unique_ptr<SyncTask>( 528 FROM_HERE, std::unique_ptr<SyncTask>(
529 new BackgroundTask("app_id", MAKE_PATH("/fuga"), &stats)), 529 new BackgroundTask("app_id", MAKE_PATH("/fuga"), &stats)),
530 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status)); 530 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status));
531 531
532 task_manager.ScheduleSyncTask( 532 task_manager.ScheduleSyncTask(
533 FROM_HERE, std::unique_ptr<SyncTask>( 533 FROM_HERE, std::unique_ptr<SyncTask>(
534 new BackgroundTask("app_id", MAKE_PATH("/piyo"), &stats)), 534 new BackgroundTask("app_id", MAKE_PATH("/piyo"), &stats)),
535 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status)); 535 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status));
536 536
537 message_loop.RunUntilIdle(); 537 base::RunLoop().RunUntilIdle();
538 538
539 EXPECT_EQ(SYNC_STATUS_OK, status); 539 EXPECT_EQ(SYNC_STATUS_OK, status);
540 EXPECT_EQ(0, stats.running_background_task); 540 EXPECT_EQ(0, stats.running_background_task);
541 EXPECT_EQ(3, stats.finished_task); 541 EXPECT_EQ(3, stats.finished_task);
542 EXPECT_EQ(3, stats.max_parallel_task); 542 EXPECT_EQ(3, stats.max_parallel_task);
543 } 543 }
544 544
545 TEST(SyncTaskManagerTest, BackgroundTask_Throttled) { 545 TEST(SyncTaskManagerTest, BackgroundTask_Throttled) {
546 base::MessageLoop message_loop; 546 base::MessageLoop message_loop;
547 SyncTaskManager task_manager(base::WeakPtr<SyncTaskManager::Client>(), 547 SyncTaskManager task_manager(base::WeakPtr<SyncTaskManager::Client>(),
(...skipping 12 matching lines...) Expand all
560 task_manager.ScheduleSyncTask( 560 task_manager.ScheduleSyncTask(
561 FROM_HERE, std::unique_ptr<SyncTask>( 561 FROM_HERE, std::unique_ptr<SyncTask>(
562 new BackgroundTask("app_id", MAKE_PATH("/fuga"), &stats)), 562 new BackgroundTask("app_id", MAKE_PATH("/fuga"), &stats)),
563 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status)); 563 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status));
564 564
565 task_manager.ScheduleSyncTask( 565 task_manager.ScheduleSyncTask(
566 FROM_HERE, std::unique_ptr<SyncTask>( 566 FROM_HERE, std::unique_ptr<SyncTask>(
567 new BackgroundTask("app_id", MAKE_PATH("/piyo"), &stats)), 567 new BackgroundTask("app_id", MAKE_PATH("/piyo"), &stats)),
568 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status)); 568 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status));
569 569
570 message_loop.RunUntilIdle(); 570 base::RunLoop().RunUntilIdle();
571 571
572 EXPECT_EQ(SYNC_STATUS_OK, status); 572 EXPECT_EQ(SYNC_STATUS_OK, status);
573 EXPECT_EQ(0, stats.running_background_task); 573 EXPECT_EQ(0, stats.running_background_task);
574 EXPECT_EQ(3, stats.finished_task); 574 EXPECT_EQ(3, stats.finished_task);
575 EXPECT_EQ(2, stats.max_parallel_task); 575 EXPECT_EQ(2, stats.max_parallel_task);
576 } 576 }
577 577
578 TEST(SyncTaskManagerTest, UpdateTaskBlocker) { 578 TEST(SyncTaskManagerTest, UpdateTaskBlocker) {
579 base::MessageLoop message_loop; 579 base::MessageLoop message_loop;
580 SyncTaskManager task_manager(base::WeakPtr<SyncTaskManager::Client>(), 580 SyncTaskManager task_manager(base::WeakPtr<SyncTaskManager::Client>(),
(...skipping 21 matching lines...) Expand all
602 std::vector<std::string> paths; 602 std::vector<std::string> paths;
603 paths.push_back("/foo"); 603 paths.push_back("/foo");
604 paths.push_back("/foo/bar"); 604 paths.push_back("/foo/bar");
605 paths.push_back("/hoge/fuga/piyo"); 605 paths.push_back("/hoge/fuga/piyo");
606 task_manager.ScheduleSyncTask( 606 task_manager.ScheduleSyncTask(
607 FROM_HERE, std::unique_ptr<SyncTask>(new BlockerUpdateTestHelper( 607 FROM_HERE, std::unique_ptr<SyncTask>(new BlockerUpdateTestHelper(
608 "task2", "app_id", paths, &log)), 608 "task2", "app_id", paths, &log)),
609 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status2)); 609 SyncTaskManager::PRIORITY_MED, CreateResultReceiver(&status2));
610 } 610 }
611 611
612 message_loop.RunUntilIdle(); 612 base::RunLoop().RunUntilIdle();
613 613
614 EXPECT_EQ(SYNC_STATUS_OK, status1); 614 EXPECT_EQ(SYNC_STATUS_OK, status1);
615 EXPECT_EQ(SYNC_STATUS_OK, status2); 615 EXPECT_EQ(SYNC_STATUS_OK, status2);
616 616
617 ASSERT_EQ(14u, log.size()); 617 ASSERT_EQ(14u, log.size());
618 int i = 0; 618 int i = 0;
619 619
620 // task1 takes "/foo/bar" first. 620 // task1 takes "/foo/bar" first.
621 EXPECT_EQ("task1: updating to /foo/bar", log[i++]); 621 EXPECT_EQ("task1: updating to /foo/bar", log[i++]);
622 622
(...skipping 17 matching lines...) Expand all
640 640
641 EXPECT_EQ("task1: finished", log[i++]); 641 EXPECT_EQ("task1: finished", log[i++]);
642 642
643 EXPECT_EQ("task2: updating to /hoge/fuga/piyo", log[i++]); 643 EXPECT_EQ("task2: updating to /hoge/fuga/piyo", log[i++]);
644 EXPECT_EQ("task2: updated to /hoge/fuga/piyo", log[i++]); 644 EXPECT_EQ("task2: updated to /hoge/fuga/piyo", log[i++]);
645 EXPECT_EQ("task2: finished", log[i++]); 645 EXPECT_EQ("task2: finished", log[i++]);
646 } 646 }
647 647
648 } // namespace drive_backend 648 } // namespace drive_backend
649 } // namespace sync_file_system 649 } // namespace sync_file_system
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698