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

Side by Side Diff: chrome/test/functional/autofill.py

Issue 6961037: Changing Autofill phone numbers in test to valid US numbers. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 9 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/test/data/autofill/functional/phone_pinput_autofill.txt ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 # Copyright (c) 2011 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2011 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 import logging 6 import logging
7 import os 7 import os
8 import pickle 8 import pickle
9 import re 9 import re
10 10
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after
258 """Test Autofill does not aggregate profiles with no address info. 258 """Test Autofill does not aggregate profiles with no address info.
259 259
260 The minimum required address fields must be specified: First Name, 260 The minimum required address fields must be specified: First Name,
261 Last Name, Address Line 1, City, Zip Code, and State. 261 Last Name, Address Line 1, City, Zip Code, and State.
262 """ 262 """
263 profile = {'NAME_FIRST': 'Bob', 263 profile = {'NAME_FIRST': 'Bob',
264 'NAME_LAST': 'Smith', 264 'NAME_LAST': 'Smith',
265 'EMAIL_ADDRESS': 'bsmith@example.com', 265 'EMAIL_ADDRESS': 'bsmith@example.com',
266 'COMPANY_NAME': 'Company X', 266 'COMPANY_NAME': 'Company X',
267 'ADDRESS_HOME_CITY': 'Mountain View', 267 'ADDRESS_HOME_CITY': 'Mountain View',
268 'PHONE_HOME_WHOLE_NUMBER': '650-123-4567',} 268 'PHONE_HOME_WHOLE_NUMBER': '650-555-4567',}
269 self._FillFormAndSubmit( 269 self._FillFormAndSubmit(
270 profile, 'duplicate_profiles_test.html', tab_index=0, windex=0) 270 profile, 'duplicate_profiles_test.html', tab_index=0, windex=0)
271 self.assertFalse(self.GetAutofillProfile()['profiles'], 271 self.assertFalse(self.GetAutofillProfile()['profiles'],
272 msg='Profile with no address info was aggregated.') 272 msg='Profile with no address info was aggregated.')
273 273
274 def testProfilesNotAggregatedWithInvalidEmail(self): 274 def testProfilesNotAggregatedWithInvalidEmail(self):
275 """Test Autofill does not aggregate profiles with an invalid email.""" 275 """Test Autofill does not aggregate profiles with an invalid email."""
276 profile = {'NAME_FIRST': 'Bob', 276 profile = {'NAME_FIRST': 'Bob',
277 'NAME_LAST': 'Smith', 277 'NAME_LAST': 'Smith',
278 'EMAIL_ADDRESS': 'garbage', 278 'EMAIL_ADDRESS': 'garbage',
279 'ADDRESS_HOME_LINE1': '1234 H St.', 279 'ADDRESS_HOME_LINE1': '1234 H St.',
280 'ADDRESS_HOME_CITY': 'San Jose', 280 'ADDRESS_HOME_CITY': 'San Jose',
281 'ADDRESS_HOME_STATE': 'CA', 281 'ADDRESS_HOME_STATE': 'CA',
282 'ADDRESS_HOME_ZIP': '95110', 282 'ADDRESS_HOME_ZIP': '95110',
283 'COMPANY_NAME': 'Company X', 283 'COMPANY_NAME': 'Company X',
284 'PHONE_HOME_WHOLE_NUMBER': '408-123-4567',} 284 'PHONE_HOME_WHOLE_NUMBER': '408-871-4567',}
285 self._FillFormAndSubmit( 285 self._FillFormAndSubmit(
286 profile, 'duplicate_profiles_test.html', tab_index=0, windex=0) 286 profile, 'duplicate_profiles_test.html', tab_index=0, windex=0)
287 self.assertFalse(self.GetAutofillProfile()['profiles'], 287 self.assertFalse(self.GetAutofillProfile()['profiles'],
288 msg='Profile with invalid email was aggregated.') 288 msg='Profile with invalid email was aggregated.')
289 289
290 def testComparePhoneNumbers(self): 290 def testComparePhoneNumbers(self):
291 """Test phone fields parse correctly from a given profile. 291 """Test phone fields parse correctly from a given profile.
292 292
293 The high level key presses execute the following: Select the first text 293 The high level key presses execute the following: Select the first text
294 field, invoke the autofill popup list, select the first profile within the 294 field, invoke the autofill popup list, select the first profile within the
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
344 def testNoAutofillForReadOnlyFields(self): 344 def testNoAutofillForReadOnlyFields(self):
345 """Test that Autofill does not fill in read-only fields.""" 345 """Test that Autofill does not fill in read-only fields."""
346 profile = {'NAME_FIRST': 'Bob', 346 profile = {'NAME_FIRST': 'Bob',
347 'NAME_LAST': 'Smith', 347 'NAME_LAST': 'Smith',
348 'EMAIL_ADDRESS': 'bsmith@gmail.com', 348 'EMAIL_ADDRESS': 'bsmith@gmail.com',
349 'ADDRESS_HOME_LINE1': '1234 H St.', 349 'ADDRESS_HOME_LINE1': '1234 H St.',
350 'ADDRESS_HOME_CITY': 'San Jose', 350 'ADDRESS_HOME_CITY': 'San Jose',
351 'ADDRESS_HOME_STATE': 'CA', 351 'ADDRESS_HOME_STATE': 'CA',
352 'ADDRESS_HOME_ZIP': '95110', 352 'ADDRESS_HOME_ZIP': '95110',
353 'COMPANY_NAME': 'Company X', 353 'COMPANY_NAME': 'Company X',
354 'PHONE_HOME_WHOLE_NUMBER': '408-123-4567',} 354 'PHONE_HOME_WHOLE_NUMBER': '408-871-4567',}
355 355
356 self.FillAutofillProfile(profiles=[profile]) 356 self.FillAutofillProfile(profiles=[profile])
357 url = self.GetHttpURLForDataPath( 357 url = self.GetHttpURLForDataPath(
358 'autofill', 'functional', 'read_only_field_test.html') 358 'autofill', 'functional', 'read_only_field_test.html')
359 self.NavigateToURL(url) 359 self.NavigateToURL(url)
360 self.assertTrue(self.AutofillPopulateForm('firstname'), 360 self.assertTrue(self.AutofillPopulateForm('firstname'),
361 msg='Autofill form could not be populated.') 361 msg='Autofill form could not be populated.')
362 js_return_readonly_field = ( 362 js_return_readonly_field = (
363 'var field_value = document.getElementById("email").value;' 363 'var field_value = document.getElementById("email").value;'
364 'window.domAutomationController.send(field_value);') 364 'window.domAutomationController.send(field_value);')
(...skipping 18 matching lines...) Expand all
383 Steps: 383 Steps:
384 1. Fill form using a saved profile. 384 1. Fill form using a saved profile.
385 2. Reset the form. 385 2. Reset the form.
386 3. Fill form using a saved profile. 386 3. Fill form using a saved profile.
387 """ 387 """
388 profile = {'NAME_FIRST': 'Bob', 388 profile = {'NAME_FIRST': 'Bob',
389 'NAME_LAST': 'Smith', 389 'NAME_LAST': 'Smith',
390 'EMAIL_ADDRESS': 'bsmith@gmail.com', 390 'EMAIL_ADDRESS': 'bsmith@gmail.com',
391 'ADDRESS_HOME_LINE1': '1234 H St.', 391 'ADDRESS_HOME_LINE1': '1234 H St.',
392 'ADDRESS_HOME_CITY': 'San Jose', 392 'ADDRESS_HOME_CITY': 'San Jose',
393 'PHONE_HOME_WHOLE_NUMBER': '4081234567',} 393 'PHONE_HOME_WHOLE_NUMBER': '4088714567',}
394 394
395 self.FillAutofillProfile(profiles=[profile]) 395 self.FillAutofillProfile(profiles=[profile])
396 url = self.GetHttpURLForDataPath( 396 url = self.GetHttpURLForDataPath(
397 'autofill', 'functional', 'autofill_test_form.html') 397 'autofill', 'functional', 'autofill_test_form.html')
398 self.NavigateToURL(url) 398 self.NavigateToURL(url)
399 # Fill form using an address profile. 399 # Fill form using an address profile.
400 self.assertTrue(self.AutofillPopulateForm('NAME_FIRST'), 400 self.assertTrue(self.AutofillPopulateForm('NAME_FIRST'),
401 msg='Autofill form could not be populated.') 401 msg='Autofill form could not be populated.')
402 # Reset the form. 402 # Reset the form.
403 self.ExecuteJavascript('document.getElementById("testform").reset();' 403 self.ExecuteJavascript('document.getElementById("testform").reset();'
(...skipping 18 matching lines...) Expand all
422 key, value, form_values[key]))) 422 key, value, form_values[key])))
423 423
424 def testDistinguishMiddleInitialWithinName(self): 424 def testDistinguishMiddleInitialWithinName(self):
425 """Test Autofill distinguishes a middle initial in a name.""" 425 """Test Autofill distinguishes a middle initial in a name."""
426 profile = {'NAME_FIRST': 'Bob', 426 profile = {'NAME_FIRST': 'Bob',
427 'NAME_MIDDLE': 'Leo', 427 'NAME_MIDDLE': 'Leo',
428 'NAME_LAST': 'Smith', 428 'NAME_LAST': 'Smith',
429 'EMAIL_ADDRESS': 'bsmith@gmail.com', 429 'EMAIL_ADDRESS': 'bsmith@gmail.com',
430 'ADDRESS_HOME_LINE1': '1234 H St.', 430 'ADDRESS_HOME_LINE1': '1234 H St.',
431 'ADDRESS_HOME_CITY': 'San Jose', 431 'ADDRESS_HOME_CITY': 'San Jose',
432 'PHONE_HOME_WHOLE_NUMBER': '4081234567',} 432 'PHONE_HOME_WHOLE_NUMBER': '4088714567',}
433 433
434 middle_initial = profile['NAME_MIDDLE'][0] 434 middle_initial = profile['NAME_MIDDLE'][0]
435 self.FillAutofillProfile(profiles=[profile]) 435 self.FillAutofillProfile(profiles=[profile])
436 url = self.GetHttpURLForDataPath( 436 url = self.GetHttpURLForDataPath(
437 'autofill', 'functional', 'autofill_middleinit_form.html') 437 'autofill', 'functional', 'autofill_middleinit_form.html')
438 self.NavigateToURL(url) 438 self.NavigateToURL(url)
439 # Fill form using an address profile. 439 # Fill form using an address profile.
440 self.assertTrue(self.AutofillPopulateForm('NAME_FIRST'), 440 self.assertTrue(self.AutofillPopulateForm('NAME_FIRST'),
441 msg='Autofill form could not be populated.') 441 msg='Autofill form could not be populated.')
442 js_return_middleinit_field = ( 442 js_return_middleinit_field = (
443 'var field_value = document.getElementById("NAME_MIDDLE").value;' 443 'var field_value = document.getElementById("NAME_MIDDLE").value;'
444 'window.domAutomationController.send(field_value);') 444 'window.domAutomationController.send(field_value);')
445 middleinit_field_value = self.ExecuteJavascript( 445 middleinit_field_value = self.ExecuteJavascript(
446 js_return_middleinit_field, 0, 0) 446 js_return_middleinit_field, 0, 0)
447 self.assertEqual(middleinit_field_value, middle_initial, 447 self.assertEqual(middleinit_field_value, middle_initial,
448 msg=('Middle initial "%s" not distinguished from "%s".' % 448 msg=('Middle initial "%s" not distinguished from "%s".' %
449 (middleinit_field_value, profile['NAME_MIDDLE']))) 449 (middleinit_field_value, profile['NAME_MIDDLE'])))
450 450
451 def testMultipleEmailFilledByOneUserGesture(self): 451 def testMultipleEmailFilledByOneUserGesture(self):
452 """Test forms with multiple email addresses are filled properly. 452 """Test forms with multiple email addresses are filled properly.
453 453
454 Entire form should be filled with one user gesture. 454 Entire form should be filled with one user gesture.
455 """ 455 """
456 profile = {'NAME_FIRST': 'Bob', 456 profile = {'NAME_FIRST': 'Bob',
457 'NAME_LAST': 'Smith', 457 'NAME_LAST': 'Smith',
458 'EMAIL_ADDRESS': 'bsmith@gmail.com', 458 'EMAIL_ADDRESS': 'bsmith@gmail.com',
459 'PHONE_HOME_WHOLE_NUMBER': '4081234567',} 459 'PHONE_HOME_WHOLE_NUMBER': '4088714567',}
460 460
461 self.FillAutofillProfile(profiles=[profile]) 461 self.FillAutofillProfile(profiles=[profile])
462 url = self.GetHttpURLForDataPath( 462 url = self.GetHttpURLForDataPath(
463 'autofill', 'functional', 'autofill_confirmemail_form.html') 463 'autofill', 'functional', 'autofill_confirmemail_form.html')
464 self.NavigateToURL(url) 464 self.NavigateToURL(url)
465 # Fill form using an address profile. 465 # Fill form using an address profile.
466 self.assertTrue(self.AutofillPopulateForm('NAME_FIRST'), 466 self.assertTrue(self.AutofillPopulateForm('NAME_FIRST'),
467 msg='Autofill form could not be populated.') 467 msg='Autofill form could not be populated.')
468 js_return_confirmemail_field = ( 468 js_return_confirmemail_field = (
469 'var field_value = document.getElementById("EMAIL_CONFIRM").value;' 469 'var field_value = document.getElementById("EMAIL_CONFIRM").value;'
470 'window.domAutomationController.send(field_value);') 470 'window.domAutomationController.send(field_value);')
471 confirmemail_field_value = self.ExecuteJavascript( 471 confirmemail_field_value = self.ExecuteJavascript(
472 js_return_confirmemail_field, 0, 0) 472 js_return_confirmemail_field, 0, 0)
473 self.assertEqual(confirmemail_field_value, profile['EMAIL_ADDRESS'], 473 self.assertEqual(confirmemail_field_value, profile['EMAIL_ADDRESS'],
474 msg=('Confirmation Email address "%s" not equal to Email\n' 474 msg=('Confirmation Email address "%s" not equal to Email\n'
475 'address "%s".' % (confirmemail_field_value, 475 'address "%s".' % (confirmemail_field_value,
476 profile['EMAIL_ADDRESS']))) 476 profile['EMAIL_ADDRESS'])))
477 477
478 def testProfileWithEmailInOtherFieldNotSaved(self): 478 def testProfileWithEmailInOtherFieldNotSaved(self):
479 """Test profile not aggregated if email found in non-email field.""" 479 """Test profile not aggregated if email found in non-email field."""
480 profile = {'NAME_FIRST': 'Bob', 480 profile = {'NAME_FIRST': 'Bob',
481 'NAME_LAST': 'Smith', 481 'NAME_LAST': 'Smith',
482 'ADDRESS_HOME_LINE1': 'bsmith@gmail.com', 482 'ADDRESS_HOME_LINE1': 'bsmith@gmail.com',
483 'ADDRESS_HOME_CITY': 'San Jose', 483 'ADDRESS_HOME_CITY': 'San Jose',
484 'ADDRESS_HOME_STATE': 'CA', 484 'ADDRESS_HOME_STATE': 'CA',
485 'ADDRESS_HOME_ZIP': '95110', 485 'ADDRESS_HOME_ZIP': '95110',
486 'COMPANY_NAME': 'Company X', 486 'COMPANY_NAME': 'Company X',
487 'PHONE_HOME_WHOLE_NUMBER': '408-123-4567',} 487 'PHONE_HOME_WHOLE_NUMBER': '408-871-4567',}
488 self._FillFormAndSubmit( 488 self._FillFormAndSubmit(
489 profile, 'duplicate_profiles_test.html', tab_index=0, windex=0) 489 profile, 'duplicate_profiles_test.html', tab_index=0, windex=0)
490 self.assertFalse(self.GetAutofillProfile()['profiles'], 490 self.assertFalse(self.GetAutofillProfile()['profiles'],
491 msg='Profile with email in a non-email field was ' 491 msg='Profile with email in a non-email field was '
492 'aggregated.') 492 'aggregated.')
493 493
494 def FormFillLatencyAfterSubmit(self): 494 def FormFillLatencyAfterSubmit(self):
495 """Test latency time on form submit with lots of stored Autofill profiles. 495 """Test latency time on form submit with lots of stored Autofill profiles.
496 496
497 This test verifies when a profile is selected from the Autofill dictionary 497 This test verifies when a profile is selected from the Autofill dictionary
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
620 'window.domAutomationController.send("done");') % (key, value) 620 'window.domAutomationController.send("done");') % (key, value)
621 self.ExecuteJavascript(script, 0, 0) 621 self.ExecuteJavascript(script, 0, 0)
622 self.ExecuteJavascript('document.getElementById("testform").submit();' 622 self.ExecuteJavascript('document.getElementById("testform").submit();'
623 'window.domAutomationController.send("done");', 623 'window.domAutomationController.send("done");',
624 0, 0) 624 0, 0)
625 return len(list_of_dict) 625 return len(list_of_dict)
626 626
627 627
628 if __name__ == '__main__': 628 if __name__ == '__main__':
629 pyauto_functional.Main() 629 pyauto_functional.Main()
OLDNEW
« no previous file with comments | « chrome/test/data/autofill/functional/phone_pinput_autofill.txt ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698