merge appdb.js into apps.js

This commit is contained in:
Girish Ramakrishnan
2021-08-20 09:19:44 -07:00
parent b6f2d6d620
commit 77f5cb183b
39 changed files with 1599 additions and 2495 deletions

View File

@@ -61,6 +61,7 @@ async function ldapSearch(dn, opts) {
describe('Ldap', function () {
const { setup, cleanup, admin, user, app, domain, auditSource } = common;
let group;
const mockApp = Object.assign({}, app);
const mailboxName = 'support';
const mailbox = `support@${domain.domain}`;
@@ -79,7 +80,7 @@ describe('Ldap', function () {
}
], done);
ldapServer._MOCK_APP = app;
ldapServer._MOCK_APP = mockApp;
});
after(function (done) {
@@ -124,18 +125,18 @@ describe('Ldap', function () {
describe('non-admin bind', function () {
it('succeeds with null accessRestriction', async function () {
app.accessRestriction = null;
mockApp.accessRestriction = null;
await ldapBind(`cn=${user.id},ou=users,dc=cloudron`, user.password);
});
it('fails without accessRestriction', async function () {
app.accessRestriction = { users: [], groups: [] };
mockApp.accessRestriction = { users: [], groups: [] };
const [error] = await safe(ldapBind(`cn=${user.id},ou=users,dc=cloudron`, user.password));
expect(error).to.be.a(ldap.NoSuchObjectError);
});
it('succeeds with accessRestriction', async function () {
app.accessRestriction = { users: [ user.id ], groups: [] };
mockApp.accessRestriction = { users: [ user.id ], groups: [] };
await ldapBind(`cn=${user.id},ou=users,dc=cloudron`, user.password);
});
});
@@ -182,7 +183,7 @@ describe('Ldap', function () {
});
it('can always lists admins', async function () {
app.accessRestriction = { users: [], groups: [] };
mockApp.accessRestriction = { users: [], groups: [] };
const entries = await ldapSearch('ou=users,dc=cloudron', { filter: 'objectcategory=person' });
expect(entries.length).to.equal(1);
expect(entries[0].username).to.equal(admin.username.toLowerCase());
@@ -190,7 +191,7 @@ describe('Ldap', function () {
});
it ('does only list users who have access', async function () {
app.accessRestriction = { users: [], groups: [ group.id ] };
mockApp.accessRestriction = { users: [], groups: [ group.id ] };
const entries = await ldapSearch('ou=users,dc=cloudron', { filter: 'objectcategory=person' });
expect(entries.length).to.equal(2);
entries.sort(function (a, b) { return a.username > b.username; });
@@ -237,7 +238,7 @@ describe('Ldap', function () {
});
it ('does only list users who have access', async function () {
app.accessRestriction = { users: [], groups: [ group.id ] };
mockApp.accessRestriction = { users: [], groups: [ group.id ] };
const entries = await ldapSearch('ou=groups,dc=cloudron', { filter: '&(objectclass=group)(cn=*)' });
expect(entries.length).to.equal(2);
expect(entries[0].cn).to.equal('users');
@@ -250,7 +251,7 @@ describe('Ldap', function () {
});
it ('succeeds with pagination', async function () {
app.accessRestriction = null;
mockApp.accessRestriction = null;
const entries = await ldapSearch('ou=groups,dc=cloudron', { filter: 'objectclass=group', paged: true });
expect(entries.length).to.equal(2);