Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacques Lucke <jacques@blender.org>2020-08-26 23:02:02 +0300
committerJacques Lucke <jacques@blender.org>2020-08-26 23:02:02 +0300
commit8a9912eaf81bab73a12621a4c0987c37a865fe50 (patch)
tree0e51335adf6fdf6ccfa5b0f240ebc72913d18513 /tests/python/modules/render_report.py
parentd8cf6ee3163b15d70ba9068fa198d433ce6f3d8f (diff)
Tests: fail automated tests on memory leaks and other internal errors
This adds a new `--debug-exit-on-error` flag. When it is set, Blender will abort with a non-zero exit code when there are internal errors. Currently, "internal errors" includes memory leaks detected by guardedalloc and error/fatal log entries in clog. The new flag is passed to Blender in various places where automated tests are run. Furthermore, the `--debug-memory` flag is used in tests, because that makes the verbose output more useful, when dealing with memory leaks. Reviewers: brecht, sergey Differential Revision: https://developer.blender.org/D8665
Diffstat (limited to 'tests/python/modules/render_report.py')
-rwxr-xr-xtests/python/modules/render_report.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/tests/python/modules/render_report.py b/tests/python/modules/render_report.py
index 506c1a1518a..b6cafc2ee24 100755
--- a/tests/python/modules/render_report.py
+++ b/tests/python/modules/render_report.py
@@ -448,16 +448,17 @@ class Report:
crash = False
output = None
try:
- output = subprocess.check_output(command)
- except subprocess.CalledProcessError as e:
- crash = True
+ completed_process = subprocess.run(command, stdout=subprocess.PIPE)
+ if completed_process.returncode != 0:
+ crash = True
+ output = completed_process.stdout
except BaseException as e:
crash = True
if verbose:
print(" ".join(command))
- if output:
- print(output.decode("utf-8"))
+ if (verbose or crash) and output:
+ print(output.decode("utf-8"))
# Detect missing filepaths and consider those errors
for filepath, output_filepath in zip(remaining_filepaths[:], output_filepaths):