Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "base/memory/scoped_vector.h" | |
| 6 #include "base/string16.h" | |
| 7 #include "base/utf_string_conversions.h" | |
| 8 #include "chrome/browser/autofill/android/auxiliary_profile_loader_android.h" | |
| 9 #include "chrome/browser/autofill/android/auxiliary_profiles_android.h" | |
| 10 #include "chrome/browser/autofill/android/test_auxiliary_profile_loader_android. h" | |
| 11 #include "chrome/browser/autofill/autofill_profile.h" | |
| 12 #include "testing/gtest/include/gtest/gtest.h" | |
| 13 | |
| 14 class AuxiliaryProfileAndroidTest : public testing::Test { | |
| 15 public: | |
| 16 AuxiliaryProfileAndroidTest() : profile_loader_(){} | |
|
Ilya Sherman
2013/03/09 01:42:58
nit: Just write this as "AuxiliaryProfileAndroidTe
apiccion
2013/03/09 03:43:17
Done.
| |
| 17 | |
| 18 AutofillProfile* GetAndLoadProfile() { | |
| 19 autofill::AuxiliaryProfilesAndroid impl(profile_loader_); | |
| 20 profile_ = impl.LoadContactsProfile(); | |
| 21 return profile_.get(); | |
| 22 } | |
| 23 | |
| 24 TestAuxiliaryProfileLoader& profile_loader() { | |
| 25 return profile_loader_; | |
| 26 } | |
| 27 | |
| 28 private: | |
| 29 TestAuxiliaryProfileLoader profile_loader_; | |
| 30 scoped_ptr<AutofillProfile> profile_; | |
| 31 }; | |
| 32 | |
| 33 TEST_F(AuxiliaryProfileAndroidTest, SetNameInfo) { | |
| 34 string16 firstName = ASCIIToUTF16("John"); | |
| 35 string16 middleName = ASCIIToUTF16("H."); | |
| 36 string16 lastName = ASCIIToUTF16("Waston"); | |
| 37 | |
| 38 profile_loader().SetFirstName(firstName); | |
| 39 profile_loader().SetMiddleName(middleName); | |
| 40 profile_loader().SetLastName(lastName); | |
| 41 | |
| 42 AutofillProfile* profile = GetAndLoadProfile(); | |
| 43 | |
| 44 EXPECT_EQ(profile->GetRawInfo(NAME_FIRST), firstName); | |
| 45 EXPECT_EQ(profile->GetRawInfo(NAME_MIDDLE), middleName); | |
| 46 EXPECT_EQ(profile->GetRawInfo(NAME_LAST), lastName); | |
| 47 } | |
| 48 | |
| 49 TEST_F(AuxiliaryProfileAndroidTest, SetNameInfoEmpty) { | |
| 50 AutofillProfile* profile = GetAndLoadProfile(); | |
| 51 | |
| 52 EXPECT_EQ(profile->GetRawInfo(NAME_FIRST), string16()); | |
| 53 EXPECT_EQ(profile->GetRawInfo(NAME_MIDDLE), string16()); | |
| 54 EXPECT_EQ(profile->GetRawInfo(NAME_LAST), string16()); | |
| 55 } | |
| 56 | |
| 57 TEST_F(AuxiliaryProfileAndroidTest, SetEmailInfo) { | |
| 58 std::vector<string16> emailAddresses; | |
| 59 emailAddresses.push_back(ASCIIToUTF16("sherlock@holmes.com")); | |
| 60 emailAddresses.push_back(ASCIIToUTF16("watson@holmes.com")); | |
| 61 profile_loader().SetEmailAddresses(emailAddresses); | |
| 62 | |
| 63 AutofillProfile * profile = GetAndLoadProfile(); | |
| 64 std::vector<string16> loadedEmailAddresses; | |
| 65 profile->GetRawMultiInfo(EMAIL_ADDRESS, &loadedEmailAddresses); | |
| 66 EXPECT_EQ(loadedEmailAddresses, emailAddresses); | |
| 67 } | |
| 68 | |
| 69 TEST_F(AuxiliaryProfileAndroidTest, SetEmailInfoEmpty) { | |
| 70 std::vector<string16> expectedEmailAddresses; | |
| 71 expectedEmailAddresses.push_back(string16()); | |
| 72 std::vector<string16> loadedEmailAddresses; | |
| 73 AutofillProfile * profile = GetAndLoadProfile(); | |
| 74 profile->GetRawMultiInfo(EMAIL_ADDRESS, &loadedEmailAddresses); | |
| 75 EXPECT_EQ(loadedEmailAddresses, expectedEmailAddresses); | |
| 76 } | |
| 77 | |
| 78 TEST_F(AuxiliaryProfileAndroidTest, SetPhoneInfo) { | |
| 79 std::vector<string16> phoneNumbers; | |
| 80 phoneNumbers.push_back(ASCIIToUTF16("6502530000")); | |
| 81 profile_loader().SetPhoneNumbers(phoneNumbers); | |
| 82 | |
| 83 std::vector<string16> loadedPhoneNumbers; | |
| 84 AutofillProfile * profile = GetAndLoadProfile(); | |
| 85 profile->GetRawMultiInfo(PHONE_HOME_WHOLE_NUMBER, &loadedPhoneNumbers); | |
| 86 EXPECT_EQ(loadedPhoneNumbers, phoneNumbers); | |
| 87 } | |
| 88 | |
| 89 TEST_F(AuxiliaryProfileAndroidTest, SetPhoneInfoEmpty) { | |
| 90 std::vector<string16> expectedPhoneNumbers; | |
| 91 expectedPhoneNumbers.push_back(string16()); | |
| 92 | |
| 93 std::vector<string16> loadedPhoneNumbers; | |
| 94 AutofillProfile * profile = GetAndLoadProfile(); | |
|
Ilya Sherman
2013/03/09 01:42:58
nit: No space before the asterisk. (Please fix th
apiccion
2013/03/09 03:43:17
Done.
| |
| 95 profile->GetRawMultiInfo(PHONE_HOME_WHOLE_NUMBER, &loadedPhoneNumbers); | |
| 96 EXPECT_EQ(loadedPhoneNumbers, expectedPhoneNumbers); | |
| 97 } | |
| 98 | |
| 99 // | |
| 100 // Android user's profile contact does not prase its address | |
| 101 // into constituent parts. Instead we just Get a long string blob. | |
| 102 // Disable address population tests until we implement a way to parse the | |
| 103 // data. | |
| 104 // | |
| 105 /* | |
|
Ilya Sherman
2013/03/09 01:42:58
nit: If you must "comment out" a test, please use
apiccion
2013/03/09 03:43:17
Done.
| |
| 106 TEST_F(AuxiliaryProfileAndroidTest, SetAddressInfo) { | |
| 107 string16 street = ASCIIToUTF16("221 B Baker Street"); | |
| 108 string16 city = ASCIIToUTF16("London"); | |
| 109 string16 postalCode = ASCIIToUTF16("123456"); | |
| 110 string16 region = ASCIIToUTF16("Georgian Terrace"); | |
| 111 string16 country = ASCIIToUTF16("England"); | |
| 112 | |
| 113 profile_loader().SetStreet(street); | |
| 114 profile_loader().SetCity(city); | |
| 115 profile_loader().SetPostalCode(postalCode); | |
| 116 profile_loader().SetRegion(region); | |
| 117 profile_loader().SetCountry(country); | |
| 118 | |
| 119 AutofillProfile* profile = GetAndLoadProfile(); | |
| 120 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_LINE1), street); | |
| 121 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_CITY), city); | |
| 122 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_ZIP), postalCode); | |
| 123 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_STATE), region); | |
| 124 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_COUNTRY), country); | |
| 125 } | |
| 126 | |
| 127 string16 pobox = ASCIIToUTF16("222"); | |
| 128 string16 neighborhood = ASCIIToUTF16("Doyle"); | |
| 129 TEST_F(AuxiliaryProfileAndroidTest, SetAddressInfoCompoundFields1) { | |
| 130 profile_loader().SetPobox(pobox); | |
| 131 profile_loader().SetNeighborhood(neighborhood); | |
| 132 string16 expectedLine2= ASCIIToUTF16("222, Doyle"); | |
| 133 AutofillProfile* profile = GetAndLoadProfile(); | |
| 134 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_LINE2), expectedLine2); | |
| 135 } | |
| 136 | |
| 137 TEST_F(AuxiliaryProfileAndroidTest, SetAddressInfoCompoundFields2) { | |
| 138 profile_loader().SetPobox(pobox); | |
| 139 AutofillProfile* profile = GetAndLoadProfile(); | |
| 140 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_LINE2), pobox); | |
| 141 } | |
| 142 | |
| 143 TEST_F(AuxiliaryProfileAndroidTest, SetAddressInfoCompoundFields3) { | |
| 144 profile_loader().SetNeighborhood(neighborhood); | |
| 145 AutofillProfile* profile = GetAndLoadProfile(); | |
| 146 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_LINE2), neighborhood); | |
| 147 } | |
| 148 | |
| 149 TEST_F(AuxiliaryProfileAndroidTest, SetAddressInfoEmpty) { | |
| 150 AutofillProfile* profile = GetAndLoadProfile(); | |
| 151 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_LINE1), string16()); | |
| 152 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_LINE2), string16()); | |
| 153 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_CITY), string16()); | |
| 154 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_ZIP), string16()); | |
| 155 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_STATE), string16()); | |
| 156 EXPECT_EQ(profile->GetRawInfo(ADDRESS_HOME_COUNTRY), string16()); | |
| 157 } | |
| 158 */ | |
| OLD | NEW |