diff options
author | Rouslan Solomakhin <rouslan@chromium.org> | 2016-01-15 18:08:32 -0800 |
---|---|---|
committer | Rouslan Solomakhin <rouslan@chromium.org> | 2016-01-16 02:11:27 +0000 |
commit | fddf2f6d7d99d9bb2fbbf2b9a1e6ce0502423af4 (patch) | |
tree | 72ff7d587e2efed32623d1cd5f1e714789f8ca8b | |
parent | fd2d83305e9188775124d87eaf6d4cd2b1a1306d (diff) | |
download | chromium_src-fddf2f6d7d99d9bb2fbbf2b9a1e6ce0502423af4.zip chromium_src-fddf2f6d7d99d9bb2fbbf2b9a1e6ce0502423af4.tar.gz chromium_src-fddf2f6d7d99d9bb2fbbf2b9a1e6ce0502423af4.tar.bz2 |
Initialize card expiration when date OCR fails.
BUG=576926
Review URL: https://codereview.chromium.org/1581863002
Cr-Commit-Position: refs/heads/master@{#369514}
(cherry picked from commit 72b81a346a3b0304b598c3357952fcf5c5f14738)
Review URL: https://codereview.chromium.org/1592953003 .
Cr-Commit-Position: refs/branch-heads/2564@{#575}
Cr-Branched-From: 1283eca15bd9f772387f75241576cde7bdec7f54-refs/heads/master@{#359700}
-rw-r--r-- | components/autofill/core/browser/autofill_external_delegate_unittest.cc | 17 | ||||
-rw-r--r-- | components/autofill/core/browser/credit_card.cc | 29 |
2 files changed, 20 insertions, 26 deletions
diff --git a/components/autofill/core/browser/autofill_external_delegate_unittest.cc b/components/autofill/core/browser/autofill_external_delegate_unittest.cc index 120c091..cfafc3b 100644 --- a/components/autofill/core/browser/autofill_external_delegate_unittest.cc +++ b/components/autofill/core/browser/autofill_external_delegate_unittest.cc @@ -475,16 +475,25 @@ TEST_F(AutofillExternalDelegateUnitTest, ScanCreditCardPromptMetricsTest) { } } +MATCHER_P3(CreditCardMatches, + card_number, + expiration_month, + expiration_year, + "") { + return !arg.Compare( + CreditCard(card_number, expiration_month, expiration_year)); +} + // Test that autofill manager will fill the credit card form after user scans a // credit card. TEST_F(AutofillExternalDelegateUnitTest, FillCreditCardForm) { base::string16 card_number = base::ASCIIToUTF16("test"); int expiration_month = 1; int expiration_year = 3000; - EXPECT_CALL( - *autofill_manager_, - FillCreditCardForm( - _, _, _, CreditCard(card_number, expiration_month, expiration_year))); + EXPECT_CALL(*autofill_manager_, + FillCreditCardForm( + _, _, _, CreditCardMatches(card_number, expiration_month, + expiration_year))); external_delegate_->OnCreditCardScanned(card_number, expiration_month, expiration_year); } diff --git a/components/autofill/core/browser/credit_card.cc b/components/autofill/core/browser/credit_card.cc index 00593e7..18d6122 100644 --- a/components/autofill/core/browser/credit_card.cc +++ b/components/autofill/core/browser/credit_card.cc @@ -83,42 +83,27 @@ CreditCard::CreditCard(const std::string& guid, const std::string& origin) type_(kGenericCard), expiration_month_(0), expiration_year_(0), - server_status_(OK) { -} + server_status_(OK) {} CreditCard::CreditCard(const base::string16& card_number, int expiration_month, int expiration_year) - : AutofillDataModel(std::string(), std::string()), - record_type_(LOCAL_CARD), - server_status_(OK) { + : CreditCard() { SetNumber(card_number); SetExpirationMonth(expiration_month); SetExpirationYear(expiration_year); } CreditCard::CreditCard(RecordType type, const std::string& server_id) - : AutofillDataModel(base::GenerateGUID(), std::string()), - record_type_(type), - type_(kGenericCard), - expiration_month_(0), - expiration_year_(0), - server_id_(server_id), - server_status_(OK) { + : CreditCard() { DCHECK(type == MASKED_SERVER_CARD || type == FULL_SERVER_CARD); + record_type_ = type; + server_id_ = server_id; } -CreditCard::CreditCard() - : AutofillDataModel(base::GenerateGUID(), std::string()), - record_type_(LOCAL_CARD), - type_(kGenericCard), - expiration_month_(0), - expiration_year_(0), - server_status_(OK) { -} +CreditCard::CreditCard() : CreditCard(base::GenerateGUID(), std::string()) {} -CreditCard::CreditCard(const CreditCard& credit_card) - : AutofillDataModel(std::string(), std::string()) { +CreditCard::CreditCard(const CreditCard& credit_card) : CreditCard() { operator=(credit_card); } |