summaryrefslogtreecommitdiffstats
path: root/toolkit/components/search/tests/xpcshell/test_migration_langpack.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/search/tests/xpcshell/test_migration_langpack.js')
-rw-r--r--toolkit/components/search/tests/xpcshell/test_migration_langpack.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/toolkit/components/search/tests/xpcshell/test_migration_langpack.js b/toolkit/components/search/tests/xpcshell/test_migration_langpack.js
new file mode 100644
index 000000000..8cb2014bd
--- /dev/null
+++ b/toolkit/components/search/tests/xpcshell/test_migration_langpack.js
@@ -0,0 +1,37 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+function run_test() {
+ removeMetadata();
+ removeCacheFile();
+
+ do_load_manifest("data/chrome.manifest");
+
+ configureToLoadJarEngines();
+
+ // Unless we unset the XPCSHELL_TEST_PROFILE_DIR environment variable,
+ // engine._isDefault will be true for engines from the resource:// scheme,
+ // bypassing the codepath we want to test.
+ let env = Cc["@mozilla.org/process/environment;1"]
+ .getService(Ci.nsIEnvironment);
+ env.set("XPCSHELL_TEST_PROFILE_DIR", "");
+
+ do_get_file("data/langpack-metadata.json").copyTo(gProfD, "search-metadata.json");
+
+ do_check_false(Services.search.isInitialized);
+
+ run_next_test();
+}
+
+add_task(function* async_init() {
+ let commitPromise = promiseAfterCache()
+ yield asyncInit();
+
+ let engine = Services.search.getEngineByName("bug645970");
+ do_check_neq(engine, null);
+ do_check_eq(engine.wrappedJSObject._id, "[app]/bug645970.xml");
+
+ yield commitPromise;
+ let metadata = yield promiseEngineMetadata();
+ do_check_eq(metadata["bug645970"].alias, "lp");
+});