Я пытаюсь проверить свой код с помощью jest, пока у меня есть это:
const [error, setError] = useState(null)
async function fetchThis() {
try {
if (something) {
myFunction() // i am mocking this
} else {
somethingElse()
}
} catch (err) {
setError(true)
}
}
useEffect(() => {
fetchThis()
}, [])
Я издеваюсь myFunction
вот так:
myFunction.mockImplementationOnce(() => {
throw new Error()
})
, поэтому он успешнопопадая в блок catch
, однако по какой-то причине он никогда не устанавливает истинную
проверку функции setError()
в шутку:
const { queryByText, getByText, getByTestId, rerender, debug, container } = render(
<App {...props} />,
)
rerender(<App {...props} />)
// Мне нужнопо-видимому, некоторые документы сказали мне, что реакция не запускает перехватчики в режиме синхронизации
есть идеи, почему бы это не назвать?
также, чтобы было ясно, это значение true
в браузере, так что это определенно что-то с тестами.
это даже не работает, когда я делаю
useEffect(() => {
setError(true)
}, [])
какого черта ...