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

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

Issue 947693002: Add use_count and use_date to unmasked server cards as well. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 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 <algorithm> 5 #include <algorithm>
6 #include <string> 6 #include <string>
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/basictypes.h" 9 #include "base/basictypes.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 381 matching lines...) Expand 10 before | Expand all | Expand 10 after
392 autofill_table_->SetServerCreditCards(server_cards); 392 autofill_table_->SetServerCreditCards(server_cards);
393 personal_data_->Refresh(); 393 personal_data_->Refresh();
394 394
395 EXPECT_CALL(personal_data_observer_, OnPersonalDataChanged()) 395 EXPECT_CALL(personal_data_observer_, OnPersonalDataChanged())
396 .WillOnce(QuitMainMessageLoop()); 396 .WillOnce(QuitMainMessageLoop());
397 base::MessageLoop::current()->Run(); 397 base::MessageLoop::current()->Run();
398 398
399 EXPECT_EQ(0U, personal_data_->GetCreditCards().size()); 399 EXPECT_EQ(0U, personal_data_->GetCreditCards().size());
400 } 400 }
401 401
402 // Tests that UpdateCreditCard can be used to mask or unmask server cards. 402 // Tests that UpdateServerCreditCard can be used to mask or unmask server cards.
403 TEST_F(PersonalDataManagerTest, UpdateServerCreditCards) { 403 TEST_F(PersonalDataManagerTest, UpdateServerCreditCards) {
404 EnableWalletCardImport(); 404 EnableWalletCardImport();
405 405
406 std::vector<CreditCard> server_cards; 406 std::vector<CreditCard> server_cards;
407 server_cards.push_back(CreditCard(CreditCard::MASKED_SERVER_CARD, "a123")); 407 server_cards.push_back(CreditCard(CreditCard::MASKED_SERVER_CARD, "a123"));
408 test::SetCreditCardInfo(&server_cards.back(), "John Dillinger", 408 test::SetCreditCardInfo(&server_cards.back(), "John Dillinger",
409 "9012" /* Visa */, "01", "2010"); 409 "9012" /* Visa */, "01", "2010");
410 server_cards.back().SetTypeForMaskedCard(kVisaCard); 410 server_cards.back().SetTypeForMaskedCard(kVisaCard);
411 411
412 server_cards.push_back(CreditCard(CreditCard::MASKED_SERVER_CARD, "b456")); 412 server_cards.push_back(CreditCard(CreditCard::MASKED_SERVER_CARD, "b456"));
(...skipping 2504 matching lines...) Expand 10 before | Expand all | Expand 10 after
2917 EXPECT_NE(base::Time(), added_profile->use_date()); 2917 EXPECT_NE(base::Time(), added_profile->use_date());
2918 EXPECT_NE(base::Time(), added_profile->modification_date()); 2918 EXPECT_NE(base::Time(), added_profile->modification_date());
2919 2919
2920 added_card = personal_data_->GetCreditCardByGUID(credit_card.guid()); 2920 added_card = personal_data_->GetCreditCardByGUID(credit_card.guid());
2921 ASSERT_TRUE(added_card); 2921 ASSERT_TRUE(added_card);
2922 EXPECT_EQ(1U, added_card->use_count()); 2922 EXPECT_EQ(1U, added_card->use_count());
2923 EXPECT_NE(base::Time(), added_card->use_date()); 2923 EXPECT_NE(base::Time(), added_card->use_date());
2924 EXPECT_NE(base::Time(), added_card->modification_date()); 2924 EXPECT_NE(base::Time(), added_card->modification_date());
2925 } 2925 }
2926 2926
2927 TEST_F(PersonalDataManagerTest, UpdateServerCreditCardUsageStats) {
2928 EnableWalletCardImport();
2929
2930 std::vector<CreditCard> server_cards;
2931 server_cards.push_back(CreditCard(CreditCard::MASKED_SERVER_CARD, "a123"));
2932 test::SetCreditCardInfo(&server_cards.back(), "John Dillinger",
2933 "9012" /* Visa */, "01", "2010");
2934 server_cards.back().SetTypeForMaskedCard(kVisaCard);
2935
2936 server_cards.push_back(CreditCard(CreditCard::MASKED_SERVER_CARD, "b456"));
2937 test::SetCreditCardInfo(&server_cards.back(), "Bonnie Parker",
2938 "2109" /* Mastercard */, "12", "2012");
2939 server_cards.back().SetTypeForMaskedCard(kMasterCard);
2940
2941 server_cards.push_back(CreditCard(CreditCard::FULL_SERVER_CARD, "c789"));
2942 test::SetCreditCardInfo(&server_cards.back(), "Clyde Barrow",
2943 "347666888555" /* American Express */, "04", "2015");
2944
2945 autofill_table_->SetServerCreditCards(server_cards);
2946 personal_data_->Refresh();
2947
2948 EXPECT_CALL(personal_data_observer_, OnPersonalDataChanged())
2949 .WillOnce(QuitMainMessageLoop());
2950 base::MessageLoop::current()->Run();
2951
2952 ASSERT_EQ(3U, personal_data_->GetCreditCards().size());
2953 // The GUIDs will be different, so just compare the data.
2954 for (size_t i = 0; i < 3; ++i)
2955 EXPECT_EQ(0, server_cards[i].Compare(*personal_data_->GetCreditCards()[i]));
2956
2957 CreditCard* unmasked_card = &server_cards.front();
2958 unmasked_card->set_record_type(CreditCard::FULL_SERVER_CARD);
2959 unmasked_card->SetNumber(ASCIIToUTF16("423456789012"));
2960 EXPECT_NE(0, unmasked_card->Compare(
2961 *personal_data_->GetCreditCards().front()));
2962 personal_data_->UpdateServerCreditCard(*unmasked_card);
2963
2964 EXPECT_CALL(personal_data_observer_, OnPersonalDataChanged())
2965 .WillOnce(QuitMainMessageLoop());
2966 base::MessageLoop::current()->Run();
2967
2968 for (size_t i = 0; i < 3; ++i)
2969 EXPECT_EQ(0, server_cards[i].Compare(*personal_data_->GetCreditCards()[i]));
2970
2971 // For an unmasked card, usage data starts out as 1 and Now().
2972 EXPECT_EQ(1U, personal_data_->GetCreditCards()[0]->use_count());
2973 EXPECT_NE(base::Time(), personal_data_->GetCreditCards()[0]->use_date());
2974
2975 EXPECT_EQ(0U, personal_data_->GetCreditCards()[1]->use_count());
2976 EXPECT_EQ(base::Time(), personal_data_->GetCreditCards()[1]->use_date());
2977
2978 EXPECT_EQ(0U, personal_data_->GetCreditCards()[2]->use_count());
2979 EXPECT_EQ(base::Time(), personal_data_->GetCreditCards()[2]->use_date());
2980
2981 server_cards.back().set_guid(personal_data_->GetCreditCards()[2]->guid());
2982 personal_data_->RecordUseOf(server_cards.back());
2983 EXPECT_CALL(personal_data_observer_, OnPersonalDataChanged())
2984 .WillOnce(QuitMainMessageLoop());
2985 base::MessageLoop::current()->Run();
2986
2987 EXPECT_EQ(1U, personal_data_->GetCreditCards()[0]->use_count());
2988 EXPECT_NE(base::Time(), personal_data_->GetCreditCards()[0]->use_date());
2989
2990 EXPECT_EQ(0U, personal_data_->GetCreditCards()[1]->use_count());
2991 EXPECT_EQ(base::Time(), personal_data_->GetCreditCards()[1]->use_date());
2992
2993 EXPECT_EQ(1U, personal_data_->GetCreditCards()[2]->use_count());
2994 EXPECT_NE(base::Time(), personal_data_->GetCreditCards()[2]->use_date());
2995 }
2996
2927 } // namespace autofill 2997 } // namespace autofill
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698