Open richtja opened 3 weeks ago
Attention: Patch coverage is 76.19048%
with 5 lines
in your changes missing coverage. Please review.
Project coverage is 51.72%. Comparing base (
bf9b3d5
) to head (1555489
). Report is 8 commits behind head on master.
Files with missing lines | Patch % | Lines |
---|---|---|
avocado/plugins/runners/avocado_instrumented.py | 33.33% | 4 Missing :warning: |
avocado/core/test.py | 93.33% | 1 Missing :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
It would be interesting to run this with external test suites, such as the tests on QEMU or sosreport. I can attempt that as part of my review.
This commit changes the way how avocado instrumented runner handles test timeouts. For timeout handling, we used to use signals and raising TestInterrupt error. Such solution has an issue that we can't control where in the code the Error will be raised, and it can be handled before it reaches the runner layer. More info about this issue in #6046.
This change removes the signal handling and uses threading instead. Now each test method will be run in a separated thread and this thread will be terminated if timeout is reached. This solution selves the raising error issue and keeps the current test lifecycle untouched.
Reference: #6046