summaryrefslogtreecommitdiffstats
path: root/chrome/browser/autofill/form_structure_unittest.cc
diff options
context:
space:
mode:
authorjhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-05-07 17:22:28 +0000
committerjhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-05-07 17:22:28 +0000
commit716726ed94affaff96391b9c80a9662dd915a6bb (patch)
tree0ac0b1b4d673983251d536f2afc8b4692af65ea0 /chrome/browser/autofill/form_structure_unittest.cc
parent8269bc8658a4d666f1207dce0a8ad483d36c081a (diff)
downloadchromium_src-716726ed94affaff96391b9c80a9662dd915a6bb.zip
chromium_src-716726ed94affaff96391b9c80a9662dd915a6bb.tar.gz
chromium_src-716726ed94affaff96391b9c80a9662dd915a6bb.tar.bz2
AutoFill: Parse the ignored fields at the end of ParseAddress, so we don't
accidentally match an ignored field instead of matching a field we care about. BUG=43260 TEST=FormStructureTest.HeuristicsStateWithProvince Review URL: http://codereview.chromium.org/2006005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46701 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/autofill/form_structure_unittest.cc')
-rw-r--r--chrome/browser/autofill/form_structure_unittest.cc33
1 files changed, 33 insertions, 0 deletions
diff --git a/chrome/browser/autofill/form_structure_unittest.cc b/chrome/browser/autofill/form_structure_unittest.cc
index 4835509..1286f9a 100644
--- a/chrome/browser/autofill/form_structure_unittest.cc
+++ b/chrome/browser/autofill/form_structure_unittest.cc
@@ -664,4 +664,37 @@ TEST(FormStructureTest, ThreeAddressLines) {
EXPECT_EQ(ADDRESS_HOME_CITY, form_structure->field(3)->heuristic_type());
}
+TEST(FormStructureTest, HeuristicsStateWithProvince) {
+ scoped_ptr<FormStructure> form_structure;
+ FormData form;
+
+ form.method = ASCIIToUTF16("post");
+ form.fields.push_back(
+ webkit_glue::FormField(ASCIIToUTF16("Address Line1"),
+ ASCIIToUTF16("Address"),
+ string16(),
+ ASCIIToUTF16("text")));
+ form.fields.push_back(
+ webkit_glue::FormField(ASCIIToUTF16("Address Line2"),
+ ASCIIToUTF16("Address"),
+ string16(),
+ ASCIIToUTF16("text")));
+ form.fields.push_back(
+ webkit_glue::FormField(ASCIIToUTF16("State/Province/Region"),
+ ASCIIToUTF16("State"),
+ string16(),
+ ASCIIToUTF16("text")));
+ form_structure.reset(new FormStructure(form));
+ EXPECT_TRUE(form_structure->IsAutoFillable());
+ ASSERT_EQ(3U, form_structure->field_count());
+ ASSERT_EQ(3U, form_structure->autofill_count());
+
+ // Address Line 1.
+ EXPECT_EQ(ADDRESS_HOME_LINE1, form_structure->field(0)->heuristic_type());
+ // Address Line 2.
+ EXPECT_EQ(ADDRESS_HOME_LINE2, form_structure->field(1)->heuristic_type());
+ // State.
+ EXPECT_EQ(ADDRESS_HOME_STATE, form_structure->field(2)->heuristic_type());
+}
+
} // namespace