Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Warnings
- This test gets skipped with pattern: os == 'android'
- Manifest: toolkit/components/search/tests/xpcshell/xpcshell.toml
/* Any copyright is dedicated to the Public Domain.
"use strict";
const lazy = {};
ChromeUtils.defineESModuleGetters(lazy, {
ExtensionTestUtils:
});
add_setup(async function () {
let server = useHttpServer();
server.registerContentType("sjs", "sjs");
SearchTestUtils.setRemoteSettingsConfig([
{
identifier: "default",
},
},
]);
await SearchTestUtils.initXPCShellAddonManager();
});
add_task(async function test_install_duplicate_engine_startup() {
let name = "default";
consoleAllowList.push("#loadStartupEngines failed for");
// Do not use SearchTestUtils.installSearchExtension, as we need to manually
// start the search service after installing the extension.
let extensionInfo = {
useAddonManager: "permanent",
files: {},
manifest: SearchTestUtils.createEngineManifest({
name,
}),
};
let extension = lazy.ExtensionTestUtils.loadExtension(extensionInfo);
await extension.startup();
await Services.search.init();
await AddonTestUtils.waitForSearchProviderStartup(extension);
let engine = await Services.search.getEngineByName(name);
let submission = engine.getSubmission("foo");
Assert.equal(
submission.uri.spec,
"Should have not changed the app provided engine."
);
await extension.unload();
});