Bug 1261842 - Update browser_bug495058.js to account for the initial browser being remote. r?Gijs draft
authorMike Conley <mconley@mozilla.com>
Wed, 25 May 2016 15:57:57 -0400
changeset 392009 977c7609fadf1eb43fcbe4dbf6a217e196253866
parent 392008 cb6234559ae0a1ea2e32bd901235ad4aa5373f6c
child 392010 ace89b94d10963d28a114ce1d79572de4040ca7f
push id23919
push usermconley@mozilla.com
push dateFri, 22 Jul 2016 20:54:03 +0000
reviewersGijs
bugs1261842, 495058
milestone50.0a1
Bug 1261842 - Update browser_bug495058.js to account for the initial browser being remote. r?Gijs MozReview-Commit-ID: 6Ktl6Dyztg3
browser/base/content/test/general/browser_bug495058.js
--- a/browser/base/content/test/general/browser_bug495058.js
+++ b/browser/base/content/test/general/browser_bug495058.js
@@ -10,30 +10,28 @@ const URIS = [
 ];
 
 add_task(function*() {
   for (let uri of URIS) {
     let tab = gBrowser.addTab();
     yield BrowserTestUtils.loadURI(tab.linkedBrowser, uri);
 
     let win = gBrowser.replaceTabWithWindow(tab);
-    yield BrowserTestUtils.waitForEvent(win, "load");
-
+    yield TestUtils.topicObserved("browser-delayed-startup-finished",
+                                  subject => subject == win);
     tab = win.gBrowser.selectedTab;
 
-    // By default, we'll wait for MozAfterPaint to come up through the
-    // browser element. We'll handle the e10s case in the next block.
-    let contentPainted = BrowserTestUtils.waitForEvent(tab.linkedBrowser,
-                                                       "MozAfterPaint");
-
-    let delayedStartup =
-      TestUtils.topicObserved("browser-delayed-startup-finished",
-                              subject => subject == win);
-
-    yield Promise.all([delayedStartup, contentPainted]);
+    // BrowserTestUtils doesn't get the add-on shims, which means that
+    // MozAfterPaint won't get shimmed over if we add an event handler
+    // for it in the parent.
+    if (tab.linkedBrowser.isRemoteBrowser) {
+      yield BrowserTestUtils.waitForContentEvent(tab.linkedBrowser, "MozAfterPaint");
+    } else {
+      yield BrowserTestUtils.waitForEvent(tab.linkedBrowser, "MozAfterPaint");
+    }
 
     Assert.equal(win.gBrowser.currentURI.spec, uri, uri + ": uri loaded in detached tab");
     Assert.equal(win.document.activeElement, win.gBrowser.selectedBrowser, uri + ": browser is focused");
     Assert.equal(win.gURLBar.value, "", uri + ": urlbar is empty");
     Assert.ok(win.gURLBar.placeholder, uri + ": placeholder text is present");
 
     yield BrowserTestUtils.closeWindow(win);
   }