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

Side by Side Diff: components/autofill/core/browser/webdata/autofill_table_unittest.cc

Issue 1694443004: [Autofill] Add credit card first and last name heuristics predictions. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 years, 9 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 <tuple> 7 #include <tuple>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 896 matching lines...) Expand 10 before | Expand all | Expand 10 after
907 EXPECT_TRUE(table_->EmptyAutofillProfilesTrash()); 907 EXPECT_TRUE(table_->EmptyAutofillProfilesTrash());
908 EXPECT_TRUE(table_->RemoveAutofillProfile(profile.guid())); 908 EXPECT_TRUE(table_->RemoveAutofillProfile(profile.guid()));
909 removed_profile = table_->GetAutofillProfile(profile.guid()); 909 removed_profile = table_->GetAutofillProfile(profile.guid());
910 EXPECT_FALSE(removed_profile); 910 EXPECT_FALSE(removed_profile);
911 } 911 }
912 912
913 TEST_F(AutofillTableTest, CreditCard) { 913 TEST_F(AutofillTableTest, CreditCard) {
914 // Add a 'Work' credit card. 914 // Add a 'Work' credit card.
915 CreditCard work_creditcard; 915 CreditCard work_creditcard;
916 work_creditcard.set_origin("https://www.example.com/"); 916 work_creditcard.set_origin("https://www.example.com/");
917 work_creditcard.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Jack Torrance")); 917 work_creditcard.SetRawInfo(CREDIT_CARD_NAME_FULL,
918 ASCIIToUTF16("Jack Torrance"));
918 work_creditcard.SetRawInfo(CREDIT_CARD_NUMBER, 919 work_creditcard.SetRawInfo(CREDIT_CARD_NUMBER,
919 ASCIIToUTF16("1234567890123456")); 920 ASCIIToUTF16("1234567890123456"));
920 work_creditcard.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("04")); 921 work_creditcard.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("04"));
921 work_creditcard.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, 922 work_creditcard.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR,
922 ASCIIToUTF16("2013")); 923 ASCIIToUTF16("2013"));
923 924
924 Time pre_creation_time = Time::Now(); 925 Time pre_creation_time = Time::Now();
925 EXPECT_TRUE(table_->AddCreditCard(work_creditcard)); 926 EXPECT_TRUE(table_->AddCreditCard(work_creditcard));
926 Time post_creation_time = Time::Now(); 927 Time post_creation_time = Time::Now();
927 928
928 // Get the 'Work' credit card. 929 // Get the 'Work' credit card.
929 scoped_ptr<CreditCard> db_creditcard = 930 scoped_ptr<CreditCard> db_creditcard =
930 table_->GetCreditCard(work_creditcard.guid()); 931 table_->GetCreditCard(work_creditcard.guid());
931 ASSERT_TRUE(db_creditcard); 932 ASSERT_TRUE(db_creditcard);
932 EXPECT_EQ(work_creditcard, *db_creditcard); 933 EXPECT_EQ(work_creditcard, *db_creditcard);
933 sql::Statement s_work(db_->GetSQLConnection()->GetUniqueStatement( 934 sql::Statement s_work(db_->GetSQLConnection()->GetUniqueStatement(
934 "SELECT guid, name_on_card, expiration_month, expiration_year, " 935 "SELECT guid, name_on_card, expiration_month, expiration_year, "
935 "card_number_encrypted, date_modified " 936 "card_number_encrypted, date_modified "
936 "FROM credit_cards WHERE guid=?")); 937 "FROM credit_cards WHERE guid=?"));
937 s_work.BindString(0, work_creditcard.guid()); 938 s_work.BindString(0, work_creditcard.guid());
938 ASSERT_TRUE(s_work.is_valid()); 939 ASSERT_TRUE(s_work.is_valid());
939 ASSERT_TRUE(s_work.Step()); 940 ASSERT_TRUE(s_work.Step());
940 EXPECT_GE(s_work.ColumnInt64(5), pre_creation_time.ToTimeT()); 941 EXPECT_GE(s_work.ColumnInt64(5), pre_creation_time.ToTimeT());
941 EXPECT_LE(s_work.ColumnInt64(5), post_creation_time.ToTimeT()); 942 EXPECT_LE(s_work.ColumnInt64(5), post_creation_time.ToTimeT());
942 EXPECT_FALSE(s_work.Step()); 943 EXPECT_FALSE(s_work.Step());
943 944
944 // Add a 'Target' credit card. 945 // Add a 'Target' credit card.
945 CreditCard target_creditcard; 946 CreditCard target_creditcard;
946 target_creditcard.set_origin(std::string()); 947 target_creditcard.set_origin(std::string());
947 target_creditcard.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Jack Torrance")); 948 target_creditcard.SetRawInfo(CREDIT_CARD_NAME_FULL,
949 ASCIIToUTF16("Jack Torrance"));
948 target_creditcard.SetRawInfo(CREDIT_CARD_NUMBER, 950 target_creditcard.SetRawInfo(CREDIT_CARD_NUMBER,
949 ASCIIToUTF16("1111222233334444")); 951 ASCIIToUTF16("1111222233334444"));
950 target_creditcard.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("06")); 952 target_creditcard.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("06"));
951 target_creditcard.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, 953 target_creditcard.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR,
952 ASCIIToUTF16("2012")); 954 ASCIIToUTF16("2012"));
953 955
954 pre_creation_time = Time::Now(); 956 pre_creation_time = Time::Now();
955 EXPECT_TRUE(table_->AddCreditCard(target_creditcard)); 957 EXPECT_TRUE(table_->AddCreditCard(target_creditcard));
956 post_creation_time = Time::Now(); 958 post_creation_time = Time::Now();
957 db_creditcard = table_->GetCreditCard(target_creditcard.guid()); 959 db_creditcard = table_->GetCreditCard(target_creditcard.guid());
958 ASSERT_TRUE(db_creditcard); 960 ASSERT_TRUE(db_creditcard);
959 EXPECT_EQ(target_creditcard, *db_creditcard); 961 EXPECT_EQ(target_creditcard, *db_creditcard);
960 sql::Statement s_target(db_->GetSQLConnection()->GetUniqueStatement( 962 sql::Statement s_target(db_->GetSQLConnection()->GetUniqueStatement(
961 "SELECT guid, name_on_card, expiration_month, expiration_year, " 963 "SELECT guid, name_on_card, expiration_month, expiration_year, "
962 "card_number_encrypted, date_modified " 964 "card_number_encrypted, date_modified "
963 "FROM credit_cards WHERE guid=?")); 965 "FROM credit_cards WHERE guid=?"));
964 s_target.BindString(0, target_creditcard.guid()); 966 s_target.BindString(0, target_creditcard.guid());
965 ASSERT_TRUE(s_target.is_valid()); 967 ASSERT_TRUE(s_target.is_valid());
966 ASSERT_TRUE(s_target.Step()); 968 ASSERT_TRUE(s_target.Step());
967 EXPECT_GE(s_target.ColumnInt64(5), pre_creation_time.ToTimeT()); 969 EXPECT_GE(s_target.ColumnInt64(5), pre_creation_time.ToTimeT());
968 EXPECT_LE(s_target.ColumnInt64(5), post_creation_time.ToTimeT()); 970 EXPECT_LE(s_target.ColumnInt64(5), post_creation_time.ToTimeT());
969 EXPECT_FALSE(s_target.Step()); 971 EXPECT_FALSE(s_target.Step());
970 972
971 // Update the 'Target' credit card. 973 // Update the 'Target' credit card.
972 target_creditcard.set_origin("Interactive Autofill dialog"); 974 target_creditcard.set_origin("Interactive Autofill dialog");
973 target_creditcard.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Charles Grady")); 975 target_creditcard.SetRawInfo(CREDIT_CARD_NAME_FULL,
976 ASCIIToUTF16("Charles Grady"));
974 Time pre_modification_time = Time::Now(); 977 Time pre_modification_time = Time::Now();
975 EXPECT_TRUE(table_->UpdateCreditCard(target_creditcard)); 978 EXPECT_TRUE(table_->UpdateCreditCard(target_creditcard));
976 Time post_modification_time = Time::Now(); 979 Time post_modification_time = Time::Now();
977 db_creditcard = table_->GetCreditCard(target_creditcard.guid()); 980 db_creditcard = table_->GetCreditCard(target_creditcard.guid());
978 ASSERT_TRUE(db_creditcard); 981 ASSERT_TRUE(db_creditcard);
979 EXPECT_EQ(target_creditcard, *db_creditcard); 982 EXPECT_EQ(target_creditcard, *db_creditcard);
980 sql::Statement s_target_updated(db_->GetSQLConnection()->GetUniqueStatement( 983 sql::Statement s_target_updated(db_->GetSQLConnection()->GetUniqueStatement(
981 "SELECT guid, name_on_card, expiration_month, expiration_year, " 984 "SELECT guid, name_on_card, expiration_month, expiration_year, "
982 "card_number_encrypted, date_modified " 985 "card_number_encrypted, date_modified "
983 "FROM credit_cards WHERE guid=?")); 986 "FROM credit_cards WHERE guid=?"));
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
1070 "SELECT date_modified FROM autofill_profiles")); 1073 "SELECT date_modified FROM autofill_profiles"));
1071 ASSERT_TRUE(s_unchanged.is_valid()); 1074 ASSERT_TRUE(s_unchanged.is_valid());
1072 ASSERT_TRUE(s_unchanged.Step()); 1075 ASSERT_TRUE(s_unchanged.Step());
1073 EXPECT_EQ(mock_modification_date, s_unchanged.ColumnInt64(0)); 1076 EXPECT_EQ(mock_modification_date, s_unchanged.ColumnInt64(0));
1074 EXPECT_FALSE(s_unchanged.Step()); 1077 EXPECT_FALSE(s_unchanged.Step());
1075 } 1078 }
1076 1079
1077 TEST_F(AutofillTableTest, UpdateCreditCard) { 1080 TEST_F(AutofillTableTest, UpdateCreditCard) {
1078 // Add a credit card to the db. 1081 // Add a credit card to the db.
1079 CreditCard credit_card; 1082 CreditCard credit_card;
1080 credit_card.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Jack Torrance")); 1083 credit_card.SetRawInfo(CREDIT_CARD_NAME_FULL, ASCIIToUTF16("Jack Torrance"));
1081 credit_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1234567890123456")); 1084 credit_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1234567890123456"));
1082 credit_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("04")); 1085 credit_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("04"));
1083 credit_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2013")); 1086 credit_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2013"));
1084 table_->AddCreditCard(credit_card); 1087 table_->AddCreditCard(credit_card);
1085 1088
1086 // Set a mocked value for the credit card's creation time. 1089 // Set a mocked value for the credit card's creation time.
1087 const time_t kMockCreationDate = Time::Now().ToTimeT() - 13; 1090 const time_t kMockCreationDate = Time::Now().ToTimeT() - 13;
1088 sql::Statement s_mock_creation_date( 1091 sql::Statement s_mock_creation_date(
1089 db_->GetSQLConnection()->GetUniqueStatement( 1092 db_->GetSQLConnection()->GetUniqueStatement(
1090 "UPDATE credit_cards SET date_modified = ?")); 1093 "UPDATE credit_cards SET date_modified = ?"));
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
1196 "SELECT date_modified FROM autofill_profiles")); 1199 "SELECT date_modified FROM autofill_profiles"));
1197 ASSERT_TRUE(s_updated.is_valid()); 1200 ASSERT_TRUE(s_updated.is_valid());
1198 ASSERT_TRUE(s_updated.Step()); 1201 ASSERT_TRUE(s_updated.Step());
1199 EXPECT_LT(kMockCreationDate, s_updated.ColumnInt64(0)); 1202 EXPECT_LT(kMockCreationDate, s_updated.ColumnInt64(0));
1200 EXPECT_FALSE(s_updated.Step()); 1203 EXPECT_FALSE(s_updated.Step());
1201 } 1204 }
1202 1205
1203 TEST_F(AutofillTableTest, UpdateCreditCardOriginOnly) { 1206 TEST_F(AutofillTableTest, UpdateCreditCardOriginOnly) {
1204 // Add a credit card to the db. 1207 // Add a credit card to the db.
1205 CreditCard credit_card; 1208 CreditCard credit_card;
1206 credit_card.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Jack Torrance")); 1209 credit_card.SetRawInfo(CREDIT_CARD_NAME_FULL, ASCIIToUTF16("Jack Torrance"));
1207 credit_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1234567890123456")); 1210 credit_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1234567890123456"));
1208 credit_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("04")); 1211 credit_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("04"));
1209 credit_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2013")); 1212 credit_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2013"));
1210 table_->AddCreditCard(credit_card); 1213 table_->AddCreditCard(credit_card);
1211 1214
1212 // Set a mocked value for the credit card's creation time. 1215 // Set a mocked value for the credit card's creation time.
1213 const time_t kMockCreationDate = Time::Now().ToTimeT() - 13; 1216 const time_t kMockCreationDate = Time::Now().ToTimeT() - 13;
1214 sql::Statement s_mock_creation_date( 1217 sql::Statement s_mock_creation_date(
1215 db_->GetSQLConnection()->GetUniqueStatement( 1218 db_->GetSQLConnection()->GetUniqueStatement(
1216 "UPDATE credit_cards SET date_modified = ?")); 1219 "UPDATE credit_cards SET date_modified = ?"));
(...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after
1556 ASSERT_TRUE(table_->GetAllAutofillEntries(&entries)); 1559 ASSERT_TRUE(table_->GetAllAutofillEntries(&entries));
1557 AutofillEntrySet entry_set(entries.begin(), entries.end(), 1560 AutofillEntrySet entry_set(entries.begin(), entries.end(),
1558 CompareAutofillEntries); 1561 CompareAutofillEntries);
1559 1562
1560 CompareAutofillEntrySets(entry_set, expected_entries); 1563 CompareAutofillEntrySets(entry_set, expected_entries);
1561 } 1564 }
1562 1565
1563 TEST_F(AutofillTableTest, SetGetServerCards) { 1566 TEST_F(AutofillTableTest, SetGetServerCards) {
1564 std::vector<CreditCard> inputs; 1567 std::vector<CreditCard> inputs;
1565 inputs.push_back(CreditCard(CreditCard::FULL_SERVER_CARD, "a123")); 1568 inputs.push_back(CreditCard(CreditCard::FULL_SERVER_CARD, "a123"));
1566 inputs[0].SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Paul F. Tompkins")); 1569 inputs[0].SetRawInfo(CREDIT_CARD_NAME_FULL, ASCIIToUTF16("Paul F. Tompkins"));
1567 inputs[0].SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1")); 1570 inputs[0].SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1"));
1568 inputs[0].SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020")); 1571 inputs[0].SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020"));
1569 inputs[0].SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("4111111111111111")); 1572 inputs[0].SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("4111111111111111"));
1570 1573
1571 inputs.push_back( 1574 inputs.push_back(
1572 CreditCard(CreditCard::MASKED_SERVER_CARD, "b456")); 1575 CreditCard(CreditCard::MASKED_SERVER_CARD, "b456"));
1573 inputs[1].SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Rick Roman")); 1576 inputs[1].SetRawInfo(CREDIT_CARD_NAME_FULL, ASCIIToUTF16("Rick Roman"));
1574 inputs[1].SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("12")); 1577 inputs[1].SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("12"));
1575 inputs[1].SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("1997")); 1578 inputs[1].SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("1997"));
1576 inputs[1].SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1111")); 1579 inputs[1].SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1111"));
1577 inputs[1].SetTypeForMaskedCard(kVisaCard); 1580 inputs[1].SetTypeForMaskedCard(kVisaCard);
1578 inputs[1].SetServerStatus(CreditCard::EXPIRED); 1581 inputs[1].SetServerStatus(CreditCard::EXPIRED);
1579 1582
1580 test::SetServerCreditCards(table_.get(), inputs); 1583 test::SetServerCreditCards(table_.get(), inputs);
1581 1584
1582 std::vector<CreditCard*> outputs; 1585 std::vector<CreditCard*> outputs;
1583 ASSERT_TRUE(table_->GetServerCreditCards(&outputs)); 1586 ASSERT_TRUE(table_->GetServerCreditCards(&outputs));
(...skipping 17 matching lines...) Expand all
1601 EXPECT_EQ(CreditCard::OK, outputs[0]->GetServerStatus()); 1604 EXPECT_EQ(CreditCard::OK, outputs[0]->GetServerStatus());
1602 EXPECT_EQ(CreditCard::EXPIRED, outputs[1]->GetServerStatus()); 1605 EXPECT_EQ(CreditCard::EXPIRED, outputs[1]->GetServerStatus());
1603 1606
1604 STLDeleteContainerPointers(outputs.begin(), outputs.end()); 1607 STLDeleteContainerPointers(outputs.begin(), outputs.end());
1605 } 1608 }
1606 1609
1607 TEST_F(AutofillTableTest, MaskUnmaskServerCards) { 1610 TEST_F(AutofillTableTest, MaskUnmaskServerCards) {
1608 base::string16 masked_number(ASCIIToUTF16("1111")); 1611 base::string16 masked_number(ASCIIToUTF16("1111"));
1609 std::vector<CreditCard> inputs; 1612 std::vector<CreditCard> inputs;
1610 inputs.push_back(CreditCard(CreditCard::MASKED_SERVER_CARD, "a123")); 1613 inputs.push_back(CreditCard(CreditCard::MASKED_SERVER_CARD, "a123"));
1611 inputs[0].SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Jay Johnson")); 1614 inputs[0].SetRawInfo(CREDIT_CARD_NAME_FULL, ASCIIToUTF16("Jay Johnson"));
1612 inputs[0].SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1")); 1615 inputs[0].SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1"));
1613 inputs[0].SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020")); 1616 inputs[0].SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020"));
1614 inputs[0].SetRawInfo(CREDIT_CARD_NUMBER, masked_number); 1617 inputs[0].SetRawInfo(CREDIT_CARD_NUMBER, masked_number);
1615 inputs[0].SetTypeForMaskedCard(kVisaCard); 1618 inputs[0].SetTypeForMaskedCard(kVisaCard);
1616 test::SetServerCreditCards(table_.get(), inputs); 1619 test::SetServerCreditCards(table_.get(), inputs);
1617 1620
1618 // Unmask the number. The full number should be available. 1621 // Unmask the number. The full number should be available.
1619 base::string16 full_number(ASCIIToUTF16("4111111111111111")); 1622 base::string16 full_number(ASCIIToUTF16("4111111111111111"));
1620 ASSERT_TRUE(table_->UnmaskServerCreditCard(inputs[0], 1623 ASSERT_TRUE(table_->UnmaskServerCreditCard(inputs[0],
1621 full_number)); 1624 full_number));
(...skipping 16 matching lines...) Expand all
1638 1641
1639 STLDeleteContainerPointers(outputs.begin(), outputs.end()); 1642 STLDeleteContainerPointers(outputs.begin(), outputs.end());
1640 outputs.clear(); 1643 outputs.clear();
1641 } 1644 }
1642 1645
1643 // Calling SetServerCreditCards should replace all existing cards, but unmasked 1646 // Calling SetServerCreditCards should replace all existing cards, but unmasked
1644 // cards should not be re-masked. 1647 // cards should not be re-masked.
1645 TEST_F(AutofillTableTest, SetServerCardModify) { 1648 TEST_F(AutofillTableTest, SetServerCardModify) {
1646 // Add a masked card. 1649 // Add a masked card.
1647 CreditCard masked_card(CreditCard::MASKED_SERVER_CARD, "a123"); 1650 CreditCard masked_card(CreditCard::MASKED_SERVER_CARD, "a123");
1648 masked_card.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Paul F. Tompkins")); 1651 masked_card.SetRawInfo(CREDIT_CARD_NAME_FULL,
1652 ASCIIToUTF16("Paul F. Tompkins"));
1649 masked_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1")); 1653 masked_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1"));
1650 masked_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020")); 1654 masked_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020"));
1651 masked_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1111")); 1655 masked_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1111"));
1652 masked_card.SetTypeForMaskedCard(kVisaCard); 1656 masked_card.SetTypeForMaskedCard(kVisaCard);
1653 1657
1654 std::vector<CreditCard> inputs; 1658 std::vector<CreditCard> inputs;
1655 inputs.push_back(masked_card); 1659 inputs.push_back(masked_card);
1656 test::SetServerCreditCards(table_.get(), inputs); 1660 test::SetServerCreditCards(table_.get(), inputs);
1657 1661
1658 // Now unmask it. 1662 // Now unmask it.
(...skipping 18 matching lines...) Expand all
1677 table_->GetServerCreditCards(&outputs); 1681 table_->GetServerCreditCards(&outputs);
1678 ASSERT_EQ(1u, outputs.size()); 1682 ASSERT_EQ(1u, outputs.size());
1679 EXPECT_TRUE(outputs[0]->record_type() == CreditCard::FULL_SERVER_CARD); 1683 EXPECT_TRUE(outputs[0]->record_type() == CreditCard::FULL_SERVER_CARD);
1680 EXPECT_EQ(full_number, outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER)); 1684 EXPECT_EQ(full_number, outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER));
1681 1685
1682 STLDeleteContainerPointers(outputs.begin(), outputs.end()); 1686 STLDeleteContainerPointers(outputs.begin(), outputs.end());
1683 outputs.clear(); 1687 outputs.clear();
1684 1688
1685 // Set inputs that do not include our old card. 1689 // Set inputs that do not include our old card.
1686 CreditCard random_card(CreditCard::MASKED_SERVER_CARD, "b456"); 1690 CreditCard random_card(CreditCard::MASKED_SERVER_CARD, "b456");
1687 random_card.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Rick Roman")); 1691 random_card.SetRawInfo(CREDIT_CARD_NAME_FULL, ASCIIToUTF16("Rick Roman"));
1688 random_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("12")); 1692 random_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("12"));
1689 random_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("1997")); 1693 random_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("1997"));
1690 random_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("2222")); 1694 random_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("2222"));
1691 random_card.SetTypeForMaskedCard(kVisaCard); 1695 random_card.SetTypeForMaskedCard(kVisaCard);
1692 inputs[0] = random_card; 1696 inputs[0] = random_card;
1693 test::SetServerCreditCards(table_.get(), inputs); 1697 test::SetServerCreditCards(table_.get(), inputs);
1694 1698
1695 // We should have only the new card, the other one should have been deleted. 1699 // We should have only the new card, the other one should have been deleted.
1696 table_->GetServerCreditCards(&outputs); 1700 table_->GetServerCreditCards(&outputs);
1697 ASSERT_EQ(1u, outputs.size()); 1701 ASSERT_EQ(1u, outputs.size());
(...skipping 14 matching lines...) Expand all
1712 EXPECT_EQ(masked_card.server_id(), outputs[0]->server_id()); 1716 EXPECT_EQ(masked_card.server_id(), outputs[0]->server_id());
1713 EXPECT_EQ(ASCIIToUTF16("1111"), outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER)); 1717 EXPECT_EQ(ASCIIToUTF16("1111"), outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER));
1714 1718
1715 STLDeleteContainerPointers(outputs.begin(), outputs.end()); 1719 STLDeleteContainerPointers(outputs.begin(), outputs.end());
1716 outputs.clear(); 1720 outputs.clear();
1717 } 1721 }
1718 1722
1719 TEST_F(AutofillTableTest, SetServerCardUpdateUsageStats) { 1723 TEST_F(AutofillTableTest, SetServerCardUpdateUsageStats) {
1720 // Add a masked card. 1724 // Add a masked card.
1721 CreditCard masked_card(CreditCard::MASKED_SERVER_CARD, "a123"); 1725 CreditCard masked_card(CreditCard::MASKED_SERVER_CARD, "a123");
1722 masked_card.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Paul F. Tompkins")); 1726 masked_card.SetRawInfo(CREDIT_CARD_NAME_FULL,
1727 ASCIIToUTF16("Paul F. Tompkins"));
1723 masked_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1")); 1728 masked_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1"));
1724 masked_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020")); 1729 masked_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020"));
1725 masked_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1111")); 1730 masked_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1111"));
1726 masked_card.SetTypeForMaskedCard(kVisaCard); 1731 masked_card.SetTypeForMaskedCard(kVisaCard);
1727 1732
1728 std::vector<CreditCard> inputs; 1733 std::vector<CreditCard> inputs;
1729 inputs.push_back(masked_card); 1734 inputs.push_back(masked_card);
1730 test::SetServerCreditCards(table_.get(), inputs); 1735 test::SetServerCreditCards(table_.get(), inputs);
1731 1736
1732 ScopedVector<CreditCard> outputs; 1737 ScopedVector<CreditCard> outputs;
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
1850 // Tests that deleting time ranges re-masks server credit cards that were 1855 // Tests that deleting time ranges re-masks server credit cards that were
1851 // unmasked in that time. 1856 // unmasked in that time.
1852 TEST_F(AutofillTableTest, DeleteUnmaskedCard) { 1857 TEST_F(AutofillTableTest, DeleteUnmaskedCard) {
1853 // This isn't the exact unmasked time, since the database will use the 1858 // This isn't the exact unmasked time, since the database will use the
1854 // current time that it is called. The code below has to be approximate. 1859 // current time that it is called. The code below has to be approximate.
1855 base::Time unmasked_time = base::Time::Now(); 1860 base::Time unmasked_time = base::Time::Now();
1856 1861
1857 // Add a masked card. 1862 // Add a masked card.
1858 base::string16 masked_number = ASCIIToUTF16("1111"); 1863 base::string16 masked_number = ASCIIToUTF16("1111");
1859 CreditCard masked_card(CreditCard::MASKED_SERVER_CARD, "a123"); 1864 CreditCard masked_card(CreditCard::MASKED_SERVER_CARD, "a123");
1860 masked_card.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Paul F. Tompkins")); 1865 masked_card.SetRawInfo(CREDIT_CARD_NAME_FULL,
1866 ASCIIToUTF16("Paul F. Tompkins"));
1861 masked_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1")); 1867 masked_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1"));
1862 masked_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020")); 1868 masked_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020"));
1863 masked_card.SetRawInfo(CREDIT_CARD_NUMBER, masked_number); 1869 masked_card.SetRawInfo(CREDIT_CARD_NUMBER, masked_number);
1864 masked_card.SetTypeForMaskedCard(kVisaCard); 1870 masked_card.SetTypeForMaskedCard(kVisaCard);
1865 1871
1866 std::vector<CreditCard> inputs; 1872 std::vector<CreditCard> inputs;
1867 inputs.push_back(masked_card); 1873 inputs.push_back(masked_card);
1868 table_->SetServerCreditCards(inputs); 1874 table_->SetServerCreditCards(inputs);
1869 1875
1870 // Unmask it. 1876 // Unmask it.
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
1972 for (size_t j = 0; j < kTestCases[i].expected_suggestion_count; ++j) { 1978 for (size_t j = 0; j < kTestCases[i].expected_suggestion_count; ++j) {
1973 EXPECT_EQ(ASCIIToUTF16(kTestCases[i].expected_suggestion[j]), v[j]); 1979 EXPECT_EQ(ASCIIToUTF16(kTestCases[i].expected_suggestion[j]), v[j]);
1974 } 1980 }
1975 1981
1976 changes.clear(); 1982 changes.clear();
1977 table_->RemoveFormElementsAddedBetween(t1, Time(), &changes); 1983 table_->RemoveFormElementsAddedBetween(t1, Time(), &changes);
1978 } 1984 }
1979 } 1985 }
1980 1986
1981 } // namespace autofill 1987 } // namespace autofill
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698