Юнит тест с мангустом
Я новичок в Node.js, Mongoose и тестирование в этой среде. У меня есть следующая схема, объявленная в отдельном файле.
Issue = mongoose.model("Issue", {
identifier: String,
date: String,
url: String,
name: String,
thumbnailURL: String
});
Тогда у меня есть этот метод, который просто возвращает всеIssue
экземпляры в коллекции MongoDB.
function issues(request, response) {
response.setHeader('Content-Type', 'text/json');
Issue.find().sort('date').exec(function(error, items) {
if (error) {
response.send(403, {"status": "error", "error:": exception});
}
else {
response.send(200, {"issues": items});
}
});
}
Я дошел до экспериментов, и теперь я хочу это проверить, но столкнулся с проблемой. Как мне пройти тестирование, не устанавливая соединение MongoDB и т. Д. Я знаю, что яМожно настроить все это, но это интеграционный тест. Я хочу написать модульные тесты для проверки таких вещей, как:
Правильно ли настроен тип содержимогоСортирует ли функция поdate
полеФункция возвращает 403 при возникновении ошибки?... и так далееМне любопытно посмотреть, как я могу реорганизовать свой существующий код, чтобы сделать его более модульным для тестирования. Я пытался, возможно, создать вторую функцию, которая вызывается через, принимаяresponse
а такжеItem
объекты схемы как параметры, но это не правильно. У кого-нибудь есть лучшие предложения?