fix(test): drain macrotasks via setTimeout, not setImmediate

setImmediate is a Node global not declared in the frontend's DOM tsconfig,
so tsc --noEmit failed with 'Cannot find name setImmediate'. setTimeout is
universally typed and still flushes React's pending setImmediate: looping
the awaits keeps afterEach unresolved across several event-loop iterations,
so the queued check-phase callback fires while window still exists.
This commit is contained in:
MHSanaei 2026-06-01 09:10:35 +02:00
parent eee5e8f6b6
commit 48f470c465
No known key found for this signature in database
GPG key ID: 7E4060F2FBE5AB7A

View file

@ -71,6 +71,6 @@ afterEach(async () => {
* one behind the first.
*/
for (let i = 0; i < 3; i += 1) {
await new Promise((resolve) => setImmediate(resolve));
await new Promise((resolve) => setTimeout(resolve, 0));
}
});