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/utf_string_conversions.h" | 6 #include "base/utf_string_conversions.h" |
7 #include "chrome/browser/autofill/autofill_common_test.h" | 7 #include "chrome/browser/autofill/autofill_common_test.h" |
8 #include "chrome/browser/autofill/credit_card.h" | 8 #include "chrome/browser/autofill/credit_card.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 | 10 |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
119 for (size_t i = 0; i < arraysize(kInvalidNumbers); ++i) { | 119 for (size_t i = 0; i < arraysize(kInvalidNumbers); ++i) { |
120 SCOPED_TRACE(kInvalidNumbers[i]); | 120 SCOPED_TRACE(kInvalidNumbers[i]); |
121 EXPECT_FALSE( | 121 EXPECT_FALSE( |
122 CreditCard::IsValidCreditCardNumber(ASCIIToUTF16(kInvalidNumbers[i]))); | 122 CreditCard::IsValidCreditCardNumber(ASCIIToUTF16(kInvalidNumbers[i]))); |
123 } | 123 } |
124 } | 124 } |
125 | 125 |
126 TEST(CreditCardTest, IsComplete) { | 126 TEST(CreditCardTest, IsComplete) { |
127 CreditCard card; | 127 CreditCard card; |
128 EXPECT_FALSE(card.IsComplete()); | 128 EXPECT_FALSE(card.IsComplete()); |
129 card.SetInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Wally T. Walrus")); | 129 card.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Wally T. Walrus")); |
130 EXPECT_FALSE(card.IsComplete()); | 130 EXPECT_FALSE(card.IsComplete()); |
131 card.SetInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("01")); | 131 card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("01")); |
132 EXPECT_FALSE(card.IsComplete()); | 132 EXPECT_FALSE(card.IsComplete()); |
133 card.SetInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2014")); | 133 card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2014")); |
134 | 134 |
135 for (size_t i = 0; i < arraysize(kValidNumbers); ++i) { | 135 for (size_t i = 0; i < arraysize(kValidNumbers); ++i) { |
136 SCOPED_TRACE(kValidNumbers[i]); | 136 SCOPED_TRACE(kValidNumbers[i]); |
137 card.SetInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16(kValidNumbers[i])); | 137 card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16(kValidNumbers[i])); |
138 EXPECT_TRUE(card.IsComplete()); | 138 EXPECT_TRUE(card.IsComplete()); |
139 } | 139 } |
140 for (size_t i = 0; i < arraysize(kInvalidNumbers); ++i) { | 140 for (size_t i = 0; i < arraysize(kInvalidNumbers); ++i) { |
141 SCOPED_TRACE(kInvalidNumbers[i]); | 141 SCOPED_TRACE(kInvalidNumbers[i]); |
142 card.SetInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16(kInvalidNumbers[i])); | 142 card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16(kInvalidNumbers[i])); |
143 EXPECT_FALSE(card.IsComplete()); | 143 EXPECT_FALSE(card.IsComplete()); |
144 } | 144 } |
145 } | 145 } |
146 | 146 |
147 TEST(CreditCardTest, InvalidMastercardNumber) { | 147 TEST(CreditCardTest, InvalidMastercardNumber) { |
148 CreditCard card; | 148 CreditCard card; |
149 | 149 |
150 autofill_test::SetCreditCardInfo(&card, "Baby Face Nelson", | 150 autofill_test::SetCreditCardInfo(&card, "Baby Face Nelson", |
151 "5200000000000004", "01", "2010"); | 151 "5200000000000004", "01", "2010"); |
152 EXPECT_EQ("genericCC", card.type()); | 152 EXPECT_EQ("genericCC", card.type()); |
153 } | 153 } |
154 | 154 |
155 // Verify that we preserve exactly what the user typed for credit card numbers. | 155 // Verify that we preserve exactly what the user typed for credit card numbers. |
156 TEST(CreditCardTest, SetInfoCreditCardNumber) { | 156 TEST(CreditCardTest, SetInfoCreditCardNumber) { |
157 CreditCard card; | 157 CreditCard card; |
158 | 158 |
159 autofill_test::SetCreditCardInfo(&card, "Bob Dylan", | 159 autofill_test::SetCreditCardInfo(&card, "Bob Dylan", |
160 "4321-5432-6543-xxxx", "07", "2013"); | 160 "4321-5432-6543-xxxx", "07", "2013"); |
161 EXPECT_EQ(ASCIIToUTF16("4321-5432-6543-xxxx"), | 161 EXPECT_EQ(ASCIIToUTF16("4321-5432-6543-xxxx"), |
162 card.GetInfo(CREDIT_CARD_NUMBER)); | 162 card.GetRawInfo(CREDIT_CARD_NUMBER)); |
163 } | 163 } |
164 | 164 |
165 // Verify that we can handle both numeric and named months. | 165 // Verify that we can handle both numeric and named months. |
166 TEST(CreditCardTest, SetInfoExpirationMonth) { | 166 TEST(CreditCardTest, SetInfoExpirationMonth) { |
167 CreditCard card; | 167 CreditCard card; |
168 | 168 |
169 card.SetInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("05")); | 169 card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("05")); |
170 EXPECT_EQ(ASCIIToUTF16("05"), card.GetInfo(CREDIT_CARD_EXP_MONTH)); | 170 EXPECT_EQ(ASCIIToUTF16("05"), card.GetRawInfo(CREDIT_CARD_EXP_MONTH)); |
171 | 171 |
172 card.SetInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("7")); | 172 card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("7")); |
173 EXPECT_EQ(ASCIIToUTF16("07"), card.GetInfo(CREDIT_CARD_EXP_MONTH)); | 173 EXPECT_EQ(ASCIIToUTF16("07"), card.GetRawInfo(CREDIT_CARD_EXP_MONTH)); |
174 | 174 |
175 card.SetInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("January")); | 175 card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("January")); |
176 EXPECT_EQ(ASCIIToUTF16("01"), card.GetInfo(CREDIT_CARD_EXP_MONTH)); | 176 EXPECT_EQ(ASCIIToUTF16("01"), card.GetRawInfo(CREDIT_CARD_EXP_MONTH)); |
177 | 177 |
178 card.SetInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("Apr")); | 178 card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("Apr")); |
179 EXPECT_EQ(ASCIIToUTF16("04"), card.GetInfo(CREDIT_CARD_EXP_MONTH)); | 179 EXPECT_EQ(ASCIIToUTF16("04"), card.GetRawInfo(CREDIT_CARD_EXP_MONTH)); |
180 } | 180 } |
181 | 181 |
182 TEST(CreditCardTest, CreditCardType) { | 182 TEST(CreditCardTest, CreditCardType) { |
183 CreditCard card; | 183 CreditCard card; |
184 | 184 |
185 // The card type cannot be set directly. | 185 // The card type cannot be set directly. |
186 card.SetInfo(CREDIT_CARD_TYPE, ASCIIToUTF16("Visa")); | 186 card.SetRawInfo(CREDIT_CARD_TYPE, ASCIIToUTF16("Visa")); |
187 EXPECT_EQ(string16(), card.GetInfo(CREDIT_CARD_TYPE)); | 187 EXPECT_EQ(string16(), card.GetRawInfo(CREDIT_CARD_TYPE)); |
188 | 188 |
189 // Setting the number should implicitly set the type. | 189 // Setting the number should implicitly set the type. |
190 card.SetInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("4111 1111 1111 1111")); | 190 card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("4111 1111 1111 1111")); |
191 EXPECT_EQ(ASCIIToUTF16("Visa"), card.GetInfo(CREDIT_CARD_TYPE)); | 191 EXPECT_EQ(ASCIIToUTF16("Visa"), card.GetRawInfo(CREDIT_CARD_TYPE)); |
192 } | 192 } |
193 | 193 |
194 TEST(CreditCardTest, CreditCardVerificationCode) { | 194 TEST(CreditCardTest, CreditCardVerificationCode) { |
195 CreditCard card; | 195 CreditCard card; |
196 | 196 |
197 // The verification code cannot be set, as Chrome does not store this data. | 197 // The verification code cannot be set, as Chrome does not store this data. |
198 card.SetInfo(CREDIT_CARD_VERIFICATION_CODE, ASCIIToUTF16("999")); | 198 card.SetRawInfo(CREDIT_CARD_VERIFICATION_CODE, ASCIIToUTF16("999")); |
199 EXPECT_EQ(string16(), card.GetInfo(CREDIT_CARD_VERIFICATION_CODE)); | 199 EXPECT_EQ(string16(), card.GetRawInfo(CREDIT_CARD_VERIFICATION_CODE)); |
200 } | 200 } |
OLD | NEW |