Index: components/autofill/core/browser/webdata/autofill_profile_syncable_service_unittest.cc |
diff --git a/components/autofill/core/browser/webdata/autofill_profile_syncable_service_unittest.cc b/components/autofill/core/browser/webdata/autofill_profile_syncable_service_unittest.cc |
index 0f2e4d3e16e5e14a49a26b52d8f36a0150d0b052..e5bc5b989bf9ccaa4ad547a975081f7ba68ae9bc 100644 |
--- a/components/autofill/core/browser/webdata/autofill_profile_syncable_service_unittest.cc |
+++ b/components/autofill/core/browser/webdata/autofill_profile_syncable_service_unittest.cc |
@@ -51,14 +51,16 @@ class MockAutofillProfileSyncableService |
using AutofillProfileSyncableService::set_sync_processor; |
using AutofillProfileSyncableService::CreateData; |
- MOCK_METHOD1(LoadAutofillData, bool(std::vector<AutofillProfile*>*)); |
+ MOCK_METHOD1(LoadAutofillData, |
+ bool(std::vector<std::unique_ptr<AutofillProfile>>*)); |
MOCK_METHOD1(SaveChangesToWebData, |
bool(const AutofillProfileSyncableService::DataBundle&)); |
}; |
-ACTION_P(CopyData, data) { |
- arg0->resize(data->size()); |
- std::copy(data->begin(), data->end(), arg0->begin()); |
+ACTION_P(LoadAutofillProfiles, datafunc) { |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles = |
+ std::move(datafunc()); |
+ arg0->swap(profiles); |
} |
MATCHER_P(CheckSyncChanges, n_sync_changes_list, "") { |
@@ -221,13 +223,16 @@ class AutofillProfileSyncableServiceTest : public testing::Test { |
// Wrapper around AutofillProfileSyncableService::MergeDataAndStartSyncing() |
// that also verifies expectations. |
void MergeDataAndStartSyncing( |
- const std::vector<AutofillProfile*>& profiles_from_web_db, |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db, |
const syncer::SyncDataList& data_list, |
const MockAutofillProfileSyncableService::DataBundle& expected_bundle, |
const syncer::SyncChangeList& expected_change_list) { |
+ auto profile_returner = [&profiles_from_web_db]() { |
+ return std::move(profiles_from_web_db); |
+ }; |
EXPECT_CALL(autofill_syncable_service_, LoadAutofillData(_)) |
.Times(1) |
- .WillOnce(DoAll(CopyData(&profiles_from_web_db), Return(true))); |
+ .WillOnce(DoAll(LoadAutofillProfiles(profile_returner), Return(true))); |
EXPECT_CALL(autofill_syncable_service_, |
SaveChangesToWebData(DataBundleCheck(expected_bundle))) |
.Times(1) |
@@ -257,7 +262,7 @@ class AutofillProfileSyncableServiceTest : public testing::Test { |
}; |
TEST_F(AutofillProfileSyncableServiceTest, MergeDataAndStartSyncing) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
std::string guid_present1 = kGuid1; |
std::string guid_present2 = kGuid2; |
std::string guid_synced1 = kGuid3; |
@@ -268,12 +273,12 @@ TEST_F(AutofillProfileSyncableServiceTest, MergeDataAndStartSyncing) { |
std::string origin_synced2 = kSettingsOrigin; |
profiles_from_web_db.push_back( |
- new AutofillProfile(guid_present1, origin_present1)); |
+ base::MakeUnique<AutofillProfile>(guid_present1, origin_present1)); |
profiles_from_web_db.back()->SetRawInfo(NAME_FIRST, ASCIIToUTF16("John")); |
profiles_from_web_db.back()->SetRawInfo(ADDRESS_HOME_LINE1, |
ASCIIToUTF16("1 1st st")); |
profiles_from_web_db.push_back( |
- new AutofillProfile(guid_present2, origin_present2)); |
+ base::MakeUnique<AutofillProfile>(guid_present2, origin_present2)); |
profiles_from_web_db.back()->SetRawInfo(NAME_FIRST, ASCIIToUTF16("Tom")); |
profiles_from_web_db.back()->SetRawInfo(ADDRESS_HOME_LINE1, |
ASCIIToUTF16("2 2nd st")); |
@@ -302,13 +307,13 @@ TEST_F(AutofillProfileSyncableServiceTest, MergeDataAndStartSyncing) { |
expected_bundle.profiles_to_add.push_back(&profile2); |
expected_bundle.profiles_to_update.push_back(&profile3); |
- MergeDataAndStartSyncing( |
- profiles_from_web_db, data_list, expected_bundle, expected_change_list); |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
+ expected_bundle, expected_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
TEST_F(AutofillProfileSyncableServiceTest, MergeIdenticalProfiles) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
std::string guid_present1 = kGuid1; |
std::string guid_present2 = kGuid2; |
std::string guid_synced1 = kGuid3; |
@@ -319,12 +324,12 @@ TEST_F(AutofillProfileSyncableServiceTest, MergeIdenticalProfiles) { |
std::string origin_synced2 = kHttpsOrigin; |
profiles_from_web_db.push_back( |
- new AutofillProfile(guid_present1, origin_present1)); |
+ base::MakeUnique<AutofillProfile>(guid_present1, origin_present1)); |
profiles_from_web_db.back()->SetRawInfo(NAME_FIRST, ASCIIToUTF16("John")); |
profiles_from_web_db.back()->SetRawInfo(ADDRESS_HOME_LINE1, |
ASCIIToUTF16("1 1st st")); |
profiles_from_web_db.push_back( |
- new AutofillProfile(guid_present2, origin_present2)); |
+ base::MakeUnique<AutofillProfile>(guid_present2, origin_present2)); |
profiles_from_web_db.back()->SetRawInfo(NAME_FIRST, ASCIIToUTF16("Tom")); |
profiles_from_web_db.back()->SetRawInfo(ADDRESS_HOME_LINE1, |
ASCIIToUTF16("2 2nd st")); |
@@ -356,13 +361,13 @@ TEST_F(AutofillProfileSyncableServiceTest, MergeIdenticalProfiles) { |
expected_bundle.profiles_to_add.push_back(&profile1); |
expected_bundle.profiles_to_add.push_back(&expected_profile); |
- MergeDataAndStartSyncing( |
- profiles_from_web_db, data_list, expected_bundle, expected_change_list); |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
+ expected_bundle, expected_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
TEST_F(AutofillProfileSyncableServiceTest, MergeSimilarProfiles) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
std::string guid_present1 = kGuid1; |
std::string guid_present2 = kGuid2; |
std::string guid_synced1 = kGuid3; |
@@ -373,13 +378,13 @@ TEST_F(AutofillProfileSyncableServiceTest, MergeSimilarProfiles) { |
std::string origin_synced2 = kHttpsOrigin; |
profiles_from_web_db.push_back( |
- new AutofillProfile(guid_present1, origin_present1)); |
+ base::MakeUnique<AutofillProfile>(guid_present1, origin_present1)); |
profiles_from_web_db.back()->SetRawInfo(NAME_FIRST, ASCIIToUTF16("John")); |
profiles_from_web_db.back()->SetRawInfo(ADDRESS_HOME_LINE1, |
ASCIIToUTF16("1 1st st")); |
profiles_from_web_db.back()->set_use_count(27); |
profiles_from_web_db.push_back( |
- new AutofillProfile(guid_present2, origin_present2)); |
+ base::MakeUnique<AutofillProfile>(guid_present2, origin_present2)); |
profiles_from_web_db.back()->SetRawInfo(NAME_FIRST, ASCIIToUTF16("Tom")); |
profiles_from_web_db.back()->SetRawInfo(ADDRESS_HOME_LINE1, |
ASCIIToUTF16("2 2nd st")); |
@@ -425,8 +430,8 @@ TEST_F(AutofillProfileSyncableServiceTest, MergeSimilarProfiles) { |
expected_bundle.profiles_to_add.push_back(&expected_profile); |
expected_bundle.profiles_to_add.push_back(&profile2); |
- MergeDataAndStartSyncing( |
- profiles_from_web_db, data_list, expected_bundle, expected_change_list); |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
+ expected_bundle, expected_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
@@ -434,14 +439,14 @@ TEST_F(AutofillProfileSyncableServiceTest, MergeSimilarProfiles) { |
// with explicitly present empty ones. This ensures that the migration to add |
// origins to profiles does not generate lots of needless Sync updates. |
TEST_F(AutofillProfileSyncableServiceTest, MergeDataEmptyOrigins) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
// Create a profile with an empty origin. |
AutofillProfile profile(kGuid1, std::string()); |
profile.SetRawInfo(NAME_FIRST, ASCIIToUTF16("John")); |
profile.SetRawInfo(ADDRESS_HOME_LINE1, ASCIIToUTF16("1 1st st")); |
- profiles_from_web_db.push_back(new AutofillProfile(profile)); |
+ profiles_from_web_db.push_back(base::MakeUnique<AutofillProfile>(profile)); |
// Create a Sync profile identical to |profile|, except with no origin set. |
sync_pb::EntitySpecifics specifics; |
@@ -466,21 +471,21 @@ TEST_F(AutofillProfileSyncableServiceTest, MergeDataEmptyOrigins) { |
MockAutofillProfileSyncableService::DataBundle expected_bundle; |
syncer::SyncChangeList expected_change_list; |
- MergeDataAndStartSyncing( |
- profiles_from_web_db, data_list, expected_bundle, expected_change_list); |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
+ expected_bundle, expected_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
TEST_F(AutofillProfileSyncableServiceTest, GetAllSyncData) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
std::string guid_present1 = kGuid1; |
std::string guid_present2 = kGuid2; |
profiles_from_web_db.push_back( |
- new AutofillProfile(guid_present1, kHttpOrigin)); |
+ base::MakeUnique<AutofillProfile>(guid_present1, kHttpOrigin)); |
profiles_from_web_db.back()->SetRawInfo(NAME_FIRST, ASCIIToUTF16("John")); |
profiles_from_web_db.push_back( |
- new AutofillProfile(guid_present2, kHttpsOrigin)); |
+ base::MakeUnique<AutofillProfile>(guid_present2, kHttpsOrigin)); |
profiles_from_web_db.back()->SetRawInfo(NAME_FIRST, ASCIIToUTF16("Jane")); |
syncer::SyncChangeList expected_change_list; |
@@ -497,8 +502,8 @@ TEST_F(AutofillProfileSyncableServiceTest, GetAllSyncData) { |
MockAutofillProfileSyncableService::DataBundle expected_bundle; |
syncer::SyncDataList data_list; |
- MergeDataAndStartSyncing( |
- profiles_from_web_db, data_list, expected_bundle, expected_change_list); |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
+ expected_bundle, expected_change_list); |
syncer::SyncDataList data = |
autofill_syncable_service_.GetAllSyncData(syncer::AUTOFILL_PROFILE); |
@@ -696,10 +701,10 @@ TEST_F(AutofillProfileSyncableServiceTest, |
// Ensure that all profile fields are able to be synced up from the client to |
// the server. |
TEST_F(AutofillProfileSyncableServiceTest, SyncAllFieldsToServer) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
// Create a profile with all fields set. |
- profiles_from_web_db.push_back(ConstructCompleteProfile().release()); |
+ profiles_from_web_db.push_back(ConstructCompleteProfile()); |
// Set up expectations: No changes to the WebDB, and all fields correctly |
// copied to Sync. |
@@ -712,8 +717,8 @@ TEST_F(AutofillProfileSyncableServiceTest, SyncAllFieldsToServer) { |
// Verify the expectations. |
syncer::SyncDataList data_list; |
- MergeDataAndStartSyncing( |
- profiles_from_web_db, data_list, expected_bundle, expected_change_list); |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
+ expected_bundle, expected_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
@@ -733,9 +738,9 @@ TEST_F(AutofillProfileSyncableServiceTest, SyncAllFieldsToClient) { |
expected_bundle.profiles_to_add.push_back(expected_profile.get()); |
// Verify the expectations. |
- std::vector<AutofillProfile*> profiles_from_web_db; |
- MergeDataAndStartSyncing( |
- profiles_from_web_db, data_list, expected_bundle, expected_change_list); |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
+ expected_bundle, expected_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
@@ -780,9 +785,9 @@ TEST_F(AutofillProfileSyncableServiceTest, |
expected_bundle.profiles_to_add.push_back(&expected_profile); |
// Verify the expectations. |
- std::vector<AutofillProfile*> profiles_from_web_db; |
- MergeDataAndStartSyncing( |
- profiles_from_web_db, data_list, expected_bundle, expected_change_list); |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
+ expected_bundle, expected_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
@@ -792,7 +797,7 @@ TEST_F(AutofillProfileSyncableServiceTest, |
// street address field to profiles does not generate lots of needless Sync |
// updates. |
TEST_F(AutofillProfileSyncableServiceTest, MergeDataEmptyStreetAddress) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
// Create a profile with the street address set. |
AutofillProfile profile(kGuid1, kHttpsOrigin); |
@@ -803,7 +808,7 @@ TEST_F(AutofillProfileSyncableServiceTest, MergeDataEmptyStreetAddress) { |
profile.GetRawInfo(ADDRESS_HOME_LINE1)); |
EXPECT_EQ(ASCIIToUTF16("Apt. 42"), profile.GetRawInfo(ADDRESS_HOME_LINE2)); |
- profiles_from_web_db.push_back(new AutofillProfile(profile)); |
+ profiles_from_web_db.push_back(base::MakeUnique<AutofillProfile>(profile)); |
// Create a Sync profile identical to |profile|, except without street address |
// explicitly set. |
@@ -831,19 +836,19 @@ TEST_F(AutofillProfileSyncableServiceTest, MergeDataEmptyStreetAddress) { |
MockAutofillProfileSyncableService::DataBundle expected_bundle; |
syncer::SyncChangeList expected_change_list; |
- MergeDataAndStartSyncing( |
- profiles_from_web_db, data_list, expected_bundle, expected_change_list); |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
+ expected_bundle, expected_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
// Sync data without origin should not overwrite existing origin in local |
// autofill profile. |
TEST_F(AutofillProfileSyncableServiceTest, EmptySyncPreservesOrigin) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
// Local autofill profile has an origin. |
AutofillProfile profile(kGuid1, kHttpsOrigin); |
- profiles_from_web_db.push_back(new AutofillProfile(profile)); |
+ profiles_from_web_db.push_back(base::MakeUnique<AutofillProfile>(profile)); |
// Remote data does not have an origin value. |
sync_pb::EntitySpecifics specifics; |
@@ -872,19 +877,19 @@ TEST_F(AutofillProfileSyncableServiceTest, EmptySyncPreservesOrigin) { |
// Expect no sync events to add origin to the remote data. |
syncer::SyncChangeList expected_empty_change_list; |
- MergeDataAndStartSyncing(profiles_from_web_db, data_list, |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
expected_bundle, expected_empty_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
// Missing language code field should not generate sync events. |
TEST_F(AutofillProfileSyncableServiceTest, NoLanguageCodeNoSync) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
// Local autofill profile has an empty language code. |
AutofillProfile profile(kGuid1, kHttpsOrigin); |
EXPECT_TRUE(profile.language_code().empty()); |
- profiles_from_web_db.push_back(new AutofillProfile(profile)); |
+ profiles_from_web_db.push_back(base::MakeUnique<AutofillProfile>(profile)); |
// Remote data does not have a language code value. |
sync_pb::EntitySpecifics specifics; |
@@ -911,19 +916,19 @@ TEST_F(AutofillProfileSyncableServiceTest, NoLanguageCodeNoSync) { |
MockAutofillProfileSyncableService::DataBundle expected_empty_bundle; |
syncer::SyncChangeList expected_empty_change_list; |
- MergeDataAndStartSyncing(profiles_from_web_db, data_list, |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
expected_empty_bundle, expected_empty_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
// Empty language code should be overwritten by sync. |
TEST_F(AutofillProfileSyncableServiceTest, SyncUpdatesEmptyLanguageCode) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
// Local autofill profile has an empty language code. |
AutofillProfile profile(kGuid1, kHttpsOrigin); |
EXPECT_TRUE(profile.language_code().empty()); |
- profiles_from_web_db.push_back(new AutofillProfile(profile)); |
+ profiles_from_web_db.push_back(base::MakeUnique<AutofillProfile>(profile)); |
// Remote data has "en" language code. |
sync_pb::EntitySpecifics specifics; |
@@ -954,19 +959,19 @@ TEST_F(AutofillProfileSyncableServiceTest, SyncUpdatesEmptyLanguageCode) { |
// Expect no changes to remote data. |
syncer::SyncChangeList expected_empty_change_list; |
- MergeDataAndStartSyncing(profiles_from_web_db, data_list, |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
expected_bundle, expected_empty_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
// Incorrect language code should be overwritten by sync. |
TEST_F(AutofillProfileSyncableServiceTest, SyncUpdatesIncorrectLanguageCode) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
// Local autofill profile has "de" language code. |
AutofillProfile profile(kGuid1, kHttpsOrigin); |
profile.set_language_code("de"); |
- profiles_from_web_db.push_back(new AutofillProfile(profile)); |
+ profiles_from_web_db.push_back(base::MakeUnique<AutofillProfile>(profile)); |
// Remote data has "en" language code. |
sync_pb::EntitySpecifics specifics; |
@@ -997,7 +1002,7 @@ TEST_F(AutofillProfileSyncableServiceTest, SyncUpdatesIncorrectLanguageCode) { |
// Expect no changes to remote data. |
syncer::SyncChangeList expected_empty_change_list; |
- MergeDataAndStartSyncing(profiles_from_web_db, data_list, |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
expected_bundle, expected_empty_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
@@ -1005,12 +1010,12 @@ TEST_F(AutofillProfileSyncableServiceTest, SyncUpdatesIncorrectLanguageCode) { |
// Sync data without language code should not overwrite existing language code |
// in local autofill profile. |
TEST_F(AutofillProfileSyncableServiceTest, EmptySyncPreservesLanguageCode) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
// Local autofill profile has "en" language code. |
AutofillProfile profile(kGuid1, kHttpsOrigin); |
profile.set_language_code("en"); |
- profiles_from_web_db.push_back(new AutofillProfile(profile)); |
+ profiles_from_web_db.push_back(base::MakeUnique<AutofillProfile>(profile)); |
// Remote data does not have a language code value. |
sync_pb::EntitySpecifics specifics; |
@@ -1041,7 +1046,7 @@ TEST_F(AutofillProfileSyncableServiceTest, EmptySyncPreservesLanguageCode) { |
// Expect no changes to remote data. |
syncer::SyncChangeList expected_empty_change_list; |
- MergeDataAndStartSyncing(profiles_from_web_db, data_list, |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
expected_bundle, expected_empty_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
@@ -1069,12 +1074,12 @@ TEST_F(AutofillProfileSyncableServiceTest, LanguageCodePropagates) { |
// Missing full name field should not generate sync events. |
TEST_F(AutofillProfileSyncableServiceTest, NoFullNameNoSync) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
// Local autofill profile has an empty full name. |
AutofillProfile profile(kGuid1, kHttpsOrigin); |
profile.SetRawInfo(NAME_FIRST, ASCIIToUTF16("John")); |
- profiles_from_web_db.push_back(new AutofillProfile(profile)); |
+ profiles_from_web_db.push_back(base::MakeUnique<AutofillProfile>(profile)); |
// Remote data does not have a full name. |
sync_pb::EntitySpecifics specifics; |
@@ -1099,18 +1104,18 @@ TEST_F(AutofillProfileSyncableServiceTest, NoFullNameNoSync) { |
MockAutofillProfileSyncableService::DataBundle expected_empty_bundle; |
syncer::SyncChangeList expected_empty_change_list; |
- MergeDataAndStartSyncing(profiles_from_web_db, data_list, |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
expected_empty_bundle, expected_empty_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
TEST_F(AutofillProfileSyncableServiceTest, EmptySyncPreservesFullName) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
// Local autofill profile has a full name. |
AutofillProfile profile(kGuid1, kHttpsOrigin); |
profile.SetRawInfo(NAME_FULL, ASCIIToUTF16("John Jacob Smith, Jr")); |
- profiles_from_web_db.push_back(new AutofillProfile(profile)); |
+ profiles_from_web_db.push_back(base::MakeUnique<AutofillProfile>(profile)); |
// Remote data does not have a full name value. |
sync_pb::EntitySpecifics specifics; |
@@ -1138,14 +1143,14 @@ TEST_F(AutofillProfileSyncableServiceTest, EmptySyncPreservesFullName) { |
// Expect no changes to remote data. |
syncer::SyncChangeList expected_empty_change_list; |
- MergeDataAndStartSyncing(profiles_from_web_db, data_list, |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
expected_bundle, expected_empty_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
// Missing use_count/use_date fields should not generate sync events. |
TEST_F(AutofillProfileSyncableServiceTest, NoUsageStatsNoSync) { |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
// Local autofill profile has 0 for use_count/use_date. |
AutofillProfile profile(kGuid1, kHttpsOrigin); |
@@ -1154,7 +1159,7 @@ TEST_F(AutofillProfileSyncableServiceTest, NoUsageStatsNoSync) { |
profile.set_use_date(base::Time()); |
EXPECT_EQ(0U, profile.use_count()); |
EXPECT_EQ(base::Time(), profile.use_date()); |
- profiles_from_web_db.push_back(new AutofillProfile(profile)); |
+ profiles_from_web_db.push_back(base::MakeUnique<AutofillProfile>(profile)); |
// Remote data does not have use_count/use_date. |
sync_pb::EntitySpecifics specifics; |
@@ -1181,7 +1186,7 @@ TEST_F(AutofillProfileSyncableServiceTest, NoUsageStatsNoSync) { |
MockAutofillProfileSyncableService::DataBundle expected_empty_bundle; |
syncer::SyncChangeList expected_empty_change_list; |
- MergeDataAndStartSyncing(profiles_from_web_db, data_list, |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
expected_empty_bundle, expected_empty_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
@@ -1209,7 +1214,7 @@ TEST_F(AutofillProfileSyncableServiceTest, SyncUpdatesUsageStats) { |
for (const TestCase& test_case : test_cases) { |
SetUp(); |
- std::vector<AutofillProfile*> profiles_from_web_db; |
+ std::vector<std::unique_ptr<AutofillProfile>> profiles_from_web_db; |
AutofillProfile profile(kGuid1, kHttpsOrigin); |
profile.set_language_code("en"); |
@@ -1217,7 +1222,7 @@ TEST_F(AutofillProfileSyncableServiceTest, SyncUpdatesUsageStats) { |
profile.set_use_date(test_case.local_use_date); |
EXPECT_EQ(test_case.local_use_count, profile.use_count()); |
EXPECT_EQ(test_case.local_use_date, profile.use_date()); |
- profiles_from_web_db.push_back(new AutofillProfile(profile)); |
+ profiles_from_web_db.push_back(base::MakeUnique<AutofillProfile>(profile)); |
// Remote data has usage stats. |
sync_pb::EntitySpecifics specifics; |
@@ -1251,8 +1256,8 @@ TEST_F(AutofillProfileSyncableServiceTest, SyncUpdatesUsageStats) { |
// Expect no changes to remote data. |
syncer::SyncChangeList expected_empty_change_list; |
- MergeDataAndStartSyncing(profiles_from_web_db, data_list, expected_bundle, |
- expected_empty_change_list); |
+ MergeDataAndStartSyncing(std::move(profiles_from_web_db), data_list, |
+ expected_bundle, expected_empty_change_list); |
autofill_syncable_service_.StopSyncing(syncer::AUTOFILL_PROFILE); |
} |
} |