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

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

Issue 982203002: Autofill - Move test only code to a test util file. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: include vector Created 5 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
« no previous file with comments | « components/autofill/core/browser/webdata/autofill_table.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 <utility> 5 #include <utility>
6 #include <vector> 6 #include <vector>
7 7
8 #include "base/files/file_util.h" 8 #include "base/files/file_util.h"
9 #include "base/files/scoped_temp_dir.h" 9 #include "base/files/scoped_temp_dir.h"
10 #include "base/guid.h" 10 #include "base/guid.h"
11 #include "base/stl_util.h" 11 #include "base/stl_util.h"
12 #include "base/strings/string_number_conversions.h" 12 #include "base/strings/string_number_conversions.h"
13 #include "base/strings/string_util.h" 13 #include "base/strings/string_util.h"
14 #include "base/strings/utf_string_conversions.h" 14 #include "base/strings/utf_string_conversions.h"
15 #include "base/time/time.h" 15 #include "base/time/time.h"
16 #include "components/autofill/core/browser/autofill_profile.h" 16 #include "components/autofill/core/browser/autofill_profile.h"
17 #include "components/autofill/core/browser/autofill_test_utils.h"
17 #include "components/autofill/core/browser/autofill_type.h" 18 #include "components/autofill/core/browser/autofill_type.h"
18 #include "components/autofill/core/browser/credit_card.h" 19 #include "components/autofill/core/browser/credit_card.h"
19 #include "components/autofill/core/browser/webdata/autofill_change.h" 20 #include "components/autofill/core/browser/webdata/autofill_change.h"
20 #include "components/autofill/core/browser/webdata/autofill_entry.h" 21 #include "components/autofill/core/browser/webdata/autofill_entry.h"
21 #include "components/autofill/core/browser/webdata/autofill_table.h" 22 #include "components/autofill/core/browser/webdata/autofill_table.h"
22 #include "components/autofill/core/common/form_field_data.h" 23 #include "components/autofill/core/common/form_field_data.h"
23 #include "components/os_crypt/os_crypt.h" 24 #include "components/os_crypt/os_crypt.h"
24 #include "components/webdata/common/web_database.h" 25 #include "components/webdata/common/web_database.h"
25 #include "sql/statement.h" 26 #include "sql/statement.h"
26 #include "testing/gtest/include/gtest/gtest.h" 27 #include "testing/gtest/include/gtest/gtest.h"
(...skipping 1589 matching lines...) Expand 10 before | Expand all | Expand 10 after
1616 1617
1617 inputs.push_back( 1618 inputs.push_back(
1618 CreditCard(CreditCard::MASKED_SERVER_CARD, "b456")); 1619 CreditCard(CreditCard::MASKED_SERVER_CARD, "b456"));
1619 inputs[1].SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Rick Roman")); 1620 inputs[1].SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Rick Roman"));
1620 inputs[1].SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("12")); 1621 inputs[1].SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("12"));
1621 inputs[1].SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("1997")); 1622 inputs[1].SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("1997"));
1622 inputs[1].SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1111")); 1623 inputs[1].SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1111"));
1623 inputs[1].SetTypeForMaskedCard(kVisaCard); 1624 inputs[1].SetTypeForMaskedCard(kVisaCard);
1624 inputs[1].SetServerStatus(CreditCard::EXPIRED); 1625 inputs[1].SetServerStatus(CreditCard::EXPIRED);
1625 1626
1626 table_->SetServerCreditCards(inputs); 1627 test::SetServerCreditCards(table_.get(), inputs);
1627 1628
1628 std::vector<CreditCard*> outputs; 1629 std::vector<CreditCard*> outputs;
1629 ASSERT_TRUE(table_->GetServerCreditCards(&outputs)); 1630 ASSERT_TRUE(table_->GetServerCreditCards(&outputs));
1630 ASSERT_EQ(inputs.size(), outputs.size()); 1631 ASSERT_EQ(inputs.size(), outputs.size());
1631 1632
1632 // Ordering isn't guaranteed, so fix the ordering if it's backwards. 1633 // Ordering isn't guaranteed, so fix the ordering if it's backwards.
1633 if (outputs[1]->server_id() == inputs[0].server_id()) 1634 if (outputs[1]->server_id() == inputs[0].server_id())
1634 std::swap(outputs[0], outputs[1]); 1635 std::swap(outputs[0], outputs[1]);
1635 1636
1636 // GUIDs for server cards are dynamically generated so will be different 1637 // GUIDs for server cards are dynamically generated so will be different
(...skipping 15 matching lines...) Expand all
1652 1653
1653 TEST_F(AutofillTableTest, MaskUnmaskServerCards) { 1654 TEST_F(AutofillTableTest, MaskUnmaskServerCards) {
1654 base::string16 masked_number(ASCIIToUTF16("1111")); 1655 base::string16 masked_number(ASCIIToUTF16("1111"));
1655 std::vector<CreditCard> inputs; 1656 std::vector<CreditCard> inputs;
1656 inputs.push_back(CreditCard(CreditCard::MASKED_SERVER_CARD, "a123")); 1657 inputs.push_back(CreditCard(CreditCard::MASKED_SERVER_CARD, "a123"));
1657 inputs[0].SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Jay Johnson")); 1658 inputs[0].SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Jay Johnson"));
1658 inputs[0].SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1")); 1659 inputs[0].SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1"));
1659 inputs[0].SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020")); 1660 inputs[0].SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020"));
1660 inputs[0].SetRawInfo(CREDIT_CARD_NUMBER, masked_number); 1661 inputs[0].SetRawInfo(CREDIT_CARD_NUMBER, masked_number);
1661 inputs[0].SetTypeForMaskedCard(kVisaCard); 1662 inputs[0].SetTypeForMaskedCard(kVisaCard);
1662 table_->SetServerCreditCards(inputs); 1663 test::SetServerCreditCards(table_.get(), inputs);
1663 1664
1664 // Unmask the number. The full number should be available. 1665 // Unmask the number. The full number should be available.
1665 base::string16 full_number(ASCIIToUTF16("4111111111111111")); 1666 base::string16 full_number(ASCIIToUTF16("4111111111111111"));
1666 ASSERT_TRUE(table_->UnmaskServerCreditCard(inputs[0].server_id(), 1667 ASSERT_TRUE(table_->UnmaskServerCreditCard(inputs[0].server_id(),
1667 full_number)); 1668 full_number));
1668 1669
1669 std::vector<CreditCard*> outputs; 1670 std::vector<CreditCard*> outputs;
1670 table_->GetServerCreditCards(&outputs); 1671 table_->GetServerCreditCards(&outputs);
1671 ASSERT_EQ(1u, outputs.size()); 1672 ASSERT_EQ(1u, outputs.size());
1672 EXPECT_TRUE(CreditCard::FULL_SERVER_CARD == outputs[0]->record_type()); 1673 EXPECT_TRUE(CreditCard::FULL_SERVER_CARD == outputs[0]->record_type());
(...skipping 19 matching lines...) Expand all
1692 // Add a masked card. 1693 // Add a masked card.
1693 CreditCard masked_card(CreditCard::MASKED_SERVER_CARD, "a123"); 1694 CreditCard masked_card(CreditCard::MASKED_SERVER_CARD, "a123");
1694 masked_card.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Paul F. Tompkins")); 1695 masked_card.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Paul F. Tompkins"));
1695 masked_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1")); 1696 masked_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("1"));
1696 masked_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020")); 1697 masked_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("2020"));
1697 masked_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1111")); 1698 masked_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("1111"));
1698 masked_card.SetTypeForMaskedCard(kVisaCard); 1699 masked_card.SetTypeForMaskedCard(kVisaCard);
1699 1700
1700 std::vector<CreditCard> inputs; 1701 std::vector<CreditCard> inputs;
1701 inputs.push_back(masked_card); 1702 inputs.push_back(masked_card);
1702 table_->SetServerCreditCards(inputs); 1703 test::SetServerCreditCards(table_.get(), inputs);
1703 1704
1704 // Now call Set with the full number. 1705 // Now unmask it.
1705 base::string16 full_number = ASCIIToUTF16("4111111111111111"); 1706 base::string16 full_number = ASCIIToUTF16("4111111111111111");
1706 inputs[0].set_record_type(CreditCard::FULL_SERVER_CARD); 1707 table_->UnmaskServerCreditCard(masked_card.server_id(), full_number);
1707 inputs[0].SetRawInfo(CREDIT_CARD_NUMBER, full_number);
1708 table_->SetServerCreditCards(inputs);
1709 1708
1710 // The card should now be unmasked. 1709 // The card should now be unmasked.
1711 std::vector<CreditCard*> outputs; 1710 std::vector<CreditCard*> outputs;
1712 table_->GetServerCreditCards(&outputs); 1711 table_->GetServerCreditCards(&outputs);
1713 ASSERT_EQ(1u, outputs.size()); 1712 ASSERT_EQ(1u, outputs.size());
1714 EXPECT_TRUE(outputs[0]->record_type() == CreditCard::FULL_SERVER_CARD); 1713 EXPECT_TRUE(outputs[0]->record_type() == CreditCard::FULL_SERVER_CARD);
1715 EXPECT_EQ(full_number, outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER)); 1714 EXPECT_EQ(full_number, outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER));
1716 1715
1717 STLDeleteContainerPointers(outputs.begin(), outputs.end()); 1716 STLDeleteContainerPointers(outputs.begin(), outputs.end());
1718 outputs.clear(); 1717 outputs.clear();
1719 1718
1720 // Call set again with the masked number. 1719 // Call set again with the masked number.
1721 inputs[0] = masked_card; 1720 inputs[0] = masked_card;
1722 table_->SetServerCreditCards(inputs); 1721 test::SetServerCreditCards(table_.get(), inputs);
1723 1722
1724 // The card should stay unmasked. 1723 // The card should stay unmasked.
1725 table_->GetServerCreditCards(&outputs); 1724 table_->GetServerCreditCards(&outputs);
1726 ASSERT_EQ(1u, outputs.size()); 1725 ASSERT_EQ(1u, outputs.size());
1727 EXPECT_TRUE(outputs[0]->record_type() == CreditCard::FULL_SERVER_CARD); 1726 EXPECT_TRUE(outputs[0]->record_type() == CreditCard::FULL_SERVER_CARD);
1728 EXPECT_EQ(full_number, outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER)); 1727 EXPECT_EQ(full_number, outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER));
1729 1728
1730 STLDeleteContainerPointers(outputs.begin(), outputs.end()); 1729 STLDeleteContainerPointers(outputs.begin(), outputs.end());
1731 outputs.clear(); 1730 outputs.clear();
1732 1731
1733 // Set inputs that do not include our old card. 1732 // Set inputs that do not include our old card.
1734 CreditCard random_card(CreditCard::MASKED_SERVER_CARD, "b456"); 1733 CreditCard random_card(CreditCard::MASKED_SERVER_CARD, "b456");
1735 random_card.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Rick Roman")); 1734 random_card.SetRawInfo(CREDIT_CARD_NAME, ASCIIToUTF16("Rick Roman"));
1736 random_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("12")); 1735 random_card.SetRawInfo(CREDIT_CARD_EXP_MONTH, ASCIIToUTF16("12"));
1737 random_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("1997")); 1736 random_card.SetRawInfo(CREDIT_CARD_EXP_4_DIGIT_YEAR, ASCIIToUTF16("1997"));
1738 random_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("2222")); 1737 random_card.SetRawInfo(CREDIT_CARD_NUMBER, ASCIIToUTF16("2222"));
1739 random_card.SetTypeForMaskedCard(kVisaCard); 1738 random_card.SetTypeForMaskedCard(kVisaCard);
1740 inputs[0] = random_card; 1739 inputs[0] = random_card;
1741 table_->SetServerCreditCards(inputs); 1740 test::SetServerCreditCards(table_.get(), inputs);
1742 1741
1743 // We should have only the new card, the other one should have been deleted. 1742 // We should have only the new card, the other one should have been deleted.
1744 table_->GetServerCreditCards(&outputs); 1743 table_->GetServerCreditCards(&outputs);
1745 ASSERT_EQ(1u, outputs.size()); 1744 ASSERT_EQ(1u, outputs.size());
1746 EXPECT_TRUE(outputs[0]->record_type() == CreditCard::MASKED_SERVER_CARD); 1745 EXPECT_TRUE(outputs[0]->record_type() == CreditCard::MASKED_SERVER_CARD);
1747 EXPECT_EQ(random_card.server_id(), outputs[0]->server_id()); 1746 EXPECT_EQ(random_card.server_id(), outputs[0]->server_id());
1748 EXPECT_EQ(ASCIIToUTF16("2222"), outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER)); 1747 EXPECT_EQ(ASCIIToUTF16("2222"), outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER));
1749 1748
1750 STLDeleteContainerPointers(outputs.begin(), outputs.end()); 1749 STLDeleteContainerPointers(outputs.begin(), outputs.end());
1751 outputs.clear(); 1750 outputs.clear();
1752 1751
1753 // Putting back the original card masked should make it masked (this tests 1752 // Putting back the original card masked should make it masked (this tests
1754 // that the unmasked data was really deleted). 1753 // that the unmasked data was really deleted).
1755 inputs[0] = masked_card; 1754 inputs[0] = masked_card;
1756 table_->SetServerCreditCards(inputs); 1755 test::SetServerCreditCards(table_.get(), inputs);
1757 table_->GetServerCreditCards(&outputs); 1756 table_->GetServerCreditCards(&outputs);
1758 ASSERT_EQ(1u, outputs.size()); 1757 ASSERT_EQ(1u, outputs.size());
1759 EXPECT_TRUE(outputs[0]->record_type() == CreditCard::MASKED_SERVER_CARD); 1758 EXPECT_TRUE(outputs[0]->record_type() == CreditCard::MASKED_SERVER_CARD);
1760 EXPECT_EQ(masked_card.server_id(), outputs[0]->server_id()); 1759 EXPECT_EQ(masked_card.server_id(), outputs[0]->server_id());
1761 EXPECT_EQ(ASCIIToUTF16("1111"), outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER)); 1760 EXPECT_EQ(ASCIIToUTF16("1111"), outputs[0]->GetRawInfo(CREDIT_CARD_NUMBER));
1762 1761
1763 STLDeleteContainerPointers(outputs.begin(), outputs.end()); 1762 STLDeleteContainerPointers(outputs.begin(), outputs.end());
1764 outputs.clear(); 1763 outputs.clear();
1765 } 1764 }
1766 1765
(...skipping 19 matching lines...) Expand all
1786 // The original one should have been replaced. 1785 // The original one should have been replaced.
1787 table_->GetServerProfiles(&outputs); 1786 table_->GetServerProfiles(&outputs);
1788 ASSERT_EQ(1u, outputs.size()); 1787 ASSERT_EQ(1u, outputs.size());
1789 EXPECT_EQ(two.server_id(), outputs[0]->server_id()); 1788 EXPECT_EQ(two.server_id(), outputs[0]->server_id());
1790 1789
1791 STLDeleteContainerPointers(outputs.begin(), outputs.end()); 1790 STLDeleteContainerPointers(outputs.begin(), outputs.end());
1792 outputs.clear(); 1791 outputs.clear();
1793 } 1792 }
1794 1793
1795 } // namespace autofill 1794 } // namespace autofill
OLDNEW
« no previous file with comments | « components/autofill/core/browser/webdata/autofill_table.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698