codeceptjs 4.0.2-beta.7 → 4.0.2-beta.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/workers.js +22 -1
- package/package.json +1 -1
package/lib/workers.js
CHANGED
|
@@ -518,8 +518,24 @@ class Workers extends EventEmitter {
|
|
|
518
518
|
// Workers are already running, this is just a placeholder step
|
|
519
519
|
})
|
|
520
520
|
|
|
521
|
+
// Add overall timeout to prevent infinite hanging
|
|
522
|
+
const overallTimeout = setTimeout(() => {
|
|
523
|
+
console.error('[Main] Overall timeout reached (10 minutes). Force terminating remaining workers...')
|
|
524
|
+
workerThreads.forEach(w => {
|
|
525
|
+
try {
|
|
526
|
+
w.terminate()
|
|
527
|
+
} catch (e) {
|
|
528
|
+
// ignore
|
|
529
|
+
}
|
|
530
|
+
})
|
|
531
|
+
this._finishRun()
|
|
532
|
+
}, 600000) // 10 minutes
|
|
533
|
+
|
|
521
534
|
return new Promise(resolve => {
|
|
522
|
-
this.on('end',
|
|
535
|
+
this.on('end', () => {
|
|
536
|
+
clearTimeout(overallTimeout)
|
|
537
|
+
resolve()
|
|
538
|
+
})
|
|
523
539
|
})
|
|
524
540
|
}
|
|
525
541
|
|
|
@@ -566,6 +582,11 @@ class Workers extends EventEmitter {
|
|
|
566
582
|
// Track current test
|
|
567
583
|
if (message.event === event.test.started && message.data) {
|
|
568
584
|
currentTest = message.data.title || message.data.fullTitle
|
|
585
|
+
console.log(`[Worker ${message.workerIndex}] Started: ${currentTest}`)
|
|
586
|
+
}
|
|
587
|
+
|
|
588
|
+
if (message.event === event.test.finished && message.data) {
|
|
589
|
+
console.log(`[Worker ${message.workerIndex}] Finished: ${message.data.title || currentTest}`)
|
|
569
590
|
}
|
|
570
591
|
|
|
571
592
|
output.process(message.workerIndex)
|