Conversation
|
Review requested:
|
That can happen regardless of the forced exit flag, right? |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #66390 +/- ##
==========================================
+ Coverage 90.42% 90.43% +0.01%
==========================================
Files 791 791
Lines 275611 275591 -20
Branches 52845 52843 -2
==========================================
+ Hits 249209 249229 +20
+ Misses 16810 16763 -47
- Partials 9592 9599 +7
🚀 New features to boost your workflow:
|
Signed-off-by: Dayun <dlekdbs6530@gmail.com>
Signed-off-by: Dayun <dlekdbs6530@gmail.com>
c929287 to
7d48358
Compare
|
Yes, the inherited stdout pipe can remain open regardless of --test-force-exit. The distinction here is that with --test-force-exit, once all known tests have completed, the runner should not remain blocked waiting for that inherited pipe to reach EOF. This change only bypasses that wait in the forceExit case; without it, the existing stdout completion behavior is preserved. |
Fixes: #66336
When
--test-force-exitis used, the parent test runner waits for boththe test file process to exit and its stdout stream to finish.
If the test file leaks a child process with inherited stdio, that child
keeps the stdout pipe open even after the test file process exits. This
causes the test runner to remain alive until the leaked child exits.
Use the
test:summaryevent as an additional completion signal when--test-force-exitis enabled. Once the summary has been received, thetest report has completed and the parent no longer needs to wait for EOF
from stdout.
The existing stdout completion path is kept as a fallback.
A regression test is included for a leaked child process with inherited
stdio.