Bug 1295488 - Don't use a directory for mozscreenshots localFile tests. r?MattN draft
authorJohann Hofmann <jhofmann@mozilla.com>
Wed, 17 Aug 2016 08:54:33 +0200
changeset 401693 7c5194a98d20511d822e036a2427ab1e4a1fbcc1
parent 400825 054d4856cea6150a6638e5daf7913713281af97d
child 528578 e6c007e4d79e503bcfa9f06e846fdf4425bee104
push id26557
push usermail@johann-hofmann.com
push dateWed, 17 Aug 2016 13:24:09 +0000
reviewersMattN
bugs1295488
milestone51.0a1
Bug 1295488 - Don't use a directory for mozscreenshots localFile tests. r?MattN MozReview-Commit-ID: 3QJZsB7BHqg
browser/tools/mozscreenshots/mozscreenshots/extension/configurations/ControlCenter.jsm
--- a/browser/tools/mozscreenshots/mozscreenshots/extension/configurations/ControlCenter.jsm
+++ b/browser/tools/mozscreenshots/mozscreenshots/extension/configurations/ControlCenter.jsm
@@ -8,16 +8,17 @@ this.EXPORTED_SYMBOLS = ["ControlCenter"
 
 const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
 
 Cu.import("resource://gre/modules/Services.jsm");
 Cu.import("resource://gre/modules/Task.jsm");
 Cu.import("resource://gre/modules/Timer.jsm");
 Cu.import("resource://testing-common/BrowserTestUtils.jsm");
 Cu.import("resource:///modules/SitePermissions.jsm");
+Cu.import("resource://gre/modules/NetUtil.jsm");
 
 let {UrlClassifierTestUtils} = Cu.import("resource://testing-common/UrlClassifierTestUtils.jsm", {});
 
 const RESOURCE_PATH = "extensions/mozscreenshots/browser/chrome/mozscreenshots/lib/controlCenter";
 const HTTP_PAGE = "http://example.com/";
 const HTTPS_PAGE = "https://example.com/";
 const PERMISSIONS_PAGE = "https://test1.example.com/";
 const HTTP_PASSWORD_PAGE = `http://test2.example.org/${RESOURCE_PATH}/password.html`;
@@ -34,21 +35,25 @@ this.ControlCenter = {
       applyConfig: Task.async(function* () {
         yield loadPage("about:home");
         yield openIdentityPopup();
       }),
     },
 
     localFile: {
       applyConfig: Task.async(function* () {
-        let filePath = "file:///";
-        if (Services.appinfo.OS === "WINNT") {
-          filePath += "C:/";
-        }
-        yield loadPage(filePath);
+        let channel = NetUtil.newChannel({
+            uri: "chrome://mozscreenshots/content/lib/mozscreenshots.html",
+            loadUsingSystemPrincipal: true
+        });
+        channel = channel.QueryInterface(Ci.nsIFileChannel);
+        let browserWindow = Services.wm.getMostRecentWindow("navigator:browser");
+        let gBrowser = browserWindow.gBrowser;
+        BrowserTestUtils.loadURI(gBrowser.selectedBrowser, channel.file.path);
+        yield BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser);
         yield openIdentityPopup();
       }),
     },
 
     http: {
       applyConfig: Task.async(function* () {
         yield loadPage(HTTP_PAGE);
         yield openIdentityPopup();