| Index: components/autofill/content/browser/wallet/wallet_address_unittest.cc
|
| diff --git a/components/autofill/content/browser/wallet/wallet_address_unittest.cc b/components/autofill/content/browser/wallet/wallet_address_unittest.cc
|
| index be2eadb3ab5e962946820c14d18974a5f94b892f..90a41d27285cee98fec415235c115dbcf2502c45 100644
|
| --- a/components/autofill/content/browser/wallet/wallet_address_unittest.cc
|
| +++ b/components/autofill/content/browser/wallet/wallet_address_unittest.cc
|
| @@ -8,6 +8,7 @@
|
| #include "base/strings/utf_string_conversions.h"
|
| #include "base/values.h"
|
| #include "components/autofill/content/browser/wallet/wallet_address.h"
|
| +#include "components/autofill/content/browser/wallet/wallet_test_util.h"
|
| #include "components/autofill/core/browser/autofill_profile.h"
|
| #include "components/autofill/core/browser/autofill_test_utils.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
| @@ -28,8 +29,10 @@ const char kAddressMissingObjectId[] =
|
| " \"address_line_2\""
|
| " ],"
|
| " \"locality_name\":\"locality_name\","
|
| + " \"dependent_locality_name\":\"dependent_locality_name\","
|
| " \"administrative_area_name\":\"administrative_area_name\","
|
| " \"postal_code_number\":\"postal_code_number\","
|
| + " \"sorting_code\":\"sorting_code\","
|
| " \"country_name_code\":\"US\""
|
| " }"
|
| "}";
|
| @@ -47,8 +50,10 @@ const char kAddressMissingCountryNameCode[] =
|
| " \"address_line_2\""
|
| " ],"
|
| " \"locality_name\":\"locality_name\","
|
| + " \"dependent_locality_name\":\"dependent_locality_name\","
|
| " \"administrative_area_name\":\"administrative_area_name\","
|
| - " \"postal_code_number\":\"postal_code_number\""
|
| + " \"postal_code_number\":\"postal_code_number\","
|
| + " \"sorting_code\":\"sorting_code\""
|
| " }"
|
| "}";
|
|
|
| @@ -64,8 +69,10 @@ const char kAddressMissingRecipientName[] =
|
| " \"address_line_2\""
|
| " ],"
|
| " \"locality_name\":\"locality_name\","
|
| + " \"dependent_locality_name\":\"dependent_locality_name\","
|
| " \"administrative_area_name\":\"administrative_area_name\","
|
| " \"postal_code_number\":\"postal_code_number\","
|
| + " \"sorting_code\":\"sorting_code\","
|
| " \"country_name_code\":\"US\""
|
| " }"
|
| "}";
|
| @@ -83,7 +90,9 @@ const char kAddressMissingPostalCodeNumber[] =
|
| " \"address_line_2\""
|
| " ],"
|
| " \"locality_name\":\"locality_name\","
|
| + " \"dependent_locality_name\":\"dependent_locality_name\","
|
| " \"administrative_area_name\":\"administrative_area_name\","
|
| + " \"sorting_code\":\"sorting_code\","
|
| " \"country_name_code\":\"US\""
|
| " }"
|
| "}";
|
| @@ -102,9 +111,11 @@ const char kValidAddress[] =
|
| " \"address_line_2\""
|
| " ],"
|
| " \"locality_name\":\"locality_name\","
|
| + " \"dependent_locality_name\":\"dependent_locality_name\","
|
| " \"administrative_area_name\":\"administrative_area_name\","
|
| " \"country_name_code\":\"US\","
|
| - " \"postal_code_number\":\"postal_code_number\""
|
| + " \"postal_code_number\":\"postal_code_number\","
|
| + " \"sorting_code\":\"sorting_code\""
|
| " }"
|
| "}";
|
|
|
| @@ -116,6 +127,7 @@ const char kClientAddressMissingCountryCode[] =
|
| " \"city\":\"city\","
|
| " \"state\":\"state\","
|
| " \"postal_code\":\"postal_code\","
|
| + " \"sorting_code\":\"sorting_code\","
|
| " \"phone_number\":\"phone_number\""
|
| "}";
|
|
|
| @@ -137,6 +149,7 @@ const char kClientAddressMissingName[] =
|
| " \"city\":\"city\","
|
| " \"state\":\"state\","
|
| " \"postal_code\":\"postal_code\","
|
| + " \"sorting_code\":\"sorting_code\","
|
| " \"phone_number\":\"phone_number\","
|
| " \"country_code\":\"US\""
|
| "}";
|
| @@ -147,8 +160,10 @@ const char kClientValidAddress[] =
|
| " \"address1\":\"address1\","
|
| " \"address2\":\"address2\","
|
| " \"city\":\"city\","
|
| + " \"dependent_locality_name\":\"district\","
|
| " \"state\":\"state\","
|
| " \"postal_code\":\"postal_code\","
|
| + " \"sorting_code\":\"sorting_code\","
|
| " \"phone_number\":\"phone_number\","
|
| " \"country_code\":\"US\","
|
| " \"type\":\"FULL\""
|
| @@ -169,47 +184,52 @@ class WalletAddressTest : public testing::Test {
|
| DCHECK(value->IsType(base::Value::TYPE_DICTIONARY));
|
| dict_.reset(static_cast<base::DictionaryValue*>(value.release()));
|
| }
|
| +
|
| scoped_ptr<const base::DictionaryValue> dict_;
|
| };
|
|
|
| TEST_F(WalletAddressTest, AddressEqualsIgnoreID) {
|
| Address address1("US",
|
| ASCIIToUTF16("recipient_name"),
|
| - ASCIIToUTF16("address_line_1"),
|
| - ASCIIToUTF16("address_line_2"),
|
| + StreetAddress("address_line_1", "address_line_2"),
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| "id1");
|
| // Same as address1, only id is different.
|
| Address address2("US",
|
| ASCIIToUTF16("recipient_name"),
|
| - ASCIIToUTF16("address_line_1"),
|
| - ASCIIToUTF16("address_line_2"),
|
| + StreetAddress("address_line_1", "address_line_2"),
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| "id2");
|
| // Has same id as address1, but name is different.
|
| Address address3("US",
|
| ASCIIToUTF16("a_different_name"),
|
| - ASCIIToUTF16("address_line_1"),
|
| - ASCIIToUTF16("address_line_2"),
|
| + StreetAddress("address_line_1", "address_line_2"),
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| - ASCIIToUTF16("postal_code_number"),
|
| ASCIIToUTF16("phone_number"),
|
| + ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| "id1");
|
| // Same as address1, but no id.
|
| Address address4("US",
|
| ASCIIToUTF16("recipient_name"),
|
| - ASCIIToUTF16("address_line_1"),
|
| - ASCIIToUTF16("address_line_2"),
|
| + StreetAddress("address_line_1", "address_line_2"),
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| std::string());
|
|
|
| @@ -241,11 +261,12 @@ TEST_F(WalletAddressTest, CreateAddressMissingObjectId) {
|
| SetUpDictionary(kAddressMissingObjectId);
|
| Address address("US",
|
| ASCIIToUTF16("recipient_name"),
|
| - ASCIIToUTF16("address_line_1"),
|
| - ASCIIToUTF16("address_line_2"),
|
| + StreetAddress("address_line_1", "address_line_2"),
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| std::string());
|
| EXPECT_EQ(address, *Address::CreateAddress(*dict_));
|
| @@ -278,11 +299,12 @@ TEST_F(WalletAddressTest, CreateAddressWithID) {
|
| SetUpDictionary(kValidAddress);
|
| Address address("US",
|
| ASCIIToUTF16("recipient_name"),
|
| - ASCIIToUTF16("address_line_1"),
|
| - ASCIIToUTF16("address_line_2"),
|
| + StreetAddress("address_line_1", "address_line_2"),
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| "id");
|
| address.set_is_complete_address(false);
|
| @@ -309,11 +331,12 @@ TEST_F(WalletAddressTest, CreateDisplayAddress) {
|
| SetUpDictionary(kClientValidAddress);
|
| Address address("US",
|
| ASCIIToUTF16("name"),
|
| - ASCIIToUTF16("address1"),
|
| - ASCIIToUTF16("address2"),
|
| + StreetAddress("address1", "address2"),
|
| ASCIIToUTF16("city"),
|
| + ASCIIToUTF16("district"),
|
| ASCIIToUTF16("state"),
|
| ASCIIToUTF16("postal_code"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| std::string());
|
| EXPECT_EQ(address, *Address::CreateDisplayAddress(*dict_));
|
| @@ -327,10 +350,14 @@ TEST_F(WalletAddressTest, ToDictionaryWithoutID) {
|
| "recipient_name");
|
| expected.SetString("locality_name",
|
| "locality_name");
|
| + expected.SetString("dependent_locality_name",
|
| + "dependent_locality_name");
|
| expected.SetString("administrative_area_name",
|
| "administrative_area_name");
|
| expected.SetString("postal_code_number",
|
| "postal_code_number");
|
| + expected.SetString("sorting_code",
|
| + "sorting_code");
|
| base::ListValue* address_lines = new base::ListValue();
|
| address_lines->AppendString("address_line_1");
|
| address_lines->AppendString("address_line_2");
|
| @@ -338,15 +365,14 @@ TEST_F(WalletAddressTest, ToDictionaryWithoutID) {
|
|
|
| Address address("US",
|
| ASCIIToUTF16("recipient_name"),
|
| - ASCIIToUTF16("address_line_1"),
|
| - ASCIIToUTF16("address_line_2"),
|
| + StreetAddress("address_line_1", "address_line_2"),
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| std::string());
|
| -
|
| - EXPECT_TRUE(expected.Equals(address.ToDictionaryWithoutID().get()));
|
| }
|
|
|
| TEST_F(WalletAddressTest, ToDictionaryWithID) {
|
| @@ -359,10 +385,14 @@ TEST_F(WalletAddressTest, ToDictionaryWithID) {
|
| "recipient_name");
|
| expected.SetString("postal_address.locality_name",
|
| "locality_name");
|
| + expected.SetString("postal_address.dependent_locality_name",
|
| + "dependent_locality_name");
|
| expected.SetString("postal_address.administrative_area_name",
|
| "administrative_area_name");
|
| expected.SetString("postal_address.postal_code_number",
|
| "postal_code_number");
|
| + expected.SetString("postal_address.sorting_code",
|
| + "sorting_code");
|
| base::ListValue* address_lines = new base::ListValue();
|
| address_lines->AppendString("address_line_1");
|
| address_lines->AppendString("address_line_2");
|
| @@ -370,11 +400,12 @@ TEST_F(WalletAddressTest, ToDictionaryWithID) {
|
|
|
| Address address("US",
|
| ASCIIToUTF16("recipient_name"),
|
| - ASCIIToUTF16("address_line_1"),
|
| - ASCIIToUTF16("address_line_2"),
|
| + StreetAddress("address_line_1", "address_line_2"),
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| "id");
|
|
|
| @@ -386,11 +417,12 @@ TEST_F(WalletAddressTest, ToDictionaryWithID) {
|
| TEST_F(WalletAddressTest, GetCountryInfo) {
|
| Address address("FR",
|
| ASCIIToUTF16("recipient_name"),
|
| - ASCIIToUTF16("address_line_1"),
|
| - ASCIIToUTF16("address_line_2"),
|
| + StreetAddress("address_line_1", "address_line_2"),
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| "id1");
|
|
|
| @@ -407,14 +439,17 @@ TEST_F(WalletAddressTest, GetCountryInfo) {
|
| // Verifies that WalletAddress::GetInfo() can correctly return a concatenated
|
| // full street address.
|
| TEST_F(WalletAddressTest, GetStreetAddress) {
|
| + std::vector<base::string16> street_address = StreetAddress(
|
| + "address_line_1", "address_line_2");
|
| // Address has both lines 1 and 2.
|
| Address address1("FR",
|
| ASCIIToUTF16("recipient_name"),
|
| - ASCIIToUTF16("address_line_1"),
|
| - ASCIIToUTF16("address_line_2"),
|
| + street_address,
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| "id1");
|
| AutofillType type = AutofillType(HTML_TYPE_STREET_ADDRESS, HTML_MODE_NONE);
|
| @@ -422,25 +457,29 @@ TEST_F(WalletAddressTest, GetStreetAddress) {
|
| address1.GetInfo(type, "en-US"));
|
|
|
| // Address has only line 1.
|
| + street_address.resize(1);
|
| Address address2("FR",
|
| ASCIIToUTF16("recipient_name"),
|
| - ASCIIToUTF16("address_line_1"),
|
| - base::string16(),
|
| + street_address,
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| "id1");
|
| EXPECT_EQ(ASCIIToUTF16("address_line_1"), address2.GetInfo(type, "en-US"));
|
|
|
| // Address has no address lines.
|
| + street_address.clear();
|
| Address address3("FR",
|
| ASCIIToUTF16("recipient_name"),
|
| - base::string16(),
|
| - base::string16(),
|
| + street_address,
|
| ASCIIToUTF16("locality_name"),
|
| + ASCIIToUTF16("dependent_locality_name"),
|
| ASCIIToUTF16("administrative_area_name"),
|
| ASCIIToUTF16("postal_code_number"),
|
| + ASCIIToUTF16("sorting_code"),
|
| ASCIIToUTF16("phone_number"),
|
| "id1");
|
| EXPECT_EQ(base::string16(), address3.GetInfo(type, "en-US"));
|
|
|