From c9d5a3058fcde50c2fe40a5eaaa939d0995d3cd2 Mon Sep 17 00:00:00 2001 From: Benson Li Date: Wed, 22 Jul 2020 16:22:59 +0200 Subject: [PATCH] [lldb] add printing of stdout compile errors to lldbsuite Summary: Add printing of the output of stdout during compile errors, in addition to stderr output. Reviewed By: labath Differential Revision: https://reviews.llvm.org/D83425 --- lldb/packages/Python/lldbsuite/test/lldbtest.py | 10 ++++------ lldb/packages/Python/lldbsuite/test_event/build_exception.py | 3 +-- .../TestDataFormatterSkipSummary.py | 2 +- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/lldb/packages/Python/lldbsuite/test/lldbtest.py b/lldb/packages/Python/lldbsuite/test/lldbtest.py index d73d534..4aad286 100644 --- a/lldb/packages/Python/lldbsuite/test/lldbtest.py +++ b/lldb/packages/Python/lldbsuite/test/lldbtest.py @@ -426,7 +426,7 @@ def system(commands, **kwargs): process = Popen( shellCommand, stdout=PIPE, - stderr=PIPE, + stderr=STDOUT, shell=True, **kwargs) pid = process.pid @@ -440,14 +440,12 @@ def system(commands, **kwargs): cpe = CalledProcessError(retcode, cmd) # Ensure caller can access the stdout/stderr. cpe.lldb_extensions = { - "stdout_content": this_output, - "stderr_content": this_error, + "combined_output": this_output, "command": shellCommand } raise cpe output = output + this_output.decode("utf-8") - error = error + this_error.decode("utf-8") - return (output, error) + return output def getsource_if_available(obj): @@ -1280,7 +1278,7 @@ class Base(unittest2.TestCase): version = 'unknown' compiler = self.getCompilerBinary() - version_output = system([[compiler, "-v"]])[1] + version_output = system([[compiler, "-v"]]) for line in version_output.split(os.linesep): m = re.search('version ([0-9\.]+)', line) if m: diff --git a/lldb/packages/Python/lldbsuite/test_event/build_exception.py b/lldb/packages/Python/lldbsuite/test_event/build_exception.py index 3347d9f..993214e 100644 --- a/lldb/packages/Python/lldbsuite/test_event/build_exception.py +++ b/lldb/packages/Python/lldbsuite/test_event/build_exception.py @@ -4,8 +4,7 @@ class BuildError(Exception): super(BuildError, self).__init__("Error when building test subject") self.command = called_process_error.lldb_extensions.get( "command", "") - self.build_error = called_process_error.lldb_extensions.get( - "stderr_content", "") + self.build_error = called_process_error.lldb_extensions["combined_output"] def __str__(self): return self.format_build_error(self.command, self.build_error) diff --git a/lldb/test/API/functionalities/data-formatter/data-formatter-skip-summary/TestDataFormatterSkipSummary.py b/lldb/test/API/functionalities/data-formatter/data-formatter-skip-summary/TestDataFormatterSkipSummary.py index f5cf525..aa5e20b 100644 --- a/lldb/test/API/functionalities/data-formatter/data-formatter-skip-summary/TestDataFormatterSkipSummary.py +++ b/lldb/test/API/functionalities/data-formatter/data-formatter-skip-summary/TestDataFormatterSkipSummary.py @@ -146,7 +146,7 @@ class SkipSummaryDataFormatterTestCase(TestBase): if self.getCompiler().endswith('gcc') and not self.getCompiler().endswith('llvm-gcc'): import re gcc_version_output = system( - [[lldbutil.which(self.getCompiler()), "-v"]])[1] + [[lldbutil.which(self.getCompiler()), "-v"]]) self.trace("my output:", gcc_version_output) for line in gcc_version_output.split(os.linesep): m = re.search('\(Apple Inc\. build ([0-9]+)\)', line) -- 2.7.4