Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
const {getByText, getByTestId, getByLabelText} = render(
,
);
// waiting for the loading to finish
const form = await waitForElement(() => getByTestId('register-form'));
// Trying to register without entering credentials
fireEvent.submit(form);
await waitForElement(() => getByText('Fields with a * are required'));
fireEvent.change(getByLabelText('First name', {exact: false}), {
target: {value: 'Jean-Michel'},
});
fireEvent.change(getByLabelText('Email', {exact: false}), {
target: {value: 'test@test.test'},
});
fireEvent.change(getByLabelText('Password', {exact: false}), {
target: {value: 'password'},
});
// Until event submission is supported by JSDOM
fireEvent.submit(form, {
target: {
firstname: {value: 'Jean-Michel'},
expect.objectContaining({
fields: expect.objectContaining({
username: 'selbekk',
email: '',
color: 'red',
phoneNumber: '',
}),
}),
);
spy.mockReset();
render(, {
container,
});
fireEvent.submit(container.querySelector('form'));
expect(spy).toHaveBeenCalledWith(
expect.objectContaining({
fields: {
username: 'selbekk',
email: '',
delayed: '',
},
}),
);
});
});
act(() => {
fireEvent.submit(getByTestId('form'));
});
act(() => {
fireEvent.submit(getByTestId('form'));
});
act(() => {
fireEvent.submit(getByTestId('form'));
});
act(() => {
fireEvent.submit(getByTestId('form'));
});
it('should expose fire event helpers', () => {
fireEvent.copy(htmlEl);
fireEvent.cut(htmlEl);
fireEvent.paste(htmlEl);
fireEvent.compositionEnd(htmlEl);
fireEvent.compositionStart(htmlEl);
fireEvent.compositionUpdate(htmlEl);
fireEvent.keyDown(htmlEl);
fireEvent.keyPress(htmlEl);
fireEvent.keyUp(htmlEl);
fireEvent.focus(htmlEl);
fireEvent.blur(htmlEl);
fireEvent.change(htmlEl);
fireEvent.input(htmlEl);
fireEvent.invalid(htmlEl);
fireEvent.submit(htmlEl);
fireEvent.click(htmlEl);
fireEvent.contextMenu(htmlEl);
fireEvent.dblClick(htmlEl);
fireEvent.doubleClick(htmlEl);
fireEvent.drag(htmlEl);
fireEvent.dragEnd(htmlEl);
fireEvent.dragEnter(htmlEl);
fireEvent.dragExit(htmlEl);
fireEvent.dragLeave(htmlEl);
fireEvent.dragOver(htmlEl);
fireEvent.dragStart(htmlEl);
fireEvent.drop(htmlEl);
fireEvent.mouseDown(htmlEl);
fireEvent.mouseEnter(htmlEl);
fireEvent.mouseLeave(htmlEl);
fireEvent.mouseMove(htmlEl);
act(() => {
fireEvent.change(getByLabelText('attach'), {
target: { files: [file] },
});
fireEvent.submit(getByTestId('form'));
});
act(() => {
fireEvent.submit(getByTestId('form'));
});
await wait(() => expect(!!getByText('Choice is required')).toBe(true));
it('should display error', async () => {
const schema = Yup.object().shape({
check: Yup.boolean().oneOf([true], 'Check is required'),
});
const { getByText, getByTestId } = render(
,
{ schema },
);
fireEvent.submit(getByTestId('form'));
await wait(() => expect(!!getByText('Check is required')).toBe(true));
});