diff --git a/src/test/user-test.js b/src/test/user-test.js index 07905f6af..b3ed51df7 100644 --- a/src/test/user-test.js +++ b/src/test/user-test.js @@ -740,6 +740,36 @@ describe('User', function () { }); }); + describe('aliases', function () { + before(createOwner); + after(cleanupUsers); + + it('can set aliases', function (done) { + user.setAliases(userObject.id, [ 'everything', 'is', 'awesome' ], function (error) { + expect(error).to.be(null); + done(); + }); + }); + + it('get get aliases', function (done) { + user.getAliases(userObject.id, function (error, aliases) { + expect(error).to.be(null); + expect(aliases.length).to.be(3); + expect(aliases[0]).to.be('awesome'); + expect(aliases[1]).to.be('everything'); + expect(aliases[2]).to.be('is'); + done(); + }); + }); + + it('cannot create user with username conflicting with existing alias', function (done) { + user.create('awesome', PASSWORD, 'test@test.com', DISPLAY_NAME, AUDIT_SOURCE, function (error) { + expect(error.reason).to.be(UserError.ALREADY_EXISTS); + done(); + }); + }); + }); + describe('set password', function () { before(createOwner); after(cleanupUsers); diff --git a/src/user.js b/src/user.js index dfa29c5e3..2edba3ab1 100644 --- a/src/user.js +++ b/src/user.js @@ -588,12 +588,11 @@ function setAliases(userId, aliases, callback) { if (error && error.reason === DatabaseError.NOT_FOUND) return callback(new UserError(UserError.NOT_FOUND)); if (error) return callback(new UserError(UserError.INTERNAL_ERROR, error)); - mailboxdb.setAliasesOf(user.username, aliases, userId, mailboxdb.TYPE_USER, function (error) { + mailboxdb.setAliasesByName(user.username, aliases, function (error) { if (error && error.reason === DatabaseError.ALREADY_EXISTS) return callback(new UserError(UserError.ALREADY_EXISTS, error.message)); if (error && error.reason === DatabaseError.NOT_FOUND) return callback(new UserError(UserError.NOT_FOUND)); if (error) return callback(new UserError(UserError.INTERNAL_ERROR, error)); - callback(null); }); }); @@ -607,7 +606,7 @@ function getAliases(userId, callback) { if (error && error.reason === DatabaseError.NOT_FOUND) return callback(new UserError(UserError.NOT_FOUND)); if (error) return callback(new UserError(UserError.INTERNAL_ERROR, error)); - mailboxdb.getAliasesOf(user.username, function (error, aliases) { + mailboxdb.getAliasesByName(user.username, function (error, aliases) { if (error && error.reason === DatabaseError.NOT_FOUND) return callback(new UserError(UserError.NOT_FOUND)); if (error) return callback(new UserError(UserError.INTERNAL_ERROR, error));