【发布时间】:2018-11-29 17:24:54
【问题描述】:
我正在使用 Slack API,我想测试它是否可以与响应状态代码一起正常工作。这是发送功能:
sendMsg(msg) {
return this.slack.webhook({text: msg}, (err, res) => {
if (err) {
throw err;
}
console.log(res.statusCode) // = 200
return res.statusCode;
});
}
我的测试:
it('Checks connection with Slack', (() => {
let slack = new Slack();
let res = slack.sendMsg('test');
expect(res).to.equal(200);
}));
但是ofc。它让我请求对象松弛。我想等待来自 slack API 的响应对象。提前致谢。
【问题讨论】:
-
sendMsg函数是否返回一个承诺?如果没有,我认为它需要自己的回调。 -
Idk,它是 slack 的第 3 方库。 :(
-
您可能应该查看 slack API 返回的内容,因为您将其返回给
sendMsg的调用者。你的sendMsg函数写得有点像它从slack.webhook返回一个承诺,但它也使用回调。我认为sendMsg的调用者永远不会得到结果。 -
Slack API 返回带有状态码等的响应对象。我想在测试中抓取它。
sendMsg是我 100% 的功能。
标签: javascript unit-testing mocha.js bdd chai