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.
vue-shop-admin-work/test/api/private/v1/goods.test.js

94 lines
2.2 KiB

var path = require("path");
var dao = require(path.join(process.cwd(),"dao/DAO"));
// set development environment
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 url = config.baseURL + "goods";
describe(url + " good api testing",function(){
var token;
var testGood = {
"goods_name" : "__test_good_name",
"goods_price" : 20,
"goods_number" : 30
}
before(function(done) {
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) {
if(testGood.goods_id && testGood.goods_id > 0) {
dao.destroy("GoodModel",testGood.goods_id,function(err){
done();
});
}
});
it("test to create good",function(done){
chai
.request(app)
.post(url)
.set({"Authorization": token})
.send(testGood)
.end(function(err,res){
chai.assert.equal(res.body.meta.status,201,res.body.meta.msg);
chai.assert.isNotNull(res.body.data,"The data is empty");
testGood = res.body.data;
done();
});
});
it("test to get good list",function(done){
chai
.request(app)
.get(url)
.set({"Authorization": token})
.query({
"pagenum" : 1,
"pagesize" : 1,
"query" : testGood.goods_name
})
.end(function(err,res){
chai.assert.equal(res.body.meta.status,200,res.body.meta.msg);
chai.assert.isOk(res.body.data.goods.length > 0,"The goods is empty");
done();
})
});
it("test to delete good",function(done) {
chai.assert.isNotNull(testGood.goods_id,"The goods_id is null");
var deleteURL = url + "/" + testGood.goods_id;
chai
.request(app)
.del(deleteURL)
.set({"Authorization": token})
.end(function(err,res) {
chai.assert.equal(res.body.meta.status,200,res.body.meta.msg);
dao.findOne(
"GoodModel",
{"goods_id":testGood.goods_id},
function(err,good) {
chai.assert.isNull(err,err);
chai.assert.equal(good.is_del,'1',"Delete failure");
done();
}
);
});
});
});