Skip to content

Instantly share code, notes, and snippets.

View daleharvey's full-sized avatar

Dale Harvey daleharvey

View GitHub Profile
0:02.02 PASS basic_install_test - [basic_install_test : 92] ["Example","Plain"] deepEqual ["Example","Plain"]
0:02.03 pid:83074 WTF UNINSTALLING
0:02.03 pid:83074 WTF UNLOAD [email protected]
0:02.02 INFO "CONSOLE_MESSAGE: (info) _buildCache: cache file written to disk."
0:02.02 INFO "CONSOLE_MESSAGE: (info) SearchService.init"
0:02.02 INFO "CONSOLE_MESSAGE: (info) getEngines: getting all engines"
0:02.02 INFO "CONSOLE_MESSAGE: (info) _buildSortedEngineList: building list"
0:02.02 INFO "CONSOLE_MESSAGE: (info) _buildSortedEngineList: using db for order"
0:02.02 INFO "CONSOLE_MESSAGE: (info) SRCH_SVC_saveSortedEngineList: starting"
0:02.02 INFO "CONSOLE_MESSAGE: (info) SRCH_SVC_saveSortedEngineList: done"
new code:
// User uninstalls their engine
dump('WTF UNINSTALLING\n');
let commitPromise = promiseAfterCache();
let id = extension.id;
dump('WTF UNLOAD ' + id + '\n');
await extension.unload();
await ExtensionParent.apiManager.global.pendingSearchSetupTasks.get(id);
await commitPromise;
diff --git a/browser/base/content/test/webextensions/head.js b/browser/base/content/test/webextensions/head.js
index cc41982d198ef..1ee8270dbfaae 100644
--- a/browser/base/content/test/webextensions/head.js
+++ b/browser/base/content/test/webextensions/head.js
@@ -540,7 +540,7 @@ add_task(async function() {
}
for (let addon of await AddonManager.getAllAddons()) {
- if (!existingAddons.has(addon.id)) {
+ if (!addon.isBuiltin && !existingAddons.has(addon.id)) {
https://searchfox.org/mozilla-central/source/browser/components/tests/unit/test_distribution.js
https://gist.github.com/daleharvey/a5e075276a3438943b79213d0edb9a03
I need to start the AddonManager in test_distribution.js as it uses the SearchService, adding
await AddonTestUtils.promiseStartupManager();
Causes it to fail with:
0:02.23 FAIL - A promise chain failed to handle a rejection: Component returned failure code: 0x80070057 (NS_ERROR_ILLEGAL_VALUE) [nsIObserverService.removeObserver] - stack: uninit@resource://gre/modules/AutoCompletePopup.jsm:112:18
0:02.16 INFO "CONSOLE_MESSAGE: (info) 1554733055634 addons.xpi DEBUG Loading bootstrap scope from resource://search-extensions/wikipedia/"
0:02.16 INFO "CONSOLE_MESSAGE: (info) 1554733055634 addons.xpi DEBUG Calling bootstrap method install on [email protected] version 1.0"
0:02.16 INFO "CONSOLE_MESSAGE: (info) 1554733055634 addons.xpi DEBUG Calling bootstrap method startup on [email protected] version 1.0"
0:02.21 PASS - "override-de-DE" == "override-de-DE"
0:02.23 pid:81378 1554733055697 addons.manager DEBUG shutdown
0:02.23 pid:81378 1554733055698 addons.manager DEBUG Calling shutdown blocker for XPIProvider
0:02.23 pid:81378 1554733055698 addons.xpi DEBUG shutdown
0:02.23 pid:81378 1554733055698 addons.xpi-utils DEBUG shutdown
0:02.23 pid:81378 1554733055698 addons.manager DEBUG Calling shutdown blocker for GMPProvider
0:02.23 pid:81378 1554733055698 addons.manager DEBUG Calling shutdown blocker for PluginProvider
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
"use strict";
const {ExtensionData} = ChromeUtils.import("resource://gre/modules/Extension.jsm");
const {ExtensionPermissions} = ChromeUtils.import("resource://gre/modules/ExtensionPermissions.jsm");
const SEARCH_EXTENSION_PATH = "resource://search-extensions";
const SEARCH_EXTENSION_PATH = "resource://search-extensions";
function getSearchExtensionPath() {
var resHandler = Services.io.getProtocolHandler("resource")
.QueryInterface(Ci.nsIResProtocolHandler);
let uri = Services.io.newURI(SEARCH_EXTENSION_PATH);
let filePath = resHandler.resolveURI(uri);
dump('WTF: ' + filePath + '\n');
// jar:file:///builds/worker/workspace/build/application/firefox/browser/omni.ja!/chrome/browser/search-extensions/
var url = NetUtil.newURI(filePath).QueryInterface(Ci.nsIFileURL);
0:01.47 PASS - "override-de-DE" == "override-de-DE"
0:01.47 INFO (xpcshell/head.js) | test run_next_test 3 pending (2)
0:01.47 INFO (xpcshell/head.js) | test finished (2)
0:01.47 INFO (xpcshell/head.js) | test run_next_test 3 finished (1)
0:01.47 INFO exiting test
0:01.48 PASS - true == true
0:01.49 pid:96322 1554028671947 addons.manager DEBUG shutdown
0:01.49 pid:96322 1554028671949 addons.manager DEBUG Calling shutdown blocker for XPIProvider
0:01.49 pid:96322 1554028671949 addons.xpi DEBUG shutdown
0:01.49 pid:96322 1554028671949 addons.xpi-utils DEBUG shutdown
~/src/gecko (webextensions-next)$ ./mach marionette-test toolkit/components/telemetry/tests/marionette/tests/client/test_search_counts_across_sessions.py
0:00.00 INFO Using workspace for temporary data: "/Users/dharvey/src/gecko"
0:00.00 mozversion INFO application_buildid: 20190327111132
0:00.00 mozversion INFO application_display_name: Nightly
0:00.00 mozversion INFO application_id: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
0:00.00 mozversion INFO application_name: Firefox
0:00.00 mozversion INFO application_remotingname: firefox
0:00.00 mozversion INFO application_vendor: Mozilla
0:00.00 mozversion INFO application_version: 68.0a1
0:00.00 mozversion INFO platform_buildid: 20190327111132
~/src/gecko (webextensions-next)$ ./mach marionette-test browser/components/search/test/marionette/test_engines_on_restart.py --gecko-log -
0:00.00 INFO Using workspace for temporary data: "/Users/dharvey/src/gecko"
0:00.01 mozversion INFO application_buildid: 20190325114032
0:00.01 mozversion INFO application_display_name: Nightly
0:00.01 mozversion INFO application_id: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
0:00.01 mozversion INFO application_name: Firefox
0:00.01 mozversion INFO application_remotingname: firefox
0:00.01 mozversion INFO application_vendor: Mozilla
0:00.01 mozversion INFO application_version: 68.0a1
0:00.01 mozversion INFO platform_buildid: 20190325114032