diff --git a/browser/components/extensions/moz.build b/browser/components/extensions/moz.build index 0dfbc28ec7c9..62638aa3560f 100644 --- a/browser/components/extensions/moz.build +++ b/browser/components/extensions/moz.build @@ -27,12 +27,4 @@ BROWSER_CHROME_MANIFESTS += [ ] MOCHITEST_MANIFESTS += ['test/mochitest/mochitest.ini'] - -if CONFIG['OS_ARCH'] != 'Darwin': - XPCSHELL_TESTS_MANIFESTS += [ - 'test/xpcshell/xpcshell-remote.ini', - ] - -XPCSHELL_TESTS_MANIFESTS += [ - 'test/xpcshell/xpcshell.ini', -] +XPCSHELL_TESTS_MANIFESTS += ['test/xpcshell/xpcshell.ini'] diff --git a/browser/components/extensions/test/xpcshell/head.js b/browser/components/extensions/test/xpcshell/head.js index 9d9a087b3e6c..6c4ce36871a6 100644 --- a/browser/components/extensions/test/xpcshell/head.js +++ b/browser/components/extensions/test/xpcshell/head.js @@ -4,7 +4,6 @@ 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", @@ -25,11 +24,11 @@ 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); diff --git a/browser/components/extensions/test/xpcshell/head_remote.js b/browser/components/extensions/test/xpcshell/head_remote.js deleted file mode 100644 index 35eb498f5083..000000000000 --- 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); diff --git a/browser/components/extensions/test/xpcshell/xpcshell-common.ini b/browser/components/extensions/test/xpcshell/xpcshell-common.ini deleted file mode 100644 index 0919d94fdf4c..000000000000 --- 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] diff --git a/browser/components/extensions/test/xpcshell/xpcshell-remote.ini b/browser/components/extensions/test/xpcshell/xpcshell-remote.ini deleted file mode 100644 index 3d6343394174..000000000000 --- 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] diff --git a/browser/components/extensions/test/xpcshell/xpcshell.ini b/browser/components/extensions/test/xpcshell/xpcshell.ini index 107e45d92a75..770f7c2f323e 100644 --- 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 = - -# 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. +tags = webextensions +[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] diff --git a/toolkit/components/extensions/Extension.jsm b/toolkit/components/extensions/Extension.jsm index ad3b3ea4ac99..d9484b9dbc6e 100644 --- a/toolkit/components/extensions/Extension.jsm +++ b/toolkit/components/extensions/Extension.jsm @@ -1100,11 +1100,6 @@ this.Extension = class extends ExtensionData { Services.ppmm.broadcastAsyncMessage("Extension:Shutdown", {id: this.id}); - if (this.rootURI instanceof 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); diff --git a/toolkit/components/extensions/moz.build b/toolkit/components/extensions/moz.build index 1652b8f04bd6..9bb7f069b5d4 100644 --- a/toolkit/components/extensions/moz.build +++ b/toolkit/components/extensions/moz.build @@ -58,7 +58,6 @@ MOCHITEST_MANIFESTS += [ 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', ] diff --git a/toolkit/components/extensions/test/xpcshell/head.js b/toolkit/components/extensions/test/xpcshell/head.js index 94945de910b5..a8f3458bb95f 100644 --- a/toolkit/components/extensions/test/xpcshell/head.js +++ b/toolkit/components/extensions/test/xpcshell/head.js @@ -5,7 +5,6 @@ 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"); @@ -28,8 +27,8 @@ 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); diff --git a/toolkit/components/extensions/test/xpcshell/head_e10s.js b/toolkit/components/extensions/test/xpcshell/head_e10s.js deleted file mode 100644 index 55ff2164a10e..000000000000 --- a/toolkit/components/extensions/test/xpcshell/head_e10s.js +++ /dev/null @@ -1,5 +0,0 @@ -"use strict"; - -/* globals ExtensionTestUtils */ - -ExtensionTestUtils.remoteContentScripts = true; diff --git a/toolkit/components/extensions/test/xpcshell/head_remote.js b/toolkit/components/extensions/test/xpcshell/head_remote.js index 35eb498f5083..55ff2164a10e 100644 --- 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; diff --git a/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini b/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini index 32f73db633d8..f8833c227728 100644 --- a/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini +++ b/toolkit/components/extensions/test/xpcshell/xpcshell-common.ini @@ -2,6 +2,7 @@ [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] diff --git a/toolkit/components/extensions/test/xpcshell/xpcshell-e10s.ini b/toolkit/components/extensions/test/xpcshell/xpcshell-e10s.ini deleted file mode 100644 index 4c4737bf4758..000000000000 --- 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] diff --git a/toolkit/components/extensions/test/xpcshell/xpcshell-remote.ini b/toolkit/components/extensions/test/xpcshell/xpcshell-remote.ini index 8af28a476edc..7a0452810026 100644 --- a/toolkit/components/extensions/test/xpcshell/xpcshell-remote.ini +++ b/toolkit/components/extensions/test/xpcshell/xpcshell-remote.ini @@ -1,5 +1,5 @@ [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" @@ -7,7 +7,6 @@ dupe-manifest = support-files = data/** xpcshell-content.ini -tags = webextensions remote-webextensions +tags = webextensions webextensions-e10s -[include:xpcshell-common.ini] [include:xpcshell-content.ini] diff --git a/toolkit/components/extensions/test/xpcshell/xpcshell.ini b/toolkit/components/extensions/test/xpcshell/xpcshell.ini index 7a0201784dd8..d23361aed852 100644 --- a/toolkit/components/extensions/test/xpcshell/xpcshell.ini +++ b/toolkit/components/extensions/test/xpcshell/xpcshell.ini @@ -7,48 +7,86 @@ 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_locale_converter.js] -[test_locale_data.js] - -[test_ext_permissions.js] -skip-if = os == "android" # Bug 1350559 -[test_ext_api_permissions.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_native_messaging.js] +skip-if = os == "android" [test_proxy_scripts.js] - -[include:xpcshell-common.ini] [include:xpcshell-content.ini]