Repository navigation
test: restore Subprocess.signal for signal-terminated children - #5135
Open
Huang-404-Q wants to merge 1 commit into
Open
Huang-404-Q wants to merge 1 commit into
Huang-404-Q wants to merge 1 commit into
Conversation
Subprocess.__init__ sets terminated_by_signal but no longer exposes the signal number. Four XML/JSON output tests still read p.signal on the crash path, so a signal death raises AttributeError instead of printing the intended diagnostic. Restore the attribute and add a unit test for the helper itself.
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Subprocess.__init__setsterminated_by_signal, but thesignalattribute was removed while four XML/JSON output tests still readp.signalon the crash path:googletest/test/gtest_xml_output_unittest.py:394googletest/test/gtest_xml_output_unittest.py:464googletest/test/googletest-json-output-unittest.py:821googletest/test/googletest-json-output-unittest.py:870When a tested binary is killed by a signal, those branches raise
AttributeErrorinstead of reportingwas killed by signal N, masking the real failure.Repro (Windows and POSIX both set the high bit):
Restore the old computation (
(~return_code & 0x7fffffff) + 1) and addgtest_test_utils_test.py, which asserts the attribute exists on a signal death. The test is registered in CMake and Bazel.Verified locally: the new test fails with
AttributeErrorwithout the fix and passes with it.