[Lldb-commits] [PATCH] D114157: [lldb/test] Make it possible to run the mock gdb server on a single thread
Pavel Labath via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Thu Nov 18 05:42:31 PST 2021
labath created this revision.
labath added a reviewer: mgorny.
labath requested review of this revision.
Herald added a project: LLDB.
This is a preparatory commit to enable mocking of qemu startup. That
will involve running the mock server in a separate process, so there's
no need for multithreading.
Initialization is moved from the start function into the constructor
(which can then take an actual socket instead of a class), and the run
method is made public.
Depends on D114156 <https://reviews.llvm.org/D114156>.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D114157
Files:
lldb/packages/Python/lldbsuite/test/gdbclientutils.py
lldb/packages/Python/lldbsuite/test/lldbgdbclient.py
Index: lldb/packages/Python/lldbsuite/test/lldbgdbclient.py
===================================================================
--- lldb/packages/Python/lldbsuite/test/lldbgdbclient.py
+++ lldb/packages/Python/lldbsuite/test/lldbgdbclient.py
@@ -19,7 +19,7 @@
def setUp(self):
TestBase.setUp(self)
- self.server = MockGDBServer(socket_class=self.server_socket_class)
+ self.server = MockGDBServer(self.server_socket_class())
self.server.start()
def tearDown(self):
Index: lldb/packages/Python/lldbsuite/test/gdbclientutils.py
===================================================================
--- lldb/packages/Python/lldbsuite/test/gdbclientutils.py
+++ lldb/packages/Python/lldbsuite/test/gdbclientutils.py
@@ -461,18 +461,16 @@
_receivedDataOffset = None
_shouldSendAck = True
- def __init__(self, socket_class):
- self._socket_class = socket_class
+ def __init__(self, socket):
+ self._socket = socket
self.responder = MockGDBServerResponder()
def start(self):
- self._socket = self._socket_class()
# Start a thread that waits for a client connection.
- self._thread = threading.Thread(target=self._run)
+ self._thread = threading.Thread(target=self.run)
self._thread.start()
def stop(self):
- self._socket.close_server()
self._thread.join()
self._thread = None
@@ -482,7 +480,7 @@
def get_connect_url(self):
return self._socket.get_connect_url()
- def _run(self):
+ def run(self):
# For testing purposes, we only need to worry about one client
# connecting just one time.
try:
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D114157.388170.patch
Type: text/x-patch
Size: 1699 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20211118/af802e70/attachment.bin>
More information about the lldb-commits
mailing list