我正在尝试通过阅读有关该主题的书籍来学习如何在TDD范例之后执行RESTful API(它是用brazillian编写的):
我接近尾声,但我很想通过gnomeController
的测试。
问题是我正在使用sinon断言我使用给定的响应对象调用gnomeController
的{{1}}方法,这是一个间谍。
这个间谍是为了确保我使用"错误"来调用响应方法,但看起来我正在调用没有任何参数的响应,这非常令人困惑。
gnomeController.js
get
gnomeTest.js
module.exports = aGnomeModel => {
let Gnome = aGnomeModel;
function get(req, res){
return Gnome.find({})
.then(gnomes => res.send(gnomes))
.catch(err => res.status(400).send(err));
}
return Object.freeze({
get
});
};
我正在使用这两个库的最新版本。
答案 0 :(得分:0)
经过大量调试后,我发现解决方案是替换:
function get(req, res){
return Gnome.find({})
.then(gnomes => res.send(gnomes))
.catch(err => res.status(400).send(err));
}
使用:
function get(req, res){
return Gnome.find({})
.then(gnomes => res.send(gnomes))
.catch(err => res.status(400).send(err.name));
}
书中没有解释。有点希望我可以提供更多的反馈,但到目前为止它就是它。