summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiro Bucko <mbucko@meta.com>2024-05-03 11:10:02 -0400
committerGitHub <noreply@github.com>2024-05-03 08:10:02 -0700
commitbab10981f3c7a15231b8e2008f99a38a5582e3b0 (patch)
tree77ed396fb7c2767de490ccd49a8e27b94efcd6fb
parent4821882cdfe46b93935e01805ed413cf1272bcd4 (diff)
[lldb-dap] Fix test_exit_status_message_sigterm test. (#90223)
Summary: 'test_exit_status_message_sigterm' is failing due to 'psutil' dependency introduced in PR #89405. This fix removes 'deque' dependency and checks if 'psutil' can be imported before running the test. If 'psutil' cannot be imported, it emits a warning and skips the test. Test Plan: ./bin/llvm-lit -sv /path-to-llvm-project/lldb/test/API/tools/lldb-dap/console/TestDAP_console.py --filter=tools/lldb-dap/console/TestDAP_console.py Reviewers: @jeffreytan81,@clayborg,@kusmour, @JDevlieghere,@walter-erquinigo Subscribers: Tasks: lldb-dap Tags:
-rw-r--r--lldb/test/API/tools/lldb-dap/console/TestDAP_console.py20
1 files changed, 14 insertions, 6 deletions
diff --git a/lldb/test/API/tools/lldb-dap/console/TestDAP_console.py b/lldb/test/API/tools/lldb-dap/console/TestDAP_console.py
index 8f456aaf890c..8769f39633e6 100644
--- a/lldb/test/API/tools/lldb-dap/console/TestDAP_console.py
+++ b/lldb/test/API/tools/lldb-dap/console/TestDAP_console.py
@@ -4,17 +4,15 @@ Test lldb-dap setBreakpoints request
import dap_server
import lldbdap_testcase
-import psutil
-from collections import deque
from lldbsuite.test import lldbutil
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
-def get_subprocess(process_name):
- queue = deque([psutil.Process(os.getpid())])
+def get_subprocess(root_process, process_name):
+ queue = [root_process]
while queue:
- process = queue.popleft()
+ process = queue.pop()
if process.name() == process_name:
return process
queue.extend(process.children())
@@ -131,7 +129,17 @@ class TestDAP_console(lldbdap_testcase.DAPTestCaseBase):
process_name = (
"debugserver" if platform.system() in ["Darwin"] else "lldb-server"
)
- process = get_subprocess(process_name)
+
+ try:
+ import psutil
+ except ImportError:
+ print(
+ "psutil not installed, please install using 'pip install psutil'. "
+ "Skipping test_exit_status_message_sigterm test.",
+ file=sys.stderr,
+ )
+ return
+ process = get_subprocess(psutil.Process(os.getpid()), process_name)
process.terminate()
process.wait()