| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/basictypes.h" | 5 #include "base/basictypes.h" |
| 6 #include "base/guid.h" | 6 #include "base/guid.h" |
| 7 #include "base/strings/utf_string_conversions.h" | 7 #include "base/strings/utf_string_conversions.h" |
| 8 #include "components/autofill/browser/autofill_common_test.h" | 8 #include "components/autofill/browser/autofill_common_test.h" |
| 9 #include "components/autofill/browser/credit_card.h" | 9 #include "components/autofill/browser/credit_card.h" |
| 10 #include "components/autofill/common/form_field_data.h" | 10 #include "components/autofill/common/form_field_data.h" |
| (...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 242 card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16(kValidNumbers[i])); | 242 card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16(kValidNumbers[i])); |
| 243 EXPECT_TRUE(card.IsComplete()); | 243 EXPECT_TRUE(card.IsComplete()); |
| 244 } | 244 } |
| 245 for (size_t i = 0; i < arraysize(kInvalidNumbers); ++i) { | 245 for (size_t i = 0; i < arraysize(kInvalidNumbers); ++i) { |
| 246 SCOPED_TRACE(kInvalidNumbers[i]); | 246 SCOPED_TRACE(kInvalidNumbers[i]); |
| 247 card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16(kInvalidNumbers[i])); | 247 card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16(kInvalidNumbers[i])); |
| 248 EXPECT_FALSE(card.IsComplete()); | 248 EXPECT_FALSE(card.IsComplete()); |
| 249 } | 249 } |
| 250 } | 250 } |
| 251 | 251 |
| 252 TEST(CreditCardTest, IsValid) { |
| 253 CreditCard card; |
| 254 // Invalid because expired |
| 255 card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1")); |
| 256 card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2010")); |
| 257 card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("4111111111111111")); |
| 258 EXPECT_FALSE(card.IsValid()); |
| 259 |
| 260 // Invalid because card number is not complete |
| 261 card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("12")); |
| 262 card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("9999")); |
| 263 card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("41111")); |
| 264 EXPECT_FALSE(card.IsValid()); |
| 265 |
| 266 // Valid |
| 267 card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("12")); |
| 268 card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("9999")); |
| 269 card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("4111111111111111")); |
| 270 EXPECT_TRUE(card.IsValid()); |
| 271 } |
| 272 |
| 252 TEST(CreditCardTest, InvalidMastercardNumber) { | 273 TEST(CreditCardTest, InvalidMastercardNumber) { |
| 253 CreditCard card(base::GenerateGUID(), "https://www.example.com/"); | 274 CreditCard card(base::GenerateGUID(), "https://www.example.com/"); |
| 254 | 275 |
| 255 test::SetCreditCardInfo(&card, "Baby Face Nelson", | 276 test::SetCreditCardInfo(&card, "Baby Face Nelson", |
| 256 "5200000000000004", "01", "2010"); | 277 "5200000000000004", "01", "2010"); |
| 257 EXPECT_EQ("genericCC", card.type()); | 278 EXPECT_EQ("genericCC", card.type()); |
| 258 } | 279 } |
| 259 | 280 |
| 260 // Verify that we preserve exactly what the user typed for credit card numbers. | 281 // Verify that we preserve exactly what the user typed for credit card numbers. |
| 261 TEST(CreditCardTest, SetRawInfoCreditCardNumber) { | 282 TEST(CreditCardTest, SetRawInfoCreditCardNumber) { |
| (...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 465 // Case insensitivity: | 486 // Case insensitivity: |
| 466 CreditCard credit_card(base::GenerateGUID(), "https://www.example.com/"); | 487 CreditCard credit_card(base::GenerateGUID(), "https://www.example.com/"); |
| 467 credit_card.SetRawInfo(CREDIT_CARD_NUMBER, | 488 credit_card.SetRawInfo(CREDIT_CARD_NUMBER, |
| 468 ASCIIToUTF16("6011111111111117")); | 489 ASCIIToUTF16("6011111111111117")); |
| 469 credit_card.FillSelectControl(CREDIT_CARD_TYPE, "en-US", &field); | 490 credit_card.FillSelectControl(CREDIT_CARD_TYPE, "en-US", &field); |
| 470 EXPECT_EQ(ASCIIToUTF16("discover"), field.value); | 491 EXPECT_EQ(ASCIIToUTF16("discover"), field.value); |
| 471 } | 492 } |
| 472 } | 493 } |
| 473 | 494 |
| 474 } // namespace autofill | 495 } // namespace autofill |
| OLD | NEW |