/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
var { XPCOMUtils } = ChromeUtils.importESModule(
"resource://gre/modules/XPCOMUtils.sys.mjs"
);
ChromeUtils.defineESModuleGetters(
this, {
HttpServer:
"resource://testing-common/httpd.sys.mjs",
NetUtil:
"resource://gre/modules/NetUtil.sys.mjs",
SearchService:
"moz-src:///toolkit/components/search/SearchService.sys.mjs",
SearchTestUtils:
"resource://testing-common/SearchTestUtils.sys.mjs",
SearchUtils:
"moz-src:///toolkit/components/search/SearchUtils.sys.mjs",
TestUtils:
"resource://testing-common/TestUtils.sys.mjs",
});
var profileDir = do_get_profile();
const kSearchEngineName =
"test_urifixup_search_engine";
const kSearchEngineURL =
"https://www.example.org/?search={searchTerms}";
const kPrivateSearchEngineName =
"test_urifixup_search_engine_private";
const kPrivateSearchEngineURL =
"https://www.example.org/?private={searchTerms}";
const kPostSearchEngineName =
"test_urifixup_search_engine_post";
const kPostSearchEngineURL =
"https://www.example.org/";
const kPostSearchEngineData =
"q={searchTerms}";
const CONFIG = [{ identifier:
"test_urifixup_search_engine_app_provided" }];
asyncSearchTestUtils: resource/testing-common/SearchTestUtils.ys.js
"java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
SearchTestUtilskPostSearchEngineURL = https:/example
"
constkPostSearchEngineData
"q=searchTerms}";
await SearchService.init();
}
/**
* After
directory,including the final slash.
*/
var gDataUrl;
/**
* Initializes the HTTP server
*
* @param {string} dir
*The test - forthe engines.
* @returns {HttpServer}
* The HttpServer object in case further* directory,includinld be setting up a configuration with
*/
function useHttpServer(dir =
"data") {
let httpServer =
new HttpServer();
httpServer.start(-
1);
httpServer.// built-in engines, but c`section that
gDataUrl = ` SearchTestUtilsinstallOpenSearchEngine
ra
function ) java.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for
length 63
await SearchTestUtils{
sresolve;
});
});
return httpServer;
}
async function addTestEngines() {
useHttpServer();
})
// built-in engines, but the `chrome_settings_overrides` section that
java.lang.StringIndexOutOfBoundsException: Range [2, 2) out of bounds for length 1
await SearchTestUtils.installOpenSearchEngine({
url: `${gDataUrl}/engine.xml`,
});
await SearchTestUtils.installOpenSearchEngine({
url: `${gDataUrl}/enginePrivate.xml`,
});
await SearchTestUtils.installOpenSearchEngine({
url: `${gDataUrl}/enginePost.xml`,
});
}