Index: components/update_client/update_client_unittest.cc |
diff --git a/components/update_client/update_client_unittest.cc b/components/update_client/update_client_unittest.cc |
index 3cc3c4f1f71b51e3e2a0044c8c7e0365a057cace..52f43fa6e97f832275d13fd72859935098dc751a 100644 |
--- a/components/update_client/update_client_unittest.cc |
+++ b/components/update_client/update_client_unittest.cc |
@@ -12,7 +12,9 @@ |
#include "base/message_loop/message_loop.h" |
#include "base/path_service.h" |
#include "base/run_loop.h" |
+#include "base/test/sequenced_worker_pool_owner.h" |
#include "base/thread_task_runner_handle.h" |
+#include "base/threading/thread.h" |
#include "base/values.h" |
#include "base/version.h" |
#include "components/update_client/crx_update_item.h" |
@@ -21,8 +23,6 @@ |
#include "components/update_client/test_installer.h" |
#include "components/update_client/update_checker.h" |
#include "components/update_client/update_client_internal.h" |
-#include "content/public/browser/browser_thread.h" |
-#include "content/public/test/test_browser_thread_bundle.h" |
#include "testing/gmock/include/gmock/gmock.h" |
#include "testing/gtest/include/gtest/gtest.h" |
#include "url/gurl.h" |
@@ -104,8 +104,6 @@ using ::testing::Invoke; |
using ::testing::Mock; |
using ::testing::Return; |
-using content::BrowserThread; |
- |
using std::string; |
class UpdateClientTest : public testing::Test { |
@@ -113,43 +111,49 @@ class UpdateClientTest : public testing::Test { |
UpdateClientTest(); |
~UpdateClientTest() override; |
- void SetUp() override; |
- void TearDown() override; |
- |
protected: |
void RunThreads(); |
// Returns the full path to a test file. |
static base::FilePath TestFilePath(const char* file); |
- content::TestBrowserThreadBundle thread_bundle_; |
+ scoped_refptr<update_client::Configurator> config() { return config_; } |
+ base::Closure quit_closure() { return quit_closure_; } |
+ |
+ private: |
+ static const int kNumWorkerThreads_ = 2; |
+ |
+ base::MessageLoopForUI message_loop_; |
base::RunLoop runloop_; |
base::Closure quit_closure_; |
- scoped_refptr<update_client::TestConfigurator> config_; |
+ scoped_ptr<base::SequencedWorkerPoolOwner> worker_pool_; |
+ scoped_ptr<base::Thread> thread_; |
+ |
+ scoped_refptr<update_client::Configurator> config_; |
- private: |
DISALLOW_COPY_AND_ASSIGN(UpdateClientTest); |
}; |
UpdateClientTest::UpdateClientTest() |
- : config_(new TestConfigurator( |
- BrowserThread::GetBlockingPool() |
- ->GetSequencedTaskRunnerWithShutdownBehavior( |
- BrowserThread::GetBlockingPool()->GetSequenceToken(), |
- base::SequencedWorkerPool::SKIP_ON_SHUTDOWN), |
- BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO))) { |
-} |
+ : worker_pool_( |
+ new base::SequencedWorkerPoolOwner(kNumWorkerThreads_, "test")), |
+ thread_(new base::Thread("test")) { |
+ quit_closure_ = runloop_.QuitClosure(); |
-UpdateClientTest::~UpdateClientTest() { |
-} |
+ thread_->Start(); |
-void UpdateClientTest::SetUp() { |
- quit_closure_ = runloop_.QuitClosure(); |
+ auto pool = worker_pool_->pool(); |
+ config_ = new TestConfigurator( |
+ pool->GetSequencedTaskRunner(pool->GetSequenceToken()), |
+ thread_->task_runner()); |
} |
-void UpdateClientTest::TearDown() { |
+UpdateClientTest::~UpdateClientTest() { |
+ config_ = nullptr; |
+ thread_->Stop(); |
+ worker_pool_->pool()->Shutdown(); |
} |
void UpdateClientTest::RunThreads() { |
@@ -232,9 +236,9 @@ TEST_F(UpdateClientTest, OneCrxNoUpdate) { |
~FakePingManager() override { EXPECT_TRUE(items().empty()); } |
}; |
- scoped_ptr<PingManager> ping_manager(new FakePingManager(*config_)); |
+ scoped_ptr<PingManager> ping_manager(new FakePingManager(*config())); |
scoped_ptr<UpdateClient> update_client(new UpdateClientImpl( |
- config_, ping_manager.Pass(), &FakeUpdateChecker::Create, |
+ config(), ping_manager.Pass(), &FakeUpdateChecker::Create, |
&FakeCrxDownloader::Create)); |
MockObserver observer; |
@@ -251,7 +255,7 @@ TEST_F(UpdateClientTest, OneCrxNoUpdate) { |
update_client->Update( |
ids, base::Bind(&DataCallbackFake::Callback), |
- base::Bind(&CompletionCallbackFake::Callback, quit_closure_)); |
+ base::Bind(&CompletionCallbackFake::Callback, quit_closure())); |
RunThreads(); |
@@ -398,9 +402,9 @@ TEST_F(UpdateClientTest, TwoCrxUpdateNoUpdate) { |
} |
}; |
- scoped_ptr<PingManager> ping_manager(new FakePingManager(*config_)); |
+ scoped_ptr<PingManager> ping_manager(new FakePingManager(*config())); |
scoped_ptr<UpdateClient> update_client(new UpdateClientImpl( |
- config_, ping_manager.Pass(), &FakeUpdateChecker::Create, |
+ config(), ping_manager.Pass(), &FakeUpdateChecker::Create, |
&FakeCrxDownloader::Create)); |
MockObserver observer; |
@@ -433,7 +437,7 @@ TEST_F(UpdateClientTest, TwoCrxUpdateNoUpdate) { |
update_client->Update( |
ids, base::Bind(&DataCallbackFake::Callback), |
- base::Bind(&CompletionCallbackFake::Callback, quit_closure_)); |
+ base::Bind(&CompletionCallbackFake::Callback, quit_closure())); |
RunThreads(); |
@@ -627,9 +631,9 @@ TEST_F(UpdateClientTest, TwoCrxUpdate) { |
} |
}; |
- scoped_ptr<FakePingManager> ping_manager(new FakePingManager(*config_)); |
+ scoped_ptr<FakePingManager> ping_manager(new FakePingManager(*config())); |
scoped_ptr<UpdateClient> update_client(new UpdateClientImpl( |
- config_, ping_manager.Pass(), &FakeUpdateChecker::Create, |
+ config(), ping_manager.Pass(), &FakeUpdateChecker::Create, |
&FakeCrxDownloader::Create)); |
MockObserver observer; |
@@ -670,7 +674,7 @@ TEST_F(UpdateClientTest, TwoCrxUpdate) { |
update_client->Update( |
ids, base::Bind(&DataCallbackFake::Callback), |
- base::Bind(&CompletionCallbackFake::Callback, quit_closure_)); |
+ base::Bind(&CompletionCallbackFake::Callback, quit_closure())); |
RunThreads(); |
@@ -888,9 +892,9 @@ TEST_F(UpdateClientTest, OneCrxDiffUpdate) { |
} |
}; |
- scoped_ptr<FakePingManager> ping_manager(new FakePingManager(*config_)); |
+ scoped_ptr<FakePingManager> ping_manager(new FakePingManager(*config())); |
scoped_ptr<UpdateClient> update_client(new UpdateClientImpl( |
- config_, ping_manager.Pass(), &FakeUpdateChecker::Create, |
+ config(), ping_manager.Pass(), &FakeUpdateChecker::Create, |
&FakeCrxDownloader::Create)); |
MockObserver observer; |
@@ -1101,9 +1105,9 @@ TEST_F(UpdateClientTest, OneCrxInstallError) { |
} |
}; |
- scoped_ptr<PingManager> ping_manager(new FakePingManager(*config_)); |
+ scoped_ptr<PingManager> ping_manager(new FakePingManager(*config())); |
scoped_ptr<UpdateClient> update_client(new UpdateClientImpl( |
- config_, ping_manager.Pass(), &FakeUpdateChecker::Create, |
+ config(), ping_manager.Pass(), &FakeUpdateChecker::Create, |
&FakeCrxDownloader::Create)); |
MockObserver observer; |
@@ -1128,7 +1132,7 @@ TEST_F(UpdateClientTest, OneCrxInstallError) { |
update_client->Update( |
ids, base::Bind(&DataCallbackFake::Callback), |
- base::Bind(&CompletionCallbackFake::Callback, quit_closure_)); |
+ base::Bind(&CompletionCallbackFake::Callback, quit_closure())); |
RunThreads(); |
@@ -1362,9 +1366,9 @@ TEST_F(UpdateClientTest, OneCrxDiffUpdateFailsFullUpdateSucceeds) { |
} |
}; |
- scoped_ptr<FakePingManager> ping_manager(new FakePingManager(*config_)); |
+ scoped_ptr<FakePingManager> ping_manager(new FakePingManager(*config())); |
scoped_ptr<UpdateClient> update_client(new UpdateClientImpl( |
- config_, ping_manager.Pass(), &FakeUpdateChecker::Create, |
+ config(), ping_manager.Pass(), &FakeUpdateChecker::Create, |
&FakeCrxDownloader::Create)); |
MockObserver observer; |