集成测试,不能返回一个数组NodeJS / Mocha

时间:2018-03-11 10:46:46

标签: node.js mocha

嘿我想在集成测试中返回一个数组,

我有一个检索表的函数。函数期望对象req.user._id,所以我创建它,接下来我创建集成测试,但是当我运行时我返回空对象,有人可以告诉我我要做什么来获得返回的数组吗?

功能:

 .get('/boards-list', function (req, res) {
    Board.find({ 'users': req.user._id })
      .then((board) => {
        res.json(board);
      })
      .catch((err) => {
        res.status(404).json('Nie można pobrać tablic.')
      })
  })
摩卡:

describe('/boards-list', () => {
  it('it should GET all the boards', (done) => {
    var req = {};
    req.user = {};
     req.user._id = "ObjectId('5a8db5d449c0572dbc60548c')";


    chai.request(server)
        .get('/boards-list')
        .send(req)
        .end((err, res) => { 
          console.log(res.body);
                        // res.should.have.status(200);
                        // res.body.should.be.a('array');
                        // res.body.length.should.be.eql(0);
          done();
        });
  });

}); 

1 个答案:

答案 0 :(得分:0)

我认为问题在于你传递的身份:

req.user._id = "ObjectId('5a8db5d449c0572dbc60548c')";

尝试像这样传递:

req.user._id = "5a8db5d449c0572dbc60548c";