如何解决有什么方法可以测试图客户端从@microsoft/microsoft-graph-client 库发出的请求吗?
这是我用来初始化图形客户端的代码:
function getAuthenticatedClient(accessToken) {
const client = graph.Client.init({
// Use the provided access token to authenticate requests
authProvider: done => {
done(null,accessToken);
},});
对于这个客户端,我使用 .api()
函数来发出请求,所以我很自然地想为此编写测试。假设这是我要测试的代码:
async function getLoggedInUserDetails(accessToken) {
let client = getAuthenticatedClient(accessToken);
const details = await client.api('/me').get();
return details
}
现在为了测试,我使用了 expect
断言库中的 chai.js
断言和 mocha 来运行它。
假设我使用 nock 将端点 https://graph.microsoft.com/v1.0/me
模拟为:
let mockDetails = {
displayName: 'FILLERSTRING',displayEmail: 'FILLERSTRING'
}
let detailsRequest = nock('https://graph.microsoft.com/v1.0')
.get('/me')
.reply(200,mockDetails);
let d= await getLoggedInUser('TOKEN');
expect(d).to.equal(mockDetails);
detailsRequest.done()
但是这不起作用,因为客户端不接受 nock 的响应
所以我想知道是否有一种方法可以测试 client.api()
干杯。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。