mirror of
https://github.com/donl/slouch.git
synced 2026-06-01 14:22:36 -06:00
* doc(readme): clean up reasons * doc(motto) * test(db-and-doc): more coverage * test(create-or-update-ignore-conflict) * test(upsert) * test(ignore-missing) * test(post-and-ignore-conflict) * test(get-merge-put) * refactor(all): rename post and put * test(get-merge-create-or-update) * test(get-merge-update-ignore-conflict) * test(get-merge-upsert) * test(get-modify-upsert) * refactor(doc): redundant code * test(destroy-ignore-conflict) * test(get-and-destroy) * test(mark-as-destroyed) * test(set-destroyed) * refactor(attachment) * test(doc): 100% coverage * test(attachment): create with base 64 * test(attachment): clean up binary code * test(attachment): get * test(attachment): destroy * test(system): is couchdb 1 * test(system): get * test(system): reset * test(updates) * test(updates) * test(all): unique DB names * test(system): reactivate tests * test(user): add role * test(user): downsert role * feat(stream-iterator): indefinite * test(user): 100% coverage * test(request-class) * test(request-class): 100% coverage * test(config) * test(config): more coverage * test(config): more coverage * test(config): 100% coverage * test(all): 100% coverage * refactor(beautify) * test(coverage): enforce 100% * test(system): fix race condition * test(user): shortcut for browser * test(updates): test continuous stream in phantomjs * test(updates): test continuous stream in phantomjs * test(continuous): mock for phantomjs * test(system): abort iterators * test(system): fake abort
40 lines
888 B
JavaScript
40 lines
888 B
JavaScript
'use strict';
|
|
|
|
var Slouch = require('../../scripts'),
|
|
utils = require('../utils');
|
|
|
|
describe('security', function () {
|
|
|
|
var slouch = new Slouch(utils.couchDBURL());
|
|
|
|
beforeEach(function () {
|
|
return utils.createDB();
|
|
});
|
|
|
|
afterEach(function () {
|
|
return utils.destroyDB();
|
|
});
|
|
|
|
it('should set and get security', function () {
|
|
var security = {
|
|
'admins': {
|
|
'names': ['joe', 'phil'],
|
|
'roles': ['boss']
|
|
},
|
|
'members': {
|
|
'names': ['dave'],
|
|
'roles': ['producer', 'consumer']
|
|
}
|
|
};
|
|
return slouch.security.set(utils.createdDB, security).then(function () {
|
|
return slouch.security.get(utils.createdDB);
|
|
}).then(function (_security) {
|
|
_security.should.eql(security);
|
|
});
|
|
});
|
|
|
|
it('only admin can view', function () {
|
|
return slouch.security.onlyAdminCanView(utils.createdDB);
|
|
});
|
|
|
|
});
|