| OLD | NEW |
| 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 "components/autofill/core/browser/form_structure.h" | 5 #include "components/autofill/core/browser/form_structure.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| (...skipping 1193 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1204 field.form_control_type = "submit"; | 1204 field.form_control_type = "submit"; |
| 1205 form.fields.push_back(field); | 1205 form.fields.push_back(field); |
| 1206 | 1206 |
| 1207 form_structure.reset(new FormStructure(form)); | 1207 form_structure.reset(new FormStructure(form)); |
| 1208 form_structure->DetermineHeuristicTypes(); | 1208 form_structure->DetermineHeuristicTypes(); |
| 1209 EXPECT_TRUE(form_structure->IsAutofillable()); | 1209 EXPECT_TRUE(form_structure->IsAutofillable()); |
| 1210 ASSERT_EQ(6U, form_structure->field_count()); | 1210 ASSERT_EQ(6U, form_structure->field_count()); |
| 1211 ASSERT_EQ(5U, form_structure->autofill_count()); | 1211 ASSERT_EQ(5U, form_structure->autofill_count()); |
| 1212 | 1212 |
| 1213 // Credit card name. | 1213 // Credit card name. |
| 1214 EXPECT_EQ(CREDIT_CARD_NAME, form_structure->field(0)->heuristic_type()); | 1214 EXPECT_EQ(CREDIT_CARD_NAME_FULL, form_structure->field(0)->heuristic_type()); |
| 1215 // Credit card number. | 1215 // Credit card number. |
| 1216 EXPECT_EQ(CREDIT_CARD_NUMBER, form_structure->field(1)->heuristic_type()); | 1216 EXPECT_EQ(CREDIT_CARD_NUMBER, form_structure->field(1)->heuristic_type()); |
| 1217 // Credit card expiration month. | 1217 // Credit card expiration month. |
| 1218 EXPECT_EQ(CREDIT_CARD_EXP_MONTH, form_structure->field(2)->heuristic_type()); | 1218 EXPECT_EQ(CREDIT_CARD_EXP_MONTH, form_structure->field(2)->heuristic_type()); |
| 1219 // Credit card expiration year. | 1219 // Credit card expiration year. |
| 1220 EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR, | 1220 EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR, |
| 1221 form_structure->field(3)->heuristic_type()); | 1221 form_structure->field(3)->heuristic_type()); |
| 1222 // CVV. | 1222 // CVV. |
| 1223 EXPECT_EQ(CREDIT_CARD_VERIFICATION_CODE, | 1223 EXPECT_EQ(CREDIT_CARD_VERIFICATION_CODE, |
| 1224 form_structure->field(4)->heuristic_type()); | 1224 form_structure->field(4)->heuristic_type()); |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1264 field.form_control_type = "submit"; | 1264 field.form_control_type = "submit"; |
| 1265 form.fields.push_back(field); | 1265 form.fields.push_back(field); |
| 1266 | 1266 |
| 1267 form_structure.reset(new FormStructure(form)); | 1267 form_structure.reset(new FormStructure(form)); |
| 1268 form_structure->DetermineHeuristicTypes(); | 1268 form_structure->DetermineHeuristicTypes(); |
| 1269 EXPECT_TRUE(form_structure->IsAutofillable()); | 1269 EXPECT_TRUE(form_structure->IsAutofillable()); |
| 1270 ASSERT_EQ(7U, form_structure->field_count()); | 1270 ASSERT_EQ(7U, form_structure->field_count()); |
| 1271 ASSERT_EQ(5U, form_structure->autofill_count()); | 1271 ASSERT_EQ(5U, form_structure->autofill_count()); |
| 1272 | 1272 |
| 1273 // Credit card name. | 1273 // Credit card name. |
| 1274 EXPECT_EQ(CREDIT_CARD_NAME, form_structure->field(0)->heuristic_type()); | 1274 EXPECT_EQ(CREDIT_CARD_NAME_FULL, form_structure->field(0)->heuristic_type()); |
| 1275 // Credit card type. This is an unknown type but related to the credit card. | 1275 // Credit card type. This is an unknown type but related to the credit card. |
| 1276 EXPECT_EQ(UNKNOWN_TYPE, form_structure->field(1)->heuristic_type()); | 1276 EXPECT_EQ(UNKNOWN_TYPE, form_structure->field(1)->heuristic_type()); |
| 1277 // Credit card number. | 1277 // Credit card number. |
| 1278 EXPECT_EQ(CREDIT_CARD_NUMBER, form_structure->field(2)->heuristic_type()); | 1278 EXPECT_EQ(CREDIT_CARD_NUMBER, form_structure->field(2)->heuristic_type()); |
| 1279 // Credit card expiration month. | 1279 // Credit card expiration month. |
| 1280 EXPECT_EQ(CREDIT_CARD_EXP_MONTH, form_structure->field(3)->heuristic_type()); | 1280 EXPECT_EQ(CREDIT_CARD_EXP_MONTH, form_structure->field(3)->heuristic_type()); |
| 1281 // Credit card expiration year. | 1281 // Credit card expiration year. |
| 1282 EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR, | 1282 EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR, |
| 1283 form_structure->field(4)->heuristic_type()); | 1283 form_structure->field(4)->heuristic_type()); |
| 1284 // CVV. | 1284 // CVV. |
| (...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1627 | 1627 |
| 1628 form_structure.reset(new FormStructure(form)); | 1628 form_structure.reset(new FormStructure(form)); |
| 1629 form_structure->DetermineHeuristicTypes(); | 1629 form_structure->DetermineHeuristicTypes(); |
| 1630 EXPECT_TRUE(form_structure->IsAutofillable()); | 1630 EXPECT_TRUE(form_structure->IsAutofillable()); |
| 1631 | 1631 |
| 1632 // Expect the correct number of fields. | 1632 // Expect the correct number of fields. |
| 1633 ASSERT_EQ(5U, form_structure->field_count()); | 1633 ASSERT_EQ(5U, form_structure->field_count()); |
| 1634 EXPECT_EQ(5U, form_structure->autofill_count()); | 1634 EXPECT_EQ(5U, form_structure->autofill_count()); |
| 1635 | 1635 |
| 1636 // Name on Card. | 1636 // Name on Card. |
| 1637 EXPECT_EQ(CREDIT_CARD_NAME, form_structure->field(0)->heuristic_type()); | 1637 EXPECT_EQ(CREDIT_CARD_NAME_FULL, form_structure->field(0)->heuristic_type()); |
| 1638 // Address. | 1638 // Address. |
| 1639 EXPECT_EQ(ADDRESS_HOME_LINE1, form_structure->field(1)->heuristic_type()); | 1639 EXPECT_EQ(ADDRESS_HOME_LINE1, form_structure->field(1)->heuristic_type()); |
| 1640 // Card Number. | 1640 // Card Number. |
| 1641 EXPECT_EQ(CREDIT_CARD_NUMBER, form_structure->field(2)->heuristic_type()); | 1641 EXPECT_EQ(CREDIT_CARD_NUMBER, form_structure->field(2)->heuristic_type()); |
| 1642 // Expiration Date. | 1642 // Expiration Date. |
| 1643 EXPECT_EQ(CREDIT_CARD_EXP_MONTH, form_structure->field(3)->heuristic_type()); | 1643 EXPECT_EQ(CREDIT_CARD_EXP_MONTH, form_structure->field(3)->heuristic_type()); |
| 1644 // Expiration Year. | 1644 // Expiration Year. |
| 1645 EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR, | 1645 EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR, |
| 1646 form_structure->field(4)->heuristic_type()); | 1646 form_structure->field(4)->heuristic_type()); |
| 1647 } | 1647 } |
| 1648 | 1648 |
| 1649 TEST_F(FormStructureTest, CVCCodeClash) { | 1649 // Tests that the heuristics detect split credit card names if they appear in |
| 1650 // the middle of the form. |
| 1651 TEST_F(FormStructureTest, HeuristicsInferCCNames_NamesNotFirst) { |
| 1650 scoped_ptr<FormStructure> form_structure; | 1652 scoped_ptr<FormStructure> form_structure; |
| 1651 FormData form; | 1653 FormData form; |
| 1652 | 1654 |
| 1653 FormFieldData field; | 1655 FormFieldData field; |
| 1654 field.form_control_type = "text"; | 1656 field.form_control_type = "text"; |
| 1655 | 1657 |
| 1656 field.label = ASCIIToUTF16("Card number"); | 1658 field.label = ASCIIToUTF16("Card number"); |
| 1657 field.name = ASCIIToUTF16("ccnumber"); | 1659 field.name = ASCIIToUTF16("ccnumber"); |
| 1658 form.fields.push_back(field); | 1660 form.fields.push_back(field); |
| 1659 | 1661 |
| (...skipping 16 matching lines...) Expand all Loading... |
| 1676 field.label = ASCIIToUTF16("cvc number"); | 1678 field.label = ASCIIToUTF16("cvc number"); |
| 1677 field.name = ASCIIToUTF16("csc"); | 1679 field.name = ASCIIToUTF16("csc"); |
| 1678 form.fields.push_back(field); | 1680 form.fields.push_back(field); |
| 1679 | 1681 |
| 1680 form_structure.reset(new FormStructure(form)); | 1682 form_structure.reset(new FormStructure(form)); |
| 1681 form_structure->DetermineHeuristicTypes(); | 1683 form_structure->DetermineHeuristicTypes(); |
| 1682 EXPECT_TRUE(form_structure->IsAutofillable()); | 1684 EXPECT_TRUE(form_structure->IsAutofillable()); |
| 1683 | 1685 |
| 1684 // Expect the correct number of fields. | 1686 // Expect the correct number of fields. |
| 1685 ASSERT_EQ(6U, form_structure->field_count()); | 1687 ASSERT_EQ(6U, form_structure->field_count()); |
| 1686 ASSERT_EQ(5U, form_structure->autofill_count()); | 1688 ASSERT_EQ(6U, form_structure->autofill_count()); |
| 1687 | 1689 |
| 1688 // Card Number. | 1690 // Card Number. |
| 1689 EXPECT_EQ(CREDIT_CARD_NUMBER, form_structure->field(0)->heuristic_type()); | 1691 EXPECT_EQ(CREDIT_CARD_NUMBER, form_structure->field(0)->heuristic_type()); |
| 1690 // First name, taken as name on card. | 1692 // First name. |
| 1691 EXPECT_EQ(CREDIT_CARD_NAME, form_structure->field(1)->heuristic_type()); | 1693 EXPECT_EQ(CREDIT_CARD_NAME_FIRST, form_structure->field(1)->heuristic_type()); |
| 1692 // Last name is not merged. | 1694 // Last name. |
| 1693 EXPECT_EQ(UNKNOWN_TYPE, form_structure->field(2)->heuristic_type()); | 1695 EXPECT_EQ(CREDIT_CARD_NAME_LAST, form_structure->field(2)->heuristic_type()); |
| 1694 // Expiration Date. | 1696 // Expiration Date. |
| 1695 EXPECT_EQ(CREDIT_CARD_EXP_MONTH, form_structure->field(3)->heuristic_type()); | 1697 EXPECT_EQ(CREDIT_CARD_EXP_MONTH, form_structure->field(3)->heuristic_type()); |
| 1696 // Expiration Year. | 1698 // Expiration Year. |
| 1699 EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR, |
| 1700 form_structure->field(4)->heuristic_type()); |
| 1701 // CVC code. |
| 1702 EXPECT_EQ(CREDIT_CARD_VERIFICATION_CODE, |
| 1703 form_structure->field(5)->heuristic_type()); |
| 1704 } |
| 1705 |
| 1706 // Tests that the heuristics detect split credit card names if they appear at |
| 1707 // the beginning of the form. The first name has to contains some credit card |
| 1708 // keyword. |
| 1709 TEST_F(FormStructureTest, HeuristicsInferCCNames_NamesFirst) { |
| 1710 scoped_ptr<FormStructure> form_structure; |
| 1711 FormData form; |
| 1712 |
| 1713 FormFieldData field; |
| 1714 field.form_control_type = "text"; |
| 1715 |
| 1716 field.label = ASCIIToUTF16("Cardholder Name"); |
| 1717 field.name = ASCIIToUTF16("cc_first_name"); |
| 1718 form.fields.push_back(field); |
| 1719 |
| 1720 field.label = ASCIIToUTF16("Last name"); |
| 1721 field.name = ASCIIToUTF16("last_name"); |
| 1722 form.fields.push_back(field); |
| 1723 |
| 1724 field.label = ASCIIToUTF16("Card number"); |
| 1725 field.name = ASCIIToUTF16("ccnumber"); |
| 1726 form.fields.push_back(field); |
| 1727 |
| 1728 field.label = ASCIIToUTF16("Expiration date"); |
| 1729 field.name = ASCIIToUTF16("ccexpiresmonth"); |
| 1730 form.fields.push_back(field); |
| 1731 |
| 1732 field.label = base::string16(); |
| 1733 field.name = ASCIIToUTF16("ccexpiresyear"); |
| 1734 form.fields.push_back(field); |
| 1735 |
| 1736 field.label = ASCIIToUTF16("cvc number"); |
| 1737 field.name = ASCIIToUTF16("csc"); |
| 1738 form.fields.push_back(field); |
| 1739 |
| 1740 form_structure.reset(new FormStructure(form)); |
| 1741 form_structure->DetermineHeuristicTypes(); |
| 1742 EXPECT_TRUE(form_structure->IsAutofillable()); |
| 1743 |
| 1744 // Expect the correct number of fields. |
| 1745 ASSERT_EQ(6U, form_structure->field_count()); |
| 1746 ASSERT_EQ(6U, form_structure->autofill_count()); |
| 1747 |
| 1748 // First name. |
| 1749 EXPECT_EQ(CREDIT_CARD_NAME_FIRST, form_structure->field(0)->heuristic_type()); |
| 1750 // Last name. |
| 1751 EXPECT_EQ(CREDIT_CARD_NAME_LAST, form_structure->field(1)->heuristic_type()); |
| 1752 // Card Number. |
| 1753 EXPECT_EQ(CREDIT_CARD_NUMBER, form_structure->field(2)->heuristic_type()); |
| 1754 // Expiration Date. |
| 1755 EXPECT_EQ(CREDIT_CARD_EXP_MONTH, form_structure->field(3)->heuristic_type()); |
| 1756 // Expiration Year. |
| 1697 EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR, | 1757 EXPECT_EQ(CREDIT_CARD_EXP_4_DIGIT_YEAR, |
| 1698 form_structure->field(4)->heuristic_type()); | 1758 form_structure->field(4)->heuristic_type()); |
| 1699 // CVC code. | 1759 // CVC code. |
| 1700 EXPECT_EQ(CREDIT_CARD_VERIFICATION_CODE, | 1760 EXPECT_EQ(CREDIT_CARD_VERIFICATION_CODE, |
| 1701 form_structure->field(5)->heuristic_type()); | 1761 form_structure->field(5)->heuristic_type()); |
| 1702 } | 1762 } |
| 1703 | 1763 |
| 1704 TEST_F(FormStructureTest, EncodeQueryRequest) { | 1764 TEST_F(FormStructureTest, EncodeQueryRequest) { |
| 1705 FormData form; | 1765 FormData form; |
| 1706 | 1766 |
| (...skipping 961 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2668 EXPECT_TRUE(form_structure.EncodeUploadRequest( | 2728 EXPECT_TRUE(form_structure.EncodeUploadRequest( |
| 2669 available_field_types, false, std::string(), true, &encoded_upload3)); | 2729 available_field_types, false, std::string(), true, &encoded_upload3)); |
| 2670 | 2730 |
| 2671 encoded_upload3.SerializeToString(&encoded_upload_string); | 2731 encoded_upload3.SerializeToString(&encoded_upload_string); |
| 2672 EXPECT_EQ(expected_upload_string, encoded_upload_string); | 2732 EXPECT_EQ(expected_upload_string, encoded_upload_string); |
| 2673 | 2733 |
| 2674 // All supported credit card types available. | 2734 // All supported credit card types available. |
| 2675 // datapresent should be "0000000000001fc0" == trimmmed(0x0000000000001fc0) == | 2735 // datapresent should be "0000000000001fc0" == trimmmed(0x0000000000001fc0) == |
| 2676 // 0b0000000000000000000000000000000000000000000000000001111111000000 | 2736 // 0b0000000000000000000000000000000000000000000000000001111111000000 |
| 2677 // The set bits are: | 2737 // The set bits are: |
| 2678 // 51 == CREDIT_CARD_NAME | 2738 // 51 == CREDIT_CARD_NAME_FULL |
| 2679 // 52 == CREDIT_CARD_NUMBER | 2739 // 52 == CREDIT_CARD_NUMBER |
| 2680 // 53 == CREDIT_CARD_EXP_MONTH | 2740 // 53 == CREDIT_CARD_EXP_MONTH |
| 2681 // 54 == CREDIT_CARD_EXP_2_DIGIT_YEAR | 2741 // 54 == CREDIT_CARD_EXP_2_DIGIT_YEAR |
| 2682 // 55 == CREDIT_CARD_EXP_4_DIGIT_YEAR | 2742 // 55 == CREDIT_CARD_EXP_4_DIGIT_YEAR |
| 2683 // 56 == CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR | 2743 // 56 == CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR |
| 2684 // 57 == CREDIT_CARD_EXP_DATE_4_DIGIT_YEAR | 2744 // 57 == CREDIT_CARD_EXP_DATE_4_DIGIT_YEAR |
| 2685 available_field_types.clear(); | 2745 available_field_types.clear(); |
| 2686 available_field_types.insert(CREDIT_CARD_NAME); | 2746 available_field_types.insert(CREDIT_CARD_NAME_FULL); |
| 2687 available_field_types.insert(CREDIT_CARD_NUMBER); | 2747 available_field_types.insert(CREDIT_CARD_NUMBER); |
| 2688 available_field_types.insert(CREDIT_CARD_EXP_MONTH); | 2748 available_field_types.insert(CREDIT_CARD_EXP_MONTH); |
| 2689 available_field_types.insert(CREDIT_CARD_EXP_2_DIGIT_YEAR); | 2749 available_field_types.insert(CREDIT_CARD_EXP_2_DIGIT_YEAR); |
| 2690 available_field_types.insert(CREDIT_CARD_EXP_4_DIGIT_YEAR); | 2750 available_field_types.insert(CREDIT_CARD_EXP_4_DIGIT_YEAR); |
| 2691 available_field_types.insert(CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR); | 2751 available_field_types.insert(CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR); |
| 2692 available_field_types.insert(CREDIT_CARD_EXP_DATE_4_DIGIT_YEAR); | 2752 available_field_types.insert(CREDIT_CARD_EXP_DATE_4_DIGIT_YEAR); |
| 2693 | 2753 |
| 2694 // Adjust the expected proto string. | 2754 // Adjust the expected proto string. |
| 2695 upload.set_data_present("0000000000001fc0"); | 2755 upload.set_data_present("0000000000001fc0"); |
| 2696 ASSERT_TRUE(upload.SerializeToString(&expected_upload_string)); | 2756 ASSERT_TRUE(upload.SerializeToString(&expected_upload_string)); |
| (...skipping 19 matching lines...) Expand all Loading... |
| 2716 // 11 == PHONE_HOME_CITY_CODE, | 2776 // 11 == PHONE_HOME_CITY_CODE, |
| 2717 // 12 == PHONE_HOME_COUNTRY_CODE, | 2777 // 12 == PHONE_HOME_COUNTRY_CODE, |
| 2718 // 13 == PHONE_HOME_CITY_AND_NUMBER, | 2778 // 13 == PHONE_HOME_CITY_AND_NUMBER, |
| 2719 // 14 == PHONE_HOME_WHOLE_NUMBER, | 2779 // 14 == PHONE_HOME_WHOLE_NUMBER, |
| 2720 // 30 == ADDRESS_HOME_LINE1 | 2780 // 30 == ADDRESS_HOME_LINE1 |
| 2721 // 31 == ADDRESS_HOME_LINE2 | 2781 // 31 == ADDRESS_HOME_LINE2 |
| 2722 // 33 == ADDRESS_HOME_CITY | 2782 // 33 == ADDRESS_HOME_CITY |
| 2723 // 34 == ADDRESS_HOME_STATE | 2783 // 34 == ADDRESS_HOME_STATE |
| 2724 // 35 == ADDRESS_HOME_ZIP | 2784 // 35 == ADDRESS_HOME_ZIP |
| 2725 // 36 == ADDRESS_HOME_COUNTRY | 2785 // 36 == ADDRESS_HOME_COUNTRY |
| 2726 // 51 == CREDIT_CARD_NAME | 2786 // 51 == CREDIT_CARD_NAME_FULL |
| 2727 // 52 == CREDIT_CARD_NUMBER | 2787 // 52 == CREDIT_CARD_NUMBER |
| 2728 // 53 == CREDIT_CARD_EXP_MONTH | 2788 // 53 == CREDIT_CARD_EXP_MONTH |
| 2729 // 54 == CREDIT_CARD_EXP_2_DIGIT_YEAR | 2789 // 54 == CREDIT_CARD_EXP_2_DIGIT_YEAR |
| 2730 // 55 == CREDIT_CARD_EXP_4_DIGIT_YEAR | 2790 // 55 == CREDIT_CARD_EXP_4_DIGIT_YEAR |
| 2731 // 56 == CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR | 2791 // 56 == CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR |
| 2732 // 57 == CREDIT_CARD_EXP_DATE_4_DIGIT_YEAR | 2792 // 57 == CREDIT_CARD_EXP_DATE_4_DIGIT_YEAR |
| 2733 // 60 == COMPANY_NAME | 2793 // 60 == COMPANY_NAME |
| 2734 available_field_types.clear(); | 2794 available_field_types.clear(); |
| 2735 available_field_types.insert(NAME_FIRST); | 2795 available_field_types.insert(NAME_FIRST); |
| 2736 available_field_types.insert(NAME_MIDDLE); | 2796 available_field_types.insert(NAME_MIDDLE); |
| 2737 available_field_types.insert(NAME_LAST); | 2797 available_field_types.insert(NAME_LAST); |
| 2738 available_field_types.insert(NAME_MIDDLE_INITIAL); | 2798 available_field_types.insert(NAME_MIDDLE_INITIAL); |
| 2739 available_field_types.insert(NAME_FULL); | 2799 available_field_types.insert(NAME_FULL); |
| 2740 available_field_types.insert(EMAIL_ADDRESS); | 2800 available_field_types.insert(EMAIL_ADDRESS); |
| 2741 available_field_types.insert(PHONE_HOME_NUMBER); | 2801 available_field_types.insert(PHONE_HOME_NUMBER); |
| 2742 available_field_types.insert(PHONE_HOME_CITY_CODE); | 2802 available_field_types.insert(PHONE_HOME_CITY_CODE); |
| 2743 available_field_types.insert(PHONE_HOME_COUNTRY_CODE); | 2803 available_field_types.insert(PHONE_HOME_COUNTRY_CODE); |
| 2744 available_field_types.insert(PHONE_HOME_CITY_AND_NUMBER); | 2804 available_field_types.insert(PHONE_HOME_CITY_AND_NUMBER); |
| 2745 available_field_types.insert(PHONE_HOME_WHOLE_NUMBER); | 2805 available_field_types.insert(PHONE_HOME_WHOLE_NUMBER); |
| 2746 available_field_types.insert(ADDRESS_HOME_LINE1); | 2806 available_field_types.insert(ADDRESS_HOME_LINE1); |
| 2747 available_field_types.insert(ADDRESS_HOME_LINE2); | 2807 available_field_types.insert(ADDRESS_HOME_LINE2); |
| 2748 available_field_types.insert(ADDRESS_HOME_CITY); | 2808 available_field_types.insert(ADDRESS_HOME_CITY); |
| 2749 available_field_types.insert(ADDRESS_HOME_STATE); | 2809 available_field_types.insert(ADDRESS_HOME_STATE); |
| 2750 available_field_types.insert(ADDRESS_HOME_ZIP); | 2810 available_field_types.insert(ADDRESS_HOME_ZIP); |
| 2751 available_field_types.insert(ADDRESS_HOME_COUNTRY); | 2811 available_field_types.insert(ADDRESS_HOME_COUNTRY); |
| 2752 available_field_types.insert(CREDIT_CARD_NAME); | 2812 available_field_types.insert(CREDIT_CARD_NAME_FULL); |
| 2753 available_field_types.insert(CREDIT_CARD_NUMBER); | 2813 available_field_types.insert(CREDIT_CARD_NUMBER); |
| 2754 available_field_types.insert(CREDIT_CARD_EXP_MONTH); | 2814 available_field_types.insert(CREDIT_CARD_EXP_MONTH); |
| 2755 available_field_types.insert(CREDIT_CARD_EXP_2_DIGIT_YEAR); | 2815 available_field_types.insert(CREDIT_CARD_EXP_2_DIGIT_YEAR); |
| 2756 available_field_types.insert(CREDIT_CARD_EXP_4_DIGIT_YEAR); | 2816 available_field_types.insert(CREDIT_CARD_EXP_4_DIGIT_YEAR); |
| 2757 available_field_types.insert(CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR); | 2817 available_field_types.insert(CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR); |
| 2758 available_field_types.insert(CREDIT_CARD_EXP_DATE_4_DIGIT_YEAR); | 2818 available_field_types.insert(CREDIT_CARD_EXP_DATE_4_DIGIT_YEAR); |
| 2759 available_field_types.insert(COMPANY_NAME); | 2819 available_field_types.insert(COMPANY_NAME); |
| 2760 | 2820 |
| 2761 // Adjust the expected proto string. | 2821 // Adjust the expected proto string. |
| 2762 upload.set_data_present("1f7e000378001fc8"); | 2822 upload.set_data_present("1f7e000378001fc8"); |
| (...skipping 678 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3441 prefix = FormStructure::FindLongestCommonPrefix(strings); | 3501 prefix = FormStructure::FindLongestCommonPrefix(strings); |
| 3442 EXPECT_EQ(ASCIIToUTF16("123456789"), prefix.as_string()); | 3502 EXPECT_EQ(ASCIIToUTF16("123456789"), prefix.as_string()); |
| 3443 | 3503 |
| 3444 // Empty vector. | 3504 // Empty vector. |
| 3445 strings.clear(); | 3505 strings.clear(); |
| 3446 prefix = FormStructure::FindLongestCommonPrefix(strings); | 3506 prefix = FormStructure::FindLongestCommonPrefix(strings); |
| 3447 EXPECT_EQ(ASCIIToUTF16(""), prefix.as_string()); | 3507 EXPECT_EQ(ASCIIToUTF16(""), prefix.as_string()); |
| 3448 } | 3508 } |
| 3449 | 3509 |
| 3450 } // namespace autofill | 3510 } // namespace autofill |
| OLD | NEW |