Chromium Code Reviews| Index: chrome/browser/sync/profile_sync_service_typed_url_unittest.cc |
| diff --git a/chrome/browser/sync/profile_sync_service_typed_url_unittest.cc b/chrome/browser/sync/profile_sync_service_typed_url_unittest.cc |
| index b94dbc9c66bb32eabdfbffde89b4f41c9ec00850..d8afa62d595075fdbaacb42a7adf85bbeadaf5ac 100644 |
| --- a/chrome/browser/sync/profile_sync_service_typed_url_unittest.cc |
| +++ b/chrome/browser/sync/profile_sync_service_typed_url_unittest.cc |
| @@ -45,6 +45,7 @@ |
| #include "chrome/test/base/testing_browser_process.h" |
| #include "chrome/test/base/testing_profile.h" |
| #include "chrome/test/base/testing_profile_manager.h" |
| +#include "components/history/core/browser/test_history_client.h" |
| #include "components/keyed_service/content/refcounted_browser_context_keyed_service.h" |
| #include "components/signin/core/browser/signin_manager.h" |
| #include "components/sync_driver/data_type_error_handler_mock.h" |
| @@ -105,21 +106,34 @@ class HistoryBackendMock : public HistoryBackend { |
| class HistoryServiceMock : public HistoryService { |
| public: |
| - explicit HistoryServiceMock(Profile* profile) : HistoryService(profile) {} |
| + HistoryServiceMock(history::HistoryClient* client, Profile* profile) |
| + : HistoryService(client, profile) {} |
| MOCK_METHOD2(ScheduleDBTask, void(history::HistoryDBTask*, |
| CancelableRequestConsumerBase*)); |
| - MOCK_METHOD0(Shutdown, void()); |
| +}; |
| + |
| +class HistoryClientMock : public history::TestHistoryClient, |
|
blundell
2014/05/27 09:56:38
same
sdefresne
2014/05/28 17:10:42
Done.
|
| + public KeyedService { |
| + public: |
| + explicit HistoryClientMock(Profile* profile) { |
| + history_service_.reset(new HistoryServiceMock(this, profile)); |
| + } |
| - void ShutdownBaseService() { |
| - HistoryService::Shutdown(); |
| + HistoryServiceMock* history_service() { |
| + return history_service_.get(); |
| + } |
| + |
| + // KeyedService: |
| + virtual void Shutdown() OVERRIDE { |
| + history_service_->Cleanup(); |
| } |
| private: |
| - virtual ~HistoryServiceMock() {} |
| + scoped_ptr<HistoryServiceMock> history_service_; |
| }; |
| KeyedService* BuildHistoryService(content::BrowserContext* profile) { |
| - return new HistoryServiceMock(static_cast<Profile*>(profile)); |
| + return new HistoryClientMock(static_cast<Profile*>(profile)); |
| } |
| class TestTypedUrlModelAssociator : public TypedUrlModelAssociator { |
| @@ -150,11 +164,6 @@ ACTION_P2(RunTaskOnDBThread, thread, backend) { |
| task)); |
| } |
| -ACTION_P2(ShutdownHistoryService, thread, service) { |
| - service->ShutdownBaseService(); |
| - delete thread; |
| -} |
| - |
| ACTION_P6(MakeTypedUrlSyncComponents, |
| profile, |
| service, |
| @@ -210,9 +219,9 @@ class ProfileSyncServiceTypedUrlTest : public AbstractProfileSyncServiceTest { |
| invalidation::InvalidationServiceFactory::GetInstance()->SetTestingFactory( |
| profile_, invalidation::FakeInvalidationService::Build); |
| history_backend_ = new HistoryBackendMock(); |
| - history_service_ = static_cast<HistoryServiceMock*>( |
| + history_service_ = static_cast<HistoryClientMock*>( |
| HistoryServiceFactory::GetInstance()->SetTestingFactoryAndUse( |
| - profile_, BuildHistoryService)); |
| + profile_, BuildHistoryService))->history_service(); |
| EXPECT_CALL((*history_service_), ScheduleDBTask(_, _)) |
| .WillRepeatedly(RunTaskOnDBThread(history_thread_.get(), |
| history_backend_.get())); |
| @@ -220,9 +229,6 @@ class ProfileSyncServiceTypedUrlTest : public AbstractProfileSyncServiceTest { |
| } |
| virtual void TearDown() { |
| - EXPECT_CALL((*history_service_), Shutdown()) |
| - .WillOnce(ShutdownHistoryService(history_thread_.release(), |
| - history_service_)); |
| profile_ = NULL; |
| profile_manager_.DeleteTestingProfile(kTestProfileName); |
| AbstractProfileSyncServiceTest::TearDown(); |