llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-lldb Author: Ebuka Ezike (da-viper) <details> <summary>Changes</summary> Python's internal stderr may differ from sys.stderr. When Python writes errors, it uses its internal stderr rather than the overwritten sys.stderr. This may not be the same file/handle Fix the test to explicitly write to the specified stderr. --- Full diff: https://github.com/llvm/llvm-project/pull/177970.diff 2 Files Affected: - (modified) lldb/test/API/python_api/file_handle/TestFileHandle.py (+8-2) - (modified) lldb/test/Shell/ScriptInterpreter/Python/io.test (+5-4) ``````````diff diff --git a/lldb/test/API/python_api/file_handle/TestFileHandle.py b/lldb/test/API/python_api/file_handle/TestFileHandle.py index 70720e3f0fa91..eba758f5a5d28 100644 --- a/lldb/test/API/python_api/file_handle/TestFileHandle.py +++ b/lldb/test/API/python_api/file_handle/TestFileHandle.py @@ -684,7 +684,13 @@ def test_stdout_file_interactive(self): """Ensure when we read stdin from a file, outputs from python goes to the right I/O stream.""" with open(self.in_filename, "w") as f: f.write( - "script --language python --\nvalue = 250 + 5\nprint(value)\nprint(vel)" + """script --language python -- +import sys +variable = 250 + 5 +print(variable) +print("wrote to", "stderr", file=sys.stderr) +quit +""" ) with open(self.out_filename, "w") as outf, open( @@ -712,7 +718,7 @@ def test_stdout_file_interactive(self): ) self.dbg.GetOutputFile().Flush() expected_out_text = "255" - expected_err_text = "NameError" + expected_err_text = "wrote to stderr" # check stdout with open(self.out_filename, "r") as f: out_text = f.read() diff --git a/lldb/test/Shell/ScriptInterpreter/Python/io.test b/lldb/test/Shell/ScriptInterpreter/Python/io.test index 1a3ff8dcd4258..f4303d4bcdf49 100644 --- a/lldb/test/Shell/ScriptInterpreter/Python/io.test +++ b/lldb/test/Shell/ScriptInterpreter/Python/io.test @@ -5,10 +5,11 @@ # RUN: cat %t.stdout | FileCheck %s --check-prefix STDOUT # RUN: cat %t.stderr | FileCheck %s --check-prefix STDERR script -variable = 300 +import sys +variable = 250 + 5 print(variable) -print(not_value) +print("wrote to", "stderr", file=sys.stderr) quit -# STDOUT: 300 -# STDERR: NameError{{.*}}is not defined +# STDOUT: 255 +# STDERR: wrote to stderr `````````` </details> https://github.com/llvm/llvm-project/pull/177970 _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
