【发布时间】:2019-09-20 15:44:36
【问题描述】:
使用 React 测试库测试对话框提供程序。我可以让它打开,并断言它出现了——但由于某种原因,我无法让它在测试中关闭。我需要重新渲染吗?
test('await the closing or confirming of the modal', async () => {
const { debug, getByText, queryByText } = render(
<DialogProvider>
<Test />
</DialogProvider>,
);
const openDialogButton = getByText(/click me/i);
fireEvent.click(openDialogButton);
await wait(() => getByText(/ok/i));
fireEvent.click(getByText(/ok/i));
debug();
});
function Test() {
const confirm = useConfirmation();
return (
<button
onClick={() => {
confirm({ variant: 'info' });
}}
>
click me
</button>
);
}
【问题讨论】:
标签: reactjs unit-testing react-testing-library