我构建了nodejs服务器,现在我正在使用mocha进行测试。
我遇到异步请求问题。我将对象发送到API,然后在DB中检查对象的记录。我只需要使用co库和生成器。 出现了错误:
TypeError: Cannot read property 'id' of null
它依赖于insertUser对象为null,但我不知道为什么来自数据库的对象为null。
API工作正常,并且sequilize工作正常。
it('it should POST a user', () => {
return co(function *() {
let user = {
name: "testInsertUser",
password: "12345"
};
let res = yield chai.request(server)
.post('/api/users')
.send(user);
res.should.have.status(HTTPStatus.OK);
res.body.should.be.a('object');
res.body.should.have.property('name').eql(user.name);
res.body.should.not.have.property('password');
//Find user in db
let insertUser =
yield models.User.findOne({
where: {
name: user.name,
password: user.password
}
});
res.body.should.have.property('id').eql(insertUser.id);
});
});
答案 0 :(得分:0)
我解决了我的问题。 代码很好,但db中的密码是哈希,我检查哈希密码和订单密码