UNPKG

userauthjs

Version:

Node module for management of user/group privileges and sessions

87 lines (77 loc) 2.36 kB
/*jshint expr: true*/ var expect = require('chai').expect var userauth = require('../support/userauth') var testuser, testgroup describe('userauth.usergroups', function() { before(function(done) { userauth.wipe(function() { userauth.users.add('testuser', 'password', 'email@example.com', function(err, user) { if (err) { done(err) } testuser = user userauth.privileges.add('testPrivilege', function(err, privilege) { if (err) { return done(err) } done() }) }) }) }) it('add usergroup', function(done) { userauth.usergroups.add('testgroup', function(err, usergroup) { if (err) { done(err) } expect(usergroup).to.be.ok expect(usergroup).to.have.property('_id') testgroup = usergroup done() }) }) it('add user to usergroup', function(done) { userauth.usergroups.addUser('testuser', 'testgroup', function(err, user) { if (err) { done(err) } expect(user).to.be.ok expect(user).to.have.property('_id') expect(user.usergroups).to.include(testgroup._id) done() }) }) it('add usergroup to privilege', function(done) { userauth.privileges.addUsergroup('testgroup', 'testPrivilege', function(err, privilege) { if (err) { done(err) } expect(privilege).to.be.ok expect(privilege).to.have.property('_id') expect(privilege.usergroups).to.include(testgroup._id) done() }) }) it('try to add same user to usergroup again', function(done) { userauth.usergroups.addUser('testuser', 'testgroup', function(err, user) { if (err) { done(err) } expect(user).to.not.be.ok done() }) }) it('remove user from usergroup', function(done) { userauth.usergroups.removeUser('testuser', 'testgroup', function(err, user) { if (err) { done(err) } expect(user).to.be.ok expect(user).to.have.property('_id') expect(user.usergroups).to.not.include(testgroup._id) done() }) }) it('try to remove same user from usergroup again', function(done) { userauth.usergroups.removeUser('testuser', 'testgroup', function(err, user) { if (err) { done(err) } expect(user).to.not.be.ok done() }) }) it('remove usergroup', function(done) { userauth.usergroups.remove('testgroup', function(err, usergroup) { if (err) { done(err) } expect(usergroup).to.be.ok expect(usergroup).to.have.property('_id') testgroup = usergroup done() }) }) })