| Index: components/sync/driver/sync_stopped_reporter_unittest.cc
|
| diff --git a/components/sync/driver/sync_stopped_reporter_unittest.cc b/components/sync/driver/sync_stopped_reporter_unittest.cc
|
| index 70ab87f26f626fac38c709dec1670626925bc899..e9d87895d5fbfa5b1201d064fa0c975ca3984e02 100644
|
| --- a/components/sync/driver/sync_stopped_reporter_unittest.cc
|
| +++ b/components/sync/driver/sync_stopped_reporter_unittest.cc
|
| @@ -6,7 +6,7 @@
|
|
|
| #include "base/message_loop/message_loop.h"
|
| #include "base/run_loop.h"
|
| -#include "base/test/test_simple_task_runner.h"
|
| +#include "base/test/scoped_mock_time_message_loop_task_runner.h"
|
| #include "base/threading/non_thread_safe.h"
|
| #include "components/sync/protocol/sync.pb.h"
|
| #include "net/http/http_status_code.h"
|
| @@ -152,23 +152,18 @@ TEST_F(SyncStoppedReporterTest, DestructionDuringRequestHandler) {
|
| }
|
|
|
| TEST_F(SyncStoppedReporterTest, Timeout) {
|
| + // Mock the underlying loop's clock to trigger the timer at will.
|
| + base::ScopedMockTimeMessageLoopTaskRunner mock_main_runner;
|
| +
|
| SyncStoppedReporter ssr(test_url(), user_agent(), request_context(),
|
| callback());
|
|
|
| - // A task runner that can trigger the timeout immediately.
|
| - scoped_refptr<base::TestSimpleTaskRunner> task_runner(
|
| - new base::TestSimpleTaskRunner());
|
| - ssr.SetTimerTaskRunnerForTest(task_runner);
|
| -
|
| // Begin request.
|
| ssr.ReportSyncStopped(kAuthToken, kCacheGuid, kBirthday);
|
|
|
| // Trigger the timeout.
|
| - ASSERT_TRUE(task_runner->HasPendingTask());
|
| - task_runner->RunPendingTasks();
|
| -
|
| - base::RunLoop run_loop;
|
| - run_loop.RunUntilIdle();
|
| + ASSERT_TRUE(mock_main_runner->HasPendingTask());
|
| + mock_main_runner->FastForwardUntilNoTasksRemain();
|
| EXPECT_EQ(SyncStoppedReporter::RESULT_TIMEOUT, request_result());
|
| }
|
|
|
| @@ -183,20 +178,18 @@ TEST_F(SyncStoppedReporterTest, NoCallback) {
|
| }
|
|
|
| TEST_F(SyncStoppedReporterTest, NoCallbackTimeout) {
|
| + // Mock the underlying loop's clock to trigger the timer at will.
|
| + base::ScopedMockTimeMessageLoopTaskRunner mock_main_runner;
|
| +
|
| SyncStoppedReporter ssr(GURL(kTestURL), user_agent(), request_context(),
|
| SyncStoppedReporter::ResultCallback());
|
|
|
| - // A task runner that can trigger the timeout immediately.
|
| - scoped_refptr<base::TestSimpleTaskRunner> task_runner(
|
| - new base::TestSimpleTaskRunner());
|
| - ssr.SetTimerTaskRunnerForTest(task_runner);
|
| -
|
| // Begin request.
|
| ssr.ReportSyncStopped(kAuthToken, kCacheGuid, kBirthday);
|
|
|
| // Trigger the timeout.
|
| - ASSERT_TRUE(task_runner->HasPendingTask());
|
| - task_runner->RunPendingTasks();
|
| + ASSERT_TRUE(mock_main_runner->HasPendingTask());
|
| + mock_main_runner->FastForwardUntilNoTasksRemain();
|
| }
|
|
|
| } // namespace syncer
|
|
|