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 487527 b43dff21dd79154d1b06b2e0318bfc9f79d41f28
parent 487526 8709ebdb4227339334ff169930a6308388f760bd
child 487528 4e417850332a6d2ad41dbedcf273e651a5f7285c
push id9719
push userffxbld-merge
push dateFri, 24 Aug 2018 17:49:46 +0000
treeherdermozilla-beta@719ec98fba77 [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;
+  });
 });