diff options
Diffstat (limited to 'toolkit/components/autocomplete/tests/unit/test_autocomplete_userContextId.js')
-rw-r--r-- | toolkit/components/autocomplete/tests/unit/test_autocomplete_userContextId.js | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/toolkit/components/autocomplete/tests/unit/test_autocomplete_userContextId.js b/toolkit/components/autocomplete/tests/unit/test_autocomplete_userContextId.js new file mode 100644 index 0000000000..4fbec408dc --- /dev/null +++ b/toolkit/components/autocomplete/tests/unit/test_autocomplete_userContextId.js @@ -0,0 +1,44 @@ +"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); + }); +} |