OLD | NEW |
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" | |
9 #include "chrome/browser/autofill/autofill_field.h" | 8 #include "chrome/browser/autofill/autofill_field.h" |
10 #include "chrome/browser/autofill/autofill_scanner.h" | 9 #include "chrome/browser/autofill/autofill_scanner.h" |
11 #include "chrome/browser/autofill/phone_field.h" | 10 #include "chrome/browser/autofill/phone_field.h" |
12 #include "testing/gtest/include/gtest/gtest.h" | 11 #include "testing/gtest/include/gtest/gtest.h" |
13 #include "webkit/glue/form_field.h" | 12 #include "webkit/glue/form_field.h" |
14 | 13 |
15 class PhoneFieldTest : public testing::Test { | 14 class PhoneFieldTest : public testing::Test { |
16 public: | 15 public: |
17 PhoneFieldTest() {} | 16 PhoneFieldTest() {} |
18 | 17 |
19 protected: | 18 protected: |
20 ScopedVector<const AutofillField> list_; | 19 ScopedVector<const AutofillField> list_; |
21 scoped_ptr<PhoneField> field_; | 20 scoped_ptr<PhoneField> field_; |
22 FieldTypeMap field_type_map_; | 21 FieldTypeMap field_type_map_; |
23 | 22 |
24 // Downcast for tests. | 23 // Downcast for tests. |
25 static PhoneField* Parse(AutofillScanner* scanner, bool is_ecml) { | 24 static PhoneField* Parse(AutofillScanner* scanner) { |
26 return static_cast<PhoneField*>(PhoneField::Parse(scanner, is_ecml)); | 25 return static_cast<PhoneField*>(PhoneField::Parse(scanner)); |
27 } | 26 } |
28 | 27 |
29 private: | 28 private: |
30 DISALLOW_COPY_AND_ASSIGN(PhoneFieldTest); | 29 DISALLOW_COPY_AND_ASSIGN(PhoneFieldTest); |
31 }; | 30 }; |
32 | 31 |
33 TEST_F(PhoneFieldTest, Empty) { | 32 TEST_F(PhoneFieldTest, Empty) { |
34 AutofillScanner scanner(list_.get()); | 33 AutofillScanner scanner(list_.get()); |
35 field_.reset(Parse(&scanner, false)); | 34 field_.reset(Parse(&scanner)); |
36 ASSERT_EQ(static_cast<PhoneField*>(NULL), field_.get()); | 35 ASSERT_EQ(static_cast<PhoneField*>(NULL), field_.get()); |
37 } | 36 } |
38 | 37 |
39 TEST_F(PhoneFieldTest, NonParse) { | 38 TEST_F(PhoneFieldTest, NonParse) { |
40 list_.push_back(new AutofillField); | 39 list_.push_back(new AutofillField); |
41 AutofillScanner scanner(list_.get()); | 40 AutofillScanner scanner(list_.get()); |
42 field_.reset(Parse(&scanner, false)); | 41 field_.reset(Parse(&scanner)); |
43 ASSERT_EQ(static_cast<PhoneField*>(NULL), field_.get()); | 42 ASSERT_EQ(static_cast<PhoneField*>(NULL), field_.get()); |
44 } | 43 } |
45 | 44 |
46 TEST_F(PhoneFieldTest, ParseOneLinePhone) { | 45 TEST_F(PhoneFieldTest, ParseOneLinePhone) { |
47 list_.push_back( | 46 list_.push_back( |
48 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Phone"), | 47 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Phone"), |
49 ASCIIToUTF16("phone"), | 48 ASCIIToUTF16("phone"), |
50 string16(), | 49 string16(), |
51 ASCIIToUTF16("text"), | 50 ASCIIToUTF16("text"), |
52 0, | 51 0, |
53 false), | 52 false), |
54 ASCIIToUTF16("phone1"))); | 53 ASCIIToUTF16("phone1"))); |
55 AutofillScanner scanner(list_.get()); | 54 AutofillScanner scanner(list_.get()); |
56 field_.reset(Parse(&scanner, false)); | 55 field_.reset(Parse(&scanner)); |
57 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | 56 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
58 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | 57 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
59 ASSERT_TRUE( | 58 ASSERT_TRUE( |
60 field_type_map_.find(ASCIIToUTF16("phone1")) != field_type_map_.end()); | |
61 EXPECT_EQ(PHONE_HOME_WHOLE_NUMBER, field_type_map_[ASCIIToUTF16("phone1")]); | |
62 } | |
63 | |
64 TEST_F(PhoneFieldTest, ParseOneLinePhoneEcml) { | |
65 list_.push_back( | |
66 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Phone"), | |
67 ASCIIToUTF16(kEcmlShipToPhone), | |
68 string16(), | |
69 ASCIIToUTF16("text"), | |
70 0, | |
71 false), | |
72 ASCIIToUTF16("phone1"))); | |
73 AutofillScanner scanner(list_.get()); | |
74 field_.reset(Parse(&scanner, true)); | |
75 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | |
76 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | |
77 ASSERT_TRUE( | |
78 field_type_map_.find(ASCIIToUTF16("phone1")) != field_type_map_.end()); | 59 field_type_map_.find(ASCIIToUTF16("phone1")) != field_type_map_.end()); |
79 EXPECT_EQ(PHONE_HOME_WHOLE_NUMBER, field_type_map_[ASCIIToUTF16("phone1")]); | 60 EXPECT_EQ(PHONE_HOME_WHOLE_NUMBER, field_type_map_[ASCIIToUTF16("phone1")]); |
80 } | 61 } |
81 | 62 |
82 TEST_F(PhoneFieldTest, ParseTwoLinePhone) { | 63 TEST_F(PhoneFieldTest, ParseTwoLinePhone) { |
83 list_.push_back( | 64 list_.push_back( |
84 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Area Code"), | 65 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Area Code"), |
85 ASCIIToUTF16("area code"), | 66 ASCIIToUTF16("area code"), |
86 string16(), | 67 string16(), |
87 ASCIIToUTF16("text"), | 68 ASCIIToUTF16("text"), |
88 0, | 69 0, |
89 false), | 70 false), |
90 ASCIIToUTF16("areacode1"))); | 71 ASCIIToUTF16("areacode1"))); |
91 list_.push_back( | 72 list_.push_back( |
92 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Phone"), | 73 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Phone"), |
93 ASCIIToUTF16("phone"), | 74 ASCIIToUTF16("phone"), |
94 string16(), | 75 string16(), |
95 ASCIIToUTF16("text"), | 76 ASCIIToUTF16("text"), |
96 0, | 77 0, |
97 false), | 78 false), |
98 ASCIIToUTF16("phone1"))); | 79 ASCIIToUTF16("phone1"))); |
99 AutofillScanner scanner(list_.get()); | 80 AutofillScanner scanner(list_.get()); |
100 field_.reset(Parse(&scanner, false)); | 81 field_.reset(Parse(&scanner)); |
101 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | 82 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
102 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | 83 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
103 ASSERT_TRUE( | 84 ASSERT_TRUE( |
104 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); | |
105 EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); | |
106 ASSERT_TRUE( | |
107 field_type_map_.find(ASCIIToUTF16("phone1")) != field_type_map_.end()); | |
108 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("phone1")]); | |
109 } | |
110 | |
111 TEST_F(PhoneFieldTest, ParseTwoLinePhoneEcmlShipTo) { | |
112 list_.push_back( | |
113 new AutofillField( | |
114 webkit_glue::FormField(ASCIIToUTF16("Area Code"), | |
115 ASCIIToUTF16(kEcmlShipToPostalCode), | |
116 string16(), | |
117 ASCIIToUTF16("text"), | |
118 0, | |
119 false), | |
120 ASCIIToUTF16("areacode1"))); | |
121 list_.push_back( | |
122 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Phone"), | |
123 ASCIIToUTF16(kEcmlShipToPhone), | |
124 string16(), | |
125 ASCIIToUTF16("text"), | |
126 0, | |
127 false), | |
128 ASCIIToUTF16("phone1"))); | |
129 AutofillScanner scanner(list_.get()); | |
130 field_.reset(Parse(&scanner, false)); | |
131 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | |
132 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | |
133 ASSERT_TRUE( | |
134 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); | |
135 EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); | |
136 ASSERT_TRUE( | |
137 field_type_map_.find(ASCIIToUTF16("phone1")) != field_type_map_.end()); | |
138 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("phone1")]); | |
139 } | |
140 | |
141 TEST_F(PhoneFieldTest, ParseTwoLinePhoneEcmlBillTo) { | |
142 list_.push_back( | |
143 new AutofillField( | |
144 webkit_glue::FormField(ASCIIToUTF16("Area Code"), | |
145 ASCIIToUTF16(kEcmlBillToPostalCode), | |
146 string16(), | |
147 ASCIIToUTF16("text"), | |
148 0, | |
149 false), | |
150 ASCIIToUTF16("areacode1"))); | |
151 list_.push_back( | |
152 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Phone"), | |
153 ASCIIToUTF16(kEcmlBillToPhone), | |
154 string16(), | |
155 ASCIIToUTF16("text"), | |
156 0, | |
157 false), | |
158 ASCIIToUTF16("phone1"))); | |
159 AutofillScanner scanner(list_.get()); | |
160 field_.reset(Parse(&scanner, false)); | |
161 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | |
162 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | |
163 ASSERT_TRUE( | |
164 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); | 85 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); |
165 EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); | 86 EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); |
166 ASSERT_TRUE( | 87 ASSERT_TRUE( |
167 field_type_map_.find(ASCIIToUTF16("phone1")) != field_type_map_.end()); | 88 field_type_map_.find(ASCIIToUTF16("phone1")) != field_type_map_.end()); |
168 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("phone1")]); | 89 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("phone1")]); |
169 } | 90 } |
170 | 91 |
171 TEST_F(PhoneFieldTest, ThreePartPhoneNumber) { | 92 TEST_F(PhoneFieldTest, ThreePartPhoneNumber) { |
172 // Phone in format <field> - <field> - <field> could be either | 93 // Phone in format <field> - <field> - <field> could be either |
173 // <area code> - <prefix> - <suffix>, or | 94 // <area code> - <prefix> - <suffix>, or |
(...skipping 26 matching lines...) Expand all Loading... |
200 ASCIIToUTF16("suffix1"))); | 121 ASCIIToUTF16("suffix1"))); |
201 list_.push_back( | 122 list_.push_back( |
202 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("ext.:"), | 123 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("ext.:"), |
203 ASCIIToUTF16("dayphone4"), | 124 ASCIIToUTF16("dayphone4"), |
204 string16(), | 125 string16(), |
205 ASCIIToUTF16("text"), | 126 ASCIIToUTF16("text"), |
206 0, | 127 0, |
207 false), | 128 false), |
208 ASCIIToUTF16("ext1"))); | 129 ASCIIToUTF16("ext1"))); |
209 AutofillScanner scanner(list_.get()); | 130 AutofillScanner scanner(list_.get()); |
210 field_.reset(Parse(&scanner, false)); | 131 field_.reset(Parse(&scanner)); |
211 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | 132 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
212 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | 133 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
213 ASSERT_TRUE( | 134 ASSERT_TRUE( |
214 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); | 135 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); |
215 EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); | 136 EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); |
216 ASSERT_TRUE( | 137 ASSERT_TRUE( |
217 field_type_map_.find(ASCIIToUTF16("prefix1")) != field_type_map_.end()); | 138 field_type_map_.find(ASCIIToUTF16("prefix1")) != field_type_map_.end()); |
218 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("prefix1")]); | 139 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("prefix1")]); |
219 ASSERT_TRUE( | 140 ASSERT_TRUE( |
220 field_type_map_.find(ASCIIToUTF16("suffix1")) != field_type_map_.end()); | 141 field_type_map_.find(ASCIIToUTF16("suffix1")) != field_type_map_.end()); |
(...skipping 22 matching lines...) Expand all Loading... |
243 ASCIIToUTF16("prefix1"))); | 164 ASCIIToUTF16("prefix1"))); |
244 list_.push_back( | 165 list_.push_back( |
245 new AutofillField(webkit_glue::FormField(string16(), | 166 new AutofillField(webkit_glue::FormField(string16(), |
246 ASCIIToUTF16("suffix"), | 167 ASCIIToUTF16("suffix"), |
247 string16(), | 168 string16(), |
248 ASCIIToUTF16("text"), | 169 ASCIIToUTF16("text"), |
249 0, | 170 0, |
250 false), | 171 false), |
251 ASCIIToUTF16("suffix1"))); | 172 ASCIIToUTF16("suffix1"))); |
252 AutofillScanner scanner(list_.get()); | 173 AutofillScanner scanner(list_.get()); |
253 field_.reset(Parse(&scanner, false)); | 174 field_.reset(Parse(&scanner)); |
254 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | 175 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
255 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | 176 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
256 ASSERT_TRUE( | 177 ASSERT_TRUE( |
257 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); | 178 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); |
258 EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); | 179 EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); |
259 ASSERT_TRUE( | 180 ASSERT_TRUE( |
260 field_type_map_.find(ASCIIToUTF16("prefix1")) != field_type_map_.end()); | 181 field_type_map_.find(ASCIIToUTF16("prefix1")) != field_type_map_.end()); |
261 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("prefix1")]); | 182 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("prefix1")]); |
262 ASSERT_TRUE( | 183 ASSERT_TRUE( |
263 field_type_map_.find(ASCIIToUTF16("suffix1")) != field_type_map_.end()); | 184 field_type_map_.find(ASCIIToUTF16("suffix1")) != field_type_map_.end()); |
(...skipping 19 matching lines...) Expand all Loading... |
283 ASCIIToUTF16("phone2"))); | 204 ASCIIToUTF16("phone2"))); |
284 list_.push_back( | 205 list_.push_back( |
285 new AutofillField(webkit_glue::FormField(string16(), | 206 new AutofillField(webkit_glue::FormField(string16(), |
286 ASCIIToUTF16("phone3"), | 207 ASCIIToUTF16("phone3"), |
287 string16(), | 208 string16(), |
288 ASCIIToUTF16("text"), | 209 ASCIIToUTF16("text"), |
289 4, | 210 4, |
290 false), | 211 false), |
291 ASCIIToUTF16("phone3"))); | 212 ASCIIToUTF16("phone3"))); |
292 AutofillScanner scanner(list_.get()); | 213 AutofillScanner scanner(list_.get()); |
293 field_.reset(Parse(&scanner, false)); | 214 field_.reset(Parse(&scanner)); |
294 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | 215 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
295 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | 216 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
296 ASSERT_TRUE( | 217 ASSERT_TRUE( |
297 field_type_map_.find(ASCIIToUTF16("phone1")) != field_type_map_.end()); | 218 field_type_map_.find(ASCIIToUTF16("phone1")) != field_type_map_.end()); |
298 EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("phone1")]); | 219 EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("phone1")]); |
299 ASSERT_TRUE( | 220 ASSERT_TRUE( |
300 field_type_map_.find(ASCIIToUTF16("phone2")) != field_type_map_.end()); | 221 field_type_map_.find(ASCIIToUTF16("phone2")) != field_type_map_.end()); |
301 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("phone2")]); | 222 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("phone2")]); |
302 ASSERT_TRUE( | 223 ASSERT_TRUE( |
303 field_type_map_.find(ASCIIToUTF16("phone3")) != field_type_map_.end()); | 224 field_type_map_.find(ASCIIToUTF16("phone3")) != field_type_map_.end()); |
304 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("phone3")]); | 225 EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("phone3")]); |
305 } | 226 } |
306 | 227 |
307 TEST_F(PhoneFieldTest, ParseOneLineFax) { | 228 TEST_F(PhoneFieldTest, ParseOneLineFax) { |
308 list_.push_back( | 229 list_.push_back( |
309 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Fax"), | 230 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Fax"), |
310 ASCIIToUTF16("fax"), | 231 ASCIIToUTF16("fax"), |
311 string16(), | 232 string16(), |
312 ASCIIToUTF16("text"), | 233 ASCIIToUTF16("text"), |
313 0, | 234 0, |
314 false), | 235 false), |
315 ASCIIToUTF16("fax1"))); | 236 ASCIIToUTF16("fax1"))); |
316 AutofillScanner scanner(list_.get()); | 237 AutofillScanner scanner(list_.get()); |
317 field_.reset(Parse(&scanner, false)); | 238 field_.reset(Parse(&scanner)); |
318 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | 239 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
319 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | 240 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
320 ASSERT_TRUE( | 241 ASSERT_TRUE( |
321 field_type_map_.find(ASCIIToUTF16("fax1")) != field_type_map_.end()); | 242 field_type_map_.find(ASCIIToUTF16("fax1")) != field_type_map_.end()); |
322 EXPECT_EQ(PHONE_FAX_WHOLE_NUMBER, field_type_map_[ASCIIToUTF16("fax1")]); | 243 EXPECT_EQ(PHONE_FAX_WHOLE_NUMBER, field_type_map_[ASCIIToUTF16("fax1")]); |
323 } | 244 } |
324 | 245 |
325 TEST_F(PhoneFieldTest, ParseTwoLineFax) { | 246 TEST_F(PhoneFieldTest, ParseTwoLineFax) { |
326 list_.push_back( | 247 list_.push_back( |
327 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Area Code"), | 248 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Area Code"), |
328 ASCIIToUTF16("area code"), | 249 ASCIIToUTF16("area code"), |
329 string16(), | 250 string16(), |
330 ASCIIToUTF16("text"), | 251 ASCIIToUTF16("text"), |
331 0, | 252 0, |
332 false), | 253 false), |
333 ASCIIToUTF16("areacode1"))); | 254 ASCIIToUTF16("areacode1"))); |
334 list_.push_back( | 255 list_.push_back( |
335 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Fax"), | 256 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Fax"), |
336 ASCIIToUTF16("fax"), | 257 ASCIIToUTF16("fax"), |
337 string16(), | 258 string16(), |
338 ASCIIToUTF16("text"), | 259 ASCIIToUTF16("text"), |
339 0, | 260 0, |
340 false), | 261 false), |
341 ASCIIToUTF16("fax1"))); | 262 ASCIIToUTF16("fax1"))); |
342 AutofillScanner scanner(list_.get()); | 263 AutofillScanner scanner(list_.get()); |
343 field_.reset(Parse(&scanner, false)); | 264 field_.reset(Parse(&scanner)); |
344 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | 265 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
345 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | 266 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
346 ASSERT_TRUE( | 267 ASSERT_TRUE( |
347 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); | 268 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); |
348 // It should be FAX, based on the other phone in the group. | 269 // It should be FAX, based on the other phone in the group. |
349 EXPECT_EQ(PHONE_FAX_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); | 270 EXPECT_EQ(PHONE_FAX_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); |
350 ASSERT_TRUE( | 271 ASSERT_TRUE( |
351 field_type_map_.find(ASCIIToUTF16("fax1")) != field_type_map_.end()); | 272 field_type_map_.find(ASCIIToUTF16("fax1")) != field_type_map_.end()); |
352 EXPECT_EQ(PHONE_FAX_NUMBER, field_type_map_[ASCIIToUTF16("fax1")]); | 273 EXPECT_EQ(PHONE_FAX_NUMBER, field_type_map_[ASCIIToUTF16("fax1")]); |
353 } | 274 } |
(...skipping 17 matching lines...) Expand all Loading... |
371 ASCIIToUTF16("prefix1"))); | 292 ASCIIToUTF16("prefix1"))); |
372 list_.push_back( | 293 list_.push_back( |
373 new AutofillField(webkit_glue::FormField(string16(), | 294 new AutofillField(webkit_glue::FormField(string16(), |
374 ASCIIToUTF16("suffix"), | 295 ASCIIToUTF16("suffix"), |
375 string16(), | 296 string16(), |
376 ASCIIToUTF16("text"), | 297 ASCIIToUTF16("text"), |
377 0, | 298 0, |
378 false), | 299 false), |
379 ASCIIToUTF16("suffix1"))); | 300 ASCIIToUTF16("suffix1"))); |
380 AutofillScanner scanner(list_.get()); | 301 AutofillScanner scanner(list_.get()); |
381 field_.reset(Parse(&scanner, false)); | 302 field_.reset(Parse(&scanner)); |
382 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | 303 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
383 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | 304 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
384 ASSERT_TRUE( | 305 ASSERT_TRUE( |
385 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); | 306 field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); |
386 EXPECT_EQ(PHONE_FAX_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); | 307 EXPECT_EQ(PHONE_FAX_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); |
387 ASSERT_TRUE( | 308 ASSERT_TRUE( |
388 field_type_map_.find(ASCIIToUTF16("prefix1")) != field_type_map_.end()); | 309 field_type_map_.find(ASCIIToUTF16("prefix1")) != field_type_map_.end()); |
389 EXPECT_EQ(PHONE_FAX_NUMBER, field_type_map_[ASCIIToUTF16("prefix1")]); | 310 EXPECT_EQ(PHONE_FAX_NUMBER, field_type_map_[ASCIIToUTF16("prefix1")]); |
390 ASSERT_TRUE( | 311 ASSERT_TRUE( |
391 field_type_map_.find(ASCIIToUTF16("suffix1")) != field_type_map_.end()); | 312 field_type_map_.find(ASCIIToUTF16("suffix1")) != field_type_map_.end()); |
(...skipping 13 matching lines...) Expand all Loading... |
405 ASCIIToUTF16("country"))); | 326 ASCIIToUTF16("country"))); |
406 list_.push_back( | 327 list_.push_back( |
407 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Phone Number"), | 328 new AutofillField(webkit_glue::FormField(ASCIIToUTF16("Phone Number"), |
408 ASCIIToUTF16("PhoneNumber"), | 329 ASCIIToUTF16("PhoneNumber"), |
409 string16(), | 330 string16(), |
410 ASCIIToUTF16("text"), | 331 ASCIIToUTF16("text"), |
411 10, | 332 10, |
412 false), | 333 false), |
413 ASCIIToUTF16("phone"))); | 334 ASCIIToUTF16("phone"))); |
414 AutofillScanner scanner(list_.get()); | 335 AutofillScanner scanner(list_.get()); |
415 field_.reset(Parse(&scanner, false)); | 336 field_.reset(Parse(&scanner)); |
416 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); | 337 ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
417 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); | 338 ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
418 ASSERT_TRUE( | 339 ASSERT_TRUE( |
419 field_type_map_.find(ASCIIToUTF16("country")) != field_type_map_.end()); | 340 field_type_map_.find(ASCIIToUTF16("country")) != field_type_map_.end()); |
420 EXPECT_EQ(PHONE_HOME_COUNTRY_CODE, field_type_map_[ASCIIToUTF16("country")]); | 341 EXPECT_EQ(PHONE_HOME_COUNTRY_CODE, field_type_map_[ASCIIToUTF16("country")]); |
421 ASSERT_TRUE( | 342 ASSERT_TRUE( |
422 field_type_map_.find(ASCIIToUTF16("phone")) != field_type_map_.end()); | 343 field_type_map_.find(ASCIIToUTF16("phone")) != field_type_map_.end()); |
423 EXPECT_EQ(PHONE_HOME_CITY_AND_NUMBER, field_type_map_[ASCIIToUTF16("phone")]); | 344 EXPECT_EQ(PHONE_HOME_CITY_AND_NUMBER, field_type_map_[ASCIIToUTF16("phone")]); |
424 } | 345 } |
OLD | NEW |