fix(jest-circus) correct concurrent event ordering #14224
Triggered via pull request
November 16, 2024 00:53
Status
Failure
Total duration
15m 23s
Artifacts
–
nodejs.yml
on: pull_request
prepare-yarn-cache-ubuntu
/
Prepare yarn cache for ubuntu-latest
22s
prepare-yarn-cache-macos
/
Prepare yarn cache for macos-latest
20s
prepare-yarn-cache-windows
/
Prepare yarn cache for windows-latest
43s
TypeScript Compatibility
5m 34s
Typecheck Examples and Tests
3m 41s
Lint
1m 53s
Validate Yarn dependencies and constraints
17s
Node LTS on Ubuntu with leak detection
46s
Matrix: test-coverage
Matrix: test-ubuntu
Matrix: test-macos
Matrix: test-windows
Annotations
27 errors and 11 warnings
notify › does not report --notify flag:
e2e/__tests__/detectOpenHandles.ts#L111
expect(received).toBe(expected) // Object.is equality
Expected: ""
Received: "Jest did not exit one second after the test run has completed.·
'This usually means that there are asynchronous operations that weren't stopped in your tests. Consider running Jest with `--detectOpenHandles` to troubleshoot this issue."
at Object.toBe (e2e/__tests__/detectOpenHandles.ts:111:27)
|
all passing › runs the tests in the correct order:
e2e/__tests__/circusConcurrent.test.ts#L28
expect(received).toMatchSnapshot()
Snapshot name: `all passing runs the tests in the correct order 1`
- Snapshot - 7
+ Received + 7
@@ -27,31 +27,31 @@
START "five"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "three"
+ END: "one"
at log (__tests__/concurrent.test.js:15:11)
console.log
START "six"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "one"
+ END: "two"
at log (__tests__/concurrent.test.js:15:11)
console.log
START "seven"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "two"
+ END: "three"
at log (__tests__/concurrent.test.js:15:11)
console.log
START "eight"
@@ -77,31 +77,31 @@
START "ten"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "five"
+ END: "six"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "six"
+ END: "five"
at log (__tests__/concurrent.test.js:15:11)
console.log
END: "seven"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "ten"
+ END: "eight"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "eight"
+ END: "ten"
at log (__tests__/concurrent.test.js:15:11)
console.log
afterAll
at Object.toMatchSnapshot (e2e/__tests__/circusConcurrent.test.ts:28:20)
|
processChild › handles `Symbol`:
undefined#L1
Timed out
at timeoutKill (node_modules/execa/lib/kill.js:65:23)
|
processChild › handles `Symbol`:
e2e/Utils.ts#L107
EBUSY: resource busy or locked, rmdir 'C:\Users\RUNNER~1\AppData\Local\Temp\bigint-inequality-test'
at rmSync (e2e/Utils.ts:107:8)
at Object.<anonymous> (e2e/__tests__/nonSerializableStructuresInequality.test.ts:48:10)
|
processChild › handles functions:
e2e/__tests__/nonSerializableStructuresInequality.test.ts#L36
Process exited
at waitUntil (e2e/__tests__/nonSerializableStructuresInequality.test.ts:36:9)
at Object.testIn2Workers (e2e/__tests__/nonSerializableStructuresInequality.test.ts:98:35)
|
handles a bad revision for "changedSince":
e2e/Utils.ts#L107
EBUSY: resource busy or locked, rmdir 'C:\Users\RUNNER~1\AppData\Local\Temp\jest-changed-files-test-dir'
at rmSync (e2e/Utils.ts:107:8)
at Object.<anonymous> (e2e/__tests__/jestChangedFiles.test.ts:62:24)
|
gets changed files for hg:
e2e/Utils.ts#L107
EBUSY: resource busy or locked, rmdir 'C:\Users\RUNNER~1\AppData\Local\Temp\jest-changed-files-test-dir'
at rmSync (e2e/Utils.ts:107:8)
at Object.<anonymous> (e2e/__tests__/jestChangedFiles.test.ts:61:25)
|
gets changed files for hg:
e2e/__tests__/jestChangedFiles.test.ts#L394
expect(received).toEqual(expected) // deep equality
- Expected - 0
+ Received + 36
Array [
+ ".watchmanconfig",
+ "00changelog.i",
+ "26dfeeb6e641a33dae4961196235bdb965b21b",
+ "3c8d3af3016988d8abb98e6a35854f088e8704",
+ "6d6c73d3d5a72254e74f72e6725d1402c9ddc8",
+ "9de29bb2d1d6434b8b29ae775ad8c2e48c5391",
+ "COMMIT_EDITMSG",
+ "HEAD",
+ "HEAD",
+ "a892dfefc7bc9b02bfd065be5a71b1d87cf2b7",
+ "ab0f70703a36d51ba9ab4ac3db92ede266f2d4",
+ "applypatch-msg.sample",
+ "b83fd321d87232fd6688dd32631f7c27cd36cb",
+ "commit-msg.sample",
+ "config",
+ "description",
+ "exclude",
+ "file1.js",
+ "file1.test.js",
"file1.txt",
"file2.txt",
"file3.txt",
+ "fsmonitor-watchman.sample",
+ "index",
+ "main",
+ "main",
+ "package.json",
+ "post-update.sample",
+ "pre-applypatch.sample",
+ "pre-commit.sample",
+ "pre-merge-commit.sample",
+ "pre-push.sample",
+ "pre-rebase.sample",
+ "pre-receive.sample",
+ "prepare-commit-msg.sample",
+ "push-to-checkout.sample",
+ "requires",
+ "sendemail-validate.sample",
+ "update.sample",
]
at Object.toEqual (e2e/__tests__/jestChangedFiles.test.ts:394:70)
|
Custom Reporters Integration › prints reporter errors:
e2e/Utils.ts#L107
EBUSY: resource busy or locked, rmdir 'C:\Users\RUNNER~1\AppData\Local\Temp\custom-reporters-test-dir'
at rmSync (e2e/Utils.ts:107:8)
at Object.<anonymous> (e2e/__tests__/customReporters.test.ts:16:24)
|
Custom Reporters Integration › supports reporter written in ESM:
e2e/Utils.ts#L107
EBUSY: resource busy or locked, rmdir 'C:\Users\RUNNER~1\AppData\Local\Temp\custom-reporters-test-dir'
at rmSync (e2e/Utils.ts:107:8)
at Object.<anonymous> (e2e/__tests__/customReporters.test.ts:15:25)
|
handles a bad revision for "changedSince":
e2e/Utils.ts#L107
EBUSY: resource busy or locked, rmdir 'C:\Users\RUNNER~1\AppData\Local\Temp\jest-changed-files-test-dir'
at rmSync (e2e/Utils.ts:107:8)
at Object.<anonymous> (e2e/__tests__/jestChangedFiles.test.ts:62:24)
|
gets changed files for hg:
e2e/Utils.ts#L107
EBUSY: resource busy or locked, rmdir 'C:\Users\RUNNER~1\AppData\Local\Temp\jest-changed-files-test-dir'
at rmSync (e2e/Utils.ts:107:8)
at Object.<anonymous> (e2e/__tests__/jestChangedFiles.test.ts:61:25)
|
gets changed files for hg:
e2e/__tests__/jestChangedFiles.test.ts#L394
expect(received).toEqual(expected) // deep equality
- Expected - 0
+ Received + 36
Array [
+ ".watchmanconfig",
+ "00changelog.i",
+ "26dfeeb6e641a33dae4961196235bdb965b21b",
+ "3a388dcf7e20b37100745a86e4fb13676144c0",
+ "3c8d3af3016988d8abb98e6a35854f088e8704",
+ "6d6c73d3d5a72254e74f72e6725d1402c9ddc8",
+ "9de29bb2d1d6434b8b29ae775ad8c2e48c5391",
+ "COMMIT_EDITMSG",
+ "HEAD",
+ "HEAD",
+ "ab0f70703a36d51ba9ab4ac3db92ede266f2d4",
+ "applypatch-msg.sample",
+ "b83fd321d87232fd6688dd32631f7c27cd36cb",
+ "commit-msg.sample",
+ "config",
+ "description",
+ "exclude",
+ "file1.js",
+ "file1.test.js",
"file1.txt",
"file2.txt",
"file3.txt",
+ "fsmonitor-watchman.sample",
+ "index",
+ "main",
+ "main",
+ "package.json",
+ "post-update.sample",
+ "pre-applypatch.sample",
+ "pre-commit.sample",
+ "pre-merge-commit.sample",
+ "pre-push.sample",
+ "pre-rebase.sample",
+ "pre-receive.sample",
+ "prepare-commit-msg.sample",
+ "push-to-checkout.sample",
+ "requires",
+ "sendemail-validate.sample",
+ "update.sample",
]
at Object.toEqual (e2e/__tests__/jestChangedFiles.test.ts:394:70)
|
Windows with shard 2/4 / Node LTS using jest-jasmine2
Final attempt failed. Child_process exited with error code 1
|
processChild › handles circular inequality properly:
e2e/__tests__/nonSerializableStructuresInequality.test.ts#L36
Process exited
at waitUntil (e2e/__tests__/nonSerializableStructuresInequality.test.ts:36:9)
at Object.testIn2Workers (e2e/__tests__/nonSerializableStructuresInequality.test.ts:56:35)
|
processChild › handles circular inequality properly:
undefined#L1
Timed out
at timeoutKill (node_modules/execa/lib/kill.js:65:23)
|
processChild › handles circular inequality properly:
undefined#L1
Timed out
at timeoutKill (node_modules/execa/lib/kill.js:65:23)
|
processChild › handles functions:
e2e/__tests__/nonSerializableStructuresInequality.test.ts#L36
Process exited
at waitUntil (e2e/__tests__/nonSerializableStructuresInequality.test.ts:36:9)
at Object.testIn2Workers (e2e/__tests__/nonSerializableStructuresInequality.test.ts:111:35)
|
processChild › handles functions:
undefined#L1
Timed out
at timeoutKill (node_modules/execa/lib/kill.js:65:23)
|
processChild › handles functions:
undefined#L1
Timed out
at timeoutKill (node_modules/execa/lib/kill.js:65:23)
|
force exits a worker that fails to exit gracefully:
e2e/__tests__/workerForceExit.test.ts#L65
expect(received).toBe(expected) // Object.is equality
Expected: 0
Received: 1
at Object.toBe (e2e/__tests__/workerForceExit.test.ts:65:20)
|
should call globalSetup function of multiple projects:
node:internal/child_process#L511
Can't parse JSON.
ERROR: SyntaxError Unexpected end of JSON input
STDOUT:
STDERR: PASS project-1 project-1/setup1.test.js
PASS project-2 project-2/setup2.test.js
node:events:496
throw er; // Unhandled 'error' event
^
Error: kill EPERM
at ChildProcess.kill (node:internal/child_process:511:26)
at listOnTimeout (node:internal/timers:594:17)
at process.processTimers (node:internal/timers:529:7)
Emitted 'error' event on ChildProcess instance at:
at ChildProcess.kill (node:internal/child_process:511:12)
[... lines matching original stack trace ...]
at process.processTimers (node:internal/timers:529:7) {
errno: -4048,
code: 'EPERM',
syscall: 'kill'
}
Node.js v22.11.0
at json (e2e/runJest.ts:157:11)
at Object.<anonymous> (e2e/__tests__/globalSetup.test.ts:98:29)
|
globalSetup works with ESM modules:
e2e/__tests__/globalSetup.test.ts#L202
expect(received).toBe(expected) // Object.is equality
Expected: 0
Received: 1
at Object.toBe (e2e/__tests__/globalSetup.test.ts:202:20)
|
Windows with shard 1/4 / Node LTS using jest-jasmine2
Final attempt failed. Child_process exited with error code 1
|
all passing › runs the tests in the correct order:
e2e/__tests__/circusConcurrent.test.ts#L28
expect(received).toMatchSnapshot()
Snapshot name: `all passing runs the tests in the correct order 1`
- Snapshot - 2
+ Received + 2
@@ -92,16 +92,16 @@
END: "seven"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "ten"
+ END: "eight"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "eight"
+ END: "ten"
at log (__tests__/concurrent.test.js:15:11)
console.log
afterAll
at Object.toMatchSnapshot (e2e/__tests__/circusConcurrent.test.ts:28:20)
|
all passing › runs the tests in the correct order:
e2e/__tests__/circusConcurrent.test.ts#L28
expect(received).toMatchSnapshot()
Snapshot name: `all passing runs the tests in the correct order 1`
- Snapshot - 4
+ Received + 4
@@ -67,21 +67,21 @@
START "nine"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "nine"
+ END: "five"
at log (__tests__/concurrent.test.js:15:11)
console.log
START "ten"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "five"
+ END: "nine"
at log (__tests__/concurrent.test.js:15:11)
console.log
END: "six"
@@ -92,16 +92,16 @@
END: "seven"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "ten"
+ END: "eight"
at log (__tests__/concurrent.test.js:15:11)
console.log
- END: "eight"
+ END: "ten"
at log (__tests__/concurrent.test.js:15:11)
console.log
afterAll
at Object.toMatchSnapshot (e2e/__tests__/circusConcurrent.test.ts:28:20)
|
with skip › runs the tests in the correct order:
e2e/__tests__/circusConcurrent.test.ts#L47
expect(received).toMatchSnapshot()
Snapshot name: `with skip runs the tests in the correct order 1`
- Snapshot - 5
+ Received + 5
@@ -27,41 +27,41 @@
START "eight"
at log (__tests__/concurrent-skip.test.js:15:11)
console.log
- END: "one"
+ END: "two"
at log (__tests__/concurrent-skip.test.js:15:11)
console.log
START "ten"
at log (__tests__/concurrent-skip.test.js:15:11)
console.log
- END: "two"
+ END: "seven"
at log (__tests__/concurrent-skip.test.js:15:11)
console.log
- END: "seven"
+ END: "one"
at log (__tests__/concurrent-skip.test.js:15:11)
console.log
END: "four"
at log (__tests__/concurrent-skip.test.js:15:11)
console.log
- END: "eight"
+ END: "ten"
at log (__tests__/concurrent-skip.test.js:15:11)
console.log
- END: "ten"
+ END: "eight"
at log (__tests__/concurrent-skip.test.js:15:11)
console.log
afterAll
at Object.toMatchSnapshot (e2e/__tests__/circusConcurrent.test.ts:47:20)
|
macOS with shard 2/3 / Node LTS using jest-jasmine2
Attempt 1 failed. Reason: Child_process exited with error code 1
|
Ubuntu with shard 3/4 / Node v16.x
Attempt 1 failed. Reason: Child_process exited with error code 1
|
Windows with shard 4/4 / Node LTS using jest-jasmine2
Attempt 1 failed. Reason: Child_process exited with error code 1
|
Windows with shard 2/4 / Node LTS using jest-jasmine2
Attempt 1 failed. Reason: Child_process exited with error code 1
|
Windows with shard 2/4 / Node LTS using jest-jasmine2
Attempt 2 failed. Reason: Child_process exited with error code 1
|
Windows with shard 4/4 / Node v18.x
Attempt 1 failed. Reason: Child_process exited with error code 1
|
Windows with shard 4/4 / Node v16.x
Attempt 1 failed. Reason: Child_process exited with error code 1
|
Windows with shard 1/4 / Node LTS using jest-jasmine2
Attempt 1 failed. Reason: Child_process exited with error code 1
|
Windows with shard 1/4 / Node LTS using jest-jasmine2
Attempt 2 failed. Reason: Child_process exited with error code 1
|
Windows with shard 3/4 / Node v18.x
Attempt 1 failed. Reason: Child_process exited with error code 1
|
Windows with shard 3/4 / Node v18.x
Attempt 2 failed. Reason: Child_process exited with error code 1
|