| Index: components/autofill/core/browser/autofill_type_unittest.cc
|
| diff --git a/components/autofill/core/browser/autofill_type_unittest.cc b/components/autofill/core/browser/autofill_type_unittest.cc
|
| index 2eda787ad7b1a74a4a31b67ffb9d101b9156c16e..2760809e7df43727b918e30f4e8d9d7fa432a39d 100644
|
| --- a/components/autofill/core/browser/autofill_type_unittest.cc
|
| +++ b/components/autofill/core/browser/autofill_type_unittest.cc
|
| @@ -8,47 +8,96 @@
|
| namespace autofill {
|
| namespace {
|
|
|
| -TEST(AutofillTypeTest, AutofillTypes) {
|
| +TEST(AutofillTypeTest, NativeFieldTypes) {
|
| // No server data.
|
| AutofillType none(NO_SERVER_DATA);
|
| - EXPECT_EQ(NO_SERVER_DATA, none.native_type());
|
| + EXPECT_EQ(NO_SERVER_DATA, none.GetEquivalentNativeType());
|
| EXPECT_EQ(NO_GROUP, none.group());
|
|
|
| // Unknown type.
|
| AutofillType unknown(UNKNOWN_TYPE);
|
| - EXPECT_EQ(UNKNOWN_TYPE, unknown.native_type());
|
| + EXPECT_EQ(UNKNOWN_TYPE, unknown.GetEquivalentNativeType());
|
| EXPECT_EQ(NO_GROUP, unknown.group());
|
|
|
| // Type with group but no subgroup.
|
| AutofillType first(NAME_FIRST);
|
| - EXPECT_EQ(NAME_FIRST, first.native_type());
|
| + EXPECT_EQ(NAME_FIRST, first.GetEquivalentNativeType());
|
| EXPECT_EQ(NAME, first.group());
|
|
|
| // Type with group and subgroup.
|
| AutofillType phone(PHONE_HOME_NUMBER);
|
| - EXPECT_EQ(PHONE_HOME_NUMBER, phone.native_type());
|
| + EXPECT_EQ(PHONE_HOME_NUMBER, phone.GetEquivalentNativeType());
|
| EXPECT_EQ(PHONE_HOME, phone.group());
|
|
|
| + // Billing type.
|
| + AutofillType billing_address(ADDRESS_BILLING_LINE1);
|
| + EXPECT_EQ(ADDRESS_HOME_LINE1, billing_address.GetEquivalentNativeType());
|
| + EXPECT_EQ(ADDRESS_BILLING, billing_address.group());
|
| +
|
| // Last value, to check any offset errors.
|
| - AutofillType last(COMPANY_NAME);
|
| - EXPECT_EQ(COMPANY_NAME, last.native_type());
|
| - EXPECT_EQ(COMPANY, last.group());
|
| + AutofillType last(NAME_BILLING_SUFFIX);
|
| + EXPECT_EQ(NAME_SUFFIX, last.GetEquivalentNativeType());
|
| + EXPECT_EQ(NAME_BILLING, last.group());
|
|
|
| // Boundary (error) condition.
|
| AutofillType boundary(MAX_VALID_FIELD_TYPE);
|
| - EXPECT_EQ(UNKNOWN_TYPE, boundary.native_type());
|
| + EXPECT_EQ(UNKNOWN_TYPE, boundary.GetEquivalentNativeType());
|
| EXPECT_EQ(NO_GROUP, boundary.group());
|
|
|
| // Beyond the boundary (error) condition.
|
| - AutofillType beyond(static_cast<NativeFieldType>(MAX_VALID_FIELD_TYPE+10));
|
| - EXPECT_EQ(UNKNOWN_TYPE, beyond.native_type());
|
| + AutofillType beyond(static_cast<NativeFieldType>(MAX_VALID_FIELD_TYPE + 10));
|
| + EXPECT_EQ(UNKNOWN_TYPE, beyond.GetEquivalentNativeType());
|
| EXPECT_EQ(NO_GROUP, beyond.group());
|
|
|
| // In-between value. Missing from enum but within range. Error condition.
|
| AutofillType between(static_cast<NativeFieldType>(16));
|
| - EXPECT_EQ(UNKNOWN_TYPE, between.native_type());
|
| + EXPECT_EQ(UNKNOWN_TYPE, between.GetEquivalentNativeType());
|
| EXPECT_EQ(NO_GROUP, between.group());
|
| }
|
|
|
| +TEST(AutofillTypeTest, HtmlFieldTypes) {
|
| + // Unknown type.
|
| + AutofillType unknown(HTML_TYPE_UNKNOWN, HTML_MODE_NONE);
|
| + EXPECT_EQ(UNKNOWN_TYPE, unknown.GetEquivalentNativeType());
|
| + EXPECT_EQ(NO_GROUP, unknown.group());
|
| +
|
| + // Type with group but no subgroup.
|
| + AutofillType first(HTML_TYPE_GIVEN_NAME, HTML_MODE_NONE);
|
| + EXPECT_EQ(NAME_FIRST, first.GetEquivalentNativeType());
|
| + EXPECT_EQ(NAME, first.group());
|
| +
|
| + // Type with group and subgroup.
|
| + AutofillType phone(HTML_TYPE_TEL, HTML_MODE_NONE);
|
| + EXPECT_EQ(PHONE_HOME_WHOLE_NUMBER, phone.GetEquivalentNativeType());
|
| + EXPECT_EQ(PHONE_HOME, phone.group());
|
| +
|
| + // Last value, to check any offset errors.
|
| + AutofillType last(HTML_TYPE_CREDIT_CARD_EXP_4_DIGIT_YEAR, HTML_MODE_NONE);
|
| + EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR, last.GetEquivalentNativeType());
|
| + EXPECT_EQ(CREDIT_CARD, last.group());
|
| +
|
| + // Shipping mode.
|
| + AutofillType shipping_first(HTML_TYPE_GIVEN_NAME, HTML_MODE_SHIPPING);
|
| + EXPECT_EQ(NAME_FIRST, shipping_first.GetEquivalentNativeType());
|
| + EXPECT_EQ(NAME, shipping_first.group());
|
| +
|
| + // Billing mode.
|
| + AutofillType billing_first(HTML_TYPE_GIVEN_NAME, HTML_MODE_BILLING);
|
| + EXPECT_EQ(NAME_FIRST, billing_first.GetEquivalentNativeType());
|
| + EXPECT_EQ(NAME_BILLING, billing_first.group());
|
| +}
|
| +
|
| +TEST(AutofillTypeTest, AsNativeFieldType) {
|
| + // Given name has a direct mapping to a native field type.
|
| + AutofillType name(HTML_TYPE_GIVEN_NAME, HTML_MODE_NONE);
|
| + EXPECT_EQ(NAME_FIRST, name.GetEquivalentNativeType());
|
| + EXPECT_EQ(NAME_FIRST, name.GetApproximateNativeFieldType());
|
| +
|
| + // Street address has no direct mapping to a native field type.
|
| + AutofillType address(HTML_TYPE_STREET_ADDRESS, HTML_MODE_NONE);
|
| + EXPECT_EQ(UNKNOWN_TYPE, address.GetEquivalentNativeType());
|
| + EXPECT_EQ(ADDRESS_HOME_LINE1, address.GetApproximateNativeFieldType());
|
| +}
|
| +
|
| } // namespace
|
| } // namespace autofill
|
|
|