Chromium Code Reviews| Index: chrome/browser/sync/profile_sync_service_autofill_unittest.cc |
| diff --git a/chrome/browser/sync/profile_sync_service_autofill_unittest.cc b/chrome/browser/sync/profile_sync_service_autofill_unittest.cc |
| index 7974c580d8bd8859c24491d1e66bcb07dce9dc7b..c0125b487cbc466d931e2aea87692693cf3079f5 100644 |
| --- a/chrome/browser/sync/profile_sync_service_autofill_unittest.cc |
| +++ b/chrome/browser/sync/profile_sync_service_autofill_unittest.cc |
| @@ -46,6 +46,8 @@ |
| #include "chrome/browser/webdata/autofill_profile_syncable_service.h" |
| #include "chrome/browser/webdata/autofill_table.h" |
| #include "chrome/browser/webdata/web_database.h" |
| +#include "chrome/browser/webdata/web_data_service.h" |
| +#include "chrome/browser/webdata/web_data_service_factory.h" |
| #include "chrome/common/chrome_notification_types.h" |
| #include "chrome/common/net/gaia/gaia_constants.h" |
| #include "content/public/browser/notification_source.h" |
| @@ -158,11 +160,19 @@ syncable::ModelType GetModelType<AutofillProfile>() { |
| class WebDataServiceFake : public WebDataService { |
| public: |
| - explicit WebDataServiceFake(WebDatabase* web_database) |
| - : web_database_(web_database), |
| + WebDataServiceFake() |
| + : web_database_(NULL), |
| syncable_service_created_or_destroyed_(false, false) { |
| } |
| + static scoped_refptr<RefcountedProfileKeyedService> Build(Profile* profile) { |
| + return new WebDataServiceFake; |
| + } |
| + |
| + void SetDatabase(WebDatabase* web_database) { |
| + web_database_ = web_database; |
| + } |
| + |
| void StartSyncableService() { |
| // The |autofill_profile_syncable_service_| must be constructed on the DB |
| // thread. |
| @@ -217,6 +227,8 @@ class WebDataServiceFake : public WebDataService { |
| return autofill_profile_syncable_service_; |
| } |
| + virtual void ShutdownOnUIThread() OVERRIDE {} |
| + |
| private: |
| void CreateSyncableService() { |
| ASSERT_TRUE(BrowserThread::CurrentlyOn(BrowserThread::DB)); |
| @@ -341,6 +353,8 @@ class ProfileSyncServiceAutofillTest : public AbstractProfileSyncServiceTest { |
| protected: |
| ProfileSyncServiceAutofillTest() { |
| } |
| + ~ProfileSyncServiceAutofillTest() { |
|
Nicolas Zea
2012/03/27 21:35:48
virtual
GeorgeY
2012/03/30 19:20:12
Done.
|
| + } |
| AutofillProfileFactory profile_factory_; |
| AutofillEntryFactory entry_factory_; |
| @@ -360,7 +374,10 @@ class ProfileSyncServiceAutofillTest : public AbstractProfileSyncServiceTest { |
| AbstractProfileSyncServiceTest::SetUp(); |
| profile_.CreateRequestContext(); |
| web_database_.reset(new WebDatabaseFake(&autofill_table_)); |
| - web_data_service_ = new WebDataServiceFake(web_database_.get()); |
| + web_data_service_ = static_cast<WebDataServiceFake*>( |
| + WebDataServiceFactory::GetInstance()->SetTestingFactoryAndUse( |
| + &profile_, WebDataServiceFake::Build).get()); |
| + web_data_service_->SetDatabase(web_database_.get()); |
| personal_data_manager_ = static_cast<PersonalDataManagerMock*>( |
| PersonalDataManagerFactory::GetInstance()->SetTestingFactoryAndUse( |
| &profile_, PersonalDataManagerMock::Build)); |
| @@ -373,12 +390,7 @@ class ProfileSyncServiceAutofillTest : public AbstractProfileSyncServiceTest { |
| WillRepeatedly(Return(static_cast<HistoryService*>(NULL))); |
| EXPECT_CALL(*personal_data_manager_, LoadProfiles()).Times(1); |
| EXPECT_CALL(*personal_data_manager_, LoadCreditCards()).Times(1); |
| - EXPECT_CALL(profile_, GetWebDataService(_)). |
| - // TokenService::Initialize |
| - // AutofillDataTypeController::StartModels() |
| - // In some tests: |
| - // AutofillProfileSyncableService::AutofillProfileSyncableService() |
| - WillRepeatedly(Return(web_data_service_.get())); |
| + |
| personal_data_manager_->Init(&profile_); |
| // Note: This must be called *after* the notification service is created. |