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

Unified Diff: chrome/test/webdriver/test/chromedriver_tests.py

Issue 8943001: Fix mac chromedriver tests (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: ... Created 9 years 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/test/webdriver/test/infobar_browser_action_extension/view_checks.html » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/webdriver/test/chromedriver_tests.py
diff --git a/chrome/test/webdriver/test/chromedriver_tests.py b/chrome/test/webdriver/test/chromedriver_tests.py
index dbe9db1045044932557ef011750cb0d80dde3f2b..e5250cb5c39b7cbbf8657c0922f62a45a383816b 100644
--- a/chrome/test/webdriver/test/chromedriver_tests.py
+++ b/chrome/test/webdriver/test/chromedriver_tests.py
@@ -44,6 +44,13 @@ from selenium.webdriver.remote.webdriver import WebDriver
from selenium.webdriver.support.ui import WebDriverWait
+def SkipIf(should_skip):
+ """Decorator which allows skipping individual test cases."""
+ if should_skip:
+ return lambda func: None
+ return lambda func: func
+
+
class Request(urllib2.Request):
"""Extends urllib2.Request to support all HTTP request types."""
@@ -89,17 +96,17 @@ def SendRequest(url, method=None, data=None):
return opener.open(request)
-class BasicTest(unittest.TestCase):
+class BasicTest(ChromeDriverTest):
"""Basic ChromeDriver tests."""
def setUp(self):
- self._server = ChromeDriverLauncher(test_paths.CHROMEDRIVER_EXE).Launch()
+ self._server2 = ChromeDriverLauncher(self.GetDriverPath()).Launch()
def tearDown(self):
- self._server.Kill()
+ self._server2.Kill()
def testShouldReturn403WhenSentAnUnknownCommandURL(self):
- request_url = self._server.GetUrl() + '/foo'
+ request_url = self._server2.GetUrl() + '/foo'
try:
SendRequest(request_url, method='GET')
self.fail('Should have raised a urllib.HTTPError for returned 403')
@@ -107,7 +114,7 @@ class BasicTest(unittest.TestCase):
self.assertEquals(403, expected.code)
def testShouldReturnHTTP405WhenSendingANonPostToTheSessionURL(self):
- request_url = self._server.GetUrl() + '/session'
+ request_url = self._server2.GetUrl() + '/session'
try:
SendRequest(request_url, method='GET')
self.fail('Should have raised a urllib.HTTPError for returned 405')
@@ -116,7 +123,7 @@ class BasicTest(unittest.TestCase):
self.assertEquals('POST', expected.hdrs['Allow'])
def testShouldGetA404WhenAttemptingToDeleteAnUnknownSession(self):
- request_url = self._server.GetUrl() + '/session/unkown_session_id'
+ request_url = self._server2.GetUrl() + '/session/unkown_session_id'
try:
SendRequest(request_url, method='DELETE')
self.fail('Should have raised a urllib.HTTPError for returned 404')
@@ -124,7 +131,7 @@ class BasicTest(unittest.TestCase):
self.assertEquals(404, expected.code)
def testShouldReturn204ForFaviconRequests(self):
- request_url = self._server.GetUrl() + '/favicon.ico'
+ request_url = self._server2.GetUrl() + '/favicon.ico'
# In python2.5, a 204 status code causes an exception.
if sys.version_info[0:2] == (2, 5):
try:
@@ -140,7 +147,7 @@ class BasicTest(unittest.TestCase):
response.close()
def testCreatingSessionShouldRedirectToCorrectURL(self):
- request_url = self._server.GetUrl() + '/session'
+ request_url = self._server2.GetUrl() + '/session'
response = SendRequest(request_url, method='POST',
data='{"desiredCapabilities": {}}')
self.assertEquals(200, response.code)
@@ -157,11 +164,11 @@ class BasicTest(unittest.TestCase):
self.assertEquals(data['sessionId'], url_parts[2])
-class WebserverTest(unittest.TestCase):
+class WebserverTest(ChromeDriverTest):
"""Tests the built-in ChromeDriver webserver."""
def testShouldNotServeFilesByDefault(self):
- server = ChromeDriverLauncher(test_paths.CHROMEDRIVER_EXE).Launch()
+ server = ChromeDriverLauncher(self.GetDriverPath()).Launch()
try:
SendRequest(server.GetUrl(), method='GET')
self.fail('Should have raised a urllib.HTTPError for returned 403')
@@ -171,7 +178,7 @@ class WebserverTest(unittest.TestCase):
server.Kill()
def testCanServeFiles(self):
- launcher = ChromeDriverLauncher(test_paths.CHROMEDRIVER_EXE,
+ launcher = ChromeDriverLauncher(self.GetDriverPath(),
root_path=os.path.dirname(__file__))
server = launcher.Launch()
request_url = server.GetUrl() + '/' + os.path.basename(__file__)
@@ -290,14 +297,14 @@ class DesiredCapabilitiesTest(ChromeDriverTest):
driver.execute_async_script('waitForGeo(arguments[0])')
-class DetachProcessTest(unittest.TestCase):
+class DetachProcessTest(ChromeDriverTest):
def setUp(self):
- self._server = ChromeDriverLauncher(test_paths.CHROMEDRIVER_EXE).Launch()
- self._factory = ChromeDriverFactory(self._server)
+ self._server2 = ChromeDriverLauncher(self.GetDriverPath()).Launch()
+ self._factory2 = ChromeDriverFactory(self._server2)
def tearDown(self):
- self._server.Kill()
+ self._server2.Kill()
# TODO(kkania): Remove this when Chrome 15 is stable.
def testDetachProcess(self):
@@ -305,10 +312,10 @@ class DetachProcessTest(unittest.TestCase):
# Chrome successfully in detached mode. There's not an easy way to know
# if Chrome is shutting down due to the channel error when the client
# disconnects.
- driver = self._factory.GetNewDriver({'chrome.detach': True})
+ driver = self._factory2.GetNewDriver({'chrome.detach': True})
driver.get('about:memory')
pid = int(driver.find_elements_by_xpath('//*[@jscontent="pid"]')[0].text)
- self._server.Kill()
+ self._server2.Kill()
try:
util.Kill(pid)
except OSError:
@@ -583,18 +590,18 @@ class TypingTest(ChromeDriverTest):
self.assertEquals('much more text', area_elem.get_attribute('value'))
-class UrlBaseTest(unittest.TestCase):
+class UrlBaseTest(ChromeDriverTest):
"""Tests that the server can be configured for a different URL base."""
def setUp(self):
- self._server = ChromeDriverLauncher(test_paths.CHROMEDRIVER_EXE,
- url_base='/wd/hub').Launch()
+ self._server2 = ChromeDriverLauncher(self.GetDriverPath(),
+ url_base='/wd/hub').Launch()
def tearDown(self):
- self._server.Kill()
+ self._server2.Kill()
def testCreatingSessionShouldRedirectToCorrectURL(self):
- request_url = self._server.GetUrl() + '/session'
+ request_url = self._server2.GetUrl() + '/session'
response = SendRequest(request_url, method='POST',
data='{"desiredCapabilities":{}}')
self.assertEquals(200, response.code)
@@ -637,19 +644,19 @@ class ElementEqualityTest(ChromeDriverTest):
self.assertTrue(result['value'])
-class LoggingTest(unittest.TestCase):
+class LoggingTest(ChromeDriverTest):
def setUp(self):
- self._server = ChromeDriverLauncher(test_paths.CHROMEDRIVER_EXE).Launch()
- self._factory = ChromeDriverFactory(self._server)
+ self._server2 = ChromeDriverLauncher(self.GetDriverPath()).Launch()
+ self._factory2 = ChromeDriverFactory(self._server2)
def tearDown(self):
- self._factory.QuitAll()
- self._server.Kill()
+ self._factory2.QuitAll()
+ self._server2.Kill()
def testNoVerboseLogging(self):
- driver = self._factory.GetNewDriver()
- url = self._factory.GetServer().GetUrl()
+ driver = self._factory2.GetNewDriver()
+ url = self._factory2.GetServer().GetUrl()
driver.execute_script('console.log("HI")')
req = SendRequest(url + '/log', method='GET')
log = req.read()
@@ -657,8 +664,8 @@ class LoggingTest(unittest.TestCase):
# crbug.com/94470
def DISABLED_testVerboseLogging(self):
- driver = self._factory.GetNewDriver({'chrome.verbose': True})
- url = self._factory.GetServer().GetUrl()
+ driver = self._factory2.GetNewDriver({'chrome.verbose': True})
+ url = self._factory2.GetServer().GetUrl()
driver.execute_script('console.log("HI")')
req = SendRequest(url + '/log', method='GET')
log = req.read()
@@ -877,13 +884,15 @@ class ExtensionTest(ChromeDriverTest):
self.assertEquals('test', textfield.get_attribute('value'))
self.assertEquals('test', driver.title)
self.assertTrue(driver.current_url.endswith('view_checks.html'))
- self.assertTrue('shouldBeInPageSource' in driver.page_source)
+ self.assertTrue('Should be in page source' in driver.page_source)
driver.close()
def is_view_closed(driver):
return len(filter(lambda view: view['handle'] == view_handle,
extension._get_views())) == 0
WebDriverWait(driver, 10).until(is_view_closed)
+ # Mac extension infobars are currently broken: crbug.com/107573.
+ @SkipIf(util.IsMac())
def testInfobarView(self):
driver = self.GetNewDriver({'chrome.switches':
['enable-experimental-extension-apis']})
« no previous file with comments | « no previous file | chrome/test/webdriver/test/infobar_browser_action_extension/view_checks.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698