Backed out 2 changesets (bug 1357490) for promise chain failed to handle a rejection QI failures
authorPhil Ringnalda <philringnalda@gmail.com>
Mon, 29 May 2017 16:34:00 -0700
changeset 586220 137157f3de9256d2ca16743d2f46c679deb6c506
parent 586213 8f1c4b1bac37df93eaeff4c6407d414ed7459f3f
child 586221 d7a57d1045a0695279e206c9c20ca85e6841699f
child 586286 29443725aebb641ae5f5ca069f2a422dd04e9acf
push id61333
push usermaglione.k@gmail.com
push dateTue, 30 May 2017 00:33:14 +0000
bugs1357490
milestone55.0a1
backs out3737f31a7ec3dcc68068e817b4b016b76c857d9e
33f6f0354aded142e7a41d5a6209d0d95c4c7521
Backed out 2 changesets (bug 1357490) for promise chain failed to handle a rejection QI failures CLOSED TREE Backed out changeset 3737f31a7ec3 (bug 1357490) Backed out changeset 33f6f0354ade (bug 1357490) MozReview-Commit-ID: 2Q4bUrnntlZ
browser/components/extensions/moz.build
browser/components/extensions/test/xpcshell/head.js
browser/components/extensions/test/xpcshell/head_remote.js
browser/components/extensions/test/xpcshell/xpcshell-common.ini
browser/components/extensions/test/xpcshell/xpcshell-remote.ini
browser/components/extensions/test/xpcshell/xpcshell.ini
toolkit/components/extensions/Extension.jsm
toolkit/components/extensions/moz.build
toolkit/components/extensions/test/xpcshell/head.js
toolkit/components/extensions/test/xpcshell/head_e10s.js
toolkit/components/extensions/test/xpcshell/head_remote.js
toolkit/components/extensions/test/xpcshell/xpcshell-common.ini
toolkit/components/extensions/test/xpcshell/xpcshell-e10s.ini
toolkit/components/extensions/test/xpcshell/xpcshell-remote.ini
toolkit/components/extensions/test/xpcshell/xpcshell.ini
--- a/browser/components/extensions/moz.build
+++ b/browser/components/extensions/moz.build
@@ -22,12 +22,9 @@ EXTRA_JS_MODULES += [
 DIRS += ['schemas']
 
 BROWSER_CHROME_MANIFESTS += [
     'test/browser/browser-remote.ini',
     'test/browser/browser.ini',
 ]
 
 MOCHITEST_MANIFESTS += ['test/mochitest/mochitest.ini']
-XPCSHELL_TESTS_MANIFESTS += [
-    'test/xpcshell/xpcshell-remote.ini',
-    'test/xpcshell/xpcshell.ini',
-]
+XPCSHELL_TESTS_MANIFESTS += ['test/xpcshell/xpcshell.ini']
--- a/browser/components/extensions/test/xpcshell/head.js
+++ b/browser/components/extensions/test/xpcshell/head.js
@@ -1,15 +1,14 @@
 "use strict";
 
 const {classes: Cc, interfaces: Ci, utils: Cu, results: Cr} = Components;
 
 /* exported createHttpServer, promiseConsoleOutput  */
 
-Components.utils.import("resource://gre/modules/Services.jsm");
 Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "AppConstants",
                                   "resource://gre/modules/AppConstants.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "Extension",
                                   "resource://gre/modules/Extension.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "ExtensionData",
                                   "resource://gre/modules/Extension.jsm");
@@ -20,21 +19,21 @@ XPCOMUtils.defineLazyModuleGetter(this, 
 XPCOMUtils.defineLazyModuleGetter(this, "FileUtils",
                                   "resource://gre/modules/FileUtils.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "HttpServer",
                                   "resource://testing-common/httpd.js");
 XPCOMUtils.defineLazyModuleGetter(this, "NetUtil",
                                   "resource://gre/modules/NetUtil.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "Schemas",
                                   "resource://gre/modules/Schemas.jsm");
+XPCOMUtils.defineLazyModuleGetter(this, "Services",
+                                  "resource://gre/modules/Services.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "TestUtils",
                                   "resource://testing-common/TestUtils.jsm");
 
-Services.prefs.setBoolPref("extensions.webextensions.remote", false);
-
 ExtensionTestUtils.init(this);
 
 
 /**
  * Creates a new HttpServer for testing, and begins listening on the
  * specified port. Automatically shuts down the server when the test
  * unit ends.
  *
deleted file mode 100644
--- a/browser/components/extensions/test/xpcshell/head_remote.js
+++ /dev/null
@@ -1,4 +0,0 @@
-"use strict";
-
-Services.prefs.setBoolPref("extensions.webextensions.remote", true);
-Services.prefs.setIntPref("dom.ipc.keepProcessesAlive.extension", 1);
deleted file mode 100644
--- a/browser/components/extensions/test/xpcshell/xpcshell-common.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[test_ext_bookmarks.js]
-[test_ext_browsingData.js]
-[test_ext_browsingData_cookies_cache.js]
-[test_ext_browsingData_downloads.js]
-[test_ext_browsingData_passwords.js]
-[test_ext_browsingData_settings.js]
-[test_ext_history.js]
-[test_ext_geckoProfiler_control.js]
deleted file mode 100644
--- a/browser/components/extensions/test/xpcshell/xpcshell-remote.ini
+++ /dev/null
@@ -1,7 +0,0 @@
-[DEFAULT]
-head = head.js head_remote.js
-firefox-appdir = browser
-tags = webextensions remote-webextensions
-dupe-manifest =
-
-[include:xpcshell-common.ini]
--- a/browser/components/extensions/test/xpcshell/xpcshell.ini
+++ b/browser/components/extensions/test/xpcshell/xpcshell.ini
@@ -1,23 +1,16 @@
 [DEFAULT]
 head = head.js
 firefox-appdir = browser
-tags = webextensions in-process-webextensions
-dupe-manifest =
+tags = webextensions
 
-# This file contains tests which are not affected by multi-process
-# configuration, or do not support out-of-process content or extensions
-# for one reason or another.
-#
-# Tests which are affected by remote content or remote extensions should
-# go in one of:
-#
-#  - xpcshell-common.ini
-#    For tests which should run in all configurations.
-#  - xpcshell-remote.ini
-#    For tests which should only run with both remote extensions and remote content.
-
+[test_ext_bookmarks.js]
+[test_ext_browsingData.js]
+[test_ext_browsingData_cookies_cache.js]
+[test_ext_browsingData_downloads.js]
+[test_ext_browsingData_passwords.js]
+[test_ext_browsingData_settings.js]
+[test_ext_history.js]
 [test_ext_manifest_commands.js]
 [test_ext_manifest_omnibox.js]
 [test_ext_manifest_permissions.js]
-
-[include:xpcshell-common.ini]
+[test_ext_geckoProfiler_control.js]
--- a/toolkit/components/extensions/Extension.jsm
+++ b/toolkit/components/extensions/Extension.jsm
@@ -1090,21 +1090,16 @@ this.Extension = class extends Extension
 
     ParentAPIManager.shutdownExtension(this.id);
 
     Management.emit("shutdown", this);
     this.emit("shutdown");
 
     Services.ppmm.broadcastAsyncMessage("Extension:Shutdown", {id: this.id});
 
-    if (this.rootURI.QueryInterface(Ci.nsIJARURI)) {
-      let file = this.rootURI.JARFile.QueryInterface(Ci.nsIFileURL).file;
-      Services.ppmm.broadcastAsyncMessage("Extension:FlushJarCache", {path: file.path});
-    }
-
     MessageChannel.abortResponses({extensionId: this.id});
 
     ExtensionManagement.shutdownExtension(this.uuid);
 
     return this.cleanupGeneratedFile();
   }
 
   observe(subject, topic, data) {
--- a/toolkit/components/extensions/moz.build
+++ b/toolkit/components/extensions/moz.build
@@ -53,12 +53,11 @@ BROWSER_CHROME_MANIFESTS += [
 
 MOCHITEST_MANIFESTS += [
     'test/mochitest/mochitest-remote.ini',
     'test/mochitest/mochitest.ini'
 ]
 MOCHITEST_CHROME_MANIFESTS += ['test/mochitest/chrome.ini']
 XPCSHELL_TESTS_MANIFESTS += [
     'test/xpcshell/native_messaging.ini',
-    'test/xpcshell/xpcshell-e10s.ini',
     'test/xpcshell/xpcshell-remote.ini',
     'test/xpcshell/xpcshell.ini',
 ]
--- a/toolkit/components/extensions/test/xpcshell/head.js
+++ b/toolkit/components/extensions/test/xpcshell/head.js
@@ -1,16 +1,15 @@
 "use strict";
 
 const {classes: Cc, interfaces: Ci, utils: Cu, results: Cr} = Components;
 
 /* exported createHttpServer, promiseConsoleOutput, cleanupDir */
 
 Components.utils.import("resource://gre/modules/AppConstants.jsm");
-Components.utils.import("resource://gre/modules/Services.jsm");
 Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
 Components.utils.import("resource://gre/modules/Timer.jsm");
 Components.utils.import("resource://testing-common/AddonTestUtils.jsm");
 
 XPCOMUtils.defineLazyModuleGetter(this, "ContentTask",
                                   "resource://testing-common/ContentTask.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "Extension",
                                   "resource://gre/modules/Extension.jsm");
@@ -23,18 +22,18 @@ XPCOMUtils.defineLazyModuleGetter(this, 
 XPCOMUtils.defineLazyModuleGetter(this, "FileUtils",
                                   "resource://gre/modules/FileUtils.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "HttpServer",
                                   "resource://testing-common/httpd.js");
 XPCOMUtils.defineLazyModuleGetter(this, "NetUtil",
                                   "resource://gre/modules/NetUtil.jsm");
 XPCOMUtils.defineLazyModuleGetter(this, "Schemas",
                                   "resource://gre/modules/Schemas.jsm");
-
-Services.prefs.setBoolPref("extensions.webextensions.remote", false);
+XPCOMUtils.defineLazyModuleGetter(this, "Services",
+                                  "resource://gre/modules/Services.jsm");
 
 ExtensionTestUtils.init(this);
 
 /**
  * Creates a new HttpServer for testing, and begins listening on the
  * specified port. Automatically shuts down the server when the test
  * unit ends.
  *
deleted file mode 100644
--- a/toolkit/components/extensions/test/xpcshell/head_e10s.js
+++ /dev/null
@@ -1,5 +0,0 @@
-"use strict";
-
-/* globals ExtensionTestUtils */
-
-ExtensionTestUtils.remoteContentScripts = true;
--- a/toolkit/components/extensions/test/xpcshell/head_remote.js
+++ b/toolkit/components/extensions/test/xpcshell/head_remote.js
@@ -1,4 +1,5 @@
 "use strict";
 
-Services.prefs.setBoolPref("extensions.webextensions.remote", true);
-Services.prefs.setIntPref("dom.ipc.keepProcessesAlive.extension", 1);
+/* globals ExtensionTestUtils */
+
+ExtensionTestUtils.remoteContentScripts = true;
deleted file mode 100644
--- a/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini
+++ /dev/null
@@ -1,60 +0,0 @@
-[test_ext_alarms.js]
-[test_ext_alarms_does_not_fire.js]
-[test_ext_alarms_periodic.js]
-[test_ext_alarms_replaces.js]
-[test_ext_api_permissions.js]
-[test_ext_background_generated_load_events.js]
-[test_ext_background_generated_reload.js]
-[test_ext_background_global_history.js]
-skip-if = os == "android" # Android does not use Places for history.
-[test_ext_background_private_browsing.js]
-[test_ext_background_runtime_connect_params.js]
-[test_ext_background_sub_windows.js]
-[test_ext_background_window_properties.js]
-skip-if = os == "android"
-[test_ext_contextual_identities.js]
-skip-if = os == "android" # Containers are not exposed to android.
-[test_ext_debugging_utils.js]
-[test_ext_downloads.js]
-[test_ext_downloads_download.js]
-skip-if = os == "android"
-[test_ext_downloads_misc.js]
-skip-if = os == "android" || (os=='linux' && bits==32) # linux32: bug 1324870
-[test_ext_downloads_search.js]
-skip-if = os == "android"
-[test_ext_experiments.js]
-skip-if = release_or_beta
-[test_ext_extension.js]
-[test_ext_extensionPreferencesManager.js]
-[test_ext_extensionSettingsStore.js]
-[test_ext_idle.js]
-[test_ext_localStorage.js]
-[test_ext_management.js]
-[test_ext_management_uninstall_self.js]
-[test_ext_onmessage_removelistener.js]
-skip-if = true # This test no longer tests what it is meant to test.
-[test_ext_privacy.js]
-[test_ext_privacy_disable.js]
-[test_ext_privacy_update.js]
-[test_ext_runtime_connect_no_receiver.js]
-[test_ext_runtime_getBrowserInfo.js]
-[test_ext_runtime_getPlatformInfo.js]
-[test_ext_runtime_onInstalled_and_onStartup.js]
-[test_ext_runtime_sendMessage.js]
-[test_ext_runtime_sendMessage_args.js]
-[test_ext_runtime_sendMessage_errors.js]
-[test_ext_runtime_sendMessage_no_receiver.js]
-[test_ext_runtime_sendMessage_self.js]
-[test_ext_shutdown_cleanup.js]
-[test_ext_simple.js]
-[test_ext_startup_cache.js]
-[test_ext_storage.js]
-[test_ext_storage_sync.js]
-head = head.js head_sync.js
-skip-if = os == "android"
-[test_ext_storage_sync_crypto.js]
-skip-if = os == "android"
-[test_ext_topSites.js]
-skip-if = os == "android"
-[test_native_messaging.js]
-skip-if = os == "android"
deleted file mode 100644
--- a/toolkit/components/extensions/test/xpcshell/xpcshell-e10s.ini
+++ /dev/null
@@ -1,12 +0,0 @@
-[DEFAULT]
-head = head.js head_e10s.js
-tail =
-firefox-appdir = browser
-skip-if = appname == "thunderbird" || os == "android"
-dupe-manifest =
-support-files =
-  data/**
-  xpcshell-content.ini
-tags = webextensions webextensions-e10s
-
-[include:xpcshell-content.ini]
--- a/toolkit/components/extensions/test/xpcshell/xpcshell-remote.ini
+++ b/toolkit/components/extensions/test/xpcshell/xpcshell-remote.ini
@@ -1,13 +1,12 @@
 [DEFAULT]
-head = head.js head_remote.js head_e10s.js
+head = head.js head_remote.js
 tail =
 firefox-appdir = browser
 skip-if = appname == "thunderbird" || os == "android"
 dupe-manifest =
 support-files =
   data/**
   xpcshell-content.ini
-tags = webextensions remote-webextensions
+tags = webextensions webextensions-e10s
 
-[include:xpcshell-common.ini]
 [include:xpcshell-content.ini]
--- a/toolkit/components/extensions/test/xpcshell/xpcshell.ini
+++ b/toolkit/components/extensions/test/xpcshell/xpcshell.ini
@@ -2,52 +2,91 @@
 head = head.js
 firefox-appdir = browser
 skip-if = appname == "thunderbird"
 dupe-manifest =
 support-files =
   data/**
   head_sync.js
   xpcshell-content.ini
-tags = webextensions in-process-webextensions
-
-# This file contains tests which are not affected by multi-process
-# configuration, or do not support out-of-process content or extensions
-# for one reason or another.
-#
-# Tests which are affected by remote content or remote extensions should
-# go in one of:
-#
-#  - xpcshell-common.ini
-#    For tests which should run in all configurations.
-#  - xpcshell-remote.ini
-#    For tests which should only run with both remote extensions and remote content.
-#  - xpcshell-content.ini
-#    For tests which rely on content pages, and should run in all configurations.
-#  - xpcshell-e10s.ini
-#    For tests which rely on conetn pages, and should only run with remote content
-#    but in-process extensions.
+tags = webextensions
 
 [test_csp_custom_policies.js]
 [test_csp_validator.js]
+[test_ext_alarms.js]
+[test_ext_alarms_does_not_fire.js]
+[test_ext_alarms_periodic.js]
+[test_ext_alarms_replaces.js]
+[test_ext_api_permissions.js]
+[test_ext_background_generated_load_events.js]
+[test_ext_background_generated_reload.js]
+[test_ext_background_global_history.js]
+skip-if = os == "android" # Android does not use Places for history.
+[test_ext_background_private_browsing.js]
+[test_ext_background_runtime_connect_params.js]
+[test_ext_background_sub_windows.js]
+[test_ext_background_window_properties.js]
+skip-if = os == "android"
 [test_ext_contexts.js]
+[test_ext_contextual_identities.js]
+skip-if = os == "android" # Containers are not exposed to android.
+[test_ext_debugging_utils.js]
+[test_ext_downloads.js]
+[test_ext_downloads_download.js]
+skip-if = os == "android"
+[test_ext_downloads_misc.js]
+skip-if = os == "android" || (os=='linux' && bits==32) # linux32: bug 1324870
+[test_ext_downloads_search.js]
+skip-if = os == "android"
+[test_ext_experiments.js]
+skip-if = release_or_beta
+[test_ext_extension.js]
+[test_ext_extensionPreferencesManager.js]
+[test_ext_extensionSettingsStore.js]
+[test_ext_idle.js]
 [test_ext_json_parser.js]
+[test_ext_localStorage.js]
+[test_ext_management.js]
+[test_ext_management_uninstall_self.js]
 [test_ext_manifest_content_security_policy.js]
 [test_ext_manifest_incognito.js]
 [test_ext_manifest_minimum_chrome_version.js]
 [test_ext_manifest_themes.js]
+[test_ext_onmessage_removelistener.js]
+skip-if = true # This test no longer tests what it is meant to test.
+[test_ext_permissions.js]
+skip-if = os == "android" # Bug 1350559
+[test_ext_privacy.js]
+[test_ext_privacy_disable.js]
+[test_ext_privacy_update.js]
+[test_ext_runtime_connect_no_receiver.js]
+[test_ext_runtime_getBrowserInfo.js]
+[test_ext_runtime_getPlatformInfo.js]
+[test_ext_runtime_onInstalled_and_onStartup.js]
+[test_ext_runtime_sendMessage.js]
+[test_ext_runtime_sendMessage_args.js]
+[test_ext_runtime_sendMessage_errors.js]
+[test_ext_runtime_sendMessage_no_receiver.js]
+[test_ext_runtime_sendMessage_self.js]
 [test_ext_schemas.js]
 [test_ext_schemas_async.js]
 [test_ext_schemas_allowed_contexts.js]
 [test_ext_schemas_revoke.js]
+[test_ext_shutdown_cleanup.js]
+[test_ext_simple.js]
+[test_ext_startup_cache.js]
+[test_ext_storage.js]
+[test_ext_storage_sync.js]
+head = head.js head_sync.js
+skip-if = os == "android"
+[test_ext_storage_sync_crypto.js]
+skip-if = os == "android"
 [test_ext_themes_supported_properties.js]
+[test_ext_topSites.js]
+skip-if = os == "android"
+[test_ext_legacy_extension_context.js]
+[test_ext_legacy_extension_embedding.js]
 [test_locale_converter.js]
 [test_locale_data.js]
-
-[test_ext_permissions.js]
-skip-if = os == "android" # Bug 1350559
-
-[test_ext_legacy_extension_context.js]
-[test_ext_legacy_extension_embedding.js]
+[test_native_messaging.js]
+skip-if = os == "android"
 [test_proxy_scripts.js]
-
-[include:xpcshell-common.ini]
 [include:xpcshell-content.ini]