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 | 45 |
1 files changed, 45 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 000000000..c98db7f8f --- /dev/null +++ b/toolkit/components/autocomplete/tests/unit/test_autocomplete_userContextId.js @@ -0,0 +1,45 @@ +"use strict"; + +Cu.import("resource://gre/modules/Promise.jsm"); + +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(function *test_userContextId() { + let searchParam = yield doSearch("test", 1); + Assert.equal(searchParam, " user-context-id:1"); +}); + +function doSearch(aString, aUserContextId) { + let deferred = Promise.defer(); + let search = new AutoCompleteSearch("test"); + + search.startSearch = function (aSearchString, + aSearchParam, + aPreviousResult, + aListener) { + unregisterAutoCompleteSearch(search); + deferred.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); + + return deferred.promise; + } + |