Unreviewed. Update Selenium WebDriver imported tests.
authorcarlosgc@webkit.org <carlosgc@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 2 Feb 2018 09:24:22 +0000 (09:24 +0000)
committercarlosgc@webkit.org <carlosgc@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 2 Feb 2018 09:24:22 +0000 (09:24 +0000)
* imported/selenium/importer.json:
* imported/selenium/py/selenium/__init__.py:
* imported/selenium/py/selenium/webdriver/remote/errorhandler.py:
* imported/selenium/py/selenium/webdriver/remote/remote_connection.py:
* imported/selenium/py/test/selenium/webdriver/common/alerts_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/click_scrolling_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/correct_event_firing_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/driver_element_finding_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/element_attribute_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/executing_async_javascript_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/frame_switching_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/interactions_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/page_load_timeout_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/page_loading_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/rendered_webelement_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/stale_reference_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/webdriverwait_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/window_switching_tests.py:
* imported/selenium/py/test/selenium/webdriver/common/window_tests.py:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@228000 268f45cc-cd09-0410-ab3c-d52691b4dbfc

20 files changed:
WebDriverTests/ChangeLog
WebDriverTests/imported/selenium/importer.json
WebDriverTests/imported/selenium/py/selenium/__init__.py
WebDriverTests/imported/selenium/py/selenium/webdriver/remote/errorhandler.py
WebDriverTests/imported/selenium/py/selenium/webdriver/remote/remote_connection.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/alerts_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/click_scrolling_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/correct_event_firing_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/driver_element_finding_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/element_attribute_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/executing_async_javascript_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/frame_switching_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/interactions_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/page_load_timeout_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/page_loading_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/rendered_webelement_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/stale_reference_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/webdriverwait_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/window_switching_tests.py
WebDriverTests/imported/selenium/py/test/selenium/webdriver/common/window_tests.py

index 9cc2d18..a76edf9 100644 (file)
@@ -1,3 +1,27 @@
+2018-02-02  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        Unreviewed. Update Selenium WebDriver imported tests.
+
+        * imported/selenium/importer.json:
+        * imported/selenium/py/selenium/__init__.py:
+        * imported/selenium/py/selenium/webdriver/remote/errorhandler.py:
+        * imported/selenium/py/selenium/webdriver/remote/remote_connection.py:
+        * imported/selenium/py/test/selenium/webdriver/common/alerts_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/click_scrolling_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/correct_event_firing_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/driver_element_finding_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/element_attribute_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/executing_async_javascript_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/frame_switching_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/interactions_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/page_load_timeout_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/page_loading_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/rendered_webelement_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/stale_reference_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/webdriverwait_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/window_switching_tests.py:
+        * imported/selenium/py/test/selenium/webdriver/common/window_tests.py:
+
 2018-01-31  Carlos Garcia Campos  <cgarcia@igalia.com>
 
         Unreviewed gardening. Update expectations of several WebDriver tests.
index 96a2a7f..f6177c4 100644 (file)
@@ -1,6 +1,6 @@
 {
     "repository": "https://github.com/SeleniumHQ/selenium.git",
-    "revision": "569520625c9719e2f3e8669b638981e0c690a7d8",
+    "revision": "63d571a2d64a8930c171fe94fc7b2e7e4eefde87",
     "paths_to_import": [
         "common",
         "py/conftest.py",
index f008e7a..e184c94 100644 (file)
@@ -232,8 +232,13 @@ class ErrorHandler(object):
                 pass
         if exception_class == ErrorInResponseException:
             raise exception_class(response, message)
-        elif exception_class == UnexpectedAlertPresentException and 'alert' in value:
-            raise exception_class(message, screen, stacktrace, value['alert'].get('text'))
+        elif exception_class == UnexpectedAlertPresentException:
+            alert_text = None
+            if 'data' in value:
+                alert_text = value['data'].get('text')
+            elif 'alert' in value:
+                alert_text = value['alert'].get('text')
+            raise exception_class(message, screen, stacktrace, alert_text)
         raise exception_class(message, screen, stacktrace)
 
     def _value_or_default(self, obj, key, default):
index 25dcd81..3d22e27 100644 (file)
@@ -564,5 +564,5 @@ class RemoteConnection(object):
                 data = {'status': 0, 'value': body.strip()}
                 return data
         finally:
-            LOGGER.debug(u"Finished Request {}".format(data))
+            LOGGER.debug("Finished Request")
             resp.close()
index 990e1c5..9122347 100644 (file)
@@ -37,8 +37,6 @@ def close_alert(driver):
         pass
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testShouldBeAbleToOverrideTheWindowAlertMethod(driver, pages):
     pages.load("alerts.html")
     driver.execute_script(
@@ -56,8 +54,6 @@ def testShouldBeAbleToOverrideTheWindowAlertMethod(driver, pages):
         raise e
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testShouldAllowUsersToAcceptAnAlertManually(driver, pages):
     pages.load("alerts.html")
     driver.find_element(by=By.ID, value="alert").click()
@@ -67,8 +63,6 @@ def testShouldAllowUsersToAcceptAnAlertManually(driver, pages):
     assert "Testing Alerts" == driver.title
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testShouldAllowUsersToAcceptAnAlertWithNoTextManually(driver, pages):
     pages.load("alerts.html")
     driver.find_element(By.ID, "empty-alert").click()
@@ -79,8 +73,6 @@ def testShouldAllowUsersToAcceptAnAlertWithNoTextManually(driver, pages):
     assert "Testing Alerts" == driver.title
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testShouldGetTextOfAlertOpenedInSetTimeout(driver, pages):
     pages.load("alerts.html")
     driver.find_element_by_id("slow-alert").click()
@@ -96,9 +88,6 @@ def testShouldGetTextOfAlertOpenedInSetTimeout(driver, pages):
         alert.accept()
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=26 and https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500',
-    run=False)
 def testShouldAllowUsersToDismissAnAlertManually(driver, pages):
     pages.load("alerts.html")
     driver.find_element(by=By.ID, value="alert").click()
@@ -108,8 +97,6 @@ def testShouldAllowUsersToDismissAnAlertManually(driver, pages):
     assert "Testing Alerts" == driver.title
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testShouldAllowAUserToAcceptAPrompt(driver, pages):
     pages.load("alerts.html")
     driver.find_element(by=By.ID, value="prompt").click()
@@ -120,8 +107,6 @@ def testShouldAllowAUserToAcceptAPrompt(driver, pages):
     assert "Testing Alerts" == driver.title
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testShouldAllowAUserToDismissAPrompt(driver, pages):
     pages.load("alerts.html")
     driver.find_element(by=By.ID, value="prompt").click()
@@ -132,8 +117,6 @@ def testShouldAllowAUserToDismissAPrompt(driver, pages):
     assert "Testing Alerts" == driver.title
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testShouldAllowAUserToSetTheValueOfAPrompt(driver, pages):
     pages.load("alerts.html")
     driver.find_element(by=By.ID, value="prompt").click()
@@ -145,8 +128,6 @@ def testShouldAllowAUserToSetTheValueOfAPrompt(driver, pages):
     assert "cheese" == result
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1353')
 def testSettingTheValueOfAnAlertThrows(driver, pages):
     pages.load("alerts.html")
     driver.find_element(By.ID, "alert").click()
@@ -172,8 +153,6 @@ def testAlertShouldNotAllowAdditionalCommandsIfDimissed(driver, pages):
         alert.text
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 @pytest.mark.xfail_marionette(reason='Fails on travis')
 def testShouldAllowUsersToAcceptAnAlertInAFrame(driver, pages):
     pages.load("alerts.html")
@@ -186,8 +165,6 @@ def testShouldAllowUsersToAcceptAnAlertInAFrame(driver, pages):
     assert "Testing Alerts" == driver.title
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 @pytest.mark.xfail_marionette(reason='Fails on travis')
 def testShouldAllowUsersToAcceptAnAlertInANestedFrame(driver, pages):
     pages.load("alerts.html")
@@ -207,8 +184,6 @@ def testShouldThrowAnExceptionIfAnAlertHasNotBeenDealtWithAndDismissTheAlert():
     # //TODO(David) Complete this test
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testPromptShouldUseDefaultValueIfNoKeysSent(driver, pages):
     pages.load("alerts.html")
     driver.find_element(By.ID, "prompt-with-default").click()
@@ -220,8 +195,6 @@ def testPromptShouldUseDefaultValueIfNoKeysSent(driver, pages):
     assert "This is a default value" == txt
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testPromptShouldHaveNullValueIfDismissed(driver, pages):
     pages.load("alerts.html")
     driver.find_element(By.ID, "prompt-with-default").click()
@@ -231,8 +204,6 @@ def testPromptShouldHaveNullValueIfDismissed(driver, pages):
     assert "null" == driver.find_element(By.ID, "text").text
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testHandlesTwoAlertsFromOneInteraction(driver, pages):
     pages.load("alerts.html")
 
@@ -250,8 +221,6 @@ def testHandlesTwoAlertsFromOneInteraction(driver, pages):
     assert driver.find_element(By.ID, "text2").text == "cheddar"
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testShouldHandleAlertOnPageLoad(driver, pages):
     pages.load("alerts.html")
     driver.find_element(By.ID, "open-page-with-onload-alert").click()
@@ -271,8 +240,6 @@ def testShouldHandleAlertOnPageLoadUsingGet(driver, pages):
     WebDriverWait(driver, 3).until(EC.text_to_be_present_in_element((By.TAG_NAME, "p"), "Page with onload event handler"))
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testShouldHandleAlertOnPageBeforeUnload(driver, pages):
     pages.load("pageWithOnBeforeUnloadMessage.html")
 
@@ -289,8 +256,6 @@ def testShouldHandleAlertOnPageBeforeUnload(driver, pages):
     WebDriverWait(driver, 3).until(EC.title_is("Testing Alerts"))
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def _testShouldHandleAlertOnPageBeforeUnloadAtQuit(driver, pages):
     # TODO: Add the ability to get a new session
     pages.load("pageWithOnBeforeUnloadMessage.html")
@@ -303,8 +268,6 @@ def _testShouldHandleAlertOnPageBeforeUnloadAtQuit(driver, pages):
     driver.quit()
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testShouldAllowTheUserToGetTheTextOfAnAlert(driver, pages):
     pages.load("alerts.html")
     driver.find_element(by=By.ID, value="alert").click()
@@ -314,8 +277,6 @@ def testShouldAllowTheUserToGetTheTextOfAnAlert(driver, pages):
     assert "cheese" == value
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testShouldAllowTheUserToGetTheTextOfAPrompt(driver, pages):
     pages.load("alerts.html")
     driver.find_element(By.ID, "prompt").click()
@@ -327,8 +288,6 @@ def testShouldAllowTheUserToGetTheTextOfAPrompt(driver, pages):
     assert "Enter something" == value
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1500')
 def testAlertShouldNotAllowAdditionalCommandsIfDismissed(driver, pages):
     pages.load("alerts.html")
     driver.find_element(By.ID, "alert").click()
index a6d8f88..729c074 100644 (file)
 
 import pytest
 
-from selenium.common.exceptions import (
-    ElementNotInteractableException,
-    MoveTargetOutOfBoundsException,
-    WebDriverException)
+from selenium.common.exceptions import MoveTargetOutOfBoundsException
 from selenium.webdriver.common.by import By
 from selenium.webdriver.support import expected_conditions as EC
 from selenium.webdriver.support.ui import WebDriverWait
@@ -56,8 +53,6 @@ def testShouldScrollToClickOnAnElementHiddenByOverflow(driver, pages):
         AssertionError("Should not be out of bounds: %s" % e.msg)
 
 
-@pytest.mark.xfail_marionette(
-    reason='https://github.com/w3c/webdriver/issues/408')
 def testShouldBeAbleToClickOnAnElementHiddenByOverflow(driver, pages):
     pages.load("scroll.html")
 
@@ -67,9 +62,6 @@ def testShouldBeAbleToClickOnAnElementHiddenByOverflow(driver, pages):
     assert "line8" == driver.find_element(By.ID, "clicked").text
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1536',
-    raises=WebDriverException)
 def testShouldBeAbleToClickOnAnElementHiddenByDoubleOverflow(driver, pages):
     pages.load("scrolling_tests/page_with_double_overflow_auto.html")
 
@@ -110,9 +102,6 @@ def testShouldBeAbleToClickRadioButtonScrolledIntoView(driver, pages):
     # If we don't throw, we're good
 
 
-@pytest.mark.xfail_marionette(
-    reason='https://github.com/w3c/webdriver/issues/408',
-    raises=ElementNotInteractableException)
 def testShouldScrollOverflowElementsIfClickPointIsOutOfViewButElementIsInView(driver, pages):
     pages.load("scroll5.html")
     driver.find_element(By.ID, "inner").click()
index 1a6af37..e03a439 100644 (file)
@@ -15,6 +15,8 @@
 # specific language governing permissions and limitations
 # under the License.
 
+import pytest
+
 
 def testShouldFireClickEventWhenClicking(driver, pages):
     pages.load("javascriptPage.html")
@@ -89,6 +91,7 @@ def testShouldEmitClickEventWhenClickingOnATextInputElement(driver, pages):
     assert clicker.get_attribute("value") == "Clicked"
 
 
+@pytest.mark.xfail_marionette(reason='https://bugzilla.mozilla.org/show_bug.cgi?id=1430571')
 def testClearingAnElementShouldCauseTheOnChangeHandlerToFire(driver, pages):
     pages.load("javascriptPage.html")
     element = driver.find_element_by_id("clearMe")
index e4240bf..a1402f9 100644 (file)
@@ -180,16 +180,12 @@ def test_Should_Not_Be_Able_To_Locate_By_Tag_Name_Multiple_Elements_That_Do_Not_
     assert len(elements) == 0
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1541')
 def test_Finding_ASingle_Element_By_Empty_Tag_Name_Should_Throw(driver, pages):
     pages.load("formPage.html")
     with pytest.raises(InvalidSelectorException):
         driver.find_element(By.TAG_NAME, "")
 
 
-@pytest.mark.xfail_chrome(
-    reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=1541')
 def test_Finding_Multiple_Elements_By_Empty_Tag_Name_Should_Throw(driver, pages):
     pages.load("formPage.html")
     with pytest.raises(InvalidSelectorException):
index 463e02a..bc6dd8a 100644 (file)
@@ -99,8 +99,6 @@ def testShouldIndicateWhenATextAreaIsDisabled(driver, pages):
     assert not textArea.is_enabled()
 
 
-@pytest.mark.xfail_marionette(
-    reason='https://bugzilla.mozilla.org/show_bug.cgi?id=1309234')
 def testShouldThrowExceptionIfSendingKeysToElementDisabledUsingRandomDisabledStrings(driver, pages):
     pages.load("formPage.html")
     disabledTextElement1 = driver.find_element_by_id("disabledTextElement1")
index f84b36d..1db206c 100644 (file)
@@ -120,6 +120,7 @@ def testShouldTimeoutIfScriptDoesNotInvokeCallbackWithAZeroTimeout(driver, pages
         driver.execute_async_script("window.setTimeout(function() {}, 0);")
 
 
+@pytest.mark.xfail_marionette
 def testShouldNotTimeoutIfScriptCallsbackInsideAZeroTimeout(driver, pages):
     pages.load("ajaxy_page.html")
     driver.execute_async_script(
index aab6b09..ad12564 100644 (file)
@@ -212,6 +212,7 @@ def testShouldBeAbleToSwitchToParentFromAnIframe(driver, pages):
 # ----------------------------------------------------------------------------------------------
 
 
+@pytest.mark.xfail_chrome(reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=2198')
 def testShouldContinueToReferToTheSameFrameOnceItHasBeenSelected(driver, pages):
     pages.load("frameset.html")
     driver.switch_to.frame(2)
@@ -245,6 +246,7 @@ def testShouldAllowAUserToSwitchFromAnIframeBackToTheMainContentOfThePage(driver
     driver.find_element(By.ID, "iframe_page_heading")
 
 
+@pytest.mark.xfail_chrome(reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=2198')
 def testShouldAllowTheUserToSwitchToAnIFrameAndRemainFocusedOnIt(driver, pages):
     pages.load("iframes.html")
     driver.switch_to.frame(0)
@@ -256,6 +258,7 @@ def getTextOfGreetingElement(driver):
     return WebDriverWait(driver, 3).until(EC.presence_of_element_located((By.ID, "greeting"))).text
 
 
+@pytest.mark.xfail_chrome(reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=2198')
 def testShouldBeAbleToClickInAFrame(driver, pages):
     pages.load("frameset.html")
     driver.switch_to.frame("third")
@@ -278,6 +281,7 @@ def testShouldBeAbleToClickInAFrameThatRewritesTopWindowLocation(driver, pages):
     WebDriverWait(driver, 3).until(EC.title_is("Target page for issue 5237"))
 
 
+@pytest.mark.xfail_chrome(reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=2198')
 def testShouldBeAbleToClickInASubFrame(driver, pages):
     pages.load("frameset.html")
     driver.switch_to.frame(driver.find_element_by_id("sixth"))
@@ -369,8 +373,6 @@ def testShouldBeAbleToSwitchToTheTopIfTheFrameIsDeletedFromUnderUsWithWebelement
                               reason='https://github.com/mozilla/geckodriver/issues/614')
 @pytest.mark.xfail_webkitgtk(raises=NoSuchElementException)
 def testShouldNotBeAbleToDoAnythingTheFrameIsDeletedFromUnderUs(driver, pages):
-    if driver.name == 'firefox' and driver.w3c:
-        pytest.skip('Stalls tests, https://bugzilla.mozilla.org/show_bug.cgi?id=1410799')
     pages.load("frame_switching_tests/deletingFrame.html")
     driver.switch_to.frame(driver.find_element_by_id("iframe1"))
 
@@ -394,6 +396,7 @@ def testJavaScriptShouldExecuteInTheContextOfTheCurrentFrame(driver, pages):
     assert driver.execute_script("return window != window.top")
 
 
+@pytest.mark.xfail_chrome(reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=2198')
 def testShouldNotSwitchMagicallyToTheTopWindow(driver, pages):
     pages.load("frame_switching_tests/bug4876.html")
     driver.switch_to.frame(0)
index 52152ba..49ffbf7 100644 (file)
@@ -96,8 +96,6 @@ def testDragAndDrop(driver, pages):
     assert "Dropped!" == text
 
 
-@pytest.mark.xfail_marionette(
-    reason='https://github.com/mozilla/geckodriver/issues/661')
 def testDoubleClick(driver, pages):
     """Copied from org.openqa.selenium.interactions.TestBasicMouseInterface."""
     pages.load("javascriptPage.html")
index 473a6e6..19c83aa 100644 (file)
@@ -32,6 +32,7 @@ def testShouldTimeoutOnPageLoadTakingTooLong(driver, pages):
         pages.load("simpleTest.html")
 
 
+@pytest.mark.xfail_chrome
 def testClickShouldTimeout(driver, pages):
     pages.load("simpleTest.html")
     driver.set_page_load_timeout(0.01)
index 485330b..2d330dd 100644 (file)
@@ -40,6 +40,7 @@ def testShouldWaitForDocumentToBeLoaded(driver, pages):
 #    assert driver.title == "We Arrive Here"
 
 
+@pytest.mark.xfail_chrome(reason='https://bugs.chromium.org/p/chromedriver/issues/detail?id=2239')
 def testShouldBeAbleToGetAFragmentOnTheCurrentPage(driver, pages):
     pages.load("xhtmlTest.html")
     location = driver.current_url
@@ -115,6 +116,7 @@ def testShouldBeAbleToNavigateForwardsInTheBrowserHistory(driver, pages):
 
 @pytest.mark.xfail_ie
 @pytest.mark.xfail_marionette(run=False)
+@pytest.mark.xfail_chrome(run=False)
 def testShouldNotHangifDocumentOpenCallIsNeverFollowedByDocumentCloseCall(driver, pages):
     pages.load("document_write_in_onload.html")
     driver.find_element(By.XPATH, "//body")
index 75a6255..e1d2cd4 100644 (file)
@@ -19,27 +19,26 @@ import pytest
 
 from selenium.common.exceptions import WebDriverException
 from selenium.webdriver.common.by import By
+from selenium.webdriver.support.color import Color
 
 
-@pytest.mark.xfail_marionette(
-    reason='https://github.com/w3c/webdriver/issues/417')
 def testShouldPickUpStyleOfAnElement(driver, pages):
     pages.load("javascriptPage.html")
 
     element = driver.find_element(by=By.ID, value="green-parent")
-    backgroundColour = element.value_of_css_property("background-color")
-    assert "rgba(0, 128, 0, 1)" == backgroundColour
+    backgroundColour = Color.from_string(element.value_of_css_property("background-color"))
+    assert Color.from_string("rgba(0, 128, 0, 1)") == backgroundColour
 
     element = driver.find_element(by=By.ID, value="red-item")
-    backgroundColour = element.value_of_css_property("background-color")
-    assert "rgba(255, 0, 0, 1)" == backgroundColour
+    backgroundColour = Color.from_string(element.value_of_css_property("background-color"))
+    assert Color.from_string("rgba(255, 0, 0, 1)") == backgroundColour
 
 
 def testShouldAllowInheritedStylesToBeUsed(driver, pages):
     pages.load("javascriptPage.html")
     element = driver.find_element(by=By.ID, value="green-item")
-    backgroundColour = element.value_of_css_property("background-color")
-    assert backgroundColour in ("rgba(0, 0, 0, 0)", "transparent")
+    backgroundColour = Color.from_string(element.value_of_css_property("background-color"))
+    assert backgroundColour == Color.from_string("transparent")
 
 
 def testShouldCorrectlyIdentifyThatAnElementHasWidth(driver, pages):
index 4331007..bc81b25 100644 (file)
@@ -22,8 +22,6 @@ from selenium.common.exceptions import StaleElementReferenceException
 
 
 def testOldPage(driver, pages):
-    if driver.name == 'firefox' and driver.w3c:
-        pytest.skip('Stalls tests, https://bugzilla.mozilla.org/show_bug.cgi?id=1410799')
     pages.load("simpleTest.html")
     elem = driver.find_element(by=By.ID, value="links")
     pages.load("xhtmlTest.html")
index 6bf8cbf..46bdeac 100644 (file)
@@ -90,7 +90,6 @@ def testShouldFailToFindVisibleElementsWhenExplicitWaiting(driver, pages):
         WebDriverWait(driver, 0.7).until(EC.visibility_of_any_elements_located((By.CLASS_NAME, "redbox")))
 
 
-@pytest.mark.xfail_marionette(reason='Fails on travis')
 def testShouldWaitUntilAllVisibleElementsAreFoundWhenSearchingForMany(driver, pages):
     pages.load("hidden_partially.html")
     add_visible = driver.find_element_by_id("addVisible")
index 77e91a3..0cabb1c 100644 (file)
@@ -172,7 +172,6 @@ def testFailingToSwitchToAWindowLeavesTheCurrentWindowAsIs(driver, pages):
     assert current == new_handle
 
 
-@pytest.mark.xfail_chrome(reason="Fails on Travis")
 def testThatAccessingFindingAnElementAfterWindowIsClosedAndHaventswitchedDoesntCrash(driver, pages):
     pages.load("xhtmlTest.html")
     current = driver.current_window_handle
index 09636c6..b08f464 100644 (file)
@@ -80,8 +80,6 @@ def test_should_set_the_position_of_the_current_window(driver):
     assert new_position.get('y') == target_y
 
 
-@pytest.mark.xfail_chrome(raises=WebDriverException,
-                          reason='Get Window Rect command not implemented')
 @pytest.mark.xfail_firefox(raises=WebDriverException,
                            reason='Get Window Rect command not implemented')
 @pytest.mark.xfail_remote(raises=WebDriverException,
@@ -96,8 +94,6 @@ def test_should_get_the_rect_of_the_current_window(driver):
     assert rect.get('height') >= 0
 
 
-@pytest.mark.xfail_chrome(raises=WebDriverException,
-                          reason='Get Window Rect command not implemented')
 @pytest.mark.xfail_firefox(raises=WebDriverException,
                            reason='Get Window Rect command not implemented')
 @pytest.mark.xfail_remote(raises=WebDriverException,