diff options
author | kkania@chromium.org <kkania@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-02 08:29:02 +0000 |
---|---|---|
committer | kkania@chromium.org <kkania@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-03-02 08:29:02 +0000 |
commit | 25a1de62bfc96c9e0a3ee31cda8149250fc55c8a (patch) | |
tree | 56e267edb6ae25e0194f15b315afd107b5fe83fa /chrome/test/webdriver/chromedriver_tests.py | |
parent | a97b4b3ede0e2140f38ea7bccf65f1b5ff0b8acc (diff) | |
download | chromium_src-25a1de62bfc96c9e0a3ee31cda8149250fc55c8a.zip chromium_src-25a1de62bfc96c9e0a3ee31cda8149250fc55c8a.tar.gz chromium_src-25a1de62bfc96c9e0a3ee31cda8149250fc55c8a.tar.bz2 |
Adding a command line switch for configuring the chromedriver to respond to commands sent relative to a path other than "/". This is a work-around for clients that have hard-coded logic expecting all of the WebDriver command handlers to be relative to "/wd/hub" (which is the path used by WebDriver's server jar).
BUG=none
TEST=none
Patch by jleyba@chromium.org
Original review at http://codereview.chromium.org/6592086
Review URL: http://codereview.chromium.org/6598090
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76517 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/test/webdriver/chromedriver_tests.py')
-rwxr-xr-x | chrome/test/webdriver/chromedriver_tests.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/chrome/test/webdriver/chromedriver_tests.py b/chrome/test/webdriver/chromedriver_tests.py index e0c36ff..c7d7b20 100755 --- a/chrome/test/webdriver/chromedriver_tests.py +++ b/chrome/test/webdriver/chromedriver_tests.py @@ -251,6 +251,34 @@ class MouseTest(unittest.TestCase): self.assertTrue(self._driver.execute_script('return window.success')) +class UrlBaseTest(unittest.TestCase): + """Tests that the server can be configured for a different URL base.""" + + def setUp(self): + self._launcher = ChromeDriverLauncher(url_base='/wd/hub') + + def tearDown(self): + self._launcher.Kill() + + def testCreatingSessionShouldRedirectToCorrectURL(self): + request_url = self._launcher.GetURL() + '/session' + response = SendRequest(request_url, method='POST', data='{}') + self.assertEquals(200, response.code) + self.session_url = response.geturl() # TODO(jleyba): verify this URL? + + data = json.loads(response.read()) + self.assertTrue(isinstance(data, dict)) + self.assertEquals(0, data['status']) + + url_parts = urlparse.urlparse(self.session_url)[2].split('/') + self.assertEquals(5, len(url_parts)) + self.assertEquals('', url_parts[0]) + self.assertEquals('wd', url_parts[1]) + self.assertEquals('hub', url_parts[2]) + self.assertEquals('session', url_parts[3]) + self.assertEquals(data['sessionId'], url_parts[4]) + + if __name__ == '__main__': unittest.main(module='chromedriver_tests', testRunner=GTestTextTestRunner(verbosity=1)) |