This revision was automatically updated to reflect the committed changes.
Closed by commit rG0ec88d031ad5: [lldb] Inherit host environment when running 
shell commands (authored by labath).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D77123/new/

https://reviews.llvm.org/D77123

Files:
  lldb/source/Host/common/Host.cpp
  lldb/test/API/python_api/sbplatform/Makefile
  lldb/test/API/python_api/sbplatform/TestSBPlatform.py
  lldb/test/API/python_api/sbplatform/main.cpp


Index: lldb/test/API/python_api/sbplatform/main.cpp
===================================================================
--- /dev/null
+++ lldb/test/API/python_api/sbplatform/main.cpp
@@ -0,0 +1,8 @@
+#include <cstdlib>
+#include <cstdio>
+
+int main() {
+  printf("MY_TEST_ENV_VAR=%s\n", getenv("MY_TEST_ENV_VAR"));
+
+  return 0;
+}
Index: lldb/test/API/python_api/sbplatform/TestSBPlatform.py
===================================================================
--- /dev/null
+++ lldb/test/API/python_api/sbplatform/TestSBPlatform.py
@@ -0,0 +1,22 @@
+"""Test the SBPlatform APIs."""
+
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+
+class SBPlatformAPICase(TestBase):
+
+    mydir = TestBase.compute_mydir(__file__)
+    NO_DEBUG_INFO_TESTCASE = True
+
+    @add_test_categories(['pyapi'])
+    def test_run(self):
+        self.build()
+        plat = lldb.SBPlatform.GetHostPlatform()
+
+        os.environ["MY_TEST_ENV_VAR"]="SBPlatformAPICase.test_run"
+        def cleanup():
+            del os.environ["MY_TEST_ENV_VAR"]
+        self.addTearDownHook(cleanup)
+        cmd = lldb.SBPlatformShellCommand(self.getBuildArtifact("a.out"))
+        self.assertTrue(plat.Run(cmd).Success())
+        self.assertIn("MY_TEST_ENV_VAR=SBPlatformAPICase.test_run", 
cmd.GetOutput())
Index: lldb/test/API/python_api/sbplatform/Makefile
===================================================================
--- /dev/null
+++ lldb/test/API/python_api/sbplatform/Makefile
@@ -0,0 +1,3 @@
+CXX_SOURCES := main.cpp
+
+include Makefile.rules
Index: lldb/source/Host/common/Host.cpp
===================================================================
--- lldb/source/Host/common/Host.cpp
+++ lldb/source/Host/common/Host.cpp
@@ -501,6 +501,8 @@
     launch_info.SetArguments(args, first_arg_is_executable);
   }
 
+  launch_info.GetEnvironment() = Host::GetEnvironment();
+
   if (working_dir)
     launch_info.SetWorkingDirectory(working_dir);
   llvm::SmallString<64> output_file_path;


Index: lldb/test/API/python_api/sbplatform/main.cpp
===================================================================
--- /dev/null
+++ lldb/test/API/python_api/sbplatform/main.cpp
@@ -0,0 +1,8 @@
+#include <cstdlib>
+#include <cstdio>
+
+int main() {
+  printf("MY_TEST_ENV_VAR=%s\n", getenv("MY_TEST_ENV_VAR"));
+
+  return 0;
+}
Index: lldb/test/API/python_api/sbplatform/TestSBPlatform.py
===================================================================
--- /dev/null
+++ lldb/test/API/python_api/sbplatform/TestSBPlatform.py
@@ -0,0 +1,22 @@
+"""Test the SBPlatform APIs."""
+
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+
+class SBPlatformAPICase(TestBase):
+
+    mydir = TestBase.compute_mydir(__file__)
+    NO_DEBUG_INFO_TESTCASE = True
+
+    @add_test_categories(['pyapi'])
+    def test_run(self):
+        self.build()
+        plat = lldb.SBPlatform.GetHostPlatform()
+
+        os.environ["MY_TEST_ENV_VAR"]="SBPlatformAPICase.test_run"
+        def cleanup():
+            del os.environ["MY_TEST_ENV_VAR"]
+        self.addTearDownHook(cleanup)
+        cmd = lldb.SBPlatformShellCommand(self.getBuildArtifact("a.out"))
+        self.assertTrue(plat.Run(cmd).Success())
+        self.assertIn("MY_TEST_ENV_VAR=SBPlatformAPICase.test_run", cmd.GetOutput())
Index: lldb/test/API/python_api/sbplatform/Makefile
===================================================================
--- /dev/null
+++ lldb/test/API/python_api/sbplatform/Makefile
@@ -0,0 +1,3 @@
+CXX_SOURCES := main.cpp
+
+include Makefile.rules
Index: lldb/source/Host/common/Host.cpp
===================================================================
--- lldb/source/Host/common/Host.cpp
+++ lldb/source/Host/common/Host.cpp
@@ -501,6 +501,8 @@
     launch_info.SetArguments(args, first_arg_is_executable);
   }
 
+  launch_info.GetEnvironment() = Host::GetEnvironment();
+
   if (working_dir)
     launch_info.SetWorkingDirectory(working_dir);
   llvm::SmallString<64> output_file_path;
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to