Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright 2013 The Chromium Authors. All rights reserved. | 2 # Copyright 2013 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 """End to end tests for ChromeDriver.""" | 6 """End to end tests for ChromeDriver.""" |
| 7 | 7 |
| 8 import base64 | 8 import base64 |
| 9 import json | 9 import json |
| 10 import math | 10 import math |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 52 # This test is flaky since it uses setTimeout. | 52 # This test is flaky since it uses setTimeout. |
| 53 # Re-enable once crbug.com/177511 is fixed and we can remove setTimeout. | 53 # Re-enable once crbug.com/177511 is fixed and we can remove setTimeout. |
| 54 'ChromeDriverTest.testAlert', | 54 'ChromeDriverTest.testAlert', |
| 55 # This test is too flaky on the bots, but seems to run perfectly fine | 55 # This test is too flaky on the bots, but seems to run perfectly fine |
| 56 # on developer workstations. | 56 # on developer workstations. |
| 57 'ChromeDriverTest.testEmulateNetworkConditionsNameSpeed', | 57 'ChromeDriverTest.testEmulateNetworkConditionsNameSpeed', |
| 58 'ChromeDriverTest.testEmulateNetworkConditionsSpeed', | 58 'ChromeDriverTest.testEmulateNetworkConditionsSpeed', |
| 59 # crbug.com/469947 | 59 # crbug.com/469947 |
| 60 'ChromeDriverTest.testTouchPinch', | 60 'ChromeDriverTest.testTouchPinch', |
| 61 'ChromeDriverTest.testReturningAFunctionInJavascript', | 61 'ChromeDriverTest.testReturningAFunctionInJavascript', |
| 62 # https://bugs.chromium.org/p/chromedriver/issues/detail?id=833 | |
| 63 'ChromeDriverTest.testAlertOnNewWindow', | |
| 62 ] | 64 ] |
| 63 | 65 |
| 64 _VERSION_SPECIFIC_FILTER = {} | 66 _VERSION_SPECIFIC_FILTER = {} |
| 65 _VERSION_SPECIFIC_FILTER['HEAD'] = [ | 67 _VERSION_SPECIFIC_FILTER['HEAD'] = [ |
| 66 # https://code.google.com/p/chromedriver/issues/detail?id=992 | 68 # https://code.google.com/p/chromedriver/issues/detail?id=992 |
| 67 'ChromeDownloadDirTest.testDownloadDirectoryOverridesExistingPreferences', | 69 'ChromeDownloadDirTest.testDownloadDirectoryOverridesExistingPreferences', |
| 68 ] | 70 ] |
| 69 | 71 |
| 70 _OS_SPECIFIC_FILTER = {} | 72 _OS_SPECIFIC_FILTER = {} |
| 71 _OS_SPECIFIC_FILTER['win'] = [ | 73 _OS_SPECIFIC_FILTER['win'] = [ |
| (...skipping 635 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 707 'window.setTimeout(' | 709 'window.setTimeout(' |
| 708 ' function() { window.confirmed = confirm(\'HI\'); },' | 710 ' function() { window.confirmed = confirm(\'HI\'); },' |
| 709 ' 0);') | 711 ' 0);') |
| 710 self.assertTrue(self._driver.IsAlertOpen()) | 712 self.assertTrue(self._driver.IsAlertOpen()) |
| 711 self.assertEquals('HI', self._driver.GetAlertMessage()) | 713 self.assertEquals('HI', self._driver.GetAlertMessage()) |
| 712 self._driver.HandleAlert(False) | 714 self._driver.HandleAlert(False) |
| 713 self.assertFalse(self._driver.IsAlertOpen()) | 715 self.assertFalse(self._driver.IsAlertOpen()) |
| 714 self.assertEquals(False, | 716 self.assertEquals(False, |
| 715 self._driver.ExecuteScript('return window.confirmed')) | 717 self._driver.ExecuteScript('return window.confirmed')) |
| 716 | 718 |
| 719 def testAlertOnNewWindow(self): | |
| 720 self._http_server.SetDataForPath( | |
| 721 '/newwindowWithAlert', | |
| 722 """ | |
| 723 <html> | |
| 724 <body> | |
| 725 <a href='%s' target='_blank'>new window having alert onload</a> | |
| 726 </body> | |
| 727 </html>""" % self.GetHttpUrlForFile('/chromedriver/alert_onload.html')) | |
| 728 self._driver.Load(self._http_server.GetUrl() + '/newwindowWithAlert') | |
|
samuong
2017/03/27 18:22:06
i'd suggest just loading about:blank, and then set
gmanikpure
2017/03/27 20:38:38
I get 'element not visible error' at line730 when
| |
| 729 old_windows = self._driver.GetWindowHandles() | |
| 730 self._driver.FindElement('tagName', 'a').Click() | |
| 731 new_window = self.WaitForNewWindow(self._driver, old_windows) | |
| 732 self.assertNotEqual(None, new_window) | |
| 733 self._driver.SwitchToWindow(new_window) | |
| 734 self.assertTrue(self._driver.IsAlertOpen()) | |
| 735 self._driver.HandleAlert(False) | |
| 736 self.assertFalse(self._driver.IsAlertOpen()) | |
| 737 | |
| 717 def testShouldHandleNewWindowLoadingProperly(self): | 738 def testShouldHandleNewWindowLoadingProperly(self): |
| 718 """Tests that ChromeDriver determines loading correctly for new windows.""" | 739 """Tests that ChromeDriver determines loading correctly for new windows.""" |
| 719 self._http_server.SetDataForPath( | 740 self._http_server.SetDataForPath( |
| 720 '/newwindow', | 741 '/newwindow', |
| 721 """ | 742 """ |
| 722 <html> | 743 <html> |
| 723 <body> | 744 <body> |
| 724 <a href='%s' target='_blank'>new window/tab</a> | 745 <a href='%s' target='_blank'>new window/tab</a> |
| 725 </body> | 746 </body> |
| 726 </html>""" % self._sync_server.GetUrl()) | 747 </html>""" % self._sync_server.GetUrl()) |
| (...skipping 1128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1855 | 1876 |
| 1856 all_tests_suite = unittest.defaultTestLoader.loadTestsFromModule( | 1877 all_tests_suite = unittest.defaultTestLoader.loadTestsFromModule( |
| 1857 sys.modules[__name__]) | 1878 sys.modules[__name__]) |
| 1858 tests = unittest_util.FilterTestSuite(all_tests_suite, options.filter) | 1879 tests = unittest_util.FilterTestSuite(all_tests_suite, options.filter) |
| 1859 ChromeDriverTest.GlobalSetUp() | 1880 ChromeDriverTest.GlobalSetUp() |
| 1860 MobileEmulationCapabilityTest.GlobalSetUp() | 1881 MobileEmulationCapabilityTest.GlobalSetUp() |
| 1861 result = unittest.TextTestRunner(stream=sys.stdout, verbosity=2).run(tests) | 1882 result = unittest.TextTestRunner(stream=sys.stdout, verbosity=2).run(tests) |
| 1862 ChromeDriverTest.GlobalTearDown() | 1883 ChromeDriverTest.GlobalTearDown() |
| 1863 MobileEmulationCapabilityTest.GlobalTearDown() | 1884 MobileEmulationCapabilityTest.GlobalTearDown() |
| 1864 sys.exit(len(result.failures) + len(result.errors)) | 1885 sys.exit(len(result.failures) + len(result.errors)) |
| OLD | NEW |