0

我构建了 nodejs 服务器,现在我正在用 mocha 对其进行测试。

我对异步请求有疑问。我将我的对象发送到 API,然后检查数据库中的对象记录。我只需要使用 co 库和生成器。有错误:

  TypeError: Cannot read property 'id' of null

这取决于 insertUser 对象为空,但我不知道为什么数据库中的对象为空。

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);
        });
    });
4

1 回答 1

0

我解决了我的问题。代码很好,但数据库中的密码是散列,我检查散列密码和订单密码

于 2017-07-07T12:42:43.493 回答