OLD | NEW |
---|---|
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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/string_util.h" | 5 #include "base/string_util.h" |
6 #include "base/utf_string_conversions.h" | 6 #include "base/utf_string_conversions.h" |
7 #include "chrome/renderer/form_manager.h" | 7 #include "chrome/renderer/form_manager.h" |
8 #include "chrome/test/render_view_test.h" | 8 #include "chrome/test/render_view_test.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 #include "third_party/WebKit/WebKit/chromium/public/WebDocument.h" | 10 #include "third_party/WebKit/WebKit/chromium/public/WebDocument.h" |
(...skipping 19 matching lines...) Expand all Loading... | |
30 using WebKit::WebString; | 30 using WebKit::WebString; |
31 using WebKit::WebVector; | 31 using WebKit::WebVector; |
32 | 32 |
33 using webkit_glue::FormData; | 33 using webkit_glue::FormData; |
34 using webkit_glue::FormField; | 34 using webkit_glue::FormField; |
35 | 35 |
36 namespace { | 36 namespace { |
37 | 37 |
38 typedef RenderViewTest FormManagerTest; | 38 typedef RenderViewTest FormManagerTest; |
39 | 39 |
40 // TODO(isherman): Pull this as a named constant from WebKit | |
41 const int defaultMaxLength = 524288; | |
dhollowa
2010/11/19 03:00:29
nit: kDefaultMaxLength. Also, 524288 == 0x80000 i
| |
42 | |
40 TEST_F(FormManagerTest, WebFormElementToFormData) { | 43 TEST_F(FormManagerTest, WebFormElementToFormData) { |
41 LoadHTML("<FORM name=\"TestForm\" action=\"http://cnn.com\" method=\"post\">" | 44 LoadHTML("<FORM name=\"TestForm\" action=\"http://cnn.com\" method=\"post\">" |
42 " <INPUT type=\"text\" id=\"firstname\" value=\"John\"/>" | 45 " <INPUT type=\"text\" id=\"firstname\" value=\"John\"/>" |
43 " <INPUT type=\"text\" id=\"lastname\" value=\"Smith\"/>" | 46 " <INPUT type=\"text\" id=\"lastname\" value=\"Smith\"/>" |
44 " <INPUT type=\"hidden\" id=\"notvisible\" value=\"apple\"/>" | 47 " <INPUT type=\"hidden\" id=\"notvisible\" value=\"apple\"/>" |
45 " <INPUT type=\"submit\" name=\"reply-send\" value=\"Send\"/>" | 48 " <INPUT type=\"submit\" name=\"reply-send\" value=\"Send\"/>" |
46 "</FORM>"); | 49 "</FORM>"); |
47 | 50 |
48 WebFrame* frame = GetMainFrame(); | 51 WebFrame* frame = GetMainFrame(); |
49 ASSERT_NE(static_cast<WebFrame*>(NULL), frame); | 52 ASSERT_NE(static_cast<WebFrame*>(NULL), frame); |
(...skipping 11 matching lines...) Expand all Loading... | |
61 EXPECT_EQ(GURL(frame->url()), form.origin); | 64 EXPECT_EQ(GURL(frame->url()), form.origin); |
62 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 65 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
63 | 66 |
64 const std::vector<FormField>& fields = form.fields; | 67 const std::vector<FormField>& fields = form.fields; |
65 ASSERT_EQ(4U, fields.size()); | 68 ASSERT_EQ(4U, fields.size()); |
66 EXPECT_TRUE(fields[0].StrictlyEqualsHack( | 69 EXPECT_TRUE(fields[0].StrictlyEqualsHack( |
67 FormField(string16(), | 70 FormField(string16(), |
68 ASCIIToUTF16("firstname"), | 71 ASCIIToUTF16("firstname"), |
69 ASCIIToUTF16("John"), | 72 ASCIIToUTF16("John"), |
70 ASCIIToUTF16("text"), | 73 ASCIIToUTF16("text"), |
71 20))); | 74 defaultMaxLength))); |
72 EXPECT_TRUE(fields[1].StrictlyEqualsHack( | 75 EXPECT_TRUE(fields[1].StrictlyEqualsHack( |
73 FormField(string16(), | 76 FormField(string16(), |
74 ASCIIToUTF16("lastname"), | 77 ASCIIToUTF16("lastname"), |
75 ASCIIToUTF16("Smith"), | 78 ASCIIToUTF16("Smith"), |
76 ASCIIToUTF16("text"), | 79 ASCIIToUTF16("text"), |
77 20))); | 80 defaultMaxLength))); |
78 EXPECT_TRUE(fields[2].StrictlyEqualsHack( | 81 EXPECT_TRUE(fields[2].StrictlyEqualsHack( |
79 FormField(string16(), | 82 FormField(string16(), |
80 ASCIIToUTF16("notvisible"), | 83 ASCIIToUTF16("notvisible"), |
81 ASCIIToUTF16("apple"), | 84 ASCIIToUTF16("apple"), |
82 ASCIIToUTF16("hidden"), | 85 ASCIIToUTF16("hidden"), |
83 0))); | 86 0))); |
84 EXPECT_TRUE(fields[3].StrictlyEqualsHack( | 87 EXPECT_TRUE(fields[3].StrictlyEqualsHack( |
85 FormField(string16(), | 88 FormField(string16(), |
86 ASCIIToUTF16("reply-send"), | 89 ASCIIToUTF16("reply-send"), |
87 string16(), | 90 string16(), |
(...skipping 22 matching lines...) Expand all Loading... | |
110 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 113 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
111 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 114 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
112 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 115 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
113 | 116 |
114 const std::vector<FormField>& fields = form.fields; | 117 const std::vector<FormField>& fields = form.fields; |
115 ASSERT_EQ(3U, fields.size()); | 118 ASSERT_EQ(3U, fields.size()); |
116 EXPECT_EQ(FormField(string16(), | 119 EXPECT_EQ(FormField(string16(), |
117 ASCIIToUTF16("firstname"), | 120 ASCIIToUTF16("firstname"), |
118 ASCIIToUTF16("John"), | 121 ASCIIToUTF16("John"), |
119 ASCIIToUTF16("text"), | 122 ASCIIToUTF16("text"), |
120 20), | 123 defaultMaxLength), |
121 fields[0]); | 124 fields[0]); |
122 EXPECT_EQ(FormField(string16(), | 125 EXPECT_EQ(FormField(string16(), |
123 ASCIIToUTF16("lastname"), | 126 ASCIIToUTF16("lastname"), |
124 ASCIIToUTF16("Smith"), | 127 ASCIIToUTF16("Smith"), |
125 ASCIIToUTF16("text"), | 128 ASCIIToUTF16("text"), |
126 20), | 129 defaultMaxLength), |
127 fields[1]); | 130 fields[1]); |
128 EXPECT_EQ(FormField(string16(), | 131 EXPECT_EQ(FormField(string16(), |
129 ASCIIToUTF16("reply-send"), | 132 ASCIIToUTF16("reply-send"), |
130 ASCIIToUTF16("Send"), | 133 ASCIIToUTF16("Send"), |
131 ASCIIToUTF16("submit"), | 134 ASCIIToUTF16("submit"), |
132 0), | 135 0), |
133 fields[2]); | 136 fields[2]); |
134 } | 137 } |
135 | 138 |
136 TEST_F(FormManagerTest, ExtractMultipleForms) { | 139 TEST_F(FormManagerTest, ExtractMultipleForms) { |
(...skipping 23 matching lines...) Expand all Loading... | |
160 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 163 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
161 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 164 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
162 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 165 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
163 | 166 |
164 const std::vector<FormField>& fields = form.fields; | 167 const std::vector<FormField>& fields = form.fields; |
165 ASSERT_EQ(3U, fields.size()); | 168 ASSERT_EQ(3U, fields.size()); |
166 EXPECT_EQ(FormField(string16(), | 169 EXPECT_EQ(FormField(string16(), |
167 ASCIIToUTF16("firstname"), | 170 ASCIIToUTF16("firstname"), |
168 ASCIIToUTF16("John"), | 171 ASCIIToUTF16("John"), |
169 ASCIIToUTF16("text"), | 172 ASCIIToUTF16("text"), |
170 20), | 173 defaultMaxLength), |
171 fields[0]); | 174 fields[0]); |
172 EXPECT_EQ(FormField(string16(), | 175 EXPECT_EQ(FormField(string16(), |
173 ASCIIToUTF16("lastname"), | 176 ASCIIToUTF16("lastname"), |
174 ASCIIToUTF16("Smith"), | 177 ASCIIToUTF16("Smith"), |
175 ASCIIToUTF16("text"), | 178 ASCIIToUTF16("text"), |
176 20), | 179 defaultMaxLength), |
177 fields[1]); | 180 fields[1]); |
178 EXPECT_EQ(FormField(string16(), | 181 EXPECT_EQ(FormField(string16(), |
179 ASCIIToUTF16("reply-send"), | 182 ASCIIToUTF16("reply-send"), |
180 ASCIIToUTF16("Send"), | 183 ASCIIToUTF16("Send"), |
181 ASCIIToUTF16("submit"), | 184 ASCIIToUTF16("submit"), |
182 0), | 185 0), |
183 fields[2]); | 186 fields[2]); |
184 | 187 |
185 // Second form. | 188 // Second form. |
186 const FormData& form2 = forms[1]; | 189 const FormData& form2 = forms[1]; |
187 EXPECT_EQ(ASCIIToUTF16("TestForm2"), form2.name); | 190 EXPECT_EQ(ASCIIToUTF16("TestForm2"), form2.name); |
188 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 191 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
189 EXPECT_EQ(GURL("http://zoo.com"), form2.action); | 192 EXPECT_EQ(GURL("http://zoo.com"), form2.action); |
190 | 193 |
191 const std::vector<FormField>& fields2 = form2.fields; | 194 const std::vector<FormField>& fields2 = form2.fields; |
192 ASSERT_EQ(3U, fields2.size()); | 195 ASSERT_EQ(3U, fields2.size()); |
193 EXPECT_EQ(FormField(string16(), | 196 EXPECT_EQ(FormField(string16(), |
194 ASCIIToUTF16("firstname"), | 197 ASCIIToUTF16("firstname"), |
195 ASCIIToUTF16("John"), | 198 ASCIIToUTF16("John"), |
196 ASCIIToUTF16("text"), | 199 ASCIIToUTF16("text"), |
197 20), | 200 defaultMaxLength), |
198 fields2[0]); | 201 fields2[0]); |
199 EXPECT_EQ(FormField(string16(), | 202 EXPECT_EQ(FormField(string16(), |
200 ASCIIToUTF16("lastname"), | 203 ASCIIToUTF16("lastname"), |
201 ASCIIToUTF16("Smith"), | 204 ASCIIToUTF16("Smith"), |
202 ASCIIToUTF16("text"), | 205 ASCIIToUTF16("text"), |
203 20), | 206 defaultMaxLength), |
204 fields2[1]); | 207 fields2[1]); |
205 EXPECT_EQ(FormField(string16(), | 208 EXPECT_EQ(FormField(string16(), |
206 ASCIIToUTF16("reply-send"), | 209 ASCIIToUTF16("reply-send"), |
207 ASCIIToUTF16("Send"), | 210 ASCIIToUTF16("Send"), |
208 ASCIIToUTF16("submit"), | 211 ASCIIToUTF16("submit"), |
209 0), | 212 0), |
210 fields2[2]); | 213 fields2[2]); |
211 } | 214 } |
212 | 215 |
213 TEST_F(FormManagerTest, GetFormsAutocomplete) { | 216 TEST_F(FormManagerTest, GetFormsAutocomplete) { |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
260 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 263 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
261 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 264 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
262 EXPECT_EQ(GURL("http://abc.com"), form.action); | 265 EXPECT_EQ(GURL("http://abc.com"), form.action); |
263 | 266 |
264 const std::vector<FormField>& fields = form.fields; | 267 const std::vector<FormField>& fields = form.fields; |
265 ASSERT_EQ(3U, fields.size()); | 268 ASSERT_EQ(3U, fields.size()); |
266 EXPECT_EQ(FormField(string16(), | 269 EXPECT_EQ(FormField(string16(), |
267 ASCIIToUTF16("middlename"), | 270 ASCIIToUTF16("middlename"), |
268 ASCIIToUTF16("Jack"), | 271 ASCIIToUTF16("Jack"), |
269 ASCIIToUTF16("text"), | 272 ASCIIToUTF16("text"), |
270 20), | 273 defaultMaxLength), |
271 fields[0]); | 274 fields[0]); |
272 EXPECT_EQ(FormField(string16(), | 275 EXPECT_EQ(FormField(string16(), |
273 ASCIIToUTF16("lastname"), | 276 ASCIIToUTF16("lastname"), |
274 ASCIIToUTF16("Smith"), | 277 ASCIIToUTF16("Smith"), |
275 ASCIIToUTF16("text"), | 278 ASCIIToUTF16("text"), |
276 20), | 279 defaultMaxLength), |
277 fields[1]); | 280 fields[1]); |
278 EXPECT_EQ(FormField(string16(), | 281 EXPECT_EQ(FormField(string16(), |
279 ASCIIToUTF16("reply"), | 282 ASCIIToUTF16("reply"), |
280 ASCIIToUTF16("Send"), | 283 ASCIIToUTF16("Send"), |
281 ASCIIToUTF16("submit"), | 284 ASCIIToUTF16("submit"), |
282 0), | 285 0), |
283 fields[2]); | 286 fields[2]); |
284 } | 287 } |
285 | 288 |
286 TEST_F(FormManagerTest, GetFormsElementsEnabled) { | 289 TEST_F(FormManagerTest, GetFormsElementsEnabled) { |
(...skipping 19 matching lines...) Expand all Loading... | |
306 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 309 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
307 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 310 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
308 EXPECT_EQ(GURL("http://xyz.com"), form.action); | 311 EXPECT_EQ(GURL("http://xyz.com"), form.action); |
309 | 312 |
310 const std::vector<FormField>& fields = form.fields; | 313 const std::vector<FormField>& fields = form.fields; |
311 ASSERT_EQ(3U, fields.size()); | 314 ASSERT_EQ(3U, fields.size()); |
312 EXPECT_EQ(FormField(string16(), | 315 EXPECT_EQ(FormField(string16(), |
313 ASCIIToUTF16("middlename"), | 316 ASCIIToUTF16("middlename"), |
314 ASCIIToUTF16("Jack"), | 317 ASCIIToUTF16("Jack"), |
315 ASCIIToUTF16("text"), | 318 ASCIIToUTF16("text"), |
316 20), | 319 defaultMaxLength), |
317 fields[0]); | 320 fields[0]); |
318 EXPECT_EQ(FormField(string16(), | 321 EXPECT_EQ(FormField(string16(), |
319 ASCIIToUTF16("lastname"), | 322 ASCIIToUTF16("lastname"), |
320 ASCIIToUTF16("Smith"), | 323 ASCIIToUTF16("Smith"), |
321 ASCIIToUTF16("text"), | 324 ASCIIToUTF16("text"), |
322 20), | 325 defaultMaxLength), |
323 fields[1]); | 326 fields[1]); |
324 EXPECT_EQ(FormField(string16(), | 327 EXPECT_EQ(FormField(string16(), |
325 ASCIIToUTF16("submit"), | 328 ASCIIToUTF16("submit"), |
326 ASCIIToUTF16("Send"), | 329 ASCIIToUTF16("Send"), |
327 ASCIIToUTF16("submit"), | 330 ASCIIToUTF16("submit"), |
328 0), | 331 0), |
329 fields[2]); | 332 fields[2]); |
330 } | 333 } |
331 | 334 |
332 TEST_F(FormManagerTest, FindForm) { | 335 TEST_F(FormManagerTest, FindForm) { |
(...skipping 25 matching lines...) Expand all Loading... | |
358 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 361 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
359 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 362 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
360 EXPECT_EQ(GURL("http://buh.com"), form.action); | 363 EXPECT_EQ(GURL("http://buh.com"), form.action); |
361 | 364 |
362 const std::vector<FormField>& fields = form.fields; | 365 const std::vector<FormField>& fields = form.fields; |
363 ASSERT_EQ(3U, fields.size()); | 366 ASSERT_EQ(3U, fields.size()); |
364 EXPECT_EQ(FormField(string16(), | 367 EXPECT_EQ(FormField(string16(), |
365 ASCIIToUTF16("firstname"), | 368 ASCIIToUTF16("firstname"), |
366 ASCIIToUTF16("John"), | 369 ASCIIToUTF16("John"), |
367 ASCIIToUTF16("text"), | 370 ASCIIToUTF16("text"), |
368 20), | 371 defaultMaxLength), |
369 fields[0]); | 372 fields[0]); |
370 EXPECT_EQ(FormField(string16(), | 373 EXPECT_EQ(FormField(string16(), |
371 ASCIIToUTF16("lastname"), | 374 ASCIIToUTF16("lastname"), |
372 ASCIIToUTF16("Smith"), | 375 ASCIIToUTF16("Smith"), |
373 ASCIIToUTF16("text"), | 376 ASCIIToUTF16("text"), |
374 20), | 377 defaultMaxLength), |
375 fields[1]); | 378 fields[1]); |
376 EXPECT_EQ(FormField(string16(), | 379 EXPECT_EQ(FormField(string16(), |
377 ASCIIToUTF16("reply-send"), | 380 ASCIIToUTF16("reply-send"), |
378 ASCIIToUTF16("Send"), | 381 ASCIIToUTF16("Send"), |
379 ASCIIToUTF16("submit"), | 382 ASCIIToUTF16("submit"), |
380 0), | 383 0), |
381 fields[2]); | 384 fields[2]); |
382 } | 385 } |
383 | 386 |
384 TEST_F(FormManagerTest, FillForm) { | 387 TEST_F(FormManagerTest, FillForm) { |
(...skipping 29 matching lines...) Expand all Loading... | |
414 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 417 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
415 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 418 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
416 EXPECT_EQ(GURL("http://buh.com"), form.action); | 419 EXPECT_EQ(GURL("http://buh.com"), form.action); |
417 | 420 |
418 const std::vector<FormField>& fields = form.fields; | 421 const std::vector<FormField>& fields = form.fields; |
419 ASSERT_EQ(7U, fields.size()); | 422 ASSERT_EQ(7U, fields.size()); |
420 EXPECT_EQ(FormField(string16(), | 423 EXPECT_EQ(FormField(string16(), |
421 ASCIIToUTF16("firstname"), | 424 ASCIIToUTF16("firstname"), |
422 string16(), | 425 string16(), |
423 ASCIIToUTF16("text"), | 426 ASCIIToUTF16("text"), |
424 20), | 427 defaultMaxLength), |
425 fields[0]); | 428 fields[0]); |
426 EXPECT_EQ(FormField(string16(), | 429 EXPECT_EQ(FormField(string16(), |
427 ASCIIToUTF16("lastname"), | 430 ASCIIToUTF16("lastname"), |
428 string16(), | 431 string16(), |
429 ASCIIToUTF16("text"), | 432 ASCIIToUTF16("text"), |
430 20), | 433 defaultMaxLength), |
431 fields[1]); | 434 fields[1]); |
432 EXPECT_EQ(FormField(string16(), | 435 EXPECT_EQ(FormField(string16(), |
433 ASCIIToUTF16("imhidden"), | 436 ASCIIToUTF16("imhidden"), |
434 string16(), | 437 string16(), |
435 ASCIIToUTF16("hidden"), | 438 ASCIIToUTF16("hidden"), |
436 0), | 439 0), |
437 fields[2]); | 440 fields[2]); |
438 EXPECT_EQ(FormField(string16(), | 441 EXPECT_EQ(FormField(string16(), |
439 ASCIIToUTF16("notempty"), | 442 ASCIIToUTF16("notempty"), |
440 ASCIIToUTF16("Hi"), | 443 ASCIIToUTF16("Hi"), |
441 ASCIIToUTF16("text"), | 444 ASCIIToUTF16("text"), |
442 20), | 445 defaultMaxLength), |
443 fields[3]); | 446 fields[3]); |
444 EXPECT_EQ(FormField(string16(), | 447 EXPECT_EQ(FormField(string16(), |
445 ASCIIToUTF16("noautocomplete"), | 448 ASCIIToUTF16("noautocomplete"), |
446 string16(), | 449 string16(), |
447 ASCIIToUTF16("text"), | 450 ASCIIToUTF16("text"), |
448 20), | 451 defaultMaxLength), |
449 fields[4]); | 452 fields[4]); |
450 EXPECT_EQ(FormField(string16(), | 453 EXPECT_EQ(FormField(string16(), |
451 ASCIIToUTF16("notenabled"), | 454 ASCIIToUTF16("notenabled"), |
452 string16(), | 455 string16(), |
453 ASCIIToUTF16("text"), | 456 ASCIIToUTF16("text"), |
454 20), | 457 defaultMaxLength), |
455 fields[5]); | 458 fields[5]); |
456 EXPECT_EQ(FormField(string16(), | 459 EXPECT_EQ(FormField(string16(), |
457 ASCIIToUTF16("reply-send"), | 460 ASCIIToUTF16("reply-send"), |
458 ASCIIToUTF16("Send"), | 461 ASCIIToUTF16("Send"), |
459 ASCIIToUTF16("submit"), | 462 ASCIIToUTF16("submit"), |
460 0), | 463 0), |
461 fields[6]); | 464 fields[6]); |
462 | 465 |
463 // Fill the form. | 466 // Fill the form. |
464 form.fields[0].set_value(ASCIIToUTF16("Wyatt")); | 467 form.fields[0].set_value(ASCIIToUTF16("Wyatt")); |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
541 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 544 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
542 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 545 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
543 EXPECT_EQ(GURL("http://buh.com"), form.action); | 546 EXPECT_EQ(GURL("http://buh.com"), form.action); |
544 | 547 |
545 const std::vector<FormField>& fields = form.fields; | 548 const std::vector<FormField>& fields = form.fields; |
546 ASSERT_EQ(7U, fields.size()); | 549 ASSERT_EQ(7U, fields.size()); |
547 EXPECT_EQ(FormField(string16(), | 550 EXPECT_EQ(FormField(string16(), |
548 ASCIIToUTF16("firstname"), | 551 ASCIIToUTF16("firstname"), |
549 string16(), | 552 string16(), |
550 ASCIIToUTF16("text"), | 553 ASCIIToUTF16("text"), |
551 20), | 554 defaultMaxLength), |
552 fields[0]); | 555 fields[0]); |
553 EXPECT_EQ(FormField(string16(), | 556 EXPECT_EQ(FormField(string16(), |
554 ASCIIToUTF16("lastname"), | 557 ASCIIToUTF16("lastname"), |
555 string16(), | 558 string16(), |
556 ASCIIToUTF16("text"), | 559 ASCIIToUTF16("text"), |
557 20), | 560 defaultMaxLength), |
558 fields[1]); | 561 fields[1]); |
559 EXPECT_EQ(FormField(string16(), | 562 EXPECT_EQ(FormField(string16(), |
560 ASCIIToUTF16("imhidden"), | 563 ASCIIToUTF16("imhidden"), |
561 string16(), | 564 string16(), |
562 ASCIIToUTF16("hidden"), | 565 ASCIIToUTF16("hidden"), |
563 0), | 566 0), |
564 fields[2]); | 567 fields[2]); |
565 EXPECT_EQ(FormField(string16(), | 568 EXPECT_EQ(FormField(string16(), |
566 ASCIIToUTF16("notempty"), | 569 ASCIIToUTF16("notempty"), |
567 ASCIIToUTF16("Hi"), | 570 ASCIIToUTF16("Hi"), |
568 ASCIIToUTF16("text"), | 571 ASCIIToUTF16("text"), |
569 20), | 572 defaultMaxLength), |
570 fields[3]); | 573 fields[3]); |
571 EXPECT_EQ(FormField(string16(), | 574 EXPECT_EQ(FormField(string16(), |
572 ASCIIToUTF16("noautocomplete"), | 575 ASCIIToUTF16("noautocomplete"), |
573 string16(), | 576 string16(), |
574 ASCIIToUTF16("text"), | 577 ASCIIToUTF16("text"), |
575 20), | 578 defaultMaxLength), |
576 fields[4]); | 579 fields[4]); |
577 EXPECT_EQ(FormField(string16(), | 580 EXPECT_EQ(FormField(string16(), |
578 ASCIIToUTF16("notenabled"), | 581 ASCIIToUTF16("notenabled"), |
579 string16(), | 582 string16(), |
580 ASCIIToUTF16("text"), | 583 ASCIIToUTF16("text"), |
581 20), | 584 defaultMaxLength), |
582 fields[5]); | 585 fields[5]); |
583 EXPECT_EQ(FormField(string16(), | 586 EXPECT_EQ(FormField(string16(), |
584 ASCIIToUTF16("reply-send"), | 587 ASCIIToUTF16("reply-send"), |
585 ASCIIToUTF16("Send"), | 588 ASCIIToUTF16("Send"), |
586 ASCIIToUTF16("submit"), | 589 ASCIIToUTF16("submit"), |
587 0), | 590 0), |
588 fields[6]); | 591 fields[6]); |
589 | 592 |
590 // Preview the form. | 593 // Preview the form. |
591 form.fields[0].set_value(ASCIIToUTF16("Wyatt")); | 594 form.fields[0].set_value(ASCIIToUTF16("Wyatt")); |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
684 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 687 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
685 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 688 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
686 | 689 |
687 const std::vector<FormField>& fields = form.fields; | 690 const std::vector<FormField>& fields = form.fields; |
688 ASSERT_EQ(3U, fields.size()); | 691 ASSERT_EQ(3U, fields.size()); |
689 EXPECT_TRUE(fields[0].StrictlyEqualsHack( | 692 EXPECT_TRUE(fields[0].StrictlyEqualsHack( |
690 FormField(ASCIIToUTF16("First name:"), | 693 FormField(ASCIIToUTF16("First name:"), |
691 ASCIIToUTF16("firstname"), | 694 ASCIIToUTF16("firstname"), |
692 ASCIIToUTF16("John"), | 695 ASCIIToUTF16("John"), |
693 ASCIIToUTF16("text"), | 696 ASCIIToUTF16("text"), |
694 20))); | 697 defaultMaxLength))); |
695 EXPECT_TRUE(fields[1].StrictlyEqualsHack( | 698 EXPECT_TRUE(fields[1].StrictlyEqualsHack( |
696 FormField(ASCIIToUTF16("Last name:"), | 699 FormField(ASCIIToUTF16("Last name:"), |
697 ASCIIToUTF16("lastname"), | 700 ASCIIToUTF16("lastname"), |
698 ASCIIToUTF16("Smith"), | 701 ASCIIToUTF16("Smith"), |
699 ASCIIToUTF16("text"), | 702 ASCIIToUTF16("text"), |
700 20))); | 703 defaultMaxLength))); |
701 EXPECT_TRUE(fields[2].StrictlyEqualsHack( | 704 EXPECT_TRUE(fields[2].StrictlyEqualsHack( |
702 FormField(string16(), | 705 FormField(string16(), |
703 ASCIIToUTF16("reply-send"), | 706 ASCIIToUTF16("reply-send"), |
704 string16(), | 707 string16(), |
705 ASCIIToUTF16("submit"), | 708 ASCIIToUTF16("submit"), |
706 0))); | 709 0))); |
707 } | 710 } |
708 | 711 |
709 TEST_F(FormManagerTest, LabelsWithSpans) { | 712 TEST_F(FormManagerTest, LabelsWithSpans) { |
710 LoadHTML("<FORM name=\"TestForm\" action=\"http://cnn.com\" method=\"post\">" | 713 LoadHTML("<FORM name=\"TestForm\" action=\"http://cnn.com\" method=\"post\">" |
(...skipping 19 matching lines...) Expand all Loading... | |
730 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 733 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
731 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 734 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
732 | 735 |
733 const std::vector<FormField>& fields = form.fields; | 736 const std::vector<FormField>& fields = form.fields; |
734 ASSERT_EQ(3U, fields.size()); | 737 ASSERT_EQ(3U, fields.size()); |
735 EXPECT_TRUE(fields[0].StrictlyEqualsHack( | 738 EXPECT_TRUE(fields[0].StrictlyEqualsHack( |
736 FormField(ASCIIToUTF16("First name:"), | 739 FormField(ASCIIToUTF16("First name:"), |
737 ASCIIToUTF16("firstname"), | 740 ASCIIToUTF16("firstname"), |
738 ASCIIToUTF16("John"), | 741 ASCIIToUTF16("John"), |
739 ASCIIToUTF16("text"), | 742 ASCIIToUTF16("text"), |
740 20))); | 743 defaultMaxLength))); |
741 EXPECT_TRUE(fields[1].StrictlyEqualsHack( | 744 EXPECT_TRUE(fields[1].StrictlyEqualsHack( |
742 FormField(ASCIIToUTF16("Last name:"), | 745 FormField(ASCIIToUTF16("Last name:"), |
743 ASCIIToUTF16("lastname"), | 746 ASCIIToUTF16("lastname"), |
744 ASCIIToUTF16("Smith"), | 747 ASCIIToUTF16("Smith"), |
745 ASCIIToUTF16("text"), | 748 ASCIIToUTF16("text"), |
746 20))); | 749 defaultMaxLength))); |
747 EXPECT_TRUE(fields[2].StrictlyEqualsHack( | 750 EXPECT_TRUE(fields[2].StrictlyEqualsHack( |
748 FormField(string16(), | 751 FormField(string16(), |
749 ASCIIToUTF16("reply-send"), | 752 ASCIIToUTF16("reply-send"), |
750 string16(), | 753 string16(), |
751 ASCIIToUTF16("submit"), | 754 ASCIIToUTF16("submit"), |
752 0))); | 755 0))); |
753 } | 756 } |
754 | 757 |
755 // This test is different from FormManagerTest.Labels in that the label elements | 758 // This test is different from FormManagerTest.Labels in that the label elements |
756 // for= attribute is set to the name of the form control element it is a label | 759 // for= attribute is set to the name of the form control element it is a label |
(...skipping 25 matching lines...) Expand all Loading... | |
782 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 785 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
783 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 786 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
784 | 787 |
785 const std::vector<FormField>& fields = form.fields; | 788 const std::vector<FormField>& fields = form.fields; |
786 ASSERT_EQ(3U, fields.size()); | 789 ASSERT_EQ(3U, fields.size()); |
787 EXPECT_TRUE(fields[0].StrictlyEqualsHack( | 790 EXPECT_TRUE(fields[0].StrictlyEqualsHack( |
788 FormField(ASCIIToUTF16("First name:"), | 791 FormField(ASCIIToUTF16("First name:"), |
789 ASCIIToUTF16("firstname"), | 792 ASCIIToUTF16("firstname"), |
790 ASCIIToUTF16("John"), | 793 ASCIIToUTF16("John"), |
791 ASCIIToUTF16("text"), | 794 ASCIIToUTF16("text"), |
792 20))); | 795 defaultMaxLength))); |
793 EXPECT_TRUE(fields[1].StrictlyEqualsHack( | 796 EXPECT_TRUE(fields[1].StrictlyEqualsHack( |
794 FormField(ASCIIToUTF16("Last name:"), | 797 FormField(ASCIIToUTF16("Last name:"), |
795 ASCIIToUTF16("lastname"), | 798 ASCIIToUTF16("lastname"), |
796 ASCIIToUTF16("Smith"), | 799 ASCIIToUTF16("Smith"), |
797 ASCIIToUTF16("text"), | 800 ASCIIToUTF16("text"), |
798 20))); | 801 defaultMaxLength))); |
799 EXPECT_TRUE(fields[2].StrictlyEqualsHack( | 802 EXPECT_TRUE(fields[2].StrictlyEqualsHack( |
800 FormField(string16(), | 803 FormField(string16(), |
801 ASCIIToUTF16("reply-send"), | 804 ASCIIToUTF16("reply-send"), |
802 string16(), | 805 string16(), |
803 ASCIIToUTF16("submit"), | 806 ASCIIToUTF16("submit"), |
804 0))); | 807 0))); |
805 } | 808 } |
806 | 809 |
807 // This test has three form control elements, only one of which has a label | 810 // This test has three form control elements, only one of which has a label |
808 // element associated with it. The first element is disabled because of the | 811 // element associated with it. The first element is disabled because of the |
(...skipping 24 matching lines...) Expand all Loading... | |
833 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 836 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
834 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 837 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
835 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 838 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
836 | 839 |
837 const std::vector<FormField>& fields = form.fields; | 840 const std::vector<FormField>& fields = form.fields; |
838 ASSERT_EQ(3U, fields.size()); | 841 ASSERT_EQ(3U, fields.size()); |
839 EXPECT_EQ(FormField(ASCIIToUTF16("Middle name:"), | 842 EXPECT_EQ(FormField(ASCIIToUTF16("Middle name:"), |
840 ASCIIToUTF16("middlename"), | 843 ASCIIToUTF16("middlename"), |
841 string16(), | 844 string16(), |
842 ASCIIToUTF16("text"), | 845 ASCIIToUTF16("text"), |
843 20), | 846 defaultMaxLength), |
844 fields[0]); | 847 fields[0]); |
845 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), | 848 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), |
846 ASCIIToUTF16("lastname"), | 849 ASCIIToUTF16("lastname"), |
847 string16(), | 850 string16(), |
848 ASCIIToUTF16("text"), | 851 ASCIIToUTF16("text"), |
849 20), | 852 defaultMaxLength), |
850 fields[1]); | 853 fields[1]); |
851 EXPECT_EQ(FormField(string16(), | 854 EXPECT_EQ(FormField(string16(), |
852 ASCIIToUTF16("reply-send"), | 855 ASCIIToUTF16("reply-send"), |
853 ASCIIToUTF16("Send"), | 856 ASCIIToUTF16("Send"), |
854 ASCIIToUTF16("submit"), | 857 ASCIIToUTF16("submit"), |
855 0), | 858 0), |
856 fields[2]); | 859 fields[2]); |
857 } | 860 } |
858 | 861 |
859 TEST_F(FormManagerTest, LabelsInferredFromText) { | 862 TEST_F(FormManagerTest, LabelsInferredFromText) { |
(...skipping 19 matching lines...) Expand all Loading... | |
879 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 882 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
880 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 883 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
881 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 884 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
882 | 885 |
883 const std::vector<FormField>& fields = form.fields; | 886 const std::vector<FormField>& fields = form.fields; |
884 ASSERT_EQ(3U, fields.size()); | 887 ASSERT_EQ(3U, fields.size()); |
885 EXPECT_EQ(FormField(ASCIIToUTF16("First name:"), | 888 EXPECT_EQ(FormField(ASCIIToUTF16("First name:"), |
886 ASCIIToUTF16("firstname"), | 889 ASCIIToUTF16("firstname"), |
887 ASCIIToUTF16("John"), | 890 ASCIIToUTF16("John"), |
888 ASCIIToUTF16("text"), | 891 ASCIIToUTF16("text"), |
889 20), | 892 defaultMaxLength), |
890 fields[0]); | 893 fields[0]); |
891 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), | 894 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), |
892 ASCIIToUTF16("lastname"), | 895 ASCIIToUTF16("lastname"), |
893 ASCIIToUTF16("Smith"), | 896 ASCIIToUTF16("Smith"), |
894 ASCIIToUTF16("text"), | 897 ASCIIToUTF16("text"), |
895 20), | 898 defaultMaxLength), |
896 fields[1]); | 899 fields[1]); |
897 EXPECT_EQ(FormField(string16(), | 900 EXPECT_EQ(FormField(string16(), |
898 ASCIIToUTF16("reply-send"), | 901 ASCIIToUTF16("reply-send"), |
899 ASCIIToUTF16("Send"), | 902 ASCIIToUTF16("Send"), |
900 ASCIIToUTF16("submit"), | 903 ASCIIToUTF16("submit"), |
901 0), | 904 0), |
902 fields[2]); | 905 fields[2]); |
903 } | 906 } |
904 | 907 |
905 TEST_F(FormManagerTest, LabelsInferredFromTextHidden) { | 908 TEST_F(FormManagerTest, LabelsInferredFromTextHidden) { |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
968 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 971 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
969 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 972 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
970 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 973 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
971 | 974 |
972 const std::vector<FormField>& fields = form.fields; | 975 const std::vector<FormField>& fields = form.fields; |
973 ASSERT_EQ(3U, fields.size()); | 976 ASSERT_EQ(3U, fields.size()); |
974 EXPECT_EQ(FormField(ASCIIToUTF16("First name:"), | 977 EXPECT_EQ(FormField(ASCIIToUTF16("First name:"), |
975 ASCIIToUTF16("firstname"), | 978 ASCIIToUTF16("firstname"), |
976 ASCIIToUTF16("John"), | 979 ASCIIToUTF16("John"), |
977 ASCIIToUTF16("text"), | 980 ASCIIToUTF16("text"), |
978 20), | 981 defaultMaxLength), |
979 fields[0]); | 982 fields[0]); |
980 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), | 983 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), |
981 ASCIIToUTF16("lastname"), | 984 ASCIIToUTF16("lastname"), |
982 ASCIIToUTF16("Smith"), | 985 ASCIIToUTF16("Smith"), |
983 ASCIIToUTF16("text"), | 986 ASCIIToUTF16("text"), |
984 20), | 987 defaultMaxLength), |
985 fields[1]); | 988 fields[1]); |
986 EXPECT_EQ(FormField(string16(), | 989 EXPECT_EQ(FormField(string16(), |
987 ASCIIToUTF16("reply-send"), | 990 ASCIIToUTF16("reply-send"), |
988 ASCIIToUTF16("Send"), | 991 ASCIIToUTF16("Send"), |
989 ASCIIToUTF16("submit"), | 992 ASCIIToUTF16("submit"), |
990 0), | 993 0), |
991 fields[2]); | 994 fields[2]); |
992 } | 995 } |
993 | 996 |
994 TEST_F(FormManagerTest, LabelsInferredFromTableCell) { | 997 TEST_F(FormManagerTest, LabelsInferredFromTableCell) { |
(...skipping 30 matching lines...) Expand all Loading... | |
1025 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 1028 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
1026 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 1029 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
1027 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 1030 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
1028 | 1031 |
1029 const std::vector<FormField>& fields = form.fields; | 1032 const std::vector<FormField>& fields = form.fields; |
1030 ASSERT_EQ(3U, fields.size()); | 1033 ASSERT_EQ(3U, fields.size()); |
1031 EXPECT_EQ(FormField(ASCIIToUTF16("First name:"), | 1034 EXPECT_EQ(FormField(ASCIIToUTF16("First name:"), |
1032 ASCIIToUTF16("firstname"), | 1035 ASCIIToUTF16("firstname"), |
1033 ASCIIToUTF16("John"), | 1036 ASCIIToUTF16("John"), |
1034 ASCIIToUTF16("text"), | 1037 ASCIIToUTF16("text"), |
1035 20), | 1038 defaultMaxLength), |
1036 fields[0]); | 1039 fields[0]); |
1037 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), | 1040 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), |
1038 ASCIIToUTF16("lastname"), | 1041 ASCIIToUTF16("lastname"), |
1039 ASCIIToUTF16("Smith"), | 1042 ASCIIToUTF16("Smith"), |
1040 ASCIIToUTF16("text"), | 1043 ASCIIToUTF16("text"), |
1041 20), | 1044 defaultMaxLength), |
1042 fields[1]); | 1045 fields[1]); |
1043 EXPECT_EQ(FormField(string16(), | 1046 EXPECT_EQ(FormField(string16(), |
1044 ASCIIToUTF16("reply-send"), | 1047 ASCIIToUTF16("reply-send"), |
1045 ASCIIToUTF16("Send"), | 1048 ASCIIToUTF16("Send"), |
1046 ASCIIToUTF16("submit"), | 1049 ASCIIToUTF16("submit"), |
1047 0), | 1050 0), |
1048 fields[2]); | 1051 fields[2]); |
1049 } | 1052 } |
1050 | 1053 |
1051 TEST_F(FormManagerTest, LabelsInferredFromTableCellNested) { | 1054 TEST_F(FormManagerTest, LabelsInferredFromTableCellNested) { |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1101 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 1104 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
1102 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 1105 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
1103 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 1106 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
1104 | 1107 |
1105 const std::vector<FormField>& fields = form.fields; | 1108 const std::vector<FormField>& fields = form.fields; |
1106 ASSERT_EQ(3U, fields.size()); | 1109 ASSERT_EQ(3U, fields.size()); |
1107 EXPECT_EQ(FormField(ASCIIToUTF16("First name:Bogus"), | 1110 EXPECT_EQ(FormField(ASCIIToUTF16("First name:Bogus"), |
1108 ASCIIToUTF16("firstname"), | 1111 ASCIIToUTF16("firstname"), |
1109 ASCIIToUTF16("John"), | 1112 ASCIIToUTF16("John"), |
1110 ASCIIToUTF16("text"), | 1113 ASCIIToUTF16("text"), |
1111 20), | 1114 defaultMaxLength), |
1112 fields[0]); | 1115 fields[0]); |
1113 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), | 1116 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), |
1114 ASCIIToUTF16("lastname"), | 1117 ASCIIToUTF16("lastname"), |
1115 ASCIIToUTF16("Smith"), | 1118 ASCIIToUTF16("Smith"), |
1116 ASCIIToUTF16("text"), | 1119 ASCIIToUTF16("text"), |
1117 20), | 1120 defaultMaxLength), |
1118 fields[1]); | 1121 fields[1]); |
1119 EXPECT_EQ(FormField(string16(), | 1122 EXPECT_EQ(FormField(string16(), |
1120 ASCIIToUTF16("reply-send"), | 1123 ASCIIToUTF16("reply-send"), |
1121 ASCIIToUTF16("Send"), | 1124 ASCIIToUTF16("Send"), |
1122 ASCIIToUTF16("submit"), | 1125 ASCIIToUTF16("submit"), |
1123 0), | 1126 0), |
1124 fields[2]); | 1127 fields[2]); |
1125 } | 1128 } |
1126 | 1129 |
1127 TEST_F(FormManagerTest, LabelsInferredFromTableEmptyTDs) { | 1130 TEST_F(FormManagerTest, LabelsInferredFromTableEmptyTDs) { |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1170 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 1173 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
1171 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 1174 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
1172 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 1175 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
1173 | 1176 |
1174 const std::vector<FormField>& fields = form.fields; | 1177 const std::vector<FormField>& fields = form.fields; |
1175 ASSERT_EQ(3U, fields.size()); | 1178 ASSERT_EQ(3U, fields.size()); |
1176 EXPECT_EQ(FormField(ASCIIToUTF16("*First Name"), | 1179 EXPECT_EQ(FormField(ASCIIToUTF16("*First Name"), |
1177 ASCIIToUTF16("firstname"), | 1180 ASCIIToUTF16("firstname"), |
1178 ASCIIToUTF16("John"), | 1181 ASCIIToUTF16("John"), |
1179 ASCIIToUTF16("text"), | 1182 ASCIIToUTF16("text"), |
1180 20), | 1183 defaultMaxLength), |
1181 fields[0]); | 1184 fields[0]); |
1182 EXPECT_EQ(FormField(ASCIIToUTF16("*Last Name"), | 1185 EXPECT_EQ(FormField(ASCIIToUTF16("*Last Name"), |
1183 ASCIIToUTF16("lastname"), | 1186 ASCIIToUTF16("lastname"), |
1184 ASCIIToUTF16("Milton"), | 1187 ASCIIToUTF16("Milton"), |
1185 ASCIIToUTF16("text"), | 1188 ASCIIToUTF16("text"), |
1186 20), | 1189 defaultMaxLength), |
1187 fields[1]); | 1190 fields[1]); |
1188 EXPECT_EQ(FormField(string16(), | 1191 EXPECT_EQ(FormField(string16(), |
1189 ASCIIToUTF16("reply-send"), | 1192 ASCIIToUTF16("reply-send"), |
1190 ASCIIToUTF16("Send"), | 1193 ASCIIToUTF16("Send"), |
1191 ASCIIToUTF16("submit"), | 1194 ASCIIToUTF16("submit"), |
1192 0), | 1195 0), |
1193 fields[2]); | 1196 fields[2]); |
1194 } | 1197 } |
1195 | 1198 |
1196 TEST_F(FormManagerTest, LabelsInferredFromTableLabels) { | 1199 TEST_F(FormManagerTest, LabelsInferredFromTableLabels) { |
(...skipping 29 matching lines...) Expand all Loading... | |
1226 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 1229 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
1227 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 1230 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
1228 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 1231 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
1229 | 1232 |
1230 const std::vector<FormField>& fields = form.fields; | 1233 const std::vector<FormField>& fields = form.fields; |
1231 ASSERT_EQ(3U, fields.size()); | 1234 ASSERT_EQ(3U, fields.size()); |
1232 EXPECT_EQ(FormField(ASCIIToUTF16("First Name:"), | 1235 EXPECT_EQ(FormField(ASCIIToUTF16("First Name:"), |
1233 ASCIIToUTF16("firstname"), | 1236 ASCIIToUTF16("firstname"), |
1234 ASCIIToUTF16("John"), | 1237 ASCIIToUTF16("John"), |
1235 ASCIIToUTF16("text"), | 1238 ASCIIToUTF16("text"), |
1236 20), | 1239 defaultMaxLength), |
1237 fields[0]); | 1240 fields[0]); |
1238 EXPECT_EQ(FormField(ASCIIToUTF16("Last Name:"), | 1241 EXPECT_EQ(FormField(ASCIIToUTF16("Last Name:"), |
1239 ASCIIToUTF16("lastname"), | 1242 ASCIIToUTF16("lastname"), |
1240 ASCIIToUTF16("Smith"), | 1243 ASCIIToUTF16("Smith"), |
1241 ASCIIToUTF16("text"), | 1244 ASCIIToUTF16("text"), |
1242 20), | 1245 defaultMaxLength), |
1243 fields[1]); | 1246 fields[1]); |
1244 EXPECT_EQ(FormField(string16(), | 1247 EXPECT_EQ(FormField(string16(), |
1245 ASCIIToUTF16("reply-send"), | 1248 ASCIIToUTF16("reply-send"), |
1246 ASCIIToUTF16("Send"), | 1249 ASCIIToUTF16("Send"), |
1247 ASCIIToUTF16("submit"), | 1250 ASCIIToUTF16("submit"), |
1248 0), | 1251 0), |
1249 fields[2]); | 1252 fields[2]); |
1250 } | 1253 } |
1251 | 1254 |
1252 TEST_F(FormManagerTest, LabelsInferredFromTableTDInterveningElements) { | 1255 TEST_F(FormManagerTest, LabelsInferredFromTableTDInterveningElements) { |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1284 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 1287 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
1285 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 1288 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
1286 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 1289 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
1287 | 1290 |
1288 const std::vector<FormField>& fields = form.fields; | 1291 const std::vector<FormField>& fields = form.fields; |
1289 ASSERT_EQ(3U, fields.size()); | 1292 ASSERT_EQ(3U, fields.size()); |
1290 EXPECT_EQ(FormField(ASCIIToUTF16("First Name:"), | 1293 EXPECT_EQ(FormField(ASCIIToUTF16("First Name:"), |
1291 ASCIIToUTF16("firstname"), | 1294 ASCIIToUTF16("firstname"), |
1292 ASCIIToUTF16("John"), | 1295 ASCIIToUTF16("John"), |
1293 ASCIIToUTF16("text"), | 1296 ASCIIToUTF16("text"), |
1294 20), | 1297 defaultMaxLength), |
1295 fields[0]); | 1298 fields[0]); |
1296 EXPECT_EQ(FormField(ASCIIToUTF16("Last Name:"), | 1299 EXPECT_EQ(FormField(ASCIIToUTF16("Last Name:"), |
1297 ASCIIToUTF16("lastname"), | 1300 ASCIIToUTF16("lastname"), |
1298 ASCIIToUTF16("Smith"), | 1301 ASCIIToUTF16("Smith"), |
1299 ASCIIToUTF16("text"), | 1302 ASCIIToUTF16("text"), |
1300 20), | 1303 defaultMaxLength), |
1301 fields[1]); | 1304 fields[1]); |
1302 EXPECT_EQ(FormField(string16(), | 1305 EXPECT_EQ(FormField(string16(), |
1303 ASCIIToUTF16("reply-send"), | 1306 ASCIIToUTF16("reply-send"), |
1304 ASCIIToUTF16("Send"), | 1307 ASCIIToUTF16("Send"), |
1305 ASCIIToUTF16("submit"), | 1308 ASCIIToUTF16("submit"), |
1306 0), | 1309 0), |
1307 fields[2]); | 1310 fields[2]); |
1308 } | 1311 } |
1309 | 1312 |
1310 TEST_F(FormManagerTest, LabelsInferredFromDefinitionList) { | 1313 TEST_F(FormManagerTest, LabelsInferredFromDefinitionList) { |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1357 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 1360 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
1358 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 1361 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
1359 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 1362 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
1360 | 1363 |
1361 const std::vector<FormField>& fields = form.fields; | 1364 const std::vector<FormField>& fields = form.fields; |
1362 ASSERT_EQ(3U, fields.size()); | 1365 ASSERT_EQ(3U, fields.size()); |
1363 EXPECT_EQ(FormField(ASCIIToUTF16("*First name:Bogus"), | 1366 EXPECT_EQ(FormField(ASCIIToUTF16("*First name:Bogus"), |
1364 ASCIIToUTF16("firstname"), | 1367 ASCIIToUTF16("firstname"), |
1365 ASCIIToUTF16("John"), | 1368 ASCIIToUTF16("John"), |
1366 ASCIIToUTF16("text"), | 1369 ASCIIToUTF16("text"), |
1367 20), | 1370 defaultMaxLength), |
1368 fields[0]); | 1371 fields[0]); |
1369 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), | 1372 EXPECT_EQ(FormField(ASCIIToUTF16("Last name:"), |
1370 ASCIIToUTF16("lastname"), | 1373 ASCIIToUTF16("lastname"), |
1371 ASCIIToUTF16("Smith"), | 1374 ASCIIToUTF16("Smith"), |
1372 ASCIIToUTF16("text"), | 1375 ASCIIToUTF16("text"), |
1373 20), | 1376 defaultMaxLength), |
1374 fields[1]); | 1377 fields[1]); |
1375 EXPECT_EQ(FormField(string16(), | 1378 EXPECT_EQ(FormField(string16(), |
1376 ASCIIToUTF16("reply-send"), | 1379 ASCIIToUTF16("reply-send"), |
1377 ASCIIToUTF16("Send"), | 1380 ASCIIToUTF16("Send"), |
1378 ASCIIToUTF16("submit"), | 1381 ASCIIToUTF16("submit"), |
1379 0), | 1382 0), |
1380 fields[2]); | 1383 fields[2]); |
1381 } | 1384 } |
1382 | 1385 |
1383 TEST_F(FormManagerTest, LabelsInferredWithSameName) { | 1386 TEST_F(FormManagerTest, LabelsInferredWithSameName) { |
(...skipping 19 matching lines...) Expand all Loading... | |
1403 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 1406 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
1404 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 1407 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
1405 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 1408 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
1406 | 1409 |
1407 const std::vector<FormField>& fields = form.fields; | 1410 const std::vector<FormField>& fields = form.fields; |
1408 ASSERT_EQ(3U, fields.size()); | 1411 ASSERT_EQ(3U, fields.size()); |
1409 EXPECT_EQ(FormField(ASCIIToUTF16("Address Line 1:"), | 1412 EXPECT_EQ(FormField(ASCIIToUTF16("Address Line 1:"), |
1410 ASCIIToUTF16("Address"), | 1413 ASCIIToUTF16("Address"), |
1411 string16(), | 1414 string16(), |
1412 ASCIIToUTF16("text"), | 1415 ASCIIToUTF16("text"), |
1413 20), | 1416 defaultMaxLength), |
1414 fields[0]); | 1417 fields[0]); |
1415 EXPECT_EQ(FormField(ASCIIToUTF16("Address Line 2:"), | 1418 EXPECT_EQ(FormField(ASCIIToUTF16("Address Line 2:"), |
1416 ASCIIToUTF16("Address"), | 1419 ASCIIToUTF16("Address"), |
1417 string16(), | 1420 string16(), |
1418 ASCIIToUTF16("text"), | 1421 ASCIIToUTF16("text"), |
1419 20), | 1422 defaultMaxLength), |
1420 fields[1]); | 1423 fields[1]); |
1421 EXPECT_EQ(FormField(string16(), | 1424 EXPECT_EQ(FormField(string16(), |
1422 ASCIIToUTF16("reply-send"), | 1425 ASCIIToUTF16("reply-send"), |
1423 ASCIIToUTF16("Send"), | 1426 ASCIIToUTF16("Send"), |
1424 ASCIIToUTF16("submit"), | 1427 ASCIIToUTF16("submit"), |
1425 0), | 1428 0), |
1426 fields[2]); | 1429 fields[2]); |
1427 } | 1430 } |
1428 | 1431 |
1429 TEST_F(FormManagerTest, LabelsInferredWithImageTags) { | 1432 TEST_F(FormManagerTest, LabelsInferredWithImageTags) { |
(...skipping 29 matching lines...) Expand all Loading... | |
1459 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 1462 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
1460 EXPECT_EQ(GURL(frame->url()), form.origin); | 1463 EXPECT_EQ(GURL(frame->url()), form.origin); |
1461 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 1464 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
1462 | 1465 |
1463 const std::vector<FormField>& fields = form.fields; | 1466 const std::vector<FormField>& fields = form.fields; |
1464 ASSERT_EQ(6U, fields.size()); | 1467 ASSERT_EQ(6U, fields.size()); |
1465 EXPECT_EQ(FormField(ASCIIToUTF16("Phone:"), | 1468 EXPECT_EQ(FormField(ASCIIToUTF16("Phone:"), |
1466 ASCIIToUTF16("dayphone1"), | 1469 ASCIIToUTF16("dayphone1"), |
1467 string16(), | 1470 string16(), |
1468 ASCIIToUTF16("text"), | 1471 ASCIIToUTF16("text"), |
1469 20), | 1472 defaultMaxLength), |
1470 fields[0]); | 1473 fields[0]); |
1471 EXPECT_EQ(FormField(ASCIIToUTF16("-"), | 1474 EXPECT_EQ(FormField(ASCIIToUTF16("-"), |
1472 ASCIIToUTF16("dayphone2"), | 1475 ASCIIToUTF16("dayphone2"), |
1473 string16(), | 1476 string16(), |
1474 ASCIIToUTF16("text"), | 1477 ASCIIToUTF16("text"), |
1475 20), | 1478 defaultMaxLength), |
1476 fields[1]); | 1479 fields[1]); |
1477 EXPECT_EQ(FormField(ASCIIToUTF16("-"), | 1480 EXPECT_EQ(FormField(ASCIIToUTF16("-"), |
1478 ASCIIToUTF16("dayphone3"), | 1481 ASCIIToUTF16("dayphone3"), |
1479 string16(), | 1482 string16(), |
1480 ASCIIToUTF16("text"), | 1483 ASCIIToUTF16("text"), |
1481 20), | 1484 defaultMaxLength), |
1482 fields[2]); | 1485 fields[2]); |
1483 EXPECT_EQ(FormField(ASCIIToUTF16("ext.:"), | 1486 EXPECT_EQ(FormField(ASCIIToUTF16("ext.:"), |
1484 ASCIIToUTF16("dayphone4"), | 1487 ASCIIToUTF16("dayphone4"), |
1485 string16(), | 1488 string16(), |
1486 ASCIIToUTF16("text"), | 1489 ASCIIToUTF16("text"), |
1487 20), | 1490 defaultMaxLength), |
1488 fields[3]); | 1491 fields[3]); |
1489 EXPECT_EQ(FormField(string16(), | 1492 EXPECT_EQ(FormField(string16(), |
1490 ASCIIToUTF16("dummy"), | 1493 ASCIIToUTF16("dummy"), |
1491 string16(), | 1494 string16(), |
1492 ASCIIToUTF16("text"), | 1495 ASCIIToUTF16("text"), |
1493 20), | 1496 defaultMaxLength), |
1494 fields[4]); | 1497 fields[4]); |
1495 EXPECT_EQ(FormField(string16(), | 1498 EXPECT_EQ(FormField(string16(), |
1496 ASCIIToUTF16("reply-send"), | 1499 ASCIIToUTF16("reply-send"), |
1497 ASCIIToUTF16("Send"), | 1500 ASCIIToUTF16("Send"), |
1498 ASCIIToUTF16("submit"), | 1501 ASCIIToUTF16("submit"), |
1499 0), | 1502 0), |
1500 fields[5]); | 1503 fields[5]); |
1501 } | 1504 } |
1502 | 1505 |
1503 TEST_F(FormManagerTest, LabelsInferredFromDivTable) { | 1506 TEST_F(FormManagerTest, LabelsInferredFromDivTable) { |
(...skipping 25 matching lines...) Expand all Loading... | |
1529 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 1532 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
1530 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 1533 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
1531 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 1534 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
1532 | 1535 |
1533 const std::vector<FormField>& fields = form.fields; | 1536 const std::vector<FormField>& fields = form.fields; |
1534 ASSERT_EQ(3U, fields.size()); | 1537 ASSERT_EQ(3U, fields.size()); |
1535 EXPECT_EQ(FormField(ASCIIToUTF16("First Name:"), | 1538 EXPECT_EQ(FormField(ASCIIToUTF16("First Name:"), |
1536 ASCIIToUTF16("firstname"), | 1539 ASCIIToUTF16("firstname"), |
1537 ASCIIToUTF16("John"), | 1540 ASCIIToUTF16("John"), |
1538 ASCIIToUTF16("text"), | 1541 ASCIIToUTF16("text"), |
1539 20), | 1542 defaultMaxLength), |
1540 fields[0]); | 1543 fields[0]); |
1541 EXPECT_EQ(FormField(ASCIIToUTF16("Last Name:"), | 1544 EXPECT_EQ(FormField(ASCIIToUTF16("Last Name:"), |
1542 ASCIIToUTF16("lastname"), | 1545 ASCIIToUTF16("lastname"), |
1543 string16(), | 1546 string16(), |
1544 ASCIIToUTF16("text"), | 1547 ASCIIToUTF16("text"), |
1545 20), | 1548 defaultMaxLength), |
1546 fields[1]); | 1549 fields[1]); |
1547 EXPECT_EQ(FormField(string16(), | 1550 EXPECT_EQ(FormField(string16(), |
1548 ASCIIToUTF16("reply-send"), | 1551 ASCIIToUTF16("reply-send"), |
1549 ASCIIToUTF16("Send"), | 1552 ASCIIToUTF16("Send"), |
1550 ASCIIToUTF16("submit"), | 1553 ASCIIToUTF16("submit"), |
1551 0), | 1554 0), |
1552 fields[2]); | 1555 fields[2]); |
1553 } | 1556 } |
1554 | 1557 |
1555 TEST_F(FormManagerTest, FillFormMaxLength) { | 1558 TEST_F(FormManagerTest, FillFormMaxLength) { |
(...skipping 25 matching lines...) Expand all Loading... | |
1581 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 1584 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
1582 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 1585 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
1583 EXPECT_EQ(GURL("http://buh.com"), form.action); | 1586 EXPECT_EQ(GURL("http://buh.com"), form.action); |
1584 | 1587 |
1585 const std::vector<FormField>& fields = form.fields; | 1588 const std::vector<FormField>& fields = form.fields; |
1586 ASSERT_EQ(3U, fields.size()); | 1589 ASSERT_EQ(3U, fields.size()); |
1587 EXPECT_EQ(FormField(string16(), | 1590 EXPECT_EQ(FormField(string16(), |
1588 ASCIIToUTF16("firstname"), | 1591 ASCIIToUTF16("firstname"), |
1589 string16(), | 1592 string16(), |
1590 ASCIIToUTF16("text"), | 1593 ASCIIToUTF16("text"), |
1591 20), | 1594 5), |
1592 fields[0]); | 1595 fields[0]); |
1593 EXPECT_EQ(FormField(string16(), | 1596 EXPECT_EQ(FormField(string16(), |
1594 ASCIIToUTF16("lastname"), | 1597 ASCIIToUTF16("lastname"), |
1595 string16(), | 1598 string16(), |
1596 ASCIIToUTF16("text"), | 1599 ASCIIToUTF16("text"), |
1597 20), | 1600 5), |
1598 fields[1]); | 1601 fields[1]); |
1599 EXPECT_EQ(FormField(string16(), | 1602 EXPECT_EQ(FormField(string16(), |
1600 ASCIIToUTF16("reply-send"), | 1603 ASCIIToUTF16("reply-send"), |
1601 ASCIIToUTF16("Send"), | 1604 ASCIIToUTF16("Send"), |
1602 ASCIIToUTF16("submit"), | 1605 ASCIIToUTF16("submit"), |
1603 0), | 1606 0), |
1604 fields[2]); | 1607 fields[2]); |
1605 | 1608 |
1606 // Fill the form. | 1609 // Fill the form. |
1607 form.fields[0].set_value(ASCIIToUTF16("Brother")); | 1610 form.fields[0].set_value(ASCIIToUTF16("Brother")); |
1608 form.fields[1].set_value(ASCIIToUTF16("Jonathan")); | 1611 form.fields[1].set_value(ASCIIToUTF16("Jonathan")); |
1609 EXPECT_TRUE(form_manager.FillForm(form, WebNode())); | 1612 EXPECT_TRUE(form_manager.FillForm(form, WebNode())); |
1610 | 1613 |
1611 // Find the newly-filled form that contains the input element. | 1614 // Find the newly-filled form that contains the input element. |
1612 FormData form2; | 1615 FormData form2; |
1613 EXPECT_TRUE(form_manager.FindFormWithFormControlElement( | 1616 EXPECT_TRUE(form_manager.FindFormWithFormControlElement( |
1614 input_element, FormManager::REQUIRE_NONE, &form2)); | 1617 input_element, FormManager::REQUIRE_NONE, &form2)); |
1615 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); | 1618 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); |
1616 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 1619 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
1617 EXPECT_EQ(GURL("http://buh.com"), form2.action); | 1620 EXPECT_EQ(GURL("http://buh.com"), form2.action); |
1618 | 1621 |
1619 const std::vector<FormField>& fields2 = form2.fields; | 1622 const std::vector<FormField>& fields2 = form2.fields; |
1620 EXPECT_TRUE(fields2[0].StrictlyEqualsHack( | 1623 EXPECT_TRUE(fields2[0].StrictlyEqualsHack( |
1621 FormField(string16(), | 1624 FormField(string16(), |
1622 ASCIIToUTF16("firstname"), | 1625 ASCIIToUTF16("firstname"), |
1623 ASCIIToUTF16("Broth"), | 1626 ASCIIToUTF16("Broth"), |
1624 ASCIIToUTF16("text"), | 1627 ASCIIToUTF16("text"), |
1625 20))); | 1628 5))); |
1626 EXPECT_TRUE(fields2[1].StrictlyEqualsHack( | 1629 EXPECT_TRUE(fields2[1].StrictlyEqualsHack( |
1627 FormField(string16(), | 1630 FormField(string16(), |
1628 ASCIIToUTF16("lastname"), | 1631 ASCIIToUTF16("lastname"), |
1629 ASCIIToUTF16("Jonat"), | 1632 ASCIIToUTF16("Jonat"), |
1630 ASCIIToUTF16("text"), | 1633 ASCIIToUTF16("text"), |
1631 20))); | 1634 5))); |
1632 EXPECT_TRUE(fields2[2].StrictlyEqualsHack( | 1635 EXPECT_TRUE(fields2[2].StrictlyEqualsHack( |
1633 FormField(string16(), | 1636 FormField(string16(), |
1634 ASCIIToUTF16("reply-send"), | 1637 ASCIIToUTF16("reply-send"), |
1635 string16(), | 1638 string16(), |
1636 ASCIIToUTF16("submit"), | 1639 ASCIIToUTF16("submit"), |
1637 0))); | 1640 0))); |
1638 } | 1641 } |
1639 | 1642 |
1640 // This test uses negative values of the maxlength attribute for input elements. | 1643 // This test uses negative values of the maxlength attribute for input elements. |
1641 // In this case, the maxlength of the input elements is set to the default | 1644 // In this case, the maxlength of the input elements is set to the default |
(...skipping 27 matching lines...) Expand all Loading... | |
1669 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 1672 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
1670 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 1673 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
1671 EXPECT_EQ(GURL("http://buh.com"), form.action); | 1674 EXPECT_EQ(GURL("http://buh.com"), form.action); |
1672 | 1675 |
1673 const std::vector<FormField>& fields = form.fields; | 1676 const std::vector<FormField>& fields = form.fields; |
1674 ASSERT_EQ(3U, fields.size()); | 1677 ASSERT_EQ(3U, fields.size()); |
1675 EXPECT_EQ(FormField(string16(), | 1678 EXPECT_EQ(FormField(string16(), |
1676 ASCIIToUTF16("firstname"), | 1679 ASCIIToUTF16("firstname"), |
1677 string16(), | 1680 string16(), |
1678 ASCIIToUTF16("text"), | 1681 ASCIIToUTF16("text"), |
1679 20), | 1682 defaultMaxLength), |
1680 fields[0]); | 1683 fields[0]); |
1681 EXPECT_EQ(FormField(string16(), | 1684 EXPECT_EQ(FormField(string16(), |
1682 ASCIIToUTF16("lastname"), | 1685 ASCIIToUTF16("lastname"), |
1683 string16(), | 1686 string16(), |
1684 ASCIIToUTF16("text"), | 1687 ASCIIToUTF16("text"), |
1685 20), | 1688 defaultMaxLength), |
1686 fields[1]); | 1689 fields[1]); |
1687 EXPECT_EQ(FormField(string16(), | 1690 EXPECT_EQ(FormField(string16(), |
1688 ASCIIToUTF16("reply-send"), | 1691 ASCIIToUTF16("reply-send"), |
1689 ASCIIToUTF16("Send"), | 1692 ASCIIToUTF16("Send"), |
1690 ASCIIToUTF16("submit"), | 1693 ASCIIToUTF16("submit"), |
1691 0), | 1694 0), |
1692 fields[2]); | 1695 fields[2]); |
1693 | 1696 |
1694 // Fill the form. | 1697 // Fill the form. |
1695 form.fields[0].set_value(ASCIIToUTF16("Brother")); | 1698 form.fields[0].set_value(ASCIIToUTF16("Brother")); |
1696 form.fields[1].set_value(ASCIIToUTF16("Jonathan")); | 1699 form.fields[1].set_value(ASCIIToUTF16("Jonathan")); |
1697 EXPECT_TRUE(form_manager.FillForm(form, WebNode())); | 1700 EXPECT_TRUE(form_manager.FillForm(form, WebNode())); |
1698 | 1701 |
1699 // Find the newly-filled form that contains the input element. | 1702 // Find the newly-filled form that contains the input element. |
1700 FormData form2; | 1703 FormData form2; |
1701 EXPECT_TRUE(form_manager.FindFormWithFormControlElement( | 1704 EXPECT_TRUE(form_manager.FindFormWithFormControlElement( |
1702 input_element, FormManager::REQUIRE_NONE, &form2)); | 1705 input_element, FormManager::REQUIRE_NONE, &form2)); |
1703 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); | 1706 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); |
1704 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 1707 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
1705 EXPECT_EQ(GURL("http://buh.com"), form2.action); | 1708 EXPECT_EQ(GURL("http://buh.com"), form2.action); |
1706 | 1709 |
1707 const std::vector<FormField>& fields2 = form2.fields; | 1710 const std::vector<FormField>& fields2 = form2.fields; |
1708 ASSERT_EQ(3U, fields2.size()); | 1711 ASSERT_EQ(3U, fields2.size()); |
1709 EXPECT_TRUE(fields2[0].StrictlyEqualsHack( | 1712 EXPECT_TRUE(fields2[0].StrictlyEqualsHack( |
1710 FormField(string16(), | 1713 FormField(string16(), |
1711 ASCIIToUTF16("firstname"), | 1714 ASCIIToUTF16("firstname"), |
1712 ASCIIToUTF16("Brother"), | 1715 ASCIIToUTF16("Brother"), |
1713 ASCIIToUTF16("text"), | 1716 ASCIIToUTF16("text"), |
1714 20))); | 1717 defaultMaxLength))); |
1715 EXPECT_TRUE(fields2[1].StrictlyEqualsHack( | 1718 EXPECT_TRUE(fields2[1].StrictlyEqualsHack( |
1716 FormField(string16(), | 1719 FormField(string16(), |
1717 ASCIIToUTF16("lastname"), | 1720 ASCIIToUTF16("lastname"), |
1718 ASCIIToUTF16("Jonathan"), | 1721 ASCIIToUTF16("Jonathan"), |
1719 ASCIIToUTF16("text"), | 1722 ASCIIToUTF16("text"), |
1720 20))); | 1723 defaultMaxLength))); |
1721 EXPECT_TRUE(fields2[2].StrictlyEqualsHack( | 1724 EXPECT_TRUE(fields2[2].StrictlyEqualsHack( |
1722 FormField(string16(), | 1725 FormField(string16(), |
1723 ASCIIToUTF16("reply-send"), | 1726 ASCIIToUTF16("reply-send"), |
1724 string16(), | 1727 string16(), |
1725 ASCIIToUTF16("submit"), | 1728 ASCIIToUTF16("submit"), |
1726 0))); | 1729 0))); |
1727 } | 1730 } |
1728 | 1731 |
1729 // This test sends a FormData object to FillForm with more fields than are in | 1732 // This test sends a FormData object to FillForm with more fields than are in |
1730 // the cached WebFormElement. In this case, we only fill out the fields that | 1733 // the cached WebFormElement. In this case, we only fill out the fields that |
(...skipping 24 matching lines...) Expand all Loading... | |
1755 // middlename | 1758 // middlename |
1756 // second | 1759 // second |
1757 // lastname | 1760 // lastname |
1758 // postfix | 1761 // postfix |
1759 FormData* form = &forms[0]; | 1762 FormData* form = &forms[0]; |
1760 | 1763 |
1761 FormField field1(string16(), | 1764 FormField field1(string16(), |
1762 ASCIIToUTF16("prefix"), | 1765 ASCIIToUTF16("prefix"), |
1763 string16(), | 1766 string16(), |
1764 ASCIIToUTF16("text"), | 1767 ASCIIToUTF16("text"), |
1765 20); | 1768 defaultMaxLength); |
1766 form->fields.insert(form->fields.begin(), field1); | 1769 form->fields.insert(form->fields.begin(), field1); |
1767 | 1770 |
1768 FormField field2(string16(), | 1771 FormField field2(string16(), |
1769 ASCIIToUTF16("hidden"), | 1772 ASCIIToUTF16("hidden"), |
1770 string16(), | 1773 string16(), |
1771 ASCIIToUTF16("text"), | 1774 ASCIIToUTF16("text"), |
1772 20); | 1775 defaultMaxLength); |
1773 form->fields.insert(form->fields.begin() + 2, field2); | 1776 form->fields.insert(form->fields.begin() + 2, field2); |
1774 | 1777 |
1775 FormField field3(string16(), | 1778 FormField field3(string16(), |
1776 ASCIIToUTF16("second"), | 1779 ASCIIToUTF16("second"), |
1777 string16(), | 1780 string16(), |
1778 ASCIIToUTF16("text"), | 1781 ASCIIToUTF16("text"), |
1779 20); | 1782 defaultMaxLength); |
1780 form->fields.insert(form->fields.begin() + 4, field3); | 1783 form->fields.insert(form->fields.begin() + 4, field3); |
1781 | 1784 |
1782 FormField field4(string16(), | 1785 FormField field4(string16(), |
1783 ASCIIToUTF16("postfix"), | 1786 ASCIIToUTF16("postfix"), |
1784 string16(), | 1787 string16(), |
1785 ASCIIToUTF16("text"), | 1788 ASCIIToUTF16("text"), |
1786 20); | 1789 defaultMaxLength); |
1787 form->fields.insert(form->fields.begin() + 6, field4); | 1790 form->fields.insert(form->fields.begin() + 6, field4); |
1788 | 1791 |
1789 // Fill the form. | 1792 // Fill the form. |
1790 form->fields[0].set_value(ASCIIToUTF16("Alpha")); | 1793 form->fields[0].set_value(ASCIIToUTF16("Alpha")); |
1791 form->fields[1].set_value(ASCIIToUTF16("Brother")); | 1794 form->fields[1].set_value(ASCIIToUTF16("Brother")); |
1792 form->fields[2].set_value(ASCIIToUTF16("Abracadabra")); | 1795 form->fields[2].set_value(ASCIIToUTF16("Abracadabra")); |
1793 form->fields[3].set_value(ASCIIToUTF16("Joseph")); | 1796 form->fields[3].set_value(ASCIIToUTF16("Joseph")); |
1794 form->fields[4].set_value(ASCIIToUTF16("Beta")); | 1797 form->fields[4].set_value(ASCIIToUTF16("Beta")); |
1795 form->fields[5].set_value(ASCIIToUTF16("Jonathan")); | 1798 form->fields[5].set_value(ASCIIToUTF16("Jonathan")); |
1796 form->fields[6].set_value(ASCIIToUTF16("Omega")); | 1799 form->fields[6].set_value(ASCIIToUTF16("Omega")); |
(...skipping 10 matching lines...) Expand all Loading... | |
1807 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); | 1810 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); |
1808 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 1811 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
1809 EXPECT_EQ(GURL("http://buh.com"), form2.action); | 1812 EXPECT_EQ(GURL("http://buh.com"), form2.action); |
1810 | 1813 |
1811 const std::vector<FormField>& fields = form2.fields; | 1814 const std::vector<FormField>& fields = form2.fields; |
1812 ASSERT_EQ(4U, fields.size()); | 1815 ASSERT_EQ(4U, fields.size()); |
1813 EXPECT_TRUE(fields[0].StrictlyEqualsHack(FormField(string16(), | 1816 EXPECT_TRUE(fields[0].StrictlyEqualsHack(FormField(string16(), |
1814 ASCIIToUTF16("firstname"), | 1817 ASCIIToUTF16("firstname"), |
1815 ASCIIToUTF16("Brother"), | 1818 ASCIIToUTF16("Brother"), |
1816 ASCIIToUTF16("text"), | 1819 ASCIIToUTF16("text"), |
1817 20))); | 1820 defaultMaxLength))); |
1818 EXPECT_TRUE(fields[1].StrictlyEqualsHack(FormField(string16(), | 1821 EXPECT_TRUE(fields[1].StrictlyEqualsHack(FormField(string16(), |
1819 ASCIIToUTF16("middlename"), | 1822 ASCIIToUTF16("middlename"), |
1820 ASCIIToUTF16("Joseph"), | 1823 ASCIIToUTF16("Joseph"), |
1821 ASCIIToUTF16("text"), | 1824 ASCIIToUTF16("text"), |
1822 20))); | 1825 defaultMaxLength))); |
1823 EXPECT_TRUE(fields[2].StrictlyEqualsHack(FormField(string16(), | 1826 EXPECT_TRUE(fields[2].StrictlyEqualsHack(FormField(string16(), |
1824 ASCIIToUTF16("lastname"), | 1827 ASCIIToUTF16("lastname"), |
1825 ASCIIToUTF16("Jonathan"), | 1828 ASCIIToUTF16("Jonathan"), |
1826 ASCIIToUTF16("text"), | 1829 ASCIIToUTF16("text"), |
1827 20))); | 1830 defaultMaxLength))); |
1828 EXPECT_TRUE(fields[3].StrictlyEqualsHack(FormField(string16(), | 1831 EXPECT_TRUE(fields[3].StrictlyEqualsHack(FormField(string16(), |
1829 ASCIIToUTF16("reply-send"), | 1832 ASCIIToUTF16("reply-send"), |
1830 string16(), | 1833 string16(), |
1831 ASCIIToUTF16("submit"), | 1834 ASCIIToUTF16("submit"), |
1832 0))); | 1835 0))); |
1833 } | 1836 } |
1834 | 1837 |
1835 // This test sends a FormData object to FillForm with fewer fields than are in | 1838 // This test sends a FormData object to FillForm with fewer fields than are in |
1836 // the cached WebFormElement. In this case, we only fill out the fields that | 1839 // the cached WebFormElement. In this case, we only fill out the fields that |
1837 // match between the FormData object and the WebFormElement. | 1840 // match between the FormData object and the WebFormElement. |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1885 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); | 1888 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); |
1886 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 1889 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
1887 EXPECT_EQ(GURL("http://buh.com"), form2.action); | 1890 EXPECT_EQ(GURL("http://buh.com"), form2.action); |
1888 | 1891 |
1889 const std::vector<FormField>& fields = form2.fields; | 1892 const std::vector<FormField>& fields = form2.fields; |
1890 ASSERT_EQ(8U, fields.size()); | 1893 ASSERT_EQ(8U, fields.size()); |
1891 EXPECT_TRUE(fields[0].StrictlyEqualsHack(FormField(string16(), | 1894 EXPECT_TRUE(fields[0].StrictlyEqualsHack(FormField(string16(), |
1892 ASCIIToUTF16("prefix"), | 1895 ASCIIToUTF16("prefix"), |
1893 string16(), | 1896 string16(), |
1894 ASCIIToUTF16("text"), | 1897 ASCIIToUTF16("text"), |
1895 20))); | 1898 defaultMaxLength))); |
1896 EXPECT_TRUE(fields[1].StrictlyEqualsHack(FormField(string16(), | 1899 EXPECT_TRUE(fields[1].StrictlyEqualsHack(FormField(string16(), |
1897 ASCIIToUTF16("firstname"), | 1900 ASCIIToUTF16("firstname"), |
1898 ASCIIToUTF16("Brother"), | 1901 ASCIIToUTF16("Brother"), |
1899 ASCIIToUTF16("text"), | 1902 ASCIIToUTF16("text"), |
1900 20))); | 1903 defaultMaxLength))); |
1901 EXPECT_TRUE(fields[2].StrictlyEqualsHack(FormField(string16(), | 1904 EXPECT_TRUE(fields[2].StrictlyEqualsHack(FormField(string16(), |
1902 ASCIIToUTF16("hidden"), | 1905 ASCIIToUTF16("hidden"), |
1903 string16(), | 1906 string16(), |
1904 ASCIIToUTF16("text"), | 1907 ASCIIToUTF16("text"), |
1905 20))); | 1908 defaultMaxLength))); |
1906 EXPECT_TRUE(fields[3].StrictlyEqualsHack(FormField(string16(), | 1909 EXPECT_TRUE(fields[3].StrictlyEqualsHack(FormField(string16(), |
1907 ASCIIToUTF16("middlename"), | 1910 ASCIIToUTF16("middlename"), |
1908 ASCIIToUTF16("Joseph"), | 1911 ASCIIToUTF16("Joseph"), |
1909 ASCIIToUTF16("text"), | 1912 ASCIIToUTF16("text"), |
1910 20))); | 1913 defaultMaxLength))); |
1911 EXPECT_TRUE(fields[4].StrictlyEqualsHack(FormField(string16(), | 1914 EXPECT_TRUE(fields[4].StrictlyEqualsHack(FormField(string16(), |
1912 ASCIIToUTF16("second"), | 1915 ASCIIToUTF16("second"), |
1913 string16(), | 1916 string16(), |
1914 ASCIIToUTF16("text"), | 1917 ASCIIToUTF16("text"), |
1915 20))); | 1918 defaultMaxLength))); |
1916 EXPECT_TRUE(fields[5].StrictlyEqualsHack(FormField(string16(), | 1919 EXPECT_TRUE(fields[5].StrictlyEqualsHack(FormField(string16(), |
1917 ASCIIToUTF16("lastname"), | 1920 ASCIIToUTF16("lastname"), |
1918 ASCIIToUTF16("Jonathan"), | 1921 ASCIIToUTF16("Jonathan"), |
1919 ASCIIToUTF16("text"), | 1922 ASCIIToUTF16("text"), |
1920 20))); | 1923 defaultMaxLength))); |
1921 EXPECT_TRUE(fields[6].StrictlyEqualsHack(FormField(string16(), | 1924 EXPECT_TRUE(fields[6].StrictlyEqualsHack(FormField(string16(), |
1922 ASCIIToUTF16("postfix"), | 1925 ASCIIToUTF16("postfix"), |
1923 string16(), | 1926 string16(), |
1924 ASCIIToUTF16("text"), | 1927 ASCIIToUTF16("text"), |
1925 20))); | 1928 defaultMaxLength))); |
1926 EXPECT_TRUE(fields[7].StrictlyEqualsHack(FormField(string16(), | 1929 EXPECT_TRUE(fields[7].StrictlyEqualsHack(FormField(string16(), |
1927 ASCIIToUTF16("reply-send"), | 1930 ASCIIToUTF16("reply-send"), |
1928 string16(), | 1931 string16(), |
1929 ASCIIToUTF16("submit"), | 1932 ASCIIToUTF16("submit"), |
1930 0))); | 1933 0))); |
1931 } | 1934 } |
1932 | 1935 |
1933 // This test sends a FormData object to FillForm with a field changed from | 1936 // This test sends a FormData object to FillForm with a field changed from |
1934 // those in the cached WebFormElement. In this case, we only fill out the | 1937 // those in the cached WebFormElement. In this case, we only fill out the |
1935 // fields that match between the FormData object and the WebFormElement. | 1938 // fields that match between the FormData object and the WebFormElement. |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1980 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); | 1983 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); |
1981 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 1984 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
1982 EXPECT_EQ(GURL("http://buh.com"), form2.action); | 1985 EXPECT_EQ(GURL("http://buh.com"), form2.action); |
1983 | 1986 |
1984 const std::vector<FormField>& fields = form2.fields; | 1987 const std::vector<FormField>& fields = form2.fields; |
1985 ASSERT_EQ(4U, fields.size()); | 1988 ASSERT_EQ(4U, fields.size()); |
1986 EXPECT_TRUE(fields[0].StrictlyEqualsHack(FormField(string16(), | 1989 EXPECT_TRUE(fields[0].StrictlyEqualsHack(FormField(string16(), |
1987 ASCIIToUTF16("firstname"), | 1990 ASCIIToUTF16("firstname"), |
1988 ASCIIToUTF16("Brother"), | 1991 ASCIIToUTF16("Brother"), |
1989 ASCIIToUTF16("text"), | 1992 ASCIIToUTF16("text"), |
1990 20))); | 1993 defaultMaxLength))); |
1991 EXPECT_TRUE(fields[1].StrictlyEqualsHack(FormField(string16(), | 1994 EXPECT_TRUE(fields[1].StrictlyEqualsHack(FormField(string16(), |
1992 ASCIIToUTF16("middlename"), | 1995 ASCIIToUTF16("middlename"), |
1993 string16(), | 1996 string16(), |
1994 ASCIIToUTF16("text"), | 1997 ASCIIToUTF16("text"), |
1995 20))); | 1998 defaultMaxLength))); |
1996 EXPECT_TRUE(fields[2].StrictlyEqualsHack(FormField(string16(), | 1999 EXPECT_TRUE(fields[2].StrictlyEqualsHack(FormField(string16(), |
1997 ASCIIToUTF16("lastname"), | 2000 ASCIIToUTF16("lastname"), |
1998 ASCIIToUTF16("Jonathan"), | 2001 ASCIIToUTF16("Jonathan"), |
1999 ASCIIToUTF16("text"), | 2002 ASCIIToUTF16("text"), |
2000 20))); | 2003 defaultMaxLength))); |
2001 EXPECT_TRUE(fields[3].StrictlyEqualsHack(FormField(string16(), | 2004 EXPECT_TRUE(fields[3].StrictlyEqualsHack(FormField(string16(), |
2002 ASCIIToUTF16("reply-send"), | 2005 ASCIIToUTF16("reply-send"), |
2003 string16(), | 2006 string16(), |
2004 ASCIIToUTF16("submit"), | 2007 ASCIIToUTF16("submit"), |
2005 0))); | 2008 0))); |
2006 } | 2009 } |
2007 | 2010 |
2008 // This test sends a FormData object to FillForm with fewer fields than are in | 2011 // This test sends a FormData object to FillForm with fewer fields than are in |
2009 // the cached WebFormElement. In this case, we only fill out the fields that | 2012 // the cached WebFormElement. In this case, we only fill out the fields that |
2010 // match between the FormData object and the WebFormElement. | 2013 // match between the FormData object and the WebFormElement. |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2052 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); | 2055 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); |
2053 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 2056 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
2054 EXPECT_EQ(GURL("http://buh.com"), form2.action); | 2057 EXPECT_EQ(GURL("http://buh.com"), form2.action); |
2055 | 2058 |
2056 const std::vector<FormField>& fields = form2.fields; | 2059 const std::vector<FormField>& fields = form2.fields; |
2057 ASSERT_EQ(5U, fields.size()); | 2060 ASSERT_EQ(5U, fields.size()); |
2058 EXPECT_TRUE(fields[0].StrictlyEqualsHack(FormField(string16(), | 2061 EXPECT_TRUE(fields[0].StrictlyEqualsHack(FormField(string16(), |
2059 ASCIIToUTF16("firstname"), | 2062 ASCIIToUTF16("firstname"), |
2060 ASCIIToUTF16("Brother"), | 2063 ASCIIToUTF16("Brother"), |
2061 ASCIIToUTF16("text"), | 2064 ASCIIToUTF16("text"), |
2062 20))); | 2065 defaultMaxLength))); |
2063 EXPECT_TRUE(fields[1].StrictlyEqualsHack(FormField(string16(), | 2066 EXPECT_TRUE(fields[1].StrictlyEqualsHack(FormField(string16(), |
2064 ASCIIToUTF16("middlename"), | 2067 ASCIIToUTF16("middlename"), |
2065 ASCIIToUTF16("Joseph"), | 2068 ASCIIToUTF16("Joseph"), |
2066 ASCIIToUTF16("text"), | 2069 ASCIIToUTF16("text"), |
2067 20))); | 2070 defaultMaxLength))); |
2068 EXPECT_TRUE(fields[2].StrictlyEqualsHack(FormField(string16(), | 2071 EXPECT_TRUE(fields[2].StrictlyEqualsHack(FormField(string16(), |
2069 ASCIIToUTF16("lastname"), | 2072 ASCIIToUTF16("lastname"), |
2070 ASCIIToUTF16("Jonathan"), | 2073 ASCIIToUTF16("Jonathan"), |
2071 ASCIIToUTF16("text"), | 2074 ASCIIToUTF16("text"), |
2072 20))); | 2075 defaultMaxLength))); |
2073 EXPECT_TRUE(fields[3].StrictlyEqualsHack(FormField(string16(), | 2076 EXPECT_TRUE(fields[3].StrictlyEqualsHack(FormField(string16(), |
2074 ASCIIToUTF16("postfix"), | 2077 ASCIIToUTF16("postfix"), |
2075 string16(), | 2078 string16(), |
2076 ASCIIToUTF16("text"), | 2079 ASCIIToUTF16("text"), |
2077 20))); | 2080 defaultMaxLength))); |
2078 EXPECT_TRUE(fields[4].StrictlyEqualsHack(FormField(string16(), | 2081 EXPECT_TRUE(fields[4].StrictlyEqualsHack(FormField(string16(), |
2079 ASCIIToUTF16("reply-send"), | 2082 ASCIIToUTF16("reply-send"), |
2080 string16(), | 2083 string16(), |
2081 ASCIIToUTF16("submit"), | 2084 ASCIIToUTF16("submit"), |
2082 0))); | 2085 0))); |
2083 } | 2086 } |
2084 | 2087 |
2085 TEST_F(FormManagerTest, FillFormEmptyName) { | 2088 TEST_F(FormManagerTest, FillFormEmptyName) { |
2086 LoadHTML("<FORM name=\"TestForm\" action=\"http://buh.com\" method=\"post\">" | 2089 LoadHTML("<FORM name=\"TestForm\" action=\"http://buh.com\" method=\"post\">" |
2087 " <INPUT type=\"text\" id=\"firstname\"/>" | 2090 " <INPUT type=\"text\" id=\"firstname\"/>" |
(...skipping 23 matching lines...) Expand all Loading... | |
2111 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 2114 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
2112 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 2115 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
2113 EXPECT_EQ(GURL("http://buh.com"), form.action); | 2116 EXPECT_EQ(GURL("http://buh.com"), form.action); |
2114 | 2117 |
2115 const std::vector<FormField>& fields = form.fields; | 2118 const std::vector<FormField>& fields = form.fields; |
2116 ASSERT_EQ(3U, fields.size()); | 2119 ASSERT_EQ(3U, fields.size()); |
2117 EXPECT_EQ(FormField(string16(), | 2120 EXPECT_EQ(FormField(string16(), |
2118 ASCIIToUTF16("firstname"), | 2121 ASCIIToUTF16("firstname"), |
2119 string16(), | 2122 string16(), |
2120 ASCIIToUTF16("text"), | 2123 ASCIIToUTF16("text"), |
2121 20), | 2124 defaultMaxLength), |
2122 fields[0]); | 2125 fields[0]); |
2123 EXPECT_EQ(FormField(string16(), | 2126 EXPECT_EQ(FormField(string16(), |
2124 ASCIIToUTF16("lastname"), | 2127 ASCIIToUTF16("lastname"), |
2125 string16(), | 2128 string16(), |
2126 ASCIIToUTF16("text"), | 2129 ASCIIToUTF16("text"), |
2127 20), | 2130 defaultMaxLength), |
2128 fields[1]); | 2131 fields[1]); |
2129 EXPECT_EQ(FormField(string16(), | 2132 EXPECT_EQ(FormField(string16(), |
2130 string16(), | 2133 string16(), |
2131 ASCIIToUTF16("Send"), | 2134 ASCIIToUTF16("Send"), |
2132 ASCIIToUTF16("submit"), | 2135 ASCIIToUTF16("submit"), |
2133 0), | 2136 0), |
2134 fields[2]); | 2137 fields[2]); |
2135 | 2138 |
2136 // Fill the form. | 2139 // Fill the form. |
2137 form.fields[0].set_value(ASCIIToUTF16("Wyatt")); | 2140 form.fields[0].set_value(ASCIIToUTF16("Wyatt")); |
2138 form.fields[1].set_value(ASCIIToUTF16("Earp")); | 2141 form.fields[1].set_value(ASCIIToUTF16("Earp")); |
2139 EXPECT_TRUE(form_manager.FillForm(form, WebNode())); | 2142 EXPECT_TRUE(form_manager.FillForm(form, WebNode())); |
2140 | 2143 |
2141 // Find the newly-filled form that contains the input element. | 2144 // Find the newly-filled form that contains the input element. |
2142 FormData form2; | 2145 FormData form2; |
2143 EXPECT_TRUE(form_manager.FindFormWithFormControlElement( | 2146 EXPECT_TRUE(form_manager.FindFormWithFormControlElement( |
2144 input_element, FormManager::REQUIRE_NONE, &form2)); | 2147 input_element, FormManager::REQUIRE_NONE, &form2)); |
2145 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); | 2148 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); |
2146 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 2149 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
2147 EXPECT_EQ(GURL("http://buh.com"), form2.action); | 2150 EXPECT_EQ(GURL("http://buh.com"), form2.action); |
2148 | 2151 |
2149 const std::vector<FormField>& fields2 = form2.fields; | 2152 const std::vector<FormField>& fields2 = form2.fields; |
2150 ASSERT_EQ(3U, fields2.size()); | 2153 ASSERT_EQ(3U, fields2.size()); |
2151 EXPECT_EQ(FormField(string16(), | 2154 EXPECT_EQ(FormField(string16(), |
2152 ASCIIToUTF16("firstname"), | 2155 ASCIIToUTF16("firstname"), |
2153 ASCIIToUTF16("Wyatt"), | 2156 ASCIIToUTF16("Wyatt"), |
2154 ASCIIToUTF16("text"), | 2157 ASCIIToUTF16("text"), |
2155 20), | 2158 defaultMaxLength), |
2156 fields2[0]); | 2159 fields2[0]); |
2157 EXPECT_EQ(FormField(string16(), | 2160 EXPECT_EQ(FormField(string16(), |
2158 ASCIIToUTF16("lastname"), | 2161 ASCIIToUTF16("lastname"), |
2159 ASCIIToUTF16("Earp"), | 2162 ASCIIToUTF16("Earp"), |
2160 ASCIIToUTF16("text"), | 2163 ASCIIToUTF16("text"), |
2161 20), | 2164 defaultMaxLength), |
2162 fields2[1]); | 2165 fields2[1]); |
2163 EXPECT_EQ(FormField(string16(), | 2166 EXPECT_EQ(FormField(string16(), |
2164 string16(), | 2167 string16(), |
2165 ASCIIToUTF16("Send"), | 2168 ASCIIToUTF16("Send"), |
2166 ASCIIToUTF16("submit"), | 2169 ASCIIToUTF16("submit"), |
2167 0), | 2170 0), |
2168 fields2[2]); | 2171 fields2[2]); |
2169 } | 2172 } |
2170 | 2173 |
2171 TEST_F(FormManagerTest, FillFormEmptyFormNames) { | 2174 TEST_F(FormManagerTest, FillFormEmptyFormNames) { |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2203 EXPECT_EQ(string16(), form.name); | 2206 EXPECT_EQ(string16(), form.name); |
2204 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 2207 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
2205 EXPECT_EQ(GURL("http://abc.com"), form.action); | 2208 EXPECT_EQ(GURL("http://abc.com"), form.action); |
2206 | 2209 |
2207 const std::vector<FormField>& fields = form.fields; | 2210 const std::vector<FormField>& fields = form.fields; |
2208 ASSERT_EQ(3U, fields.size()); | 2211 ASSERT_EQ(3U, fields.size()); |
2209 EXPECT_EQ(FormField(string16(), | 2212 EXPECT_EQ(FormField(string16(), |
2210 ASCIIToUTF16("apple"), | 2213 ASCIIToUTF16("apple"), |
2211 string16(), | 2214 string16(), |
2212 ASCIIToUTF16("text"), | 2215 ASCIIToUTF16("text"), |
2213 20), | 2216 defaultMaxLength), |
2214 fields[0]); | 2217 fields[0]); |
2215 EXPECT_EQ(FormField(string16(), | 2218 EXPECT_EQ(FormField(string16(), |
2216 ASCIIToUTF16("banana"), | 2219 ASCIIToUTF16("banana"), |
2217 string16(), | 2220 string16(), |
2218 ASCIIToUTF16("text"), | 2221 ASCIIToUTF16("text"), |
2219 20), | 2222 defaultMaxLength), |
2220 fields[1]); | 2223 fields[1]); |
2221 EXPECT_EQ(FormField(string16(), | 2224 EXPECT_EQ(FormField(string16(), |
2222 string16(), | 2225 string16(), |
2223 ASCIIToUTF16("Send"), | 2226 ASCIIToUTF16("Send"), |
2224 ASCIIToUTF16("submit"), | 2227 ASCIIToUTF16("submit"), |
2225 0), | 2228 0), |
2226 fields[2]); | 2229 fields[2]); |
2227 | 2230 |
2228 // Fill the form. | 2231 // Fill the form. |
2229 form.fields[0].set_value(ASCIIToUTF16("Red")); | 2232 form.fields[0].set_value(ASCIIToUTF16("Red")); |
2230 form.fields[1].set_value(ASCIIToUTF16("Yellow")); | 2233 form.fields[1].set_value(ASCIIToUTF16("Yellow")); |
2231 EXPECT_TRUE(form_manager.FillForm(form, WebNode())); | 2234 EXPECT_TRUE(form_manager.FillForm(form, WebNode())); |
2232 | 2235 |
2233 // Find the newly-filled form that contains the input element. | 2236 // Find the newly-filled form that contains the input element. |
2234 FormData form2; | 2237 FormData form2; |
2235 EXPECT_TRUE(form_manager.FindFormWithFormControlElement( | 2238 EXPECT_TRUE(form_manager.FindFormWithFormControlElement( |
2236 input_element, FormManager::REQUIRE_NONE, &form2)); | 2239 input_element, FormManager::REQUIRE_NONE, &form2)); |
2237 EXPECT_EQ(string16(), form2.name); | 2240 EXPECT_EQ(string16(), form2.name); |
2238 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 2241 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
2239 EXPECT_EQ(GURL("http://abc.com"), form2.action); | 2242 EXPECT_EQ(GURL("http://abc.com"), form2.action); |
2240 | 2243 |
2241 const std::vector<FormField>& fields2 = form2.fields; | 2244 const std::vector<FormField>& fields2 = form2.fields; |
2242 ASSERT_EQ(3U, fields2.size()); | 2245 ASSERT_EQ(3U, fields2.size()); |
2243 EXPECT_EQ(FormField(string16(), | 2246 EXPECT_EQ(FormField(string16(), |
2244 ASCIIToUTF16("apple"), | 2247 ASCIIToUTF16("apple"), |
2245 ASCIIToUTF16("Red"), | 2248 ASCIIToUTF16("Red"), |
2246 ASCIIToUTF16("text"), | 2249 ASCIIToUTF16("text"), |
2247 20), | 2250 defaultMaxLength), |
2248 fields2[0]); | 2251 fields2[0]); |
2249 EXPECT_EQ(FormField(string16(), | 2252 EXPECT_EQ(FormField(string16(), |
2250 ASCIIToUTF16("banana"), | 2253 ASCIIToUTF16("banana"), |
2251 ASCIIToUTF16("Yellow"), | 2254 ASCIIToUTF16("Yellow"), |
2252 ASCIIToUTF16("text"), | 2255 ASCIIToUTF16("text"), |
2253 20), | 2256 defaultMaxLength), |
2254 fields2[1]); | 2257 fields2[1]); |
2255 EXPECT_EQ(FormField(string16(), | 2258 EXPECT_EQ(FormField(string16(), |
2256 string16(), | 2259 string16(), |
2257 ASCIIToUTF16("Send"), | 2260 ASCIIToUTF16("Send"), |
2258 ASCIIToUTF16("submit"), | 2261 ASCIIToUTF16("submit"), |
2259 0), | 2262 0), |
2260 fields2[2]); | 2263 fields2[2]); |
2261 } | 2264 } |
2262 | 2265 |
2263 TEST_F(FormManagerTest, ThreePartPhone) { | 2266 TEST_F(FormManagerTest, ThreePartPhone) { |
(...skipping 25 matching lines...) Expand all Loading... | |
2289 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 2292 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
2290 EXPECT_EQ(GURL(frame->url()), form.origin); | 2293 EXPECT_EQ(GURL(frame->url()), form.origin); |
2291 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 2294 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
2292 | 2295 |
2293 const std::vector<FormField>& fields = form.fields; | 2296 const std::vector<FormField>& fields = form.fields; |
2294 ASSERT_EQ(5U, fields.size()); | 2297 ASSERT_EQ(5U, fields.size()); |
2295 EXPECT_EQ(FormField(ASCIIToUTF16("Phone:"), | 2298 EXPECT_EQ(FormField(ASCIIToUTF16("Phone:"), |
2296 ASCIIToUTF16("dayphone1"), | 2299 ASCIIToUTF16("dayphone1"), |
2297 string16(), | 2300 string16(), |
2298 ASCIIToUTF16("text"), | 2301 ASCIIToUTF16("text"), |
2299 20), | 2302 defaultMaxLength), |
2300 fields[0]); | 2303 fields[0]); |
2301 EXPECT_EQ(FormField(ASCIIToUTF16("-"), | 2304 EXPECT_EQ(FormField(ASCIIToUTF16("-"), |
2302 ASCIIToUTF16("dayphone2"), | 2305 ASCIIToUTF16("dayphone2"), |
2303 string16(), | 2306 string16(), |
2304 ASCIIToUTF16("text"), | 2307 ASCIIToUTF16("text"), |
2305 20), | 2308 defaultMaxLength), |
2306 fields[1]); | 2309 fields[1]); |
2307 EXPECT_EQ(FormField(ASCIIToUTF16("-"), | 2310 EXPECT_EQ(FormField(ASCIIToUTF16("-"), |
2308 ASCIIToUTF16("dayphone3"), | 2311 ASCIIToUTF16("dayphone3"), |
2309 string16(), | 2312 string16(), |
2310 ASCIIToUTF16("text"), | 2313 ASCIIToUTF16("text"), |
2311 20), | 2314 defaultMaxLength), |
2312 fields[2]); | 2315 fields[2]); |
2313 EXPECT_EQ(FormField(ASCIIToUTF16("ext.:"), | 2316 EXPECT_EQ(FormField(ASCIIToUTF16("ext.:"), |
2314 ASCIIToUTF16("dayphone4"), | 2317 ASCIIToUTF16("dayphone4"), |
2315 string16(), | 2318 string16(), |
2316 ASCIIToUTF16("text"), | 2319 ASCIIToUTF16("text"), |
2317 20), | 2320 defaultMaxLength), |
2318 fields[3]); | 2321 fields[3]); |
2319 EXPECT_EQ(FormField(string16(), | 2322 EXPECT_EQ(FormField(string16(), |
2320 ASCIIToUTF16("reply-send"), | 2323 ASCIIToUTF16("reply-send"), |
2321 ASCIIToUTF16("Send"), | 2324 ASCIIToUTF16("Send"), |
2322 ASCIIToUTF16("submit"), | 2325 ASCIIToUTF16("submit"), |
2323 0), | 2326 0), |
2324 fields[4]); | 2327 fields[4]); |
2325 } | 2328 } |
2326 | 2329 |
2327 | 2330 |
2328 TEST_F(FormManagerTest, SizeFields) { | 2331 TEST_F(FormManagerTest, MaxLengthFields) { |
2329 LoadHTML("<FORM name=\"TestForm\" action=\"http://cnn.com\" method=\"post\">" | 2332 LoadHTML("<FORM name=\"TestForm\" action=\"http://cnn.com\" method=\"post\">" |
2330 " Phone:" | 2333 " Phone:" |
2331 " <input type=\"text\" size=\"3\" name=\"dayphone1\">" | 2334 " <input type=\"text\" maxlength=\"3\" name=\"dayphone1\">" |
2332 " -" | 2335 " -" |
2333 " <input type=\"text\" size=\"3\" name=\"dayphone2\">" | 2336 " <input type=\"text\" maxlength=\"3\" name=\"dayphone2\">" |
2334 " -" | 2337 " -" |
2335 " <input type=\"text\" size=\"4\" name=\"dayphone3\">" | 2338 " <input type=\"text\" maxlength=\"4\" size=\"5\"" |
2339 " name=\"dayphone3\">" | |
2336 " ext.:" | 2340 " ext.:" |
2337 " <input type=\"text\" size=\"5\" name=\"dayphone4\">" | 2341 " <input type=\"text\" maxlength=\"5\" name=\"dayphone4\">" |
2338 " <input type=\"text\" name=\"default1\">" | 2342 " <input type=\"text\" name=\"default1\">" |
2339 " <input type=\"text\" size=\"-1\" name=\"invalid1\">" | 2343 " <input type=\"text\" maxlength=\"-1\" name=\"invalid1\">" |
2340 " <input type=\"submit\" name=\"reply-send\" value=\"Send\">" | 2344 " <input type=\"submit\" name=\"reply-send\" value=\"Send\">" |
2341 "</FORM>"); | 2345 "</FORM>"); |
2342 | 2346 |
2343 | |
2344 WebFrame* frame = GetMainFrame(); | 2347 WebFrame* frame = GetMainFrame(); |
2345 ASSERT_NE(static_cast<WebFrame*>(NULL), frame); | 2348 ASSERT_NE(static_cast<WebFrame*>(NULL), frame); |
2346 | 2349 |
2347 WebVector<WebFormElement> forms; | 2350 WebVector<WebFormElement> forms; |
2348 frame->forms(forms); | 2351 frame->forms(forms); |
2349 ASSERT_EQ(1U, forms.size()); | 2352 ASSERT_EQ(1U, forms.size()); |
2350 | 2353 |
2351 FormData form; | 2354 FormData form; |
2352 EXPECT_TRUE(FormManager::WebFormElementToFormData(forms[0], | 2355 EXPECT_TRUE(FormManager::WebFormElementToFormData(forms[0], |
2353 FormManager::REQUIRE_NONE, | 2356 FormManager::REQUIRE_NONE, |
(...skipping 22 matching lines...) Expand all Loading... | |
2376 string16(), | 2379 string16(), |
2377 ASCIIToUTF16("text"), | 2380 ASCIIToUTF16("text"), |
2378 4), | 2381 4), |
2379 fields[2]); | 2382 fields[2]); |
2380 EXPECT_EQ(FormField(ASCIIToUTF16("ext.:"), | 2383 EXPECT_EQ(FormField(ASCIIToUTF16("ext.:"), |
2381 ASCIIToUTF16("dayphone4"), | 2384 ASCIIToUTF16("dayphone4"), |
2382 string16(), | 2385 string16(), |
2383 ASCIIToUTF16("text"), | 2386 ASCIIToUTF16("text"), |
2384 5), | 2387 5), |
2385 fields[3]); | 2388 fields[3]); |
2386 // When unspecified |size|, default is 20. | 2389 // When unspecified |size|, default is returned. |
2387 EXPECT_EQ(FormField(string16(), | 2390 EXPECT_EQ(FormField(string16(), |
2388 ASCIIToUTF16("default1"), | 2391 ASCIIToUTF16("default1"), |
2389 string16(), | 2392 string16(), |
2390 ASCIIToUTF16("text"), | 2393 ASCIIToUTF16("text"), |
2391 20), | 2394 defaultMaxLength), |
2392 fields[4]); | 2395 fields[4]); |
2393 // When invalid |size| same value is returned. | 2396 // When invalid |size|, default is returned. |
2394 EXPECT_EQ(FormField(string16(), | 2397 EXPECT_EQ(FormField(string16(), |
2395 ASCIIToUTF16("invalid1"), | 2398 ASCIIToUTF16("invalid1"), |
2396 string16(), | 2399 string16(), |
2397 ASCIIToUTF16("text"), | 2400 ASCIIToUTF16("text"), |
2398 -1), | 2401 defaultMaxLength), |
2399 fields[5]); | 2402 fields[5]); |
2400 EXPECT_EQ(FormField(string16(), | 2403 EXPECT_EQ(FormField(string16(), |
2401 ASCIIToUTF16("reply-send"), | 2404 ASCIIToUTF16("reply-send"), |
2402 ASCIIToUTF16("Send"), | 2405 ASCIIToUTF16("Send"), |
2403 ASCIIToUTF16("submit"), | 2406 ASCIIToUTF16("submit"), |
2404 0), | 2407 0), |
2405 fields[6]); | 2408 fields[6]); |
2406 } | 2409 } |
2407 | 2410 |
2408 // This test re-creates the experience of typing in a field then selecting a | 2411 // This test re-creates the experience of typing in a field then selecting a |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2440 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 2443 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
2441 EXPECT_EQ(GURL(web_frame->url()), form.origin); | 2444 EXPECT_EQ(GURL(web_frame->url()), form.origin); |
2442 EXPECT_EQ(GURL("http://buh.com"), form.action); | 2445 EXPECT_EQ(GURL("http://buh.com"), form.action); |
2443 | 2446 |
2444 const std::vector<FormField>& fields = form.fields; | 2447 const std::vector<FormField>& fields = form.fields; |
2445 ASSERT_EQ(3U, fields.size()); | 2448 ASSERT_EQ(3U, fields.size()); |
2446 EXPECT_EQ(FormField(string16(), | 2449 EXPECT_EQ(FormField(string16(), |
2447 ASCIIToUTF16("firstname"), | 2450 ASCIIToUTF16("firstname"), |
2448 string16(), | 2451 string16(), |
2449 ASCIIToUTF16("text"), | 2452 ASCIIToUTF16("text"), |
2450 20), | 2453 defaultMaxLength), |
2451 fields[0]); | 2454 fields[0]); |
2452 EXPECT_EQ(FormField(string16(), | 2455 EXPECT_EQ(FormField(string16(), |
2453 ASCIIToUTF16("lastname"), | 2456 ASCIIToUTF16("lastname"), |
2454 string16(), | 2457 string16(), |
2455 ASCIIToUTF16("text"), | 2458 ASCIIToUTF16("text"), |
2456 20), | 2459 defaultMaxLength), |
2457 fields[1]); | 2460 fields[1]); |
2458 EXPECT_EQ(FormField(string16(), | 2461 EXPECT_EQ(FormField(string16(), |
2459 string16(), | 2462 string16(), |
2460 ASCIIToUTF16("Send"), | 2463 ASCIIToUTF16("Send"), |
2461 ASCIIToUTF16("submit"), | 2464 ASCIIToUTF16("submit"), |
2462 0), | 2465 0), |
2463 fields[2]); | 2466 fields[2]); |
2464 | 2467 |
2465 // Fill the form. | 2468 // Fill the form. |
2466 form.fields[0].set_value(ASCIIToUTF16("Wyatt")); | 2469 form.fields[0].set_value(ASCIIToUTF16("Wyatt")); |
2467 form.fields[1].set_value(ASCIIToUTF16("Earp")); | 2470 form.fields[1].set_value(ASCIIToUTF16("Earp")); |
2468 EXPECT_TRUE(form_manager.FillForm(form, input_element)); | 2471 EXPECT_TRUE(form_manager.FillForm(form, input_element)); |
2469 | 2472 |
2470 // Find the newly-filled form that contains the input element. | 2473 // Find the newly-filled form that contains the input element. |
2471 FormData form2; | 2474 FormData form2; |
2472 EXPECT_TRUE(form_manager.FindFormWithFormControlElement( | 2475 EXPECT_TRUE(form_manager.FindFormWithFormControlElement( |
2473 input_element, FormManager::REQUIRE_NONE, &form2)); | 2476 input_element, FormManager::REQUIRE_NONE, &form2)); |
2474 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); | 2477 EXPECT_EQ(ASCIIToUTF16("TestForm"), form2.name); |
2475 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 2478 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
2476 EXPECT_EQ(GURL("http://buh.com"), form2.action); | 2479 EXPECT_EQ(GURL("http://buh.com"), form2.action); |
2477 | 2480 |
2478 const std::vector<FormField>& fields2 = form2.fields; | 2481 const std::vector<FormField>& fields2 = form2.fields; |
2479 ASSERT_EQ(3U, fields2.size()); | 2482 ASSERT_EQ(3U, fields2.size()); |
2480 EXPECT_EQ(FormField(string16(), | 2483 EXPECT_EQ(FormField(string16(), |
2481 ASCIIToUTF16("firstname"), | 2484 ASCIIToUTF16("firstname"), |
2482 ASCIIToUTF16("Wyatt"), | 2485 ASCIIToUTF16("Wyatt"), |
2483 ASCIIToUTF16("text"), | 2486 ASCIIToUTF16("text"), |
2484 20), | 2487 defaultMaxLength), |
2485 fields2[0]); | 2488 fields2[0]); |
2486 EXPECT_EQ(FormField(string16(), | 2489 EXPECT_EQ(FormField(string16(), |
2487 ASCIIToUTF16("lastname"), | 2490 ASCIIToUTF16("lastname"), |
2488 ASCIIToUTF16("Earp"), | 2491 ASCIIToUTF16("Earp"), |
2489 ASCIIToUTF16("text"), | 2492 ASCIIToUTF16("text"), |
2490 20), | 2493 defaultMaxLength), |
2491 fields2[1]); | 2494 fields2[1]); |
2492 EXPECT_EQ(FormField(string16(), | 2495 EXPECT_EQ(FormField(string16(), |
2493 string16(), | 2496 string16(), |
2494 ASCIIToUTF16("Send"), | 2497 ASCIIToUTF16("Send"), |
2495 ASCIIToUTF16("submit"), | 2498 ASCIIToUTF16("submit"), |
2496 0), | 2499 0), |
2497 fields2[2]); | 2500 fields2[2]); |
2498 | 2501 |
2499 // Verify that the cursor position has been updated. | 2502 // Verify that the cursor position has been updated. |
2500 EXPECT_EQ(5, input_element.selectionStart()); | 2503 EXPECT_EQ(5, input_element.selectionStart()); |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2547 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 2550 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
2548 EXPECT_EQ(GURL("http://buh.com"), form2.action); | 2551 EXPECT_EQ(GURL("http://buh.com"), form2.action); |
2549 | 2552 |
2550 const std::vector<FormField>& fields2 = form2.fields; | 2553 const std::vector<FormField>& fields2 = form2.fields; |
2551 ASSERT_EQ(6U, fields2.size()); | 2554 ASSERT_EQ(6U, fields2.size()); |
2552 EXPECT_TRUE(fields2[0].StrictlyEqualsHack( | 2555 EXPECT_TRUE(fields2[0].StrictlyEqualsHack( |
2553 FormField(string16(), | 2556 FormField(string16(), |
2554 ASCIIToUTF16("firstname"), | 2557 ASCIIToUTF16("firstname"), |
2555 string16(), | 2558 string16(), |
2556 ASCIIToUTF16("text"), | 2559 ASCIIToUTF16("text"), |
2557 20))); | 2560 defaultMaxLength))); |
2558 EXPECT_TRUE(fields2[1].StrictlyEqualsHack( | 2561 EXPECT_TRUE(fields2[1].StrictlyEqualsHack( |
2559 FormField(string16(), | 2562 FormField(string16(), |
2560 ASCIIToUTF16("lastname"), | 2563 ASCIIToUTF16("lastname"), |
2561 string16(), | 2564 string16(), |
2562 ASCIIToUTF16("text"), | 2565 ASCIIToUTF16("text"), |
2563 20))); | 2566 defaultMaxLength))); |
2564 EXPECT_TRUE(fields2[2].StrictlyEqualsHack( | 2567 EXPECT_TRUE(fields2[2].StrictlyEqualsHack( |
2565 FormField(string16(), | 2568 FormField(string16(), |
2566 ASCIIToUTF16("noAC"), | 2569 ASCIIToUTF16("noAC"), |
2567 string16(), | 2570 string16(), |
2568 ASCIIToUTF16("text"), | 2571 ASCIIToUTF16("text"), |
2569 20))); | 2572 defaultMaxLength))); |
2570 EXPECT_TRUE(fields2[3].StrictlyEqualsHack( | 2573 EXPECT_TRUE(fields2[3].StrictlyEqualsHack( |
2571 FormField(string16(), | 2574 FormField(string16(), |
2572 ASCIIToUTF16("notenabled"), | 2575 ASCIIToUTF16("notenabled"), |
2573 ASCIIToUTF16("no clear"), | 2576 ASCIIToUTF16("no clear"), |
2574 ASCIIToUTF16("text"), | 2577 ASCIIToUTF16("text"), |
2575 20))); | 2578 defaultMaxLength))); |
2576 EXPECT_TRUE(fields2[4].StrictlyEqualsHack( | 2579 EXPECT_TRUE(fields2[4].StrictlyEqualsHack( |
2577 FormField(string16(), | 2580 FormField(string16(), |
2578 ASCIIToUTF16("notvisible"), | 2581 ASCIIToUTF16("notvisible"), |
2579 ASCIIToUTF16("apple"), | 2582 ASCIIToUTF16("apple"), |
2580 ASCIIToUTF16("hidden"), | 2583 ASCIIToUTF16("hidden"), |
2581 0))); | 2584 0))); |
2582 EXPECT_TRUE(fields2[5].StrictlyEqualsHack( | 2585 EXPECT_TRUE(fields2[5].StrictlyEqualsHack( |
2583 FormField(string16(), | 2586 FormField(string16(), |
2584 string16(), | 2587 string16(), |
2585 string16(), | 2588 string16(), |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2640 EXPECT_EQ(GURL(web_frame->url()), form2.origin); | 2643 EXPECT_EQ(GURL(web_frame->url()), form2.origin); |
2641 EXPECT_EQ(GURL("http://buh.com"), form2.action); | 2644 EXPECT_EQ(GURL("http://buh.com"), form2.action); |
2642 | 2645 |
2643 const std::vector<FormField>& fields2 = form2.fields; | 2646 const std::vector<FormField>& fields2 = form2.fields; |
2644 ASSERT_EQ(4U, fields2.size()); | 2647 ASSERT_EQ(4U, fields2.size()); |
2645 EXPECT_TRUE(fields2[0].StrictlyEqualsHack( | 2648 EXPECT_TRUE(fields2[0].StrictlyEqualsHack( |
2646 FormField(string16(), | 2649 FormField(string16(), |
2647 ASCIIToUTF16("firstname"), | 2650 ASCIIToUTF16("firstname"), |
2648 string16(), | 2651 string16(), |
2649 ASCIIToUTF16("text"), | 2652 ASCIIToUTF16("text"), |
2650 20))); | 2653 defaultMaxLength))); |
2651 EXPECT_TRUE(fields2[1].StrictlyEqualsHack( | 2654 EXPECT_TRUE(fields2[1].StrictlyEqualsHack( |
2652 FormField(string16(), | 2655 FormField(string16(), |
2653 ASCIIToUTF16("lastname"), | 2656 ASCIIToUTF16("lastname"), |
2654 string16(), | 2657 string16(), |
2655 ASCIIToUTF16("text"), | 2658 ASCIIToUTF16("text"), |
2656 20))); | 2659 defaultMaxLength))); |
2657 EXPECT_TRUE(fields2[2].StrictlyEqualsHack( | 2660 EXPECT_TRUE(fields2[2].StrictlyEqualsHack( |
2658 FormField(string16(), | 2661 FormField(string16(), |
2659 ASCIIToUTF16("state"), | 2662 ASCIIToUTF16("state"), |
2660 ASCIIToUTF16("?"), | 2663 ASCIIToUTF16("?"), |
2661 ASCIIToUTF16("select-one"), | 2664 ASCIIToUTF16("select-one"), |
2662 0))); | 2665 0))); |
2663 EXPECT_TRUE(fields2[3].StrictlyEqualsHack( | 2666 EXPECT_TRUE(fields2[3].StrictlyEqualsHack( |
2664 FormField(string16(), | 2667 FormField(string16(), |
2665 string16(), | 2668 string16(), |
2666 string16(), | 2669 string16(), |
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2914 EXPECT_EQ(GURL(frame->url()), form.origin); | 2917 EXPECT_EQ(GURL(frame->url()), form.origin); |
2915 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 2918 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
2916 | 2919 |
2917 const std::vector<FormField>& fields = form.fields; | 2920 const std::vector<FormField>& fields = form.fields; |
2918 ASSERT_EQ(4U, fields.size()); | 2921 ASSERT_EQ(4U, fields.size()); |
2919 EXPECT_TRUE(fields[0].StrictlyEqualsHack( | 2922 EXPECT_TRUE(fields[0].StrictlyEqualsHack( |
2920 FormField(string16(), | 2923 FormField(string16(), |
2921 ASCIIToUTF16("firstname"), | 2924 ASCIIToUTF16("firstname"), |
2922 ASCIIToUTF16("John"), | 2925 ASCIIToUTF16("John"), |
2923 ASCIIToUTF16("text"), | 2926 ASCIIToUTF16("text"), |
2924 20))); | 2927 defaultMaxLength))); |
2925 EXPECT_TRUE(fields[1].StrictlyEqualsHack( | 2928 EXPECT_TRUE(fields[1].StrictlyEqualsHack( |
2926 FormField(string16(), | 2929 FormField(string16(), |
2927 ASCIIToUTF16("lastname"), | 2930 ASCIIToUTF16("lastname"), |
2928 ASCIIToUTF16("Smith"), | 2931 ASCIIToUTF16("Smith"), |
2929 ASCIIToUTF16("text"), | 2932 ASCIIToUTF16("text"), |
2930 20))); | 2933 defaultMaxLength))); |
2931 EXPECT_TRUE(fields[2].StrictlyEqualsHack( | 2934 EXPECT_TRUE(fields[2].StrictlyEqualsHack( |
2932 FormField(string16(), | 2935 FormField(string16(), |
2933 ASCIIToUTF16("country"), | 2936 ASCIIToUTF16("country"), |
2934 ASCIIToUTF16("Albania"), | 2937 ASCIIToUTF16("Albania"), |
2935 ASCIIToUTF16("select-one"), | 2938 ASCIIToUTF16("select-one"), |
2936 0))); | 2939 0))); |
2937 EXPECT_TRUE(fields[3].StrictlyEqualsHack( | 2940 EXPECT_TRUE(fields[3].StrictlyEqualsHack( |
2938 FormField(string16(), | 2941 FormField(string16(), |
2939 ASCIIToUTF16("reply-send"), | 2942 ASCIIToUTF16("reply-send"), |
2940 string16(), | 2943 string16(), |
2941 ASCIIToUTF16("submit"), | 2944 ASCIIToUTF16("submit"), |
2942 0))); | 2945 0))); |
2943 | 2946 |
2944 form.fields.clear(); | 2947 form.fields.clear(); |
2945 // Extract the country select-one value as value. | 2948 // Extract the country select-one value as value. |
2946 EXPECT_TRUE(FormManager::WebFormElementToFormData(forms[0], | 2949 EXPECT_TRUE(FormManager::WebFormElementToFormData(forms[0], |
2947 FormManager::REQUIRE_NONE, | 2950 FormManager::REQUIRE_NONE, |
2948 FormManager::EXTRACT_VALUE, | 2951 FormManager::EXTRACT_VALUE, |
2949 &form)); | 2952 &form)); |
2950 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); | 2953 EXPECT_EQ(ASCIIToUTF16("TestForm"), form.name); |
2951 EXPECT_EQ(GURL(frame->url()), form.origin); | 2954 EXPECT_EQ(GURL(frame->url()), form.origin); |
2952 EXPECT_EQ(GURL("http://cnn.com"), form.action); | 2955 EXPECT_EQ(GURL("http://cnn.com"), form.action); |
2953 | 2956 |
2954 ASSERT_EQ(4U, fields.size()); | 2957 ASSERT_EQ(4U, fields.size()); |
2955 EXPECT_TRUE(fields[0].StrictlyEqualsHack( | 2958 EXPECT_TRUE(fields[0].StrictlyEqualsHack( |
2956 FormField(string16(), | 2959 FormField(string16(), |
2957 ASCIIToUTF16("firstname"), | 2960 ASCIIToUTF16("firstname"), |
2958 ASCIIToUTF16("John"), | 2961 ASCIIToUTF16("John"), |
2959 ASCIIToUTF16("text"), | 2962 ASCIIToUTF16("text"), |
2960 20))); | 2963 defaultMaxLength))); |
2961 EXPECT_TRUE(fields[1].StrictlyEqualsHack( | 2964 EXPECT_TRUE(fields[1].StrictlyEqualsHack( |
2962 FormField(string16(), | 2965 FormField(string16(), |
2963 ASCIIToUTF16("lastname"), | 2966 ASCIIToUTF16("lastname"), |
2964 ASCIIToUTF16("Smith"), | 2967 ASCIIToUTF16("Smith"), |
2965 ASCIIToUTF16("text"), | 2968 ASCIIToUTF16("text"), |
2966 20))); | 2969 defaultMaxLength))); |
2967 EXPECT_TRUE(fields[2].StrictlyEqualsHack( | 2970 EXPECT_TRUE(fields[2].StrictlyEqualsHack( |
2968 FormField(string16(), | 2971 FormField(string16(), |
2969 ASCIIToUTF16("country"), | 2972 ASCIIToUTF16("country"), |
2970 ASCIIToUTF16("AL"), | 2973 ASCIIToUTF16("AL"), |
2971 ASCIIToUTF16("select-one"), | 2974 ASCIIToUTF16("select-one"), |
2972 0))); | 2975 0))); |
2973 EXPECT_TRUE(fields[3].StrictlyEqualsHack( | 2976 EXPECT_TRUE(fields[3].StrictlyEqualsHack( |
2974 FormField(string16(), | 2977 FormField(string16(), |
2975 ASCIIToUTF16("reply-send"), | 2978 ASCIIToUTF16("reply-send"), |
2976 string16(), | 2979 string16(), |
2977 ASCIIToUTF16("submit"), | 2980 ASCIIToUTF16("submit"), |
2978 0))); | 2981 0))); |
2979 } | 2982 } |
2980 | 2983 |
2981 } // namespace | 2984 } // namespace |
OLD | NEW |