Bug 1244340 - Part 3: pass userContextId to search suggestions r=mak

This commit is contained in:
Yoshi Huang
2016-05-31 18:59:41 +08:00
parent b5e2e5d8e6
commit d1b4579af0
11 changed files with 111 additions and 15 deletions

View File

@@ -5,6 +5,7 @@ Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
var Cc = Components.classes;
var Ci = Components.interfaces;
var Cu = Components.utils;
/**
* Dummy nsIAutoCompleteInput source that returns

View File

@@ -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;
}

View File

@@ -10,6 +10,7 @@ skip-if = toolkit == 'gonk'
[test_463023.js]
[test_660156.js]
[test_autocomplete_multiple.js]
[test_autocomplete_userContextId.js]
[test_autofillSelectedPopupIndex.js]
[test_badDefaultIndex.js]
[test_completeDefaultIndex_casing.js]