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

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

Issue 2136453003: [Autofill] Improve support for various credit card expiration dates. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Initial Created 4 years, 5 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
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 <stddef.h> 5 #include <stddef.h>
6 6
7 #include "base/guid.h" 7 #include "base/guid.h"
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #include "base/strings/string_number_conversions.h" 9 #include "base/strings/string_number_conversions.h"
10 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
160 // Result of assignment should be logically equal to the original profile. 160 // Result of assignment should be logically equal to the original profile.
161 CreditCard b(base::GenerateGUID(), "some other origin"); 161 CreditCard b(base::GenerateGUID(), "some other origin");
162 b = a; 162 b = a;
163 EXPECT_TRUE(a == b); 163 EXPECT_TRUE(a == b);
164 164
165 // Assignment to self should not change the profile value. 165 // Assignment to self should not change the profile value.
166 a = a; 166 a = a;
167 EXPECT_TRUE(a == b); 167 EXPECT_TRUE(a == b);
168 } 168 }
169 169
170 TEST(CreditCardTest, SetExpirationYearFromString) {
sebsg 2016/07/08 10:01:45 Can you add tests for 1 year digit 3 year digits
Mathieu 2016/07/08 14:27:05 Done.
171 CreditCard a(base::GenerateGUID(), "some origin");
172 a.SetExpirationYearFromString(ASCIIToUTF16("2040"));
173 EXPECT_EQ(2040, a.expiration_year());
174
175 // Test will fail in 2100 (!).
176 CreditCard b(base::GenerateGUID(), "some origin");
177 b.SetExpirationYearFromString(ASCIIToUTF16("45"));
178 EXPECT_EQ(2045, b.expiration_year());
179
180 // Invalid value.
181 CreditCard c(base::GenerateGUID(), "some origin");
182 c.SetExpirationYearFromString(ASCIIToUTF16("052045"));
183 EXPECT_EQ(0, c.expiration_year());
184 }
185
186 TEST(CreditCardTest, SetExpirationDateFromString) {
sebsg 2016/07/08 10:01:45 Can you add an example with multiple separators? A
Mathieu 2016/07/08 14:27:05 Done.
187 CreditCard a(base::GenerateGUID(), "some origin");
188 a.SetExpirationDateFromString(ASCIIToUTF16("052045"));
sebsg 2016/07/08 10:01:45 Can you put all the cases with no separator togeth
Mathieu 2016/07/08 14:27:05 Done.
189 EXPECT_EQ(2045, a.expiration_year());
190 EXPECT_EQ(5, a.expiration_month());
191
192 CreditCard b(base::GenerateGUID(), "some origin");
193 b.SetExpirationDateFromString(ASCIIToUTF16("05/45"));
194 EXPECT_EQ(2045, b.expiration_year());
195 EXPECT_EQ(5, b.expiration_month());
196
197 CreditCard c(base::GenerateGUID(), "some origin");
198 c.SetExpirationDateFromString(ASCIIToUTF16("05/2045"));
199 EXPECT_EQ(2045, c.expiration_year());
200 EXPECT_EQ(5, c.expiration_month());
201
202 CreditCard d(base::GenerateGUID(), "some origin");
203 d.SetExpirationDateFromString(ASCIIToUTF16("0545"));
204 EXPECT_EQ(2045, d.expiration_year());
205 EXPECT_EQ(5, d.expiration_month());
206
207 CreditCard e(base::GenerateGUID(), "some origin");
208 e.SetExpirationDateFromString(ASCIIToUTF16("05-45"));
209 EXPECT_EQ(2045, e.expiration_year());
210 EXPECT_EQ(5, e.expiration_month());
211
212 CreditCard f(base::GenerateGUID(), "some origin");
213 f.SetExpirationDateFromString(ASCIIToUTF16("05-2045"));
214 EXPECT_EQ(2045, f.expiration_year());
215 EXPECT_EQ(5, f.expiration_month());
216
217 CreditCard g(base::GenerateGUID(), "some origin");
218 g.SetExpirationDateFromString(ASCIIToUTF16("05|45"));
219 EXPECT_EQ(2045, g.expiration_year());
220 EXPECT_EQ(5, g.expiration_month());
221
222 CreditCard h(base::GenerateGUID(), "some origin");
223 h.SetExpirationDateFromString(ASCIIToUTF16("545"));
224 EXPECT_EQ(2045, h.expiration_year());
225 EXPECT_EQ(5, h.expiration_month());
226
227 CreditCard i(base::GenerateGUID(), "some origin");
228 i.SetExpirationDateFromString(ASCIIToUTF16("52045"));
229 EXPECT_EQ(2045, i.expiration_year());
230 EXPECT_EQ(5, i.expiration_month());
231
232 CreditCard j(base::GenerateGUID(), "some origin");
233 j.SetExpirationDateFromString(ASCIIToUTF16("5/2045"));
234 EXPECT_EQ(2045, j.expiration_year());
235 EXPECT_EQ(5, j.expiration_month());
236
237 CreditCard k(base::GenerateGUID(), "some origin");
238 k.SetExpirationDateFromString(ASCIIToUTF16("5-2045"));
239 EXPECT_EQ(2045, k.expiration_year());
240 EXPECT_EQ(5, k.expiration_month());
241
242 CreditCard l(base::GenerateGUID(), "some origin");
243 l.SetExpirationDateFromString(ASCIIToUTF16("5|2045"));
244 EXPECT_EQ(2045, l.expiration_year());
245 EXPECT_EQ(5, l.expiration_month());
246 }
247
170 TEST(CreditCardTest, Copy) { 248 TEST(CreditCardTest, Copy) {
171 CreditCard a(base::GenerateGUID(), "https://www.example.com"); 249 CreditCard a(base::GenerateGUID(), "https://www.example.com");
172 test::SetCreditCardInfo(&a, "John Dillinger", "123456789012", "01", "2010"); 250 test::SetCreditCardInfo(&a, "John Dillinger", "123456789012", "01", "2010");
173 251
174 // Clone should be logically equal to the original. 252 // Clone should be logically equal to the original.
175 CreditCard b(a); 253 CreditCard b(a);
176 EXPECT_TRUE(a == b); 254 EXPECT_TRUE(a == b);
177 } 255 }
178 256
179 TEST(CreditCardTest, IsLocalDuplicateOfServerCard) { 257 TEST(CreditCardTest, IsLocalDuplicateOfServerCard) {
(...skipping 646 matching lines...) Expand 10 before | Expand all | Expand 10 after
826 card.set_record_type(kTestCases[i].record_type); 904 card.set_record_type(kTestCases[i].record_type);
827 if (card.record_type() != CreditCard::LOCAL_CARD) 905 if (card.record_type() != CreditCard::LOCAL_CARD)
828 card.SetServerStatus(kTestCases[i].server_status); 906 card.SetServerStatus(kTestCases[i].server_status);
829 907
830 EXPECT_EQ(kTestCases[i].should_update_expiration, 908 EXPECT_EQ(kTestCases[i].should_update_expiration,
831 card.ShouldUpdateExpiration(now)); 909 card.ShouldUpdateExpiration(now));
832 } 910 }
833 } 911 }
834 912
835 } // namespace autofill 913 } // namespace autofill
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698