| OLD | NEW |
| 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 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 """Tests for ChromeDriver. | 5 """Tests for ChromeDriver. |
| 6 | 6 |
| 7 If your test is testing a specific part of the WebDriver API, consider adding | 7 If your test is testing a specific part of the WebDriver API, consider adding |
| 8 it to the appropriate place in the WebDriver tree instead. | 8 it to the appropriate place in the WebDriver tree instead. |
| 9 """ | 9 """ |
| 10 | 10 |
| (...skipping 961 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 972 | 972 |
| 973 def testCanHandleAlertInSubframe(self): | 973 def testCanHandleAlertInSubframe(self): |
| 974 driver = self.GetNewDriver() | 974 driver = self.GetNewDriver() |
| 975 driver.get(self.GetTestDataUrl() + '/alerts.html') | 975 driver.get(self.GetTestDataUrl() + '/alerts.html') |
| 976 driver.switch_to_frame('subframe') | 976 driver.switch_to_frame('subframe') |
| 977 driver.execute_async_script('arguments[0](); window.alert("ok")') | 977 driver.execute_async_script('arguments[0](); window.alert("ok")') |
| 978 driver.switch_to_alert().accept() | 978 driver.switch_to_alert().accept() |
| 979 | 979 |
| 980 | 980 |
| 981 class WindowTest(ChromeDriverTest): | 981 class WindowTest(ChromeDriverTest): |
| 982 def testSizeAndPosition(self): | 982 """Tests for WebDriver window commands.""" |
| 983 driver = self.GetNewDriver() | |
| 984 | 983 |
| 985 # Test size. | 984 def setUp(self): |
| 986 size = driver.get_window_size() | 985 super(WindowTest, self).setUp() |
| 987 driver.set_window_size(size['width'], size['height']) | 986 self._driver = self.GetNewDriver() |
| 988 self.assertEquals(size, driver.get_window_size()) | 987 |
| 989 driver.set_window_size(800, 600) | 988 def testSize(self): |
| 990 self.assertEquals(800, driver.get_window_size()['width']) | 989 size = self._driver.get_window_size() |
| 991 self.assertEquals(600, driver.get_window_size()['height']) | 990 self._driver.set_window_size(size['width'], size['height']) |
| 992 # Test position. | 991 self.assertEquals(size, self._driver.get_window_size()) |
| 993 pos = driver.get_window_position() | 992 self._driver.set_window_size(800, 600) |
| 994 driver.set_window_position(pos['x'], pos['y']) | 993 self.assertEquals(800, self._driver.get_window_size()['width']) |
| 995 self.assertEquals(pos, driver.get_window_position()) | 994 self.assertEquals(600, self._driver.get_window_size()['height']) |
| 996 driver.set_window_position(100, 200) | 995 |
| 997 self.assertEquals(100, driver.get_window_position()['x']) | 996 def testPosition(self): |
| 998 self.assertEquals(200, driver.get_window_position()['y']) | 997 pos = self._driver.get_window_position() |
| 999 # Test specifying window handle. | 998 self._driver.set_window_position(pos['x'], pos['y']) |
| 1000 driver.execute_script( | 999 self.assertEquals(pos, self._driver.get_window_position()) |
| 1000 self._driver.set_window_position(100, 200) |
| 1001 self.assertEquals(100, self._driver.get_window_position()['x']) |
| 1002 self.assertEquals(200, self._driver.get_window_position()['y']) |
| 1003 |
| 1004 # Systems without window manager (Xvfb, Xvnc) do not implement maximization. |
| 1005 @SkipIf(util.IsLinux()) |
| 1006 def testMaximize(self): |
| 1007 old_size = self._driver.get_window_size() |
| 1008 self._driver.maximize_window() |
| 1009 new_size = self._driver.get_window_size() |
| 1010 self.assertTrue(old_size['width'] <= new_size['width']) |
| 1011 self.assertTrue(old_size['height'] <= new_size['height']) |
| 1012 |
| 1013 def testWindowHandle(self): |
| 1014 """Test specifying window handle.""" |
| 1015 self._driver.execute_script( |
| 1001 'window.open("about:blank", "name", "height=200, width=200")') | 1016 'window.open("about:blank", "name", "height=200, width=200")') |
| 1002 windows = driver.window_handles | 1017 windows = self._driver.window_handles |
| 1003 self.assertEquals(2, len(windows)) | 1018 self.assertEquals(2, len(windows)) |
| 1004 driver.set_window_size(400, 300, windows[1]) | 1019 self._driver.set_window_size(400, 300, windows[1]) |
| 1005 self.assertEquals(400, driver.get_window_size(windows[1])['width']) | 1020 self.assertEquals(400, self._driver.get_window_size(windows[1])['width']) |
| 1006 self.assertEquals(300, driver.get_window_size(windows[1])['height']) | 1021 self.assertEquals(300, self._driver.get_window_size(windows[1])['height']) |
| 1007 self.assertNotEquals(driver.get_window_size(windows[1]), | 1022 self.assertNotEquals(self._driver.get_window_size(windows[1]), |
| 1008 driver.get_window_size(windows[0])) | 1023 self._driver.get_window_size(windows[0])) |
| 1009 # Test specifying invalid handle. | 1024 |
| 1025 def testInvalidWindowHandle(self): |
| 1026 """Tests specifying invalid handle.""" |
| 1010 invalid_handle = 'f1-120' | 1027 invalid_handle = 'f1-120' |
| 1011 self.assertRaises(WebDriverException, driver.set_window_size, 400, 300, | 1028 self.assertRaises(WebDriverException, self._driver.set_window_size, |
| 1029 400, 300, invalid_handle) |
| 1030 self.assertRaises(NoSuchWindowException, self._driver.get_window_size, |
| 1012 invalid_handle) | 1031 invalid_handle) |
| 1013 self.assertRaises(NoSuchWindowException, driver.get_window_size, | 1032 self.assertRaises(NoSuchWindowException, self._driver.set_window_position, |
| 1014 invalid_handle) | 1033 1, 1, invalid_handle) |
| 1015 self.assertRaises(NoSuchWindowException, driver.set_window_position, 1, 1, | 1034 self.assertRaises(NoSuchWindowException, self._driver.get_window_position, |
| 1016 invalid_handle) | |
| 1017 self.assertRaises(NoSuchWindowException, driver.get_window_position, | |
| 1018 invalid_handle) | 1035 invalid_handle) |
| 1019 | 1036 |
| 1020 | 1037 |
| 1021 class GeolocationTest(ChromeDriverTest): | 1038 class GeolocationTest(ChromeDriverTest): |
| 1022 """Tests for WebDriver geolocation commands.""" | 1039 """Tests for WebDriver geolocation commands.""" |
| 1023 | 1040 |
| 1024 def testGeolocation(self): | 1041 def testGeolocation(self): |
| 1025 """Tests the get and set geolocation commands.""" | 1042 """Tests the get and set geolocation commands.""" |
| 1026 driver = self.GetNewDriver() | 1043 driver = self.GetNewDriver() |
| 1027 | 1044 |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1118 self._testExtensionView(driver, ext.get_popup_handle(), ext) | 1135 self._testExtensionView(driver, ext.get_popup_handle(), ext) |
| 1119 | 1136 |
| 1120 def testPageActionPopupView(self): | 1137 def testPageActionPopupView(self): |
| 1121 driver = self.GetNewDriver() | 1138 driver = self.GetNewDriver() |
| 1122 ext = driver.install_extension(self.PAGE_ACTION_EXTENSION) | 1139 ext = driver.install_extension(self.PAGE_ACTION_EXTENSION) |
| 1123 def is_page_action_visible(driver): | 1140 def is_page_action_visible(driver): |
| 1124 return ext.is_page_action_visible() | 1141 return ext.is_page_action_visible() |
| 1125 WebDriverWait(driver, 10).until(is_page_action_visible) | 1142 WebDriverWait(driver, 10).until(is_page_action_visible) |
| 1126 ext.click_page_action() | 1143 ext.click_page_action() |
| 1127 self._testExtensionView(driver, ext.get_popup_handle(), ext) | 1144 self._testExtensionView(driver, ext.get_popup_handle(), ext) |
| OLD | NEW |