Backed out 2 changesets (bug 1510695, bug 1510693) for causing frequent marionette failures on unit/test_reftest.py
authorarthur.iakab <aiakab@mozilla.com>
Wed, 12 Dec 2018 23:11:19 +0200
changeset 450353 e71d2b9ad78f452058d7dea868bbaa02c1327137
parent 450352 dff4f40ef7032bcab490fae3d7b686993629285a
child 450354 3c358cdc9533964bcadf075c5d0aa0cdf4771c30
push id110479
push usercsabou@mozilla.com
push dateThu, 13 Dec 2018 04:02:11 +0000
treeherdermozilla-inbound@3ecc407c0cc8 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs1510695, 1510693
milestone66.0a1
backs out8a7b62c8245908d7057dd7bed99b69e698527473
e7e0d6ba28354b7397dd4b986623d6a9cda147fc
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Backed out 2 changesets (bug 1510695, bug 1510693) for causing frequent marionette failures on unit/test_reftest.py Backed out changeset 8a7b62c82459 (bug 1510695) Backed out changeset e7e0d6ba2835 (bug 1510693)
testing/marionette/harness/marionette_harness/tests/unit/test_reftest.py
testing/marionette/harness/marionette_harness/tests/unit/unit-tests.ini
testing/marionette/listener.js
deleted file mode 100644
--- a/testing/marionette/harness/marionette_harness/tests/unit/test_reftest.py
+++ /dev/null
@@ -1,60 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-from __future__ import absolute_import, print_function
-
-from marionette_driver.errors import InvalidArgumentException, UnsupportedOperationException
-from marionette_harness import MarionetteTestCase
-
-
-class TestReftest(MarionetteTestCase):
-    def setUp(self):
-        super(TestReftest, self).setUp()
-
-        self.original_window = self.marionette.current_window_handle
-
-        self.marionette.set_context(self.marionette.CONTEXT_CHROME)
-        self.marionette.set_pref("dom.send_after_paint_to_content", True)
-
-    def tearDown(self):
-        try:
-            # make sure we've teared down any reftest context
-            self.marionette._send_message("reftest:teardown", {})
-        except UnsupportedOperationException:
-            # this will throw if we aren't currently in a reftest context
-            pass
-
-        self.marionette.switch_to_window(self.original_window)
-
-        self.marionette.set_context(self.marionette.CONTEXT_CONTENT)
-        self.marionette.clear_pref("dom.send_after_paint_to_content")
-
-        super(TestReftest, self).tearDown()
-
-    def test_basic(self):
-        self.marionette._send_message("reftest:setup", {"screenshot": "unexpected"})
-        rv = self.marionette._send_message("reftest:run",
-                                           {"test": "about:blank",
-                                            "references": [["about:blank", [], "=="]],
-                                            "expected": "PASS",
-                                            "timeout": 10 * 1000})
-        self.marionette._send_message("reftest:teardown", {})
-        expected = {u'value': {u'extra': {},
-                               u'message': u'Testing about:blank == about:blank\n',
-                               u'stack': None,
-                               u'status': u'PASS'}}
-        self.assertEqual(expected, rv)
-
-    def test_url_comparison(self):
-        test_page = self.fixtures.where_is("test.html")
-        test_page_2 = self.fixtures.where_is("foo/../test.html")
-
-        self.marionette._send_message("reftest:setup", {"screenshot": "unexpected"})
-        rv = self.marionette._send_message("reftest:run",
-                                           {"test": test_page,
-                                            "references": [[test_page_2, [], "=="]],
-                                            "expected": "PASS",
-                                            "timeout": 10 * 1000})
-        self.marionette._send_message("reftest:teardown", {})
-        self.assertEqual(u"PASS", rv[u"value"][u"status"])
--- a/testing/marionette/harness/marionette_harness/tests/unit/unit-tests.ini
+++ b/testing/marionette/harness/marionette_harness/tests/unit/unit-tests.ini
@@ -123,10 +123,8 @@ skip-if = appname == 'fennec'
 
 [test_addons.py]
 skip-if = appname == 'fennec' # Bug 1330598
 
 [test_select.py]
 [test_crash.py]
 skip-if = asan || manage_instance == false || appname == 'fennec' # Bug 1298921
 [test_localization.py]
-
-[test_reftest.py]
--- a/testing/marionette/listener.js
+++ b/testing/marionette/listener.js
@@ -1608,18 +1608,16 @@ function flushRendering() {
 async function reftestWait(url, remote) {
   let win = curContainer.frame;
   let document = curContainer.frame.document;
 
   let windowUtils = content.windowUtils;
 
   let reftestWait = false;
 
-  url = new URL(url).href;
-
   if (document.location.href !== url || document.readyState != "complete") {
     logger.debug(truncate`Waiting for page load of ${url}`);
     await new Promise(resolve => {
       let maybeResolve = event => {
         if (event.target === curContainer.frame.document &&
             event.target.location.href === url) {
           win = curContainer.frame;
           document = curContainer.frame.document;