[llvm] 6576942 - [lit][unit] makes sure to print stderr when no test failures are found
Yuanfang Chen via llvm-commits
llvm-commits at lists.llvm.org
Fri Jul 15 12:33:25 PDT 2022
Author: Yuanfang Chen
Date: 2022-07-15T12:33:11-07:00
New Revision: 65769429c0644c81d271e9d971f5b64191503f6e
URL: https://github.com/llvm/llvm-project/commit/65769429c0644c81d271e9d971f5b64191503f6e
DIFF: https://github.com/llvm/llvm-project/commit/65769429c0644c81d271e9d971f5b64191503f6e.diff
LOG: [lit][unit] makes sure to print stderr when no test failures are found
In some situations, like running tests with sanitizers, all test passes
but the shard could still fail due to memory issues.
Added:
Modified:
llvm/utils/lit/lit/formats/googletest.py
Removed:
################################################################################
diff --git a/llvm/utils/lit/lit/formats/googletest.py b/llvm/utils/lit/lit/formats/googletest.py
index 5feefaa84f12e..6878ebcb5456a 100644
--- a/llvm/utils/lit/lit/formats/googletest.py
+++ b/llvm/utils/lit/lit/formats/googletest.py
@@ -163,6 +163,8 @@ def get_test_stdout(test_name):
res.append(l)
assert False, f'gtest did not report the result for ' + test_name
+ found_failed_test = False
+
with open(test.gtest_json_file, encoding='utf-8') as f:
jf = json.load(f)
@@ -179,6 +181,7 @@ def get_test_stdout(test_name):
header = f"Script:\n--\n%s --gtest_filter=%s\n--\n" % (
' '.join(cmd), testname)
if 'failures' in testinfo:
+ found_failed_test = True
output += header
test_out = get_test_stdout(testname)
if test_out:
@@ -189,6 +192,12 @@ def get_test_stdout(test_name):
elif result != 'COMPLETED':
output += header
output += 'unresolved test result\n'
+
+ # In some situations, like running tests with sanitizers, all test passes but
+ # the shard could still fail due to memory issues.
+ if not found_failed_test:
+ output += f"\n{out}\n--\nexit: {exitCode}\n--\n"
+
return lit.Test.FAIL, output
def prepareCmd(self, cmd):
More information about the llvm-commits
mailing list