mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-11-10 21:28:04 +02:00
Differential Revision: https://phabricator.services.mozilla.com/D17526 --HG-- extra : moz-landing-system : lando
43 lines
1.2 KiB
JavaScript
43 lines
1.2 KiB
JavaScript
"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,
|
|
aPreviousResult,
|
|
aListener) {
|
|
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);
|
|
});
|
|
}
|
|
|