我正在为我的流星项目编写集成测试。我想在我的应用程序中测试webhook POST处理程序。这就是它的样子:
post() {
Meteor.defer(() => {
// some logic here, e.g insert / update database
})
return {
statusCode: 200,
}
}
注意: Meteor.defer
是必须的,因为我想尽快返回代码200(OK)。
为了测试这个webhook,我为这个webhook创建了一个假的POST请求,然后检查数据库是否相应地更新。问题是,在测试中我不知道Meteor.defer
内的代码何时完成,因此我的断言失败了,因为数据库还没有更新。
有什么建议吗?