Eu tenho o seguinte método que gostaria de testar Jest
(bem, mais precisamente com vitest
):
export const handleSave = async (
dispatch: React.Dispatch<DeveloperAction>,
e: FormEvent<HTMLFormElement>,
handleClose: () => void,
setErrorMessage: (errorMessage: string) => void) => {
e.preventDefault();
const formData: FormData = new FormData(e.currentTarget)
const developer: DeveloperType = toDeveloperType(formData)
try {
const resp: AxiosResponse = await axios({
method: 'PUT',
url: `${endpointBackEnd}/developers/${formData.get('id')}`,
data: developer
});
dispatch({
type: DEVELOPER_ACTION_TYPES.EDIT,
payload: resp.data
})
handleClose();
} catch (err) {
handleError(err, setErrorMessage)
}
}
Minha dúvida é sobre como passar um FormEvent
que a função pode usar para criar um FormData
que posteriormente será usado para extrair informações?
Devo passar um FormEvent simulado (como posso fazer isso)? Ou crie uma instância de FormEvent (a pergunta é a mesma, como fazer isso, por favor?)
Obrigado pela ajuda!