unicorn/no-useless-promise-resolve-reject Pedantic
What it does
Disallows returning values wrapped in Promise.resolve or Promise.reject in an async function or a Promise#then/catch/finally callback.
Why is this bad?
Wrapping a return value in Promise.resolve in an async function or a Promise#then/catch/finally callback is unnecessary as all return values in async functions and promise callback functions are already wrapped in a Promise. Similarly, returning an error wrapped in Promise.reject is equivalent to simply throwing the error. This is the same for yielding in async generators as well.
Examples
Examples of incorrect code for this rule:
javascript
(async () => Promise.resolve(bar));Examples of correct code for this rule:
javascript
(async () => bar);How to use
To enable this rule in the CLI or using the config file, you can use:
bash
oxlint --deny unicorn/no-useless-promise-resolve-rejectjson
{
"rules": {
"unicorn/no-useless-promise-resolve-reject": "error"
}
}