mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
58 lines
1.8 KiB
JavaScript
58 lines
1.8 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
function run_test() {
|
|
do_test_pending();
|
|
|
|
removeMetadata();
|
|
removeCacheFile();
|
|
|
|
do_load_manifest("data/chrome.manifest");
|
|
|
|
let url = "chrome://testsearchplugin/locale/searchplugins/";
|
|
Services.prefs.setCharPref("browser.search.jarURIs", url);
|
|
Services.prefs.setBoolPref("browser.search.loadFromJars", true);
|
|
|
|
do_check_false(Services.search.isInitialized);
|
|
let fallback = false;
|
|
|
|
Services.search.init(function search_initialized(aStatus) {
|
|
do_check_true(fallback);
|
|
do_check_true(Components.isSuccessCode(aStatus));
|
|
do_check_true(Services.search.isInitialized);
|
|
|
|
// test engines from dir are loaded.
|
|
let engines = Services.search.getEngines();
|
|
do_check_true(engines.length > 1);
|
|
|
|
// test jar engine is loaded ok.
|
|
let engine = Services.search.getEngineByName("bug645970");
|
|
do_check_neq(engine, null);
|
|
|
|
Services.prefs.clearUserPref("browser.search.jarURIs");
|
|
Services.prefs.clearUserPref("browser.search.loadFromJars");
|
|
|
|
do_test_finished();
|
|
});
|
|
|
|
// Execute test for the sync fallback while the async code is being executed.
|
|
Services.obs.addObserver(function searchServiceObserver(aResult, aTopic, aVerb) {
|
|
if (aVerb == "find-jar-engines") {
|
|
Services.obs.removeObserver(searchServiceObserver, aTopic);
|
|
fallback = true;
|
|
|
|
do_check_false(Services.search.isInitialized);
|
|
|
|
// test engines from dir are loaded.
|
|
let engines = Services.search.getEngines();
|
|
do_check_true(engines.length > 1);
|
|
|
|
// test jar engine is loaded ok.
|
|
let engine = Services.search.getEngineByName("bug645970");
|
|
do_check_neq(engine, null);
|
|
|
|
do_check_true(Services.search.isInitialized);
|
|
}
|
|
}, "browser-search-service", false);
|
|
}
|