Я использую Mongoose в Node.js, и вот мой метод DAO.
function findPostsByCategoryId(categoryId, first, second) {
var sortingOrd = { 'createdAt': -1 };
return Post.find({ 'categoryId': categoryId }).sort(sortingOrd).skip(first).limit(second);
}
Теперь я хочу поставить такой метод в моем тестовом примере, используя Sinon.
describe('findPostsByCategoryId', function () {
it('should find post by category id', function () {
var stub = sinon.stub(Post, 'find');
stub.callsFake(() => {
return Promise.resolve(posts);
});
postDao.findPostsByCategoryId(1, 2, 3).then(response => {
assert.length(response, 1);
})
.catch((error) => {
assert.isDefined(error);
});
});
});
Это возвращает мне сообщение об ошибке «TypeError: Post.find (...). Sort не является функцией».
Можете ли вы пролить свет на то, как заглушить метод DAO, который имеет несколькофункции, связанные с ним?