Add user api tests for adding/removing from admin group

This commit is contained in:
Johannes Zellner
2016-02-11 11:39:19 +01:00
parent ecf7575dd3
commit 72c5ebcc06
+37
View File
@@ -10,6 +10,7 @@ var config = require('../../config.js'),
database = require('../../database.js'),
tokendb = require('../../tokendb.js'),
expect = require('expect.js'),
groups = require('../../groups.js'),
mailer = require('../../mailer.js'),
superagent = require('superagent'),
nock = require('nock'),
@@ -271,6 +272,24 @@ describe('User API', function () {
});
});
it('set second user as admin succeeds', function (done) {
superagent.put(SERVER_URL + '/api/v1/users/' + USERNAME_1 + '/set_groups')
.query({ access_token: token })
.send({ groupIds: [ groups.ADMIN_GROUP_ID ] })
.end(function (err, res) {
expect(res.statusCode).to.equal(204);
superagent.get(SERVER_URL + '/api/v1/users/' + USERNAME_1)
.query({ access_token: token })
.end(function (err, res) {
expect(res.statusCode).to.equal(200);
expect(res.body.admin).to.equal(true);
done();
});
});
});
it('remove itself from admins fails', function (done) {
superagent.put(SERVER_URL + '/api/v1/users/' + USERNAME_0 + '/set_groups')
.query({ access_token: token })
@@ -281,6 +300,24 @@ describe('User API', function () {
});
});
it('remove second user as admin succeeds', function (done) {
superagent.put(SERVER_URL + '/api/v1/users/' + USERNAME_1 + '/set_groups')
.query({ access_token: token })
.send({ groupIds: [] })
.end(function (err, res) {
expect(res.statusCode).to.equal(204);
superagent.get(SERVER_URL + '/api/v1/users/' + USERNAME_1)
.query({ access_token: token })
.end(function (err, res) {
expect(res.statusCode).to.equal(200);
expect(res.body.admin).to.equal(false);
done();
});
});
});
it('create user missing username fails', function (done) {
superagent.post(SERVER_URL + '/api/v1/users')
.query({ access_token: token })