.end()
является частью supertest
, но вы не используете это в своем тесте (или в методе, который вы тестируете).
Вместо этого вы должны проверить внутри .then
, потому что ваш метод возвращает Promise:
it('returns expected payload', function() {
return service
.getModelts()
.then(function(res) {
// I expect that the following tests will fail,
// because they assume that `res` is a `supertest`
// response, and your method returns a Mongoose
// query result
expect(res.body.length).to.eql(6);
expect(res.body[0].text).to.eql('Todo 1');
});
});
(также обратите внимание, как тестовая функция возвращает цепочку Promise и не использует done
; это потому, что Mocha поддерживает обещания из коробки, а смешивание обещаний с обратными вызовами может вызвать проблемы) .