Index: chrome/browser/sync/profile_sync_service_autofill_unittest.cc |
=================================================================== |
--- chrome/browser/sync/profile_sync_service_autofill_unittest.cc (revision 99989) |
+++ chrome/browser/sync/profile_sync_service_autofill_unittest.cc (working copy) |
@@ -24,10 +24,11 @@ |
#include "chrome/browser/sync/glue/autofill_change_processor.h" |
#include "chrome/browser/sync/glue/autofill_data_type_controller.h" |
#include "chrome/browser/sync/glue/autofill_model_associator.h" |
-#include "chrome/browser/sync/glue/autofill_profile_change_processor.h" |
#include "chrome/browser/sync/glue/autofill_profile_data_type_controller.h" |
-#include "chrome/browser/sync/glue/autofill_profile_model_associator.h" |
+#include "chrome/browser/sync/glue/autofill_profile_syncable_service.h" |
#include "chrome/browser/sync/glue/data_type_controller.h" |
+#include "chrome/browser/sync/glue/generic_change_processor.h" |
+#include "chrome/browser/sync/glue/syncable_service_adapter.h" |
#include "chrome/browser/sync/internal_api/read_node.h" |
#include "chrome/browser/sync/internal_api/read_transaction.h" |
#include "chrome/browser/sync/internal_api/write_node.h" |
@@ -56,10 +57,11 @@ |
using browser_sync::AutofillChangeProcessor; |
using browser_sync::AutofillDataTypeController; |
using browser_sync::AutofillModelAssociator; |
-using browser_sync::AutofillProfileChangeProcessor; |
using browser_sync::AutofillProfileDataTypeController; |
-using browser_sync::AutofillProfileModelAssociator; |
+using browser_sync::AutofillProfileSyncableService; |
using browser_sync::DataTypeController; |
+using browser_sync::GenericChangeProcessor; |
+using browser_sync::SyncableServiceAdapter; |
using browser_sync::GROUP_DB; |
using browser_sync::kAutofillTag; |
using browser_sync::SyncBackendHostForProfileSyncTest; |
@@ -178,18 +180,23 @@ |
EXPECT_TRUE(BrowserThread::CurrentlyOn(BrowserThread::DB)); |
if (!BrowserThread::CurrentlyOn(BrowserThread::DB)) |
return ProfileSyncFactory::SyncComponents(NULL, NULL); |
- AutofillProfileModelAssociator* model_associator = |
- new AutofillProfileModelAssociator(service, wd, pdm); |
- AutofillProfileChangeProcessor* change_processor = |
- new AutofillProfileChangeProcessor(model_associator, wd, pdm, dtc); |
- return ProfileSyncFactory::SyncComponents(model_associator, |
+ AutofillProfileSyncableService* sync_service = |
+ new AutofillProfileSyncableService(wd, pdm, service->profile()); |
+ sync_api::UserShare* user_share = service->GetUserShare(); |
+ GenericChangeProcessor* change_processor = |
+ new GenericChangeProcessor(sync_service, dtc, user_share); |
+ SyncableServiceAdapter* sync_service_adapter = |
+ new SyncableServiceAdapter(syncable::AUTOFILL_PROFILE, |
+ sync_service, |
+ change_processor); |
+ return ProfileSyncFactory::SyncComponents(sync_service_adapter, |
change_processor); |
} |
class AbstractAutofillFactory { |
public: |
virtual AutofillDataTypeController* CreateDataTypeController( |
- ProfileSyncFactory *factory, |
+ ProfileSyncFactory* factory, |
ProfileMock* profile, |
ProfileSyncService* service) = 0; |
virtual void SetExpectation(ProfileSyncFactoryMock* factory, |
@@ -203,7 +210,7 @@ |
class AutofillEntryFactory : public AbstractAutofillFactory { |
public: |
browser_sync::AutofillDataTypeController* CreateDataTypeController( |
- ProfileSyncFactory *factory, |
+ ProfileSyncFactory* factory, |
ProfileMock* profile, |
ProfileSyncService* service) { |
return new AutofillDataTypeController(factory, |
@@ -223,7 +230,7 @@ |
class AutofillProfileFactory : public AbstractAutofillFactory { |
public: |
browser_sync::AutofillDataTypeController* CreateDataTypeController( |
- ProfileSyncFactory *factory, |
+ ProfileSyncFactory* factory, |
ProfileMock* profile, |
ProfileSyncService* service) { |
return new AutofillProfileDataTypeController(factory, |
@@ -314,9 +321,10 @@ |
EXPECT_CALL(profile_, GetWebDataService(_)). |
// TokenService::Initialize |
- WillOnce(Return(web_data_service_.get())). |
// AutofillDataTypeController::StartModels() |
- WillOnce(Return(web_data_service_.get())); |
+ // In some tests: |
+ // AutofillProfileSyncableService::AutofillProfileSyncableService() |
+ WillRepeatedly(Return(web_data_service_.get())); |
EXPECT_CALL(profile_, GetPersonalDataManager()). |
WillRepeatedly(Return(personal_data_manager_.get())); |
@@ -362,7 +370,11 @@ |
if (!node.InitUniqueByCreation(syncable::AUTOFILL_PROFILE, |
autofill_root, tag)) |
return false; |
- AutofillProfileChangeProcessor::WriteAutofillProfile(profile, &node); |
+ sync_pb::EntitySpecifics specifics; |
+ AutofillProfileSyncableService::WriteAutofillProfile(profile, &specifics); |
+ sync_pb::AutofillProfileSpecifics* profile_specifics = |
+ specifics.MutableExtension(sync_pb::autofill_profile); |
+ node.SetAutofillProfileSpecifics(*profile_specifics); |
return true; |
} |
@@ -394,8 +406,8 @@ |
} else if (autofill.has_profile()) { |
AutofillProfile p; |
p.set_guid(autofill.profile().guid()); |
- AutofillProfileModelAssociator::OverwriteProfileWithServerData(&p, |
- autofill.profile()); |
+ AutofillProfileSyncableService::OverwriteProfileWithServerData( |
+ autofill.profile(), &p); |
profiles->push_back(p); |
} |
child_id = child_node.GetSuccessorId(); |
@@ -420,8 +432,8 @@ |
child_node.GetAutofillProfileSpecifics()); |
AutofillProfile p; |
p.set_guid(autofill.guid()); |
- AutofillProfileModelAssociator::OverwriteProfileWithServerData(&p, |
- autofill); |
+ AutofillProfileSyncableService::OverwriteProfileWithServerData( |
+ autofill, &p); |
profiles->push_back(p); |
child_id = child_node.GetSuccessorId(); |
} |
@@ -498,7 +510,7 @@ |
WriteTransactionTest(const tracked_objects::Location& from_here, |
WriterTag writer, |
const syncable::ScopedDirLookup& directory, |
- scoped_ptr<WaitableEvent> *wait_for_syncapi) |
+ scoped_ptr<WaitableEvent>* wait_for_syncapi) |
: WriteTransaction(from_here, writer, directory), |
wait_for_syncapi_(wait_for_syncapi) { } |
@@ -511,16 +523,16 @@ |
} |
private: |
- scoped_ptr<WaitableEvent> *wait_for_syncapi_; |
+ scoped_ptr<WaitableEvent>* wait_for_syncapi_; |
}; |
// Our fake server updater. Needs the RefCountedThreadSafe inheritance so we can |
// post tasks with it. |
class FakeServerUpdater: public base::RefCountedThreadSafe<FakeServerUpdater> { |
public: |
- FakeServerUpdater(TestProfileSyncService *service, |
- scoped_ptr<WaitableEvent> *wait_for_start, |
- scoped_ptr<WaitableEvent> *wait_for_syncapi) |
+ FakeServerUpdater(TestProfileSyncService* service, |
+ scoped_ptr<WaitableEvent>* wait_for_start, |
+ scoped_ptr<WaitableEvent>* wait_for_syncapi) |
: entry_(ProfileSyncServiceAutofillTest::MakeAutofillEntry("0", "0", 0)), |
service_(service), |
wait_for_start_(wait_for_start), |
@@ -579,7 +591,7 @@ |
void CreateNewEntry(const AutofillEntry& entry) { |
entry_ = entry; |
- scoped_ptr<Callback0::Type> c(NewCallback((FakeServerUpdater *)this, |
+ scoped_ptr<Callback0::Type> c(NewCallback((FakeServerUpdater*)this, |
&FakeServerUpdater::Update)); |
ASSERT_FALSE(BrowserThread::CurrentlyOn(BrowserThread::DB)); |
if (!BrowserThread::PostTask(BrowserThread::DB, FROM_HERE, |
@@ -591,7 +603,7 @@ |
void CreateNewEntryAndWait(const AutofillEntry& entry) { |
entry_ = entry; |
- scoped_ptr<Callback0::Type> c(NewCallback((FakeServerUpdater *)this, |
+ scoped_ptr<Callback0::Type> c(NewCallback((FakeServerUpdater*)this, |
&FakeServerUpdater::Update)); |
ASSERT_FALSE(BrowserThread::CurrentlyOn(BrowserThread::DB)); |
is_finished_.Reset(); |
@@ -608,9 +620,9 @@ |
~FakeServerUpdater() { } |
AutofillEntry entry_; |
- TestProfileSyncService *service_; |
- scoped_ptr<WaitableEvent> *wait_for_start_; |
- scoped_ptr<WaitableEvent> *wait_for_syncapi_; |
+ TestProfileSyncService* service_; |
+ scoped_ptr<WaitableEvent>* wait_for_start_; |
+ scoped_ptr<WaitableEvent>* wait_for_syncapi_; |
WaitableEvent is_finished_; |
syncable::Id parent_id_; |
}; |