summaryrefslogtreecommitdiffstats
path: root/toolkit/components/search/tests/xpcshell/test_engine_alias.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/search/tests/xpcshell/test_engine_alias.js')
-rw-r--r--toolkit/components/search/tests/xpcshell/test_engine_alias.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/toolkit/components/search/tests/xpcshell/test_engine_alias.js b/toolkit/components/search/tests/xpcshell/test_engine_alias.js
new file mode 100644
index 0000000000..2b0aa41850
--- /dev/null
+++ b/toolkit/components/search/tests/xpcshell/test_engine_alias.js
@@ -0,0 +1,31 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+const NAME = "Test Alias Engine";
+
+add_setup(async function () {
+ await AddonTestUtils.promiseStartupManager();
+ let settingsFileWritten = promiseAfterSettings();
+ await Services.search.init();
+ await settingsFileWritten;
+});
+
+add_task(async function upgrade_with_configuration_change_test() {
+ let settingsFileWritten = promiseAfterSettings();
+ await SearchTestUtils.installSearchExtension({
+ name: NAME,
+ keyword: "testalias",
+ });
+ await settingsFileWritten;
+
+ let engine = await Services.search.getEngineByAlias("testalias");
+ Assert.equal(engine?.name, NAME, "Engine can be fetched by alias");
+
+ // Restart the search service but not the AddonManager, we will
+ // load the engines from settings.
+ Services.search.wrappedJSObject.reset();
+ await Services.search.init();
+
+ engine = await Services.search.getEngineByAlias("testalias");
+ Assert.equal(engine?.name, NAME, "Engine can be fetched by alias");
+});