mirror of
https://github.com/git/git.git
synced 2026-01-17 22:26:32 +00:00
tests: record more stderr with --write-junit-xml in case of failure
Sometimes, failures in a test case are actually caused by issues in earlier test cases. To make it easier to see those issues, let's attach the output from before the failing test case (i.e. stdout/stderr since the previous failing test case, or the start of the test script). This will be visible in the "Attachments" of the details of the failed test. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
This commit is contained in:
@@ -481,6 +481,9 @@ test_failure_ () {
|
||||
"$(cat "$GIT_TEST_TEE_OUTPUT_FILE")")"
|
||||
>"$GIT_TEST_TEE_OUTPUT_FILE"
|
||||
junit_insert="$junit_insert</failure>"
|
||||
junit_insert="$junit_insert<system-err>$(xml_attr_encode \
|
||||
"$(cat "$GIT_TEST_TEE_OUTPUT_FILE.err")")</system-err>"
|
||||
>"$GIT_TEST_TEE_OUTPUT_FILE.err"
|
||||
write_junit_xml_testcase "$1" " $junit_insert"
|
||||
fi
|
||||
test_failure=$(($test_failure + 1))
|
||||
@@ -765,9 +768,12 @@ test_start_ () {
|
||||
then
|
||||
junit_start=$(test-tool date getnanos)
|
||||
|
||||
# truncate output
|
||||
test -z "$GIT_TEST_TEE_OUTPUT_FILE" ||
|
||||
>"$GIT_TEST_TEE_OUTPUT_FILE"
|
||||
# append to future <system-err>; truncate output
|
||||
test -z "$GIT_TEST_TEE_OUTPUT_FILE" || {
|
||||
cat "$GIT_TEST_TEE_OUTPUT_FILE" \
|
||||
>>"$GIT_TEST_TEE_OUTPUT_FILE.err"
|
||||
>"$GIT_TEST_TEE_OUTPUT_FILE"
|
||||
}
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user