Bug 1384381 - Intermittent failures in browser_privatebrowsing_placestitle.js and browser_privatebrowsing_placesTitleNoUpdate.js. r=standard8 draft
authorMarco Bonardo <mbonardo@mozilla.com>
Tue, 29 Aug 2017 18:45:36 +0200
changeset 655092 3a2ec0b55ead78df01d0a37b300590d3c70b78bd
parent 652924 b6b8e616de32af50c9a174006b3a7ed914130aa5
child 728741 eab6e74558942116675b980c47e5594fce5f914a
push id76770
push usermak77@bonardo.net
push dateTue, 29 Aug 2017 17:02:45 +0000
reviewersstandard8
bugs1384381
milestone57.0a1
Bug 1384381 - Intermittent failures in browser_privatebrowsing_placestitle.js and browser_privatebrowsing_placesTitleNoUpdate.js. r=standard8 MozReview-Commit-ID: 8nvln9OLx9S
browser/components/privatebrowsing/test/browser/browser_privatebrowsing_placesTitleNoUpdate.js
browser/components/privatebrowsing/test/browser/browser_privatebrowsing_placestitle.js
--- a/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_placesTitleNoUpdate.js
+++ b/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_placesTitleNoUpdate.js
@@ -17,30 +17,31 @@ add_task(async function test() {
   let promiseTitleChanged = PlacesTestUtils.waitForNotification(
     "onTitleChanged", (uri, title) => uri.spec == TEST_URL, "history");
   let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, TEST_URL);
   registerCleanupFunction(async () => {
     await BrowserTestUtils.removeTab(tab);
   });
   info("Wait for a title change notification.");
   await promiseTitleChanged;
-  is((await PlacesUtils.history.fetch(TEST_URL)).title, TITLE_1,
-     "The title matches the orignal title after first visit");
+  await BrowserTestUtils.waitForCondition(async function() {
+    return (await PlacesUtils.history.fetch(TEST_URL)).title == TITLE_1;
+  }, "The title matches the orignal title after first visit");
 
   promiseTitleChanged = PlacesTestUtils.waitForNotification(
     "onTitleChanged", (uri, title) => uri.spec == TEST_URL, "history");
   await PlacesTestUtils.addVisits({ uri: TEST_URL, title: TITLE_2 });
   info("Wait for a title change notification.");
   await promiseTitleChanged;
-  is((await PlacesUtils.history.fetch(TEST_URL)).title, TITLE_2,
-     "The title matches the orignal title after updating visit");
+  await BrowserTestUtils.waitForCondition(async function() {
+    return (await PlacesUtils.history.fetch(TEST_URL)).title == TITLE_2;
+  }, "The title matches the orignal title after updating visit");
 
   let privateWin = await BrowserTestUtils.openNewBrowserWindow({private: true});
   registerCleanupFunction(async () => {
     await BrowserTestUtils.closeWindow(privateWin);
   });
   await BrowserTestUtils.openNewForegroundTab(privateWin.gBrowser, TEST_URL);
   // Wait long enough to be sure history didn't set a title.
   await new Promise(resolve => setTimeout(resolve, 1000));
   is((await PlacesUtils.history.fetch(TEST_URL)).title, TITLE_2,
      "The title remains the same after visiting in private window");
 });
-
--- a/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_placestitle.js
+++ b/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_placestitle.js
@@ -25,34 +25,37 @@ add_task(async function test() {
   registerCleanupFunction(async () => {
     await BrowserTestUtils.closeWindow(win);
   });
 
   let promiseTitleChanged = PlacesTestUtils.waitForNotification(
     "onTitleChanged", (uri, title) => uri.spec == TEST_URL, "history");
   await BrowserTestUtils.openNewForegroundTab(win.gBrowser, TEST_URL);
   await promiseTitleChanged;
-  is((await PlacesUtils.history.fetch(TEST_URL)).title, "No Cookie",
-     "The page should be loaded without any cookie for the first time");
+  await BrowserTestUtils.waitForCondition(async function() {
+    return (await PlacesUtils.history.fetch(TEST_URL)).title == "No Cookie";
+  }, "The page should be loaded without any cookie for the first time");
 
   promiseTitleChanged = PlacesTestUtils.waitForNotification(
     "onTitleChanged", (uri, title) => uri.spec == TEST_URL, "history");
   await BrowserTestUtils.openNewForegroundTab(win.gBrowser, TEST_URL);
   await promiseTitleChanged;
-  is((await PlacesUtils.history.fetch(TEST_URL)).title, "Cookie",
-     "The page should be loaded with a cookie for the second time");
+  await BrowserTestUtils.waitForCondition(async function() {
+    return (await PlacesUtils.history.fetch(TEST_URL)).title == "Cookie";
+  }, "The page should be loaded with a cookie for the second time");
 
   await cleanup();
 
   promiseTitleChanged = PlacesTestUtils.waitForNotification(
     "onTitleChanged", (uri, title) => uri.spec == TEST_URL, "history");
   await BrowserTestUtils.openNewForegroundTab(win.gBrowser, TEST_URL);
   await promiseTitleChanged;
-  is((await PlacesUtils.history.fetch(TEST_URL)).title, "No Cookie",
-     "The page should be loaded without any cookie again");
+  await BrowserTestUtils.waitForCondition(async function() {
+    return (await PlacesUtils.history.fetch(TEST_URL)).title == "No Cookie";
+  }, "The page should be loaded without any cookie again");
 
   // Reopen the page in a private browser window, it should not notify a title
   // change.
   let win2 = await BrowserTestUtils.openNewBrowserWindow({private: true});
   registerCleanupFunction(async () => {
     let promisePBExit = TestUtils.topicObserved("last-pb-context-exited");
     await BrowserTestUtils.closeWindow(win2);
     await promisePBExit;