Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

"use strict";
function AutoCompleteInput(aSearches, aUserContextId) {
this.searches = aSearches;
this.userContextId = aUserContextId;
this.popup.selectedIndex = -1;
}
AutoCompleteInput.prototype = Object.create(AutoCompleteInputBase.prototype);
function AutoCompleteSearch(aName) {
this.name = aName;
}
AutoCompleteSearch.prototype = Object.create(AutoCompleteSearchBase.prototype);
add_task(async function test_userContextId() {
let searchParam = await doSearch("test", 1);
Assert.equal(searchParam, " user-context-id:1");
});
function doSearch(aString, aUserContextId) {
return new Promise(resolve => {
let search = new AutoCompleteSearch("test");
search.startSearch = function (aSearchString, aSearchParam) {
unregisterAutoCompleteSearch(search);
resolve(aSearchParam);
};
registerAutoCompleteSearch(search);
let controller = Cc["@mozilla.org/autocomplete/controller;1"].getService(
Ci.nsIAutoCompleteController
);
let input = new AutoCompleteInput([search.name], aUserContextId);
controller.input = input;
controller.startSearch(aString);
});
}