| Index: chrome/browser/after_startup_task_utils_unittest.cc
|
| diff --git a/chrome/browser/after_startup_task_utils_unittest.cc b/chrome/browser/after_startup_task_utils_unittest.cc
|
| index 5dd16a72d985812add02795a47783916c517573c..c1433b7211fd2e4bc873df6568bd7d12d718ca79 100644
|
| --- a/chrome/browser/after_startup_task_utils_unittest.cc
|
| +++ b/chrome/browser/after_startup_task_utils_unittest.cc
|
| @@ -198,3 +198,29 @@ TEST_F(AfterStartupTaskTest, PostTask) {
|
| EXPECT_EQ(2, db_thread_->ran_task_count());
|
| EXPECT_EQ(2, ui_thread_->ran_task_count());
|
| }
|
| +
|
| +// Verify that posting to an AfterStartupTaskUtils::Runner bound to |db_thread_|
|
| +// results in the same behavior as posting via
|
| +// AfterStartupTaskUtils::PostTask(..., db_thread_, ...).
|
| +TEST_F(AfterStartupTaskTest, AfterStartupTaskUtilsRunner) {
|
| + scoped_refptr<base::TaskRunner> after_startup_runner =
|
| + make_scoped_refptr(new AfterStartupTaskUtils::Runner(db_thread_));
|
| +
|
| + EXPECT_FALSE(AfterStartupTaskUtils::IsBrowserStartupComplete());
|
| + after_startup_runner->PostTask(
|
| + FROM_HERE, base::Bind(&AfterStartupTaskTest::VerifyExpectedThread,
|
| + BrowserThread::DB));
|
| +
|
| + RunLoop().RunUntilIdle();
|
| + EXPECT_FALSE(AfterStartupTaskUtils::IsBrowserStartupComplete());
|
| + EXPECT_EQ(0, db_thread_->total_task_count());
|
| +
|
| + AfterStartupTaskUtils::SetBrowserStartupIsCompleteForTesting();
|
| + EXPECT_EQ(1, db_thread_->posted_task_count());
|
| +
|
| + FlushDBThread();
|
| + RunLoop().RunUntilIdle();
|
| + EXPECT_EQ(1, db_thread_->ran_task_count());
|
| +
|
| + EXPECT_EQ(0, ui_thread_->total_task_count());
|
| +}
|
|
|