You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
126 lines
3.0 KiB
126 lines
3.0 KiB
var _ = require('lodash');
|
|
var path = require("path");
|
|
// 设置测试环境
|
|
process.env.NODE_ENV = 'test';
|
|
var chai = require('chai');
|
|
var chaiHttp = require('chai-http');
|
|
var app = require(path.join(process.cwd(),"app"));
|
|
chai.use(chaiHttp);
|
|
|
|
var common = require("../common/common.js");
|
|
var config = require(path.join(process.cwd(),"test/configs/config"));
|
|
var loginURL = config.baseURL + "login";
|
|
|
|
var url = config.baseURL + "roles";
|
|
|
|
describe(url + " role api testing",function() {
|
|
// manager's token
|
|
var token;
|
|
|
|
// new role data
|
|
var testRole = {
|
|
roleName:"__test_role_name",
|
|
roleDesc:"__test_role_desc"
|
|
};
|
|
|
|
var roleId = -1;
|
|
|
|
before(function(done) {
|
|
// The api access must be logged in
|
|
common.login(config.username,config.password,function(err,res){
|
|
chai.assert.equal(res.body.meta.status,200,res.body.meta.msg);
|
|
token = res.body.data.token;
|
|
done();
|
|
});
|
|
});
|
|
|
|
after(function(done) {
|
|
done();
|
|
});
|
|
|
|
it("test to add a new role",function(done){
|
|
chai
|
|
.request(app)
|
|
.post(url)
|
|
.set({"Authorization": token})
|
|
.send(testRole)
|
|
.end(function(err,res){
|
|
chai.assert.equal(res.body.meta.status,201,res.body.meta.msg);
|
|
chai.assert.isNotNull(res.body.data,"The result is empty");
|
|
if(res.body.data) {
|
|
roleId = res.body.data.roleId;
|
|
}
|
|
done();
|
|
});
|
|
});
|
|
|
|
it("test to get role's destail",function(done){
|
|
var getURL = url + "/" + roleId;
|
|
chai
|
|
.request(app)
|
|
.get(getURL)
|
|
.set({"Authorization": token})
|
|
.end(function(err,res) {
|
|
chai.assert.equal(res.body.meta.status,200,res.body.meta.msg);
|
|
chai.assert.isNotNull(res.body.data,"The result is empty");
|
|
done();
|
|
});
|
|
});
|
|
|
|
it("test to get role's list",function(done){
|
|
chai
|
|
.request(app)
|
|
.get(url)
|
|
.set({"Authorization": token})
|
|
.end(function(err,res){
|
|
chai.assert.equal(res.body.meta.status,200,res.body.meta.msg);
|
|
chai.assert.isOk(res.body.data.length > 0,"获取角色列表失败");
|
|
done();
|
|
});
|
|
});
|
|
|
|
it("test to update role's info",function(done){
|
|
var newRoleName = "__test_new_role_name";
|
|
var newRoleDesc = "__test_new_role_desc";
|
|
var updateURL = url + "/" + roleId;
|
|
chai
|
|
.request(app)
|
|
.put(updateURL)
|
|
.set({"Authorization": token})
|
|
.send({
|
|
"roleName" : newRoleName,
|
|
"roleDesc" : newRoleDesc
|
|
})
|
|
.end(function(err,res){
|
|
chai.assert.equal(res.body.meta.status,200,res.body.meta.msg);
|
|
chai.assert.equal(res.body.data.roleName,newRoleName,"The role's name is not updated");
|
|
chai.assert.equal(res.body.data.roleDesc,newRoleDesc,"The role's desc is not updated");
|
|
done();
|
|
});
|
|
});
|
|
|
|
// /:id/rights
|
|
it("test to authorize for role",function(done) {
|
|
// done();
|
|
});
|
|
|
|
// /:id/rights/:rightId
|
|
it("test to revoke authorization for role",function(done){
|
|
// done();
|
|
});
|
|
|
|
it("test to delete role",function(done) {
|
|
chai.assert.isOk(roleId > 0,"delete failure");
|
|
if(roleId > 0) {
|
|
var delURL = url + "/" + roleId;
|
|
chai
|
|
.request(app)
|
|
.del(delURL)
|
|
.set({"Authorization": token})
|
|
.end(function(err,res){
|
|
chai.assert.equal(res.body.meta.status,200,res.body.meta.msg);
|
|
done();
|
|
});
|
|
}
|
|
});
|
|
}); |