| Index: components/autofill/core/browser/credit_card_field_unittest.cc
|
| diff --git a/components/autofill/core/browser/credit_card_field_unittest.cc b/components/autofill/core/browser/credit_card_field_unittest.cc
|
| index 037a302c340359eaef21595384e09f04342dddfc..96f2efbfa2638d1ede54014392ddd888c398140b 100644
|
| --- a/components/autofill/core/browser/credit_card_field_unittest.cc
|
| +++ b/components/autofill/core/browser/credit_card_field_unittest.cc
|
| @@ -347,4 +347,68 @@ TEST_F(CreditCardFieldTest, ParseMonthControl) {
|
| field_type_map_[ASCIIToUTF16("date2")]);
|
| }
|
|
|
| +TEST_F(CreditCardFieldTest, ParseCreditCardNumberWithSplit) {
|
| + FormFieldData field;
|
| + field.form_control_type = "text";
|
| +
|
| + field.label = ASCIIToUTF16("Card Number");
|
| + field.name = ASCIIToUTF16("card_number_q1");
|
| + field.max_length = 4;
|
| + list_.push_back(new AutofillField(field, ASCIIToUTF16("number1")));
|
| +
|
| + field.label = ASCIIToUTF16("Card Number");
|
| + field.name = ASCIIToUTF16("card_number_q2");
|
| + field.max_length = 4;
|
| + list_.push_back(new AutofillField(field, ASCIIToUTF16("number2")));
|
| +
|
| + field.label = ASCIIToUTF16("Card Number");
|
| + field.name = ASCIIToUTF16("card_number_q3");
|
| + field.max_length = 4;
|
| + list_.push_back(new AutofillField(field, ASCIIToUTF16("number3")));
|
| +
|
| + field.label = ASCIIToUTF16("Card Number");
|
| + field.name = ASCIIToUTF16("card_number_q4");
|
| + field.max_length = 4;
|
| + list_.push_back(new AutofillField(field, ASCIIToUTF16("number4")));
|
| +
|
| + field.label = ASCIIToUTF16("Exp Month");
|
| + field.name = ASCIIToUTF16("ccmonth");
|
| + list_.push_back(new AutofillField(field, ASCIIToUTF16("month5")));
|
| +
|
| + field.label = ASCIIToUTF16("Exp Year");
|
| + field.name = ASCIIToUTF16("ccyear");
|
| + list_.push_back(new AutofillField(field, ASCIIToUTF16("year6")));
|
| +
|
| + Parse();
|
| + ASSERT_NE(static_cast<CreditCardField*>(NULL), field_.get());
|
| + EXPECT_TRUE(ClassifyField());
|
| +
|
| + ASSERT_TRUE(field_type_map_.find(ASCIIToUTF16("number1")) !=
|
| + field_type_map_.end());
|
| + EXPECT_EQ(CREDIT_CARD_NUMBER, field_type_map_[ASCIIToUTF16("number1")]);
|
| + EXPECT_EQ(0U, list_[0]->credit_card_number_start_index());
|
| +
|
| + ASSERT_TRUE(field_type_map_.find(ASCIIToUTF16("number2")) !=
|
| + field_type_map_.end());
|
| + EXPECT_EQ(CREDIT_CARD_NUMBER, field_type_map_[ASCIIToUTF16("number2")]);
|
| + EXPECT_EQ(4U, list_[1]->credit_card_number_start_index());
|
| +
|
| + ASSERT_TRUE(field_type_map_.find(ASCIIToUTF16("number3")) !=
|
| + field_type_map_.end());
|
| + EXPECT_EQ(CREDIT_CARD_NUMBER, field_type_map_[ASCIIToUTF16("number3")]);
|
| + EXPECT_EQ(8U, list_[2]->credit_card_number_start_index());
|
| +
|
| + ASSERT_TRUE(field_type_map_.find(ASCIIToUTF16("number4")) !=
|
| + field_type_map_.end());
|
| + EXPECT_EQ(CREDIT_CARD_NUMBER, field_type_map_[ASCIIToUTF16("number4")]);
|
| + EXPECT_EQ(12U, list_[3]->credit_card_number_start_index());
|
| +
|
| + ASSERT_TRUE(field_type_map_.find(ASCIIToUTF16("month5")) !=
|
| + field_type_map_.end());
|
| + EXPECT_EQ(CREDIT_CARD_EXP_MONTH, field_type_map_[ASCIIToUTF16("month5")]);
|
| + ASSERT_TRUE(field_type_map_.find(ASCIIToUTF16("year6")) !=
|
| + field_type_map_.end());
|
| + EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR,
|
| + field_type_map_[ASCIIToUTF16("year6")]);
|
| +}
|
| } // namespace autofill
|
|
|