Skip to content
This repository has been archived by the owner on Feb 4, 2021. It is now read-only.

Commit

Permalink
Test that empty stuff gets filtered
Browse files Browse the repository at this point in the history
  • Loading branch information
freaktechnik committed Jul 6, 2016
1 parent bf0ca57 commit fd156ea
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 22 deletions.
2 changes: 1 addition & 1 deletion lib/channel/controller.js
Original file line number Diff line number Diff line change
Expand Up @@ -534,7 +534,7 @@ export default class ChannelController extends Disposable {
* @return {Array.<module:channel/core.User>}
*/
_addFoundCredentials(provider, credentials) {
return Promise.all(credentials.map((credential) => {
return Promise.all(credentials.filter((credential) => credential.username).map((credential) => {
console.log(`Found a credential for ${provider} user ${credential.username}`);
return this.addUser(credential.username, provider);
}));
Expand Down
40 changes: 19 additions & 21 deletions test/test-channel-controller.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ const requireHelper = require("./require_helper");
const ChannelController = requireHelper("../lib/channel/controller").default;
const passwords = require("sdk/passwords");
const providers = requireHelper("../lib/providers").default;
const { defer } = require("sdk/core/promise");
const tabs = require("sdk/tabs");
const { when } = require("sdk/event/utils");
const { expectReject } = require("./event/helpers");
Expand All @@ -20,6 +19,10 @@ const self = require("sdk/self");
const { getMockAPIQS, IGNORE_QSUPDATE_PROVIDERS } = require("./providers/mock-qs");
const clipboard = require("sdk/clipboard");
const { prefs } = require("sdk/simple-prefs");
const { Cc, Ci, CC } = require("chrome");

const LoginInfo = CC("@mozilla.org/login-manager/loginInfo;1", "nsILoginInfo", "init");
const loginManager = Cc["@mozilla.org/login-manager;1"].getService(Ci.nsILoginManager);

const TESTUSER = {
name: "freaktechnik",
Expand All @@ -28,18 +31,13 @@ const TESTUSER = {

var SHARED = {};

const storeCredential = (url, username, password) => {
return loginManager.addLogin(new LoginInfo(url, url + "/submit", null, username, password, 'username', 'password'));
};

exports.testCredentials = function*(assert) {
let { promise, resolve, reject } = defer();
passwords.store({
url: providers[TESTUSER.type].authURL[0],
formSubmitURL: providers[TESTUSER.type].authURL[0] + "/submit",
username: TESTUSER.name,
password: "test",
onComplete: resolve,
onError: reject
});

yield promise;
yield storeCredential(providers[TESTUSER.type].authURL[0], TESTUSER.name, "test");
yield storeCredential(providers[TESTUSER.type].authURL[0], "", "test");

const cc = new ChannelController();
yield cc._ensureQueueReady();
Expand Down Expand Up @@ -75,15 +73,15 @@ exports.testCredentials = function*(assert) {
yield cc.removeUser(u.id, true);

cc.destroy();
/*let p = defer();
passwords.remove({
formSubmitURL: providers[TESTUSER.type].authURL[0] + "/submit",
username: TESTUSER.name,
password: "test",
onComplete: p.resolve,
onError: p.reject
});
yield p.promise;*/
/*yield new Promise((resolve, reject) => {
passwords.remove({
formSubmitURL: providers[TESTUSER.type].authURL[0] + "/submit",
username: TESTUSER.name,
password: "test",
onComplete: p.resolve,
onError: p.reject
});
});*/
};

exports.testAddUser = function*(assert) {
Expand Down

0 comments on commit fd156ea

Please sign in to comment.