final-form / final-form/react-final-form

Chaining Exceptions causes tests to throw act error

Open
#989 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
7.4k
Forks
497
PR merge metrics
No merged PRs in 30d

Description

### Are you submitting a **bug report** or a **feature request**?

Bug report

### What is the current behavior?

chaining error result in an act warning that could not be resolved, even though test was completed with the correct behavior.

![image](https://user-images.githubusercontent.com/96191393/166129999-4a2ac66f-899e-4193-be51-adcedb15b190.png)

here's how my handleSubmit looks like
`
// In api file
export const fetchSomething = () => {
return fetch('/somewhere')
.then((result) => doSomethingWithResult(result))
.catch((e) => {
alert(e.message);
throw e; // rethrow the error, so that the 2nd then doesnt run
})
}

// in component
const handleSubmit = () => {
return fetchSomething();
.then(() => showSuccessMessage()); // this should only run if the catch dint happen in the api file
.catch(() => {}); // Do nothing since the 1st catch should have stopped the 2nd then, this is just so that all errors are caught
}
`

### What is the expected behavior?

No error thrown

### Sandbox Link

Sorry, tried to create one in codesandbox.io, but couldn't run the test suite properly.

### What's your environment?

React 18, react dome 18, react final form 6.5.9, final form 4.20.7

### Other information

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.