 Chromium Code Reviews
 Chromium Code Reviews Issue 6630001:
  Allow webdriver users to choose between sending the key events when...  (Closed) 
  Base URL: http://src.chromium.org/svn/trunk/src/
    
  
    Issue 6630001:
  Allow webdriver users to choose between sending the key events when...  (Closed) 
  Base URL: http://src.chromium.org/svn/trunk/src/| Index: chrome/test/webdriver/chromedriver_tests.py | 
| =================================================================== | 
| --- chrome/test/webdriver/chromedriver_tests.py (revision 77771) | 
| +++ chrome/test/webdriver/chromedriver_tests.py (working copy) | 
| @@ -27,6 +27,8 @@ | 
| import simplejson as json | 
| from selenium.webdriver.remote.webdriver import WebDriver | 
| +from selenium.webdriver.common.keys import Keys | 
| +from selenium.webdriver.common.desired_capabilities import DesiredCapabilities | 
| class Request(urllib2.Request): | 
| @@ -109,13 +111,51 @@ | 
| self.assertEquals(404, expected.code) | 
| def testCanStartChromeDriverOnSpecificPort(self): | 
| - launcher = ChromeDriverLauncher(port=9520) | 
| + self.launcher = ChromeDriverLauncher(port=9520) | 
| self.assertEquals(9520, launcher.GetPort()) | 
| - driver = WebDriver(launcher.GetURL(), 'chrome', 'any') | 
| + driver = WebDriver(launcher.GetURL(), {}) | 
| driver.quit() | 
| launcher.Kill() | 
| +class NativeInputTest(unittest.TestCase): | 
| + """Native input ChromeDriver tests.""" | 
| + | 
| + SEARCH = "http://www.google.com/webhp?hl=en" | 
| + | 
| + def setUp(self): | 
| + self._launcher = ChromeDriverLauncher() | 
| + self.capabilities = DesiredCapabilities.CHROME | 
| + self.capabilities["chrome"] = { "nativeEvents" : True } | 
| + | 
| + def tearDown(self): | 
| + self._launcher.Kill() | 
| + | 
| + def testCanStartsWithNativeEvents(self): | 
| + driver = WebDriver(self._launcher.GetURL(), self.capabilities) | 
| + self.assertTrue(driver.capabilities["chrome"].has_key("nativeEvents")) | 
| + self.assertTrue(driver.capabilities["chrome"]["nativeEvents"]) | 
| + | 
| + def testSendKeysNative(self): | 
| + driver = WebDriver(self._launcher.GetURL(), self.capabilities) | 
| + driver.get(self.SEARCH) | 
| + # Find the Google search Button. | 
| + q = driver.find_element_by_name("q") | 
| + # Send some keys. | 
| + q.send_keys("tokyo") | 
| + self.assertEqual(q.value, "tokyo") | 
| + | 
| + #TODO(timothe): run this test on a machine with an IME enabled. | 
| 
kkania
2011/03/11 16:32:13
how are you planning on doing this? you can just d
 
timothe
2011/03/21 18:02:05
@unittest.skip only works for python 2.7+, is it o
 | 
| + #def testSendKeysNativeProcessedByIME(self): | 
| + #driver = WebDriver(self._launcher.GetURL(), self.capabilities) | 
| + #driver.get(self.SEARCH) | 
| + #q = driver.find_element_by_name("q") | 
| + # Send key combination to turn IME on. | 
| + #q.send_keys(Keys.F7) | 
| + #q.send_keys("toukyou") | 
| + #self.assertEqual(q.value, "\xe6\x9d\xb1\xe4\xba\xac") | 
| + | 
| + | 
| class CookieTest(unittest.TestCase): | 
| """Cookie test for the json webdriver protocol""" | 
| @@ -123,7 +163,7 @@ | 
| def setUp(self): | 
| self._launcher = ChromeDriverLauncher() | 
| - self._driver = WebDriver(self._launcher.GetURL(), 'chrome', 'any') | 
| + self._driver = WebDriver(self._launcher.GetURL(), {}) | 
| def tearDown(self): | 
| self._driver.quit() | 
| @@ -174,7 +214,7 @@ | 
| self.assertEquals(data['sessionId'], url_parts[2]) | 
| def testShouldBeGivenCapabilitiesWhenStartingASession(self): | 
| - driver = WebDriver(self._launcher.GetURL(), 'chrome', 'any') | 
| + driver = WebDriver(self._launcher.GetURL(), {}) | 
| capabilities = driver.capabilities | 
| self.assertEquals('chrome', capabilities['browserName']) | 
| @@ -201,16 +241,16 @@ | 
| driver.quit() | 
| def testSessionCreationDeletion(self): | 
| - driver = WebDriver(self._launcher.GetURL(), 'chrome', 'any') | 
| + driver = WebDriver(self._launcher.GetURL(), {}) | 
| driver.quit() | 
| def testMultipleSessionCreationDeletion(self): | 
| for i in range(10): | 
| - driver = WebDriver(self._launcher.GetURL(), 'chrome', 'any') | 
| + driver = WebDriver(self._launcher.GetURL(), {}) | 
| driver.quit() | 
| def testSessionCommandsAfterSessionDeletionReturn404(self): | 
| - driver = WebDriver(self._launcher.GetURL(), 'chrome', 'any') | 
| + driver = WebDriver(self._launcher.GetURL(), {}) | 
| session_id = driver.session_id | 
| driver.quit() | 
| try: | 
| @@ -223,7 +263,7 @@ | 
| def testMultipleConcurrentSessions(self): | 
| drivers = [] | 
| for i in range(10): | 
| - drivers += [WebDriver(self._launcher.GetURL(), 'chrome', 'any')] | 
| + drivers += [WebDriver(self._launcher.GetURL(), {})] | 
| for driver in drivers: | 
| driver.quit() | 
| @@ -233,7 +273,7 @@ | 
| def setUp(self): | 
| self._launcher = ChromeDriverLauncher(root_path=os.path.dirname(__file__)) | 
| - self._driver = WebDriver(self._launcher.GetURL(), 'chrome', 'any') | 
| + self._driver = WebDriver(self._launcher.GetURL(), {}) | 
| def tearDown(self): | 
| self._driver.quit() |