When beforeAll throws an error, or returns a Promise that rejects, the tests are still run. I would expect the tests to not even run at all.
See example repo:
https://github.com/dirkmc/jest-before-all-error-handling
And the output:
> jest __tests__/test.js
FAIL __tests__/test.js
● test › tests 1 === 1
My error
at __tests__/test.js:5:14
at Object.<anonymous> (__tests__/test.js:4:12)
● test › tests 2 === 2
My error
at __tests__/test.js:5:14
at Object.<anonymous> (__tests__/test.js:4:12)
test
✕ tests 1 === 1 (2ms)
✕ tests 2 === 2 (1ms)
Test Suites: 1 failed, 1 total
Tests: 2 failed, 2 total
Snapshots: 0 total
Time: 0.154s, estimated 1s
Ran all test suites matching "__tests__/test.js".
console.log __tests__/test.js:3
before
console.log __tests__/test.js:12
test 1
console.log __tests__/test.js:17
test 2
console.log __tests__/test.js:9
after
npm ERR! Test failed. See above for more details.
When beforeAll throws an error, or returns a Promise that rejects, the tests are still run. I would expect the tests to not even run at all.
See example repo:
https://github.com/dirkmc/jest-before-all-error-handling
And the output: