Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(766)

Side by Side Diff: components/autofill/core/browser/credit_card_field_unittest.cc

Issue 1053473002: Autofill: Use field maxlength to improve credit card date matching. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add form structure browser test Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « components/autofill/core/browser/credit_card_field.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/memory/scoped_ptr.h" 5 #include "base/memory/scoped_ptr.h"
6 #include "base/memory/scoped_vector.h" 6 #include "base/memory/scoped_vector.h"
7 #include "base/strings/utf_string_conversions.h" 7 #include "base/strings/utf_string_conversions.h"
8 #include "components/autofill/core/browser/autofill_field.h" 8 #include "components/autofill/core/browser/autofill_field.h"
9 #include "components/autofill/core/browser/autofill_scanner.h" 9 #include "components/autofill/core/browser/autofill_scanner.h"
10 #include "components/autofill/core/browser/credit_card_field.h" 10 #include "components/autofill/core/browser/credit_card_field.h"
(...skipping 289 matching lines...) Expand 10 before | Expand all | Expand 10 after
300 EXPECT_EQ(CREDIT_CARD_NAME, field_type_map_[ASCIIToUTF16("name1")]); 300 EXPECT_EQ(CREDIT_CARD_NAME, field_type_map_[ASCIIToUTF16("name1")]);
301 ASSERT_TRUE( 301 ASSERT_TRUE(
302 field_type_map_.find(ASCIIToUTF16("number2")) != field_type_map_.end()); 302 field_type_map_.find(ASCIIToUTF16("number2")) != field_type_map_.end());
303 EXPECT_EQ(CREDIT_CARD_NUMBER, field_type_map_[ASCIIToUTF16("number2")]); 303 EXPECT_EQ(CREDIT_CARD_NUMBER, field_type_map_[ASCIIToUTF16("number2")]);
304 ASSERT_TRUE( 304 ASSERT_TRUE(
305 field_type_map_.find(ASCIIToUTF16("exp3")) != field_type_map_.end()); 305 field_type_map_.find(ASCIIToUTF16("exp3")) != field_type_map_.end());
306 EXPECT_EQ(CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR, 306 EXPECT_EQ(CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR,
307 field_type_map_[ASCIIToUTF16("exp3")]); 307 field_type_map_[ASCIIToUTF16("exp3")]);
308 } 308 }
309 309
310 TEST_F(CreditCardFieldTest, ParseExpField2DigitYearDueToMaxLength) {
311 FormFieldData field;
312 field.form_control_type = "text";
313
314 field.label = ASCIIToUTF16("Name on Card");
315 field.name = ASCIIToUTF16("name_on_card");
316 list_.push_back(new AutofillField(field, ASCIIToUTF16("name1")));
317
318 field.label = ASCIIToUTF16("Card Number");
319 field.name = ASCIIToUTF16("card_number");
320 list_.push_back(new AutofillField(field, ASCIIToUTF16("number2")));
321
322 field.label = ASCIIToUTF16("Expiration Date");
323 field.name = ASCIIToUTF16("cc_exp");
324 field.max_length = 6; // Cannot fit YYYY-MM.
325 list_.push_back(new AutofillField(field, ASCIIToUTF16("exp3")));
326
327 Parse();
328 ASSERT_NE(nullptr, field_.get());
329 EXPECT_TRUE(ClassifyField());
330 ASSERT_TRUE(
331 field_type_map_.find(ASCIIToUTF16("name1")) != field_type_map_.end());
332 EXPECT_EQ(CREDIT_CARD_NAME, field_type_map_[ASCIIToUTF16("name1")]);
333 ASSERT_TRUE(
334 field_type_map_.find(ASCIIToUTF16("number2")) != field_type_map_.end());
335 EXPECT_EQ(CREDIT_CARD_NUMBER, field_type_map_[ASCIIToUTF16("number2")]);
336 ASSERT_TRUE(
337 field_type_map_.find(ASCIIToUTF16("exp3")) != field_type_map_.end());
338 EXPECT_EQ(CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR,
339 field_type_map_[ASCIIToUTF16("exp3")]);
340 }
341
310 TEST_F(CreditCardFieldTest, ParseCreditCardHolderNameWithCCFullName) { 342 TEST_F(CreditCardFieldTest, ParseCreditCardHolderNameWithCCFullName) {
311 FormFieldData field; 343 FormFieldData field;
312 field.form_control_type = "text"; 344 field.form_control_type = "text";
313 345
314 field.label = ASCIIToUTF16("Name"); 346 field.label = ASCIIToUTF16("Name");
315 field.name = ASCIIToUTF16("ccfullname"); 347 field.name = ASCIIToUTF16("ccfullname");
316 list_.push_back(new AutofillField(field, ASCIIToUTF16("name1"))); 348 list_.push_back(new AutofillField(field, ASCIIToUTF16("name1")));
317 349
318 Parse(); 350 Parse();
319 ASSERT_NE(nullptr, field_.get()); 351 ASSERT_NE(nullptr, field_.get());
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
491 ASSERT_TRUE(field_type_map_.find(ASCIIToUTF16("month4")) != 523 ASSERT_TRUE(field_type_map_.find(ASCIIToUTF16("month4")) !=
492 field_type_map_.end()); 524 field_type_map_.end());
493 EXPECT_EQ(CREDIT_CARD_EXP_MONTH, field_type_map_[ASCIIToUTF16("month4")]); 525 EXPECT_EQ(CREDIT_CARD_EXP_MONTH, field_type_map_[ASCIIToUTF16("month4")]);
494 ASSERT_TRUE(field_type_map_.find(ASCIIToUTF16("year5")) != 526 ASSERT_TRUE(field_type_map_.find(ASCIIToUTF16("year5")) !=
495 field_type_map_.end()); 527 field_type_map_.end());
496 EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR, 528 EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR,
497 field_type_map_[ASCIIToUTF16("year5")]); 529 field_type_map_[ASCIIToUTF16("year5")]);
498 } 530 }
499 531
500 } // namespace autofill 532 } // namespace autofill
OLDNEW
« no previous file with comments | « components/autofill/core/browser/credit_card_field.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698