Здравствуйте. Подскажите в чем может быть проблема.
Использую
jest тестирование. Дело в том, что тесты выбрасывают
500 ошибку, хотя данные уходят в базу данных и публикуются в приложении. Вместе с серверной ошибкой вдовесок выбрасывает и такую ошибку:
Прилагаю код и логи.
Тест:
it("Route '/' POST , should post the task", async () => {
const todo = Todo.create({
title: "title tests",
done: false
});
return request(app.use(router))
.post("/")
.send(todo)
.set({ "Content-Type": "application/json" })
.expect(500)
.then(res => {
console.log(res.body);
expect(res.body).toMatchSnapshot();
});
});
Ошибка в логах:
console.log src/server/routes/index.js:26
TypeError: Cannot read property 'title' of undefined
Код роутера, на который он ругается:
router.post("/", async (req, res) => {
console.log(req.body);
try {
const todo = await Todo.create({
title: req.body.title, //* TypeError: Cannot read property 'title' of undefined *//
done: false
});
res.status(201).json({ todo });
} catch (error) {
console.log(error);
res.status(500).json({
message: "There is an error on server"
});
}
});
Спасибо.