如何解决无法为FHIR客户端api调用编写单元测试用例
我拥有组件Componnent1,并且在componentDidMount内部,我具有以下代码:-
const key1 = sessionStorage.getItem("key1");
FHIR.oauth2
.ready()
.then((client) =>
client.request("<url>/" + key1,{
resolveReferences: [
],graph: true,})
)
.then((json) => {
console.log(json);
})
.catch(console.error);
我收到此错误
●呈现预期的效果
console.error内部/进程/next_tick.js:68 TypeError:client.request不是一个函数 在_fhirclient.default.oauth2.ready.then.client(C:\ Users \ dbdeb \ OneDrive \ Desktop \ Patient-application \ src \ components \ my-health-deatails.component \ allergies.component \ allergies.js:68: 16) 在process._tickCallback(internal / process / next_tick.js:68:7)
我的测试用例就像:-
import { Component1} from "../component1"
import React,{ Component } from "react";
import { render } from '@testing-library/react';
import '@testing-library/jest-dom/extend-expect'
import FHIR from "fhirclient";
jest.mock('fhirclient',() => ({
oauth2: {
ready: jest.fn(() => Promise.resolve({
client: {
request: jest.fn(() => { return { data: null } })
}
}))
}
}));
test('renders as expected',() => {
FHIR.oauth2.ready.mockResolvedValueOnce({ data: { entry: '' } })
render(<Component1></Component1>)
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。