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

Side by Side Diff: chrome/browser/autofill/address_field_unittest.cc

Issue 7043027: Autofill refactor form_field.h/cc. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 7 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "base/memory/scoped_ptr.h" 5 #include "base/memory/scoped_ptr.h"
6 #include "base/memory/scoped_vector.h" 6 #include "base/memory/scoped_vector.h"
7 #include "base/utf_string_conversions.h" 7 #include "base/utf_string_conversions.h"
8 #include "chrome/browser/autofill/autofill_ecml.h"
8 #include "chrome/browser/autofill/address_field.h" 9 #include "chrome/browser/autofill/address_field.h"
9 #include "chrome/browser/autofill/autofill_field.h" 10 #include "chrome/browser/autofill/autofill_field.h"
10 #include "chrome/browser/autofill/autofill_scanner.h" 11 #include "chrome/browser/autofill/autofill_scanner.h"
11 #include "testing/gtest/include/gtest/gtest.h" 12 #include "testing/gtest/include/gtest/gtest.h"
12 #include "webkit/glue/form_field.h" 13 #include "webkit/glue/form_field.h"
13 14
14 namespace {
15
16 class AddressFieldTest : public testing::Test { 15 class AddressFieldTest : public testing::Test {
17 public: 16 public:
18 AddressFieldTest() {} 17 AddressFieldTest() {}
19 18
20 protected: 19 protected:
21 ScopedVector<AutofillField> list_; 20 ScopedVector<AutofillField> list_;
22 scoped_ptr<AddressField> field_; 21 scoped_ptr<AddressField> field_;
23 FieldTypeMap field_type_map_; 22 FieldTypeMap field_type_map_;
24 std::vector<AutofillField*>::const_iterator iter_; 23 std::vector<AutofillField*>::const_iterator iter_;
25 24
(...skipping 21 matching lines...) Expand all
47 string16(), 46 string16(),
48 ASCIIToUTF16("text"), 47 ASCIIToUTF16("text"),
49 0, 48 0,
50 false), 49 false),
51 ASCIIToUTF16("addr1"))); 50 ASCIIToUTF16("addr1")));
52 AutofillScanner scanner(list_.get()); 51 AutofillScanner scanner(list_.get());
53 field_.reset(AddressField::Parse(&scanner, false)); 52 field_.reset(AddressField::Parse(&scanner, false));
54 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 53 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
55 EXPECT_EQ(kGenericAddress, field_->FindType()); 54 EXPECT_EQ(kGenericAddress, field_->FindType());
56 EXPECT_TRUE(field_->IsFullAddress()); 55 EXPECT_TRUE(field_->IsFullAddress());
57 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 56 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
58 ASSERT_TRUE( 57 ASSERT_TRUE(
59 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end()); 58 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end());
60 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]); 59 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]);
61 } 60 }
62 61
63 TEST_F(AddressFieldTest, ParseOneLineAddressBilling) { 62 TEST_F(AddressFieldTest, ParseOneLineAddressBilling) {
64 list_.push_back( 63 list_.push_back(
65 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Address"), 64 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Address"),
66 ASCIIToUTF16("billingAddress"), 65 ASCIIToUTF16("billingAddress"),
67 string16(), 66 string16(),
68 ASCIIToUTF16("text"), 67 ASCIIToUTF16("text"),
69 0, 68 0,
70 false), 69 false),
71 ASCIIToUTF16("addr1"))); 70 ASCIIToUTF16("addr1")));
72 AutofillScanner scanner(list_.get()); 71 AutofillScanner scanner(list_.get());
73 field_.reset(AddressField::Parse(&scanner, false)); 72 field_.reset(AddressField::Parse(&scanner, false));
74 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 73 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
75 EXPECT_EQ(kBillingAddress, field_->FindType()); 74 EXPECT_EQ(kBillingAddress, field_->FindType());
76 EXPECT_TRUE(field_->IsFullAddress()); 75 EXPECT_TRUE(field_->IsFullAddress());
77 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 76 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
78 ASSERT_TRUE( 77 ASSERT_TRUE(
79 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end()); 78 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end());
80 EXPECT_EQ(ADDRESS_BILLING_LINE1, field_type_map_[ASCIIToUTF16("addr1")]); 79 EXPECT_EQ(ADDRESS_BILLING_LINE1, field_type_map_[ASCIIToUTF16("addr1")]);
81 } 80 }
82 81
83 TEST_F(AddressFieldTest, ParseOneLineAddressShipping) { 82 TEST_F(AddressFieldTest, ParseOneLineAddressShipping) {
84 list_.push_back( 83 list_.push_back(
85 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Address"), 84 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Address"),
86 ASCIIToUTF16("shippingAddress"), 85 ASCIIToUTF16("shippingAddress"),
87 string16(), 86 string16(),
88 ASCIIToUTF16("text"), 87 ASCIIToUTF16("text"),
89 0, 88 0,
90 false), 89 false),
91 ASCIIToUTF16("addr1"))); 90 ASCIIToUTF16("addr1")));
92 AutofillScanner scanner(list_.get()); 91 AutofillScanner scanner(list_.get());
93 field_.reset(AddressField::Parse(&scanner, false)); 92 field_.reset(AddressField::Parse(&scanner, false));
94 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 93 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
95 EXPECT_EQ(kShippingAddress, field_->FindType()); 94 EXPECT_EQ(kShippingAddress, field_->FindType());
96 EXPECT_TRUE(field_->IsFullAddress()); 95 EXPECT_TRUE(field_->IsFullAddress());
97 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 96 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
98 ASSERT_TRUE( 97 ASSERT_TRUE(
99 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end()); 98 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end());
100 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]); 99 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]);
101 } 100 }
102 101
103 TEST_F(AddressFieldTest, ParseOneLineAddressEcml) { 102 TEST_F(AddressFieldTest, ParseOneLineAddressEcml) {
104 list_.push_back( 103 list_.push_back(
105 new AutofillField( 104 new AutofillField(
106 webkit_glue::FormField(ASCIIToUTF16("Address"), 105 webkit_glue::FormField(ASCIIToUTF16("Address"),
107 ASCIIToUTF16(kEcmlShipToAddress1), 106 ASCIIToUTF16(kEcmlShipToAddress1),
108 string16(), 107 string16(),
109 ASCIIToUTF16("text"), 108 ASCIIToUTF16("text"),
110 0, 109 0,
111 false), 110 false),
112 ASCIIToUTF16("addr1"))); 111 ASCIIToUTF16("addr1")));
113 AutofillScanner scanner(list_.get()); 112 AutofillScanner scanner(list_.get());
114 field_.reset(AddressField::Parse(&scanner, true)); 113 field_.reset(AddressField::Parse(&scanner, true));
115 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 114 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
116 EXPECT_EQ(kShippingAddress, field_->FindType()); 115 EXPECT_EQ(kShippingAddress, field_->FindType());
117 EXPECT_TRUE(field_->IsFullAddress()); 116 EXPECT_TRUE(field_->IsFullAddress());
118 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 117 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
119 ASSERT_TRUE( 118 ASSERT_TRUE(
120 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end()); 119 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end());
121 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]); 120 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]);
122 } 121 }
123 122
124 TEST_F(AddressFieldTest, ParseTwoLineAddress) { 123 TEST_F(AddressFieldTest, ParseTwoLineAddress) {
125 list_.push_back( 124 list_.push_back(
126 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Address"), 125 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Address"),
127 ASCIIToUTF16("address"), 126 ASCIIToUTF16("address"),
128 string16(), 127 string16(),
129 ASCIIToUTF16("text"), 128 ASCIIToUTF16("text"),
130 0, 129 0,
131 false), 130 false),
132 ASCIIToUTF16("addr1"))); 131 ASCIIToUTF16("addr1")));
133 list_.push_back( 132 list_.push_back(
134 new AutofillField(webkit_glue::FormField(string16(), 133 new AutofillField(webkit_glue::FormField(string16(),
135 string16(), 134 string16(),
136 string16(), 135 string16(),
137 ASCIIToUTF16("text"), 136 ASCIIToUTF16("text"),
138 0, 137 0,
139 false), 138 false),
140 ASCIIToUTF16("addr2"))); 139 ASCIIToUTF16("addr2")));
141 AutofillScanner scanner(list_.get()); 140 AutofillScanner scanner(list_.get());
142 field_.reset(AddressField::Parse(&scanner, false)); 141 field_.reset(AddressField::Parse(&scanner, false));
143 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 142 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
144 EXPECT_EQ(kGenericAddress, field_->FindType()); 143 EXPECT_EQ(kGenericAddress, field_->FindType());
145 EXPECT_TRUE(field_->IsFullAddress()); 144 EXPECT_TRUE(field_->IsFullAddress());
146 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 145 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
147 ASSERT_TRUE( 146 ASSERT_TRUE(
148 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end()); 147 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end());
149 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]); 148 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]);
150 ASSERT_TRUE( 149 ASSERT_TRUE(
151 field_type_map_.find(ASCIIToUTF16("addr2")) != field_type_map_.end()); 150 field_type_map_.find(ASCIIToUTF16("addr2")) != field_type_map_.end());
152 EXPECT_EQ(ADDRESS_HOME_LINE2, field_type_map_[ASCIIToUTF16("addr2")]); 151 EXPECT_EQ(ADDRESS_HOME_LINE2, field_type_map_[ASCIIToUTF16("addr2")]);
153 } 152 }
154 153
155 TEST_F(AddressFieldTest, ParseThreeLineAddress) { 154 TEST_F(AddressFieldTest, ParseThreeLineAddress) {
156 list_.push_back( 155 list_.push_back(
(...skipping 18 matching lines...) Expand all
175 string16(), 174 string16(),
176 ASCIIToUTF16("text"), 175 ASCIIToUTF16("text"),
177 0, 176 0,
178 false), 177 false),
179 ASCIIToUTF16("addr3"))); 178 ASCIIToUTF16("addr3")));
180 AutofillScanner scanner(list_.get()); 179 AutofillScanner scanner(list_.get());
181 field_.reset(AddressField::Parse(&scanner, false)); 180 field_.reset(AddressField::Parse(&scanner, false));
182 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 181 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
183 EXPECT_EQ(kGenericAddress, field_->FindType()); 182 EXPECT_EQ(kGenericAddress, field_->FindType());
184 EXPECT_TRUE(field_->IsFullAddress()); 183 EXPECT_TRUE(field_->IsFullAddress());
185 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 184 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
186 ASSERT_TRUE( 185 ASSERT_TRUE(
187 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end()); 186 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end());
188 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]); 187 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]);
189 ASSERT_TRUE( 188 ASSERT_TRUE(
190 field_type_map_.find(ASCIIToUTF16("addr2")) != field_type_map_.end()); 189 field_type_map_.find(ASCIIToUTF16("addr2")) != field_type_map_.end());
191 EXPECT_EQ(ADDRESS_HOME_LINE2, field_type_map_[ASCIIToUTF16("addr2")]); 190 EXPECT_EQ(ADDRESS_HOME_LINE2, field_type_map_[ASCIIToUTF16("addr2")]);
192 ASSERT_TRUE( 191 ASSERT_TRUE(
193 field_type_map_.find(ASCIIToUTF16("addr3")) == field_type_map_.end()); 192 field_type_map_.find(ASCIIToUTF16("addr3")) == field_type_map_.end());
194 } 193 }
195 194
(...skipping 14 matching lines...) Expand all
210 string16(), 209 string16(),
211 ASCIIToUTF16("text"), 210 ASCIIToUTF16("text"),
212 0, 211 0,
213 false), 212 false),
214 ASCIIToUTF16("addr2"))); 213 ASCIIToUTF16("addr2")));
215 AutofillScanner scanner(list_.get()); 214 AutofillScanner scanner(list_.get());
216 field_.reset(AddressField::Parse(&scanner, true)); 215 field_.reset(AddressField::Parse(&scanner, true));
217 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 216 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
218 EXPECT_EQ(kShippingAddress, field_->FindType()); 217 EXPECT_EQ(kShippingAddress, field_->FindType());
219 EXPECT_TRUE(field_->IsFullAddress()); 218 EXPECT_TRUE(field_->IsFullAddress());
220 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 219 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
221 ASSERT_TRUE( 220 ASSERT_TRUE(
222 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end()); 221 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end());
223 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]); 222 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]);
224 ASSERT_TRUE( 223 ASSERT_TRUE(
225 field_type_map_.find(ASCIIToUTF16("addr2")) != field_type_map_.end()); 224 field_type_map_.find(ASCIIToUTF16("addr2")) != field_type_map_.end());
226 EXPECT_EQ(ADDRESS_HOME_LINE2, field_type_map_[ASCIIToUTF16("addr2")]); 225 EXPECT_EQ(ADDRESS_HOME_LINE2, field_type_map_[ASCIIToUTF16("addr2")]);
227 } 226 }
228 227
229 TEST_F(AddressFieldTest, ParseCity) { 228 TEST_F(AddressFieldTest, ParseCity) {
230 list_.push_back( 229 list_.push_back(
231 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("City"), 230 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("City"),
232 ASCIIToUTF16("city"), 231 ASCIIToUTF16("city"),
233 string16(), 232 string16(),
234 ASCIIToUTF16("text"), 233 ASCIIToUTF16("text"),
235 0, 234 0,
236 false), 235 false),
237 ASCIIToUTF16("city1"))); 236 ASCIIToUTF16("city1")));
238 AutofillScanner scanner(list_.get()); 237 AutofillScanner scanner(list_.get());
239 field_.reset(AddressField::Parse(&scanner, false)); 238 field_.reset(AddressField::Parse(&scanner, false));
240 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 239 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
241 EXPECT_EQ(kGenericAddress, field_->FindType()); 240 EXPECT_EQ(kGenericAddress, field_->FindType());
242 EXPECT_FALSE(field_->IsFullAddress()); 241 EXPECT_FALSE(field_->IsFullAddress());
243 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 242 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
244 ASSERT_TRUE( 243 ASSERT_TRUE(
245 field_type_map_.find(ASCIIToUTF16("city1")) != field_type_map_.end()); 244 field_type_map_.find(ASCIIToUTF16("city1")) != field_type_map_.end());
246 EXPECT_EQ(ADDRESS_HOME_CITY, field_type_map_[ASCIIToUTF16("city1")]); 245 EXPECT_EQ(ADDRESS_HOME_CITY, field_type_map_[ASCIIToUTF16("city1")]);
247 } 246 }
248 247
249 TEST_F(AddressFieldTest, ParseCityEcml) { 248 TEST_F(AddressFieldTest, ParseCityEcml) {
250 list_.push_back( 249 list_.push_back(
251 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("City"), 250 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("City"),
252 ASCIIToUTF16(kEcmlShipToCity), 251 ASCIIToUTF16(kEcmlShipToCity),
253 string16(), 252 string16(),
254 ASCIIToUTF16("text"), 253 ASCIIToUTF16("text"),
255 0, 254 0,
256 false), 255 false),
257 ASCIIToUTF16("city1"))); 256 ASCIIToUTF16("city1")));
258 AutofillScanner scanner(list_.get()); 257 AutofillScanner scanner(list_.get());
259 field_.reset(AddressField::Parse(&scanner, true)); 258 field_.reset(AddressField::Parse(&scanner, true));
260 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 259 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
261 EXPECT_EQ(kGenericAddress, field_->FindType()); 260 EXPECT_EQ(kGenericAddress, field_->FindType());
262 EXPECT_FALSE(field_->IsFullAddress()); 261 EXPECT_FALSE(field_->IsFullAddress());
263 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 262 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
264 ASSERT_TRUE( 263 ASSERT_TRUE(
265 field_type_map_.find(ASCIIToUTF16("city1")) != field_type_map_.end()); 264 field_type_map_.find(ASCIIToUTF16("city1")) != field_type_map_.end());
266 EXPECT_EQ(ADDRESS_HOME_CITY, field_type_map_[ASCIIToUTF16("city1")]); 265 EXPECT_EQ(ADDRESS_HOME_CITY, field_type_map_[ASCIIToUTF16("city1")]);
267 } 266 }
268 267
269 TEST_F(AddressFieldTest, ParseState) { 268 TEST_F(AddressFieldTest, ParseState) {
270 list_.push_back( 269 list_.push_back(
271 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("State"), 270 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("State"),
272 ASCIIToUTF16("state"), 271 ASCIIToUTF16("state"),
273 string16(), 272 string16(),
274 ASCIIToUTF16("text"), 273 ASCIIToUTF16("text"),
275 0, 274 0,
276 false), 275 false),
277 ASCIIToUTF16("state1"))); 276 ASCIIToUTF16("state1")));
278 AutofillScanner scanner(list_.get()); 277 AutofillScanner scanner(list_.get());
279 field_.reset(AddressField::Parse(&scanner, false)); 278 field_.reset(AddressField::Parse(&scanner, false));
280 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 279 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
281 EXPECT_EQ(kGenericAddress, field_->FindType()); 280 EXPECT_EQ(kGenericAddress, field_->FindType());
282 EXPECT_FALSE(field_->IsFullAddress()); 281 EXPECT_FALSE(field_->IsFullAddress());
283 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 282 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
284 ASSERT_TRUE( 283 ASSERT_TRUE(
285 field_type_map_.find(ASCIIToUTF16("state1")) != field_type_map_.end()); 284 field_type_map_.find(ASCIIToUTF16("state1")) != field_type_map_.end());
286 EXPECT_EQ(ADDRESS_HOME_STATE, field_type_map_[ASCIIToUTF16("state1")]); 285 EXPECT_EQ(ADDRESS_HOME_STATE, field_type_map_[ASCIIToUTF16("state1")]);
287 } 286 }
288 287
289 TEST_F(AddressFieldTest, ParseStateEcml) { 288 TEST_F(AddressFieldTest, ParseStateEcml) {
290 list_.push_back( 289 list_.push_back(
291 new AutofillField( 290 new AutofillField(
292 webkit_glue::FormField(ASCIIToUTF16("State"), 291 webkit_glue::FormField(ASCIIToUTF16("State"),
293 ASCIIToUTF16(kEcmlShipToStateProv), 292 ASCIIToUTF16(kEcmlShipToStateProv),
294 string16(), 293 string16(),
295 ASCIIToUTF16("text"), 294 ASCIIToUTF16("text"),
296 0, 295 0,
297 false), 296 false),
298 ASCIIToUTF16("state1"))); 297 ASCIIToUTF16("state1")));
299 AutofillScanner scanner(list_.get()); 298 AutofillScanner scanner(list_.get());
300 field_.reset(AddressField::Parse(&scanner, true)); 299 field_.reset(AddressField::Parse(&scanner, true));
301 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 300 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
302 EXPECT_EQ(kGenericAddress, field_->FindType()); 301 EXPECT_EQ(kGenericAddress, field_->FindType());
303 EXPECT_FALSE(field_->IsFullAddress()); 302 EXPECT_FALSE(field_->IsFullAddress());
304 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 303 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
305 ASSERT_TRUE( 304 ASSERT_TRUE(
306 field_type_map_.find(ASCIIToUTF16("state1")) != field_type_map_.end()); 305 field_type_map_.find(ASCIIToUTF16("state1")) != field_type_map_.end());
307 EXPECT_EQ(ADDRESS_HOME_STATE, field_type_map_[ASCIIToUTF16("state1")]); 306 EXPECT_EQ(ADDRESS_HOME_STATE, field_type_map_[ASCIIToUTF16("state1")]);
308 } 307 }
309 308
310 TEST_F(AddressFieldTest, ParseZip) { 309 TEST_F(AddressFieldTest, ParseZip) {
311 list_.push_back( 310 list_.push_back(
312 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Zip"), 311 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Zip"),
313 ASCIIToUTF16("zip"), 312 ASCIIToUTF16("zip"),
314 string16(), 313 string16(),
315 ASCIIToUTF16("text"), 314 ASCIIToUTF16("text"),
316 0, 315 0,
317 false), 316 false),
318 ASCIIToUTF16("zip1"))); 317 ASCIIToUTF16("zip1")));
319 AutofillScanner scanner(list_.get()); 318 AutofillScanner scanner(list_.get());
320 field_.reset(AddressField::Parse(&scanner, false)); 319 field_.reset(AddressField::Parse(&scanner, false));
321 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 320 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
322 EXPECT_EQ(kGenericAddress, field_->FindType()); 321 EXPECT_EQ(kGenericAddress, field_->FindType());
323 EXPECT_FALSE(field_->IsFullAddress()); 322 EXPECT_FALSE(field_->IsFullAddress());
324 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 323 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
325 ASSERT_TRUE( 324 ASSERT_TRUE(
326 field_type_map_.find(ASCIIToUTF16("zip1")) != field_type_map_.end()); 325 field_type_map_.find(ASCIIToUTF16("zip1")) != field_type_map_.end());
327 EXPECT_EQ(ADDRESS_HOME_ZIP, field_type_map_[ASCIIToUTF16("zip1")]); 326 EXPECT_EQ(ADDRESS_HOME_ZIP, field_type_map_[ASCIIToUTF16("zip1")]);
328 } 327 }
329 328
330 TEST_F(AddressFieldTest, ParseZipEcml) { 329 TEST_F(AddressFieldTest, ParseZipEcml) {
331 list_.push_back( 330 list_.push_back(
332 new AutofillField( 331 new AutofillField(
333 webkit_glue::FormField(ASCIIToUTF16("Zip"), 332 webkit_glue::FormField(ASCIIToUTF16("Zip"),
334 ASCIIToUTF16(kEcmlShipToPostalCode), 333 ASCIIToUTF16(kEcmlShipToPostalCode),
335 string16(), 334 string16(),
336 ASCIIToUTF16("text"), 335 ASCIIToUTF16("text"),
337 0, 336 0,
338 false), 337 false),
339 ASCIIToUTF16("zip1"))); 338 ASCIIToUTF16("zip1")));
340 AutofillScanner scanner(list_.get()); 339 AutofillScanner scanner(list_.get());
341 field_.reset(AddressField::Parse(&scanner, true)); 340 field_.reset(AddressField::Parse(&scanner, true));
342 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 341 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
343 EXPECT_EQ(kGenericAddress, field_->FindType()); 342 EXPECT_EQ(kGenericAddress, field_->FindType());
344 EXPECT_FALSE(field_->IsFullAddress()); 343 EXPECT_FALSE(field_->IsFullAddress());
345 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 344 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
346 ASSERT_TRUE( 345 ASSERT_TRUE(
347 field_type_map_.find(ASCIIToUTF16("zip1")) != field_type_map_.end()); 346 field_type_map_.find(ASCIIToUTF16("zip1")) != field_type_map_.end());
348 EXPECT_EQ(ADDRESS_HOME_ZIP, field_type_map_[ASCIIToUTF16("zip1")]); 347 EXPECT_EQ(ADDRESS_HOME_ZIP, field_type_map_[ASCIIToUTF16("zip1")]);
349 } 348 }
350 349
351 TEST_F(AddressFieldTest, ParseStateAndZipOneLabel) { 350 TEST_F(AddressFieldTest, ParseStateAndZipOneLabel) {
352 list_.push_back( 351 list_.push_back(
353 new AutofillField( 352 new AutofillField(
354 webkit_glue::FormField( 353 webkit_glue::FormField(
355 ASCIIToUTF16("State/Province, Zip/Postal Code"), 354 ASCIIToUTF16("State/Province, Zip/Postal Code"),
(...skipping 11 matching lines...) Expand all
367 string16(), 366 string16(),
368 ASCIIToUTF16("text"), 367 ASCIIToUTF16("text"),
369 0, 368 0,
370 false), 369 false),
371 ASCIIToUTF16("zip"))); 370 ASCIIToUTF16("zip")));
372 AutofillScanner scanner(list_.get()); 371 AutofillScanner scanner(list_.get());
373 field_.reset(AddressField::Parse(&scanner, false)); 372 field_.reset(AddressField::Parse(&scanner, false));
374 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 373 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
375 EXPECT_EQ(kGenericAddress, field_->FindType()); 374 EXPECT_EQ(kGenericAddress, field_->FindType());
376 EXPECT_FALSE(field_->IsFullAddress()); 375 EXPECT_FALSE(field_->IsFullAddress());
377 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 376 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
378 ASSERT_TRUE( 377 ASSERT_TRUE(
379 field_type_map_.find(ASCIIToUTF16("state")) != field_type_map_.end()); 378 field_type_map_.find(ASCIIToUTF16("state")) != field_type_map_.end());
380 EXPECT_EQ(ADDRESS_HOME_STATE, field_type_map_[ASCIIToUTF16("state")]); 379 EXPECT_EQ(ADDRESS_HOME_STATE, field_type_map_[ASCIIToUTF16("state")]);
381 ASSERT_TRUE( 380 ASSERT_TRUE(
382 field_type_map_.find(ASCIIToUTF16("zip")) != field_type_map_.end()); 381 field_type_map_.find(ASCIIToUTF16("zip")) != field_type_map_.end());
383 EXPECT_EQ(ADDRESS_HOME_ZIP, field_type_map_[ASCIIToUTF16("zip")]); 382 EXPECT_EQ(ADDRESS_HOME_ZIP, field_type_map_[ASCIIToUTF16("zip")]);
384 } 383 }
385 384
386 TEST_F(AddressFieldTest, ParseCountry) { 385 TEST_F(AddressFieldTest, ParseCountry) {
387 list_.push_back( 386 list_.push_back(
388 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Country"), 387 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Country"),
389 ASCIIToUTF16("country"), 388 ASCIIToUTF16("country"),
390 string16(), 389 string16(),
391 ASCIIToUTF16("text"), 390 ASCIIToUTF16("text"),
392 0, 391 0,
393 false), 392 false),
394 ASCIIToUTF16("country1"))); 393 ASCIIToUTF16("country1")));
395 AutofillScanner scanner(list_.get()); 394 AutofillScanner scanner(list_.get());
396 field_.reset(AddressField::Parse(&scanner, false)); 395 field_.reset(AddressField::Parse(&scanner, false));
397 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 396 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
398 EXPECT_EQ(kGenericAddress, field_->FindType()); 397 EXPECT_EQ(kGenericAddress, field_->FindType());
399 EXPECT_FALSE(field_->IsFullAddress()); 398 EXPECT_FALSE(field_->IsFullAddress());
400 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 399 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
401 ASSERT_TRUE( 400 ASSERT_TRUE(
402 field_type_map_.find(ASCIIToUTF16("country1")) != field_type_map_.end()); 401 field_type_map_.find(ASCIIToUTF16("country1")) != field_type_map_.end());
403 EXPECT_EQ(ADDRESS_HOME_COUNTRY, field_type_map_[ASCIIToUTF16("country1")]); 402 EXPECT_EQ(ADDRESS_HOME_COUNTRY, field_type_map_[ASCIIToUTF16("country1")]);
404 } 403 }
405 404
406 TEST_F(AddressFieldTest, ParseCountryEcml) { 405 TEST_F(AddressFieldTest, ParseCountryEcml) {
407 list_.push_back( 406 list_.push_back(
408 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Country"), 407 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Country"),
409 ASCIIToUTF16(kEcmlShipToCountry), 408 ASCIIToUTF16(kEcmlShipToCountry),
410 string16(), 409 string16(),
411 ASCIIToUTF16("text"), 410 ASCIIToUTF16("text"),
412 0, 411 0,
413 false), 412 false),
414 ASCIIToUTF16("country1"))); 413 ASCIIToUTF16("country1")));
415 AutofillScanner scanner(list_.get()); 414 AutofillScanner scanner(list_.get());
416 field_.reset(AddressField::Parse(&scanner, true)); 415 field_.reset(AddressField::Parse(&scanner, true));
417 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 416 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
418 EXPECT_EQ(kGenericAddress, field_->FindType()); 417 EXPECT_EQ(kGenericAddress, field_->FindType());
419 EXPECT_FALSE(field_->IsFullAddress()); 418 EXPECT_FALSE(field_->IsFullAddress());
420 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 419 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
421 ASSERT_TRUE( 420 ASSERT_TRUE(
422 field_type_map_.find(ASCIIToUTF16("country1")) != field_type_map_.end()); 421 field_type_map_.find(ASCIIToUTF16("country1")) != field_type_map_.end());
423 EXPECT_EQ(ADDRESS_HOME_COUNTRY, field_type_map_[ASCIIToUTF16("country1")]); 422 EXPECT_EQ(ADDRESS_HOME_COUNTRY, field_type_map_[ASCIIToUTF16("country1")]);
424 } 423 }
425 424
426 TEST_F(AddressFieldTest, ParseTwoLineAddressMissingLabel) { 425 TEST_F(AddressFieldTest, ParseTwoLineAddressMissingLabel) {
427 list_.push_back( 426 list_.push_back(
428 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Address"), 427 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Address"),
429 ASCIIToUTF16("address"), 428 ASCIIToUTF16("address"),
430 string16(), 429 string16(),
431 ASCIIToUTF16("text"), 430 ASCIIToUTF16("text"),
432 0, 431 0,
433 false), 432 false),
434 ASCIIToUTF16("addr1"))); 433 ASCIIToUTF16("addr1")));
435 list_.push_back( 434 list_.push_back(
436 new AutofillField(webkit_glue::FormField(string16(), 435 new AutofillField(webkit_glue::FormField(string16(),
437 ASCIIToUTF16("bogus"), 436 ASCIIToUTF16("bogus"),
438 string16(), 437 string16(),
439 ASCIIToUTF16("text"), 438 ASCIIToUTF16("text"),
440 0, 439 0,
441 false), 440 false),
442 ASCIIToUTF16("addr2"))); 441 ASCIIToUTF16("addr2")));
443 AutofillScanner scanner(list_.get()); 442 AutofillScanner scanner(list_.get());
444 field_.reset(AddressField::Parse(&scanner, false)); 443 field_.reset(AddressField::Parse(&scanner, false));
445 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 444 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
446 EXPECT_EQ(kGenericAddress, field_->FindType()); 445 EXPECT_EQ(kGenericAddress, field_->FindType());
447 EXPECT_TRUE(field_->IsFullAddress()); 446 EXPECT_TRUE(field_->IsFullAddress());
448 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 447 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
449 ASSERT_TRUE( 448 ASSERT_TRUE(
450 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end()); 449 field_type_map_.find(ASCIIToUTF16("addr1")) != field_type_map_.end());
451 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]); 450 EXPECT_EQ(ADDRESS_HOME_LINE1, field_type_map_[ASCIIToUTF16("addr1")]);
452 ASSERT_TRUE( 451 ASSERT_TRUE(
453 field_type_map_.find(ASCIIToUTF16("addr2")) != field_type_map_.end()); 452 field_type_map_.find(ASCIIToUTF16("addr2")) != field_type_map_.end());
454 EXPECT_EQ(ADDRESS_HOME_LINE2, field_type_map_[ASCIIToUTF16("addr2")]); 453 EXPECT_EQ(ADDRESS_HOME_LINE2, field_type_map_[ASCIIToUTF16("addr2")]);
455 } 454 }
456 455
457 TEST_F(AddressFieldTest, ParseCompany) { 456 TEST_F(AddressFieldTest, ParseCompany) {
458 list_.push_back( 457 list_.push_back(
459 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Company"), 458 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Company"),
460 ASCIIToUTF16("company"), 459 ASCIIToUTF16("company"),
461 string16(), 460 string16(),
462 ASCIIToUTF16("text"), 461 ASCIIToUTF16("text"),
463 0, 462 0,
464 false), 463 false),
465 ASCIIToUTF16("company1"))); 464 ASCIIToUTF16("company1")));
466 AutofillScanner scanner(list_.get()); 465 AutofillScanner scanner(list_.get());
467 field_.reset(AddressField::Parse(&scanner, false)); 466 field_.reset(AddressField::Parse(&scanner, false));
468 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 467 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
469 EXPECT_EQ(kGenericAddress, field_->FindType()); 468 EXPECT_EQ(kGenericAddress, field_->FindType());
470 EXPECT_FALSE(field_->IsFullAddress()); 469 EXPECT_FALSE(field_->IsFullAddress());
471 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 470 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
472 ASSERT_TRUE( 471 ASSERT_TRUE(
473 field_type_map_.find(ASCIIToUTF16("company1")) != field_type_map_.end()); 472 field_type_map_.find(ASCIIToUTF16("company1")) != field_type_map_.end());
474 EXPECT_EQ(COMPANY_NAME, field_type_map_[ASCIIToUTF16("company1")]); 473 EXPECT_EQ(COMPANY_NAME, field_type_map_[ASCIIToUTF16("company1")]);
475 } 474 }
476 475
477 TEST_F(AddressFieldTest, ParseCompanyEcml) { 476 TEST_F(AddressFieldTest, ParseCompanyEcml) {
478 list_.push_back( 477 list_.push_back(
479 new AutofillField( 478 new AutofillField(
480 webkit_glue::FormField(ASCIIToUTF16("Company"), 479 webkit_glue::FormField(ASCIIToUTF16("Company"),
481 ASCIIToUTF16(kEcmlShipToCompanyName), 480 ASCIIToUTF16(kEcmlShipToCompanyName),
482 string16(), 481 string16(),
483 ASCIIToUTF16("text"), 482 ASCIIToUTF16("text"),
484 0, 483 0,
485 false), 484 false),
486 ASCIIToUTF16("company1"))); 485 ASCIIToUTF16("company1")));
487 AutofillScanner scanner(list_.get()); 486 AutofillScanner scanner(list_.get());
488 field_.reset(AddressField::Parse(&scanner, true)); 487 field_.reset(AddressField::Parse(&scanner, true));
489 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get()); 488 ASSERT_NE(static_cast<AddressField*>(NULL), field_.get());
490 EXPECT_EQ(kGenericAddress, field_->FindType()); 489 EXPECT_EQ(kGenericAddress, field_->FindType());
491 EXPECT_FALSE(field_->IsFullAddress()); 490 EXPECT_FALSE(field_->IsFullAddress());
492 ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); 491 ASSERT_TRUE(field_->ClassifyField(&field_type_map_));
493 ASSERT_TRUE( 492 ASSERT_TRUE(
494 field_type_map_.find(ASCIIToUTF16("company1")) != field_type_map_.end()); 493 field_type_map_.find(ASCIIToUTF16("company1")) != field_type_map_.end());
495 EXPECT_EQ(COMPANY_NAME, field_type_map_[ASCIIToUTF16("company1")]); 494 EXPECT_EQ(COMPANY_NAME, field_type_map_[ASCIIToUTF16("company1")]);
496 } 495 }
497
498 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698