Bug 1393965 - Fix intermittent browser_default_image_filename.js. r=mconley
authorPaolo Amadini <paolo.mozmail@amadzone.org>
Mon, 20 Aug 2018 13:42:19 +0100
changeset 432387 b43dff21dd79154d1b06b2e0318bfc9f79d41f28
parent 432386 8709ebdb4227339334ff169930a6308388f760bd
child 432388 4e417850332a6d2ad41dbedcf273e651a5f7285c
push id106722
push userpaolo.mozmail@amadzone.org
push dateMon, 20 Aug 2018 15:50:49 +0000
treeherdermozilla-inbound@b43dff21dd79 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersmconley
bugs1393965
milestone63.0a1
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
Bug 1393965 - Fix intermittent browser_default_image_filename.js. r=mconley Differential Revision: https://phabricator.services.mozilla.com/D3775
toolkit/content/tests/browser/browser_default_image_filename.js
--- a/toolkit/content/tests/browser/browser_default_image_filename.js
+++ b/toolkit/content/tests/browser/browser_default_image_filename.js
@@ -4,42 +4,44 @@
 var MockFilePicker = SpecialPowers.MockFilePicker;
 MockFilePicker.init(window);
 
 /**
  * TestCase for bug 564387
  * <https://bugzilla.mozilla.org/show_bug.cgi?id=564387>
  */
 add_task(async function() {
-  let loadPromise = BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser);
-  gBrowser.loadURI("data:image/gif;base64,R0lGODlhEAAOALMAAOazToeHh0tLS/7LZv/0jvb29t/f3//Ub//ge8WSLf/rhf/3kdbW1mxsbP//mf///yH5BAAAAAAALAAAAAAQAA4AAARe8L1Ekyky67QZ1hLnjM5UUde0ECwLJoExKcppV0aCcGCmTIHEIUEqjgaORCMxIC6e0CcguWw6aFjsVMkkIr7g77ZKPJjPZqIyd7sJAgVGoEGv2xsBxqNgYPj/gAwXEQA7");
-  await loadPromise;
-
-  let popupShownPromise = BrowserTestUtils.waitForEvent(document, "popupshown");
+  await BrowserTestUtils.withNewTab({
+    gBrowser,
+    url: "data:image/gif;base64,R0lGODlhEAAOALMAAOazToeHh0tLS/7LZv/0jvb29t/f3//Ub//ge8WSLf/rhf/3kdbW1mxsbP//mf///yH5BAAAAAAALAAAAAAQAA4AAARe8L1Ekyky67QZ1hLnjM5UUde0ECwLJoExKcppV0aCcGCmTIHEIUEqjgaORCMxIC6e0CcguWw6aFjsVMkkIr7g77ZKPJjPZqIyd7sJAgVGoEGv2xsBxqNgYPj/gAwXEQA7",
+  }, async function(browser) {
+    let popupShownPromise = BrowserTestUtils.waitForEvent(document, "popupshown");
 
-  await BrowserTestUtils.synthesizeMouseAtCenter("img",
-                                                 { type: "contextmenu", button: 2 },
-                                                 gBrowser.selectedBrowser);
+    await BrowserTestUtils.synthesizeMouseAtCenter("img", {
+      type: "contextmenu",
+      button: 2,
+    }, browser);
 
-  await popupShownPromise;
+    await popupShownPromise;
 
-  let showFilePickerPromise = new Promise(resolve => {
-    MockFilePicker.showCallback = function(fp) {
-      is(fp.defaultString, "index.gif");
-      resolve();
-    };
-  });
+    let showFilePickerPromise = new Promise(resolve => {
+      MockFilePicker.showCallback = function(fp) {
+        is(fp.defaultString, "index.gif");
+        resolve();
+      };
+    });
 
-  registerCleanupFunction(function() {
-    MockFilePicker.cleanup();
-  });
+    registerCleanupFunction(function() {
+      MockFilePicker.cleanup();
+    });
 
-  // Select "Save Image As" option from context menu
-  var saveImageAsCommand = document.getElementById("context-saveimage");
-  saveImageAsCommand.doCommand();
+    // Select "Save Image As" option from context menu
+    var saveImageAsCommand = document.getElementById("context-saveimage");
+    saveImageAsCommand.doCommand();
 
-  await showFilePickerPromise;
+    await showFilePickerPromise;
 
-  let contextMenu = document.getElementById("contentAreaContextMenu");
-  let popupHiddenPromise = BrowserTestUtils.waitForEvent(contextMenu, "popuphidden");
-  contextMenu.hidePopup();
-  await popupHiddenPromise;
+    let contextMenu = document.getElementById("contentAreaContextMenu");
+    let popupHiddenPromise = BrowserTestUtils.waitForEvent(contextMenu, "popuphidden");
+    contextMenu.hidePopup();
+    await popupHiddenPromise;
+  });
 });