Do not return aliases as mailboxes

This commit is contained in:
Girish Ramakrishnan
2016-09-28 10:26:41 -07:00
parent cca9780f51
commit a78e17b036
2 changed files with 22 additions and 6 deletions

View File

@@ -29,6 +29,8 @@ var USER_0 = {
displayName: 'User 0'
};
var USER_0_ALIAS = 'Asterix';
// normal user
var USER_1 = {
username: 'Username1',
@@ -98,7 +100,7 @@ function setup(done) {
},
function (callback) {
async.series([
user.setAliases.bind(null, USER_0.id, [ 'Asterix', 'obelix' ]),
user.setAliases.bind(null, USER_0.id, [ USER_0_ALIAS, 'obelix' ]),
groups.create.bind(null, GROUP_ID),
groups.addMember.bind(null, GROUP_ID, USER_0.id),
groups.addMember.bind(null, GROUP_ID, USER_1.id)
@@ -533,6 +535,13 @@ describe('Ldap', function () {
});
});
it('cannot get alias as a mailbox', function (done) {
ldapSearch('cn=' + USER_0_ALIAS + ',ou=mailboxes,dc=cloudron', 'objectclass=mailbox', function (error, entries) {
expect(error).to.be.a(ldap.NoSuchObjectError);
done();
});
});
it('non-existent mailbox', function (done) {
ldapSearch('cn=random,ou=mailboxes,dc=cloudron', 'objectclass=mailbox', function (error) {
expect(error).to.be.a(ldap.NoSuchObjectError);
@@ -543,7 +552,7 @@ describe('Ldap', function () {
describe('search aliases', function () {
it('get specific alias', function (done) {
ldapSearch('cn=asterix,ou=mailaliases,dc=cloudron', 'objectclass=nismailalias', function (error, entries) {
ldapSearch('cn=' + USER_0_ALIAS + ',ou=mailaliases,dc=cloudron', 'objectclass=nismailalias', function (error, entries) {
if (error) return done(error);
expect(entries.length).to.equal(1);
expect(entries[0].cn).to.equal('asterix');
@@ -552,6 +561,13 @@ describe('Ldap', function () {
});
});
it('cannot get mailbox as alias', function (done) {
ldapSearch('cn=' + USER_0.username + ',ou=mailaliases,dc=cloudron', 'objectclass=nismailalias', function (error, entries) {
expect(error).to.be.a(ldap.NoSuchObjectError);
done();
});
});
it('non-existent alias', function (done) {
ldapSearch('cn=random,ou=mailaliases,dc=cloudron', 'objectclass=mailbox', function (error) {
expect(error).to.be.a(ldap.NoSuchObjectError);
@@ -562,7 +578,7 @@ describe('Ldap', function () {
describe('search groups', function () {
it('get specific alias', function (done) {
ldapSearch('cn=asterix,ou=mailaliases,dc=cloudron', 'objectclass=nismailalias', function (error, entries) {
ldapSearch('cn=' + USER_0_ALIAS + ',ou=mailaliases,dc=cloudron', 'objectclass=nismailalias', function (error, entries) {
if (error) return done(error);
expect(entries.length).to.equal(1);
expect(entries[0].cn).to.equal('asterix');