OLD | NEW |
---|---|
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 "components/payments/core/autofill_payment_instrument.h" | 5 #include "components/payments/core/autofill_payment_instrument.h" |
6 | 6 |
7 #include "base/macros.h" | 7 #include "base/macros.h" |
8 #include "base/strings/string16.h" | 8 #include "base/strings/string16.h" |
9 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
10 #include "components/autofill/core/browser/autofill_profile.h" | 10 #include "components/autofill/core/browser/autofill_profile.h" |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
85 card.SetExpirationYear(2016); // Expired. | 85 card.SetExpirationYear(2016); // Expired. |
86 AutofillPaymentInstrument instrument("visa", card, billing_profiles(), | 86 AutofillPaymentInstrument instrument("visa", card, billing_profiles(), |
87 "en-US", nullptr); | 87 "en-US", nullptr); |
88 EXPECT_FALSE(instrument.IsCompleteForPayment()); | 88 EXPECT_FALSE(instrument.IsCompleteForPayment()); |
89 EXPECT_EQ(l10n_util::GetStringUTF16( | 89 EXPECT_EQ(l10n_util::GetStringUTF16( |
90 IDS_PAYMENTS_VALIDATION_INVALID_CREDIT_CARD_EXPIRED), | 90 IDS_PAYMENTS_VALIDATION_INVALID_CREDIT_CARD_EXPIRED), |
91 instrument.GetMissingInfoLabel()); | 91 instrument.GetMissingInfoLabel()); |
92 } | 92 } |
93 | 93 |
94 // A local card with no name is not a valid instrument for payment. | 94 // A local card with no name is not a valid instrument for payment. |
95 TEST_F(AutofillPaymentInstrumentTest, IsCompleteForPayment_NoName) { | 95 TEST_F(AutofillPaymentInstrumentTest, IsCompleteForPayment_NoName) { |
Mathieu
2017/05/04 20:29:19
can we have a test for when there is no billing ad
MAD
2017/05/05 00:50:07
Done.
| |
96 autofill::CreditCard& card = local_credit_card(); | 96 autofill::CreditCard& card = local_credit_card(); |
97 card.SetInfo(autofill::AutofillType(autofill::CREDIT_CARD_NAME_FULL), | 97 card.SetInfo(autofill::AutofillType(autofill::CREDIT_CARD_NAME_FULL), |
98 base::ASCIIToUTF16(""), "en-US"); | 98 base::ASCIIToUTF16(""), "en-US"); |
99 base::string16 missing_info; | 99 base::string16 missing_info; |
100 AutofillPaymentInstrument instrument("visa", card, billing_profiles(), | 100 AutofillPaymentInstrument instrument("visa", card, billing_profiles(), |
101 "en-US", nullptr); | 101 "en-US", nullptr); |
102 EXPECT_FALSE(instrument.IsCompleteForPayment()); | 102 EXPECT_FALSE(instrument.IsCompleteForPayment()); |
103 EXPECT_EQ(l10n_util::GetStringUTF16(IDS_PAYMENTS_NAME_ON_CARD_REQUIRED), | 103 EXPECT_EQ(l10n_util::GetStringUTF16(IDS_PAYMENTS_NAME_ON_CARD_REQUIRED), |
104 instrument.GetMissingInfoLabel()); | 104 instrument.GetMissingInfoLabel()); |
105 } | 105 } |
(...skipping 22 matching lines...) Expand all Loading... | |
128 AutofillPaymentInstrument instrument("visa", card, billing_profiles(), | 128 AutofillPaymentInstrument instrument("visa", card, billing_profiles(), |
129 "en-US", nullptr); | 129 "en-US", nullptr); |
130 EXPECT_FALSE(instrument.IsCompleteForPayment()); | 130 EXPECT_FALSE(instrument.IsCompleteForPayment()); |
131 EXPECT_EQ(l10n_util::GetStringUTF16(IDS_PAYMENTS_MORE_INFORMATION_REQUIRED), | 131 EXPECT_EQ(l10n_util::GetStringUTF16(IDS_PAYMENTS_MORE_INFORMATION_REQUIRED), |
132 instrument.GetMissingInfoLabel()); | 132 instrument.GetMissingInfoLabel()); |
133 } | 133 } |
134 | 134 |
135 // A Masked (server) card is a valid instrument for payment. | 135 // A Masked (server) card is a valid instrument for payment. |
136 TEST_F(AutofillPaymentInstrumentTest, IsCompleteForPayment_MaskedCard) { | 136 TEST_F(AutofillPaymentInstrumentTest, IsCompleteForPayment_MaskedCard) { |
137 autofill::CreditCard card = autofill::test::GetMaskedServerCard(); | 137 autofill::CreditCard card = autofill::test::GetMaskedServerCard(); |
138 ASSERT_GT(billing_profiles().size(), 0UL); | |
139 card.set_billing_address_id(billing_profiles()[0]->guid()); | |
138 AutofillPaymentInstrument instrument("visa", card, billing_profiles(), | 140 AutofillPaymentInstrument instrument("visa", card, billing_profiles(), |
139 "en-US", nullptr); | 141 "en-US", nullptr); |
140 EXPECT_TRUE(instrument.IsCompleteForPayment()); | 142 EXPECT_TRUE(instrument.IsCompleteForPayment()); |
141 EXPECT_TRUE(instrument.GetMissingInfoLabel().empty()); | 143 EXPECT_TRUE(instrument.GetMissingInfoLabel().empty()); |
142 } | 144 } |
143 | 145 |
144 // An expired masked (server) card is not a valid instrument for payment. | 146 // An expired masked (server) card is not a valid instrument for payment. |
145 TEST_F(AutofillPaymentInstrumentTest, IsCompleteForPayment_ExpiredMaskedCard) { | 147 TEST_F(AutofillPaymentInstrumentTest, IsCompleteForPayment_ExpiredMaskedCard) { |
146 autofill::CreditCard card = autofill::test::GetMaskedServerCard(); | 148 autofill::CreditCard card = autofill::test::GetMaskedServerCard(); |
149 ASSERT_GT(billing_profiles().size(), 0UL); | |
150 card.set_billing_address_id(billing_profiles()[0]->guid()); | |
147 card.SetExpirationYear(2016); // Expired. | 151 card.SetExpirationYear(2016); // Expired. |
148 AutofillPaymentInstrument instrument("visa", card, billing_profiles(), | 152 AutofillPaymentInstrument instrument("visa", card, billing_profiles(), |
149 "en-US", nullptr); | 153 "en-US", nullptr); |
150 EXPECT_FALSE(instrument.IsCompleteForPayment()); | 154 EXPECT_FALSE(instrument.IsCompleteForPayment()); |
151 EXPECT_EQ(l10n_util::GetStringUTF16( | 155 EXPECT_EQ(l10n_util::GetStringUTF16( |
152 IDS_PAYMENTS_VALIDATION_INVALID_CREDIT_CARD_EXPIRED), | 156 IDS_PAYMENTS_VALIDATION_INVALID_CREDIT_CARD_EXPIRED), |
153 instrument.GetMissingInfoLabel()); | 157 instrument.GetMissingInfoLabel()); |
154 } | 158 } |
155 | 159 |
156 // An expired card is a valid instrument for canMakePayment. | 160 // An expired card is a valid instrument for canMakePayment. |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
240 delegate.CompleteFullCardRequest(); | 244 delegate.CompleteFullCardRequest(); |
241 EXPECT_FALSE(instrument_delegate.WasOnInstrumentDetailsReadyCalled()); | 245 EXPECT_FALSE(instrument_delegate.WasOnInstrumentDetailsReadyCalled()); |
242 EXPECT_FALSE(instrument_delegate.WasOnInstrumentDetailsErrorCalled()); | 246 EXPECT_FALSE(instrument_delegate.WasOnInstrumentDetailsErrorCalled()); |
243 | 247 |
244 delegate.test_address_normalizer()->CompleteAddressNormalization(); | 248 delegate.test_address_normalizer()->CompleteAddressNormalization(); |
245 EXPECT_TRUE(instrument_delegate.WasOnInstrumentDetailsReadyCalled()); | 249 EXPECT_TRUE(instrument_delegate.WasOnInstrumentDetailsReadyCalled()); |
246 EXPECT_FALSE(instrument_delegate.WasOnInstrumentDetailsErrorCalled()); | 250 EXPECT_FALSE(instrument_delegate.WasOnInstrumentDetailsErrorCalled()); |
247 } | 251 } |
248 | 252 |
249 } // namespace payments | 253 } // namespace payments |
OLD | NEW |