diff options
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test')
5 files changed, 28 insertions, 14 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/api/multithreaded/driver.cpp.template b/lldb/packages/Python/lldbsuite/test/api/multithreaded/driver.cpp.template index ebe7b8c8e17..32459425c88 100644 --- a/lldb/packages/Python/lldbsuite/test/api/multithreaded/driver.cpp.template +++ b/lldb/packages/Python/lldbsuite/test/api/multithreaded/driver.cpp.template @@ -32,6 +32,8 @@ int main(int argc, char** argv) { SBDebugger::Initialize(); SBDebugger dbg = SBDebugger::Create(); dbg.HandleCommand("settings set symbols.enable-external-lookup false"); + dbg.HandleCommand( + "settings set plugin.process.gdb-remote.packet-timeout 60"); try { if (!dbg.IsValid()) diff --git a/lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestNoWatchpointSupportInfo.py b/lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestNoWatchpointSupportInfo.py index a9ae29d97ec..3bf22d376b2 100644 --- a/lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestNoWatchpointSupportInfo.py +++ b/lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestNoWatchpointSupportInfo.py @@ -21,6 +21,7 @@ class TestNoWatchpointSupportInfo(GDBRemoteTestBase): def threadStopInfo(self, threadnum): if threadnum == 0x1ff0d: return "T02thread:1ff0d;thread-pcs:10001bc00;" + return "" def setBreakpoint(self, packet): if packet.startswith("Z2,"): diff --git a/lldb/packages/Python/lldbsuite/test/lldbtest.py b/lldb/packages/Python/lldbsuite/test/lldbtest.py index 0d78dc1e17a..975bfac3ec4 100644 --- a/lldb/packages/Python/lldbsuite/test/lldbtest.py +++ b/lldb/packages/Python/lldbsuite/test/lldbtest.py @@ -696,6 +696,17 @@ class Base(unittest2.TestCase): """Return absolute path to a file in the test's source directory.""" return os.path.join(self.getSourceDir(), name) + @staticmethod + def setUpCommands(): + return [ + # Disable Spotlight lookup. The testsuite creates + # different binaries with the same UUID, because they only + # differ in the debug info, which is not being hashed. + "settings set symbols.enable-external-lookup false", + + # Testsuite runs in parallel and the host can have also other load. + "settings set plugin.process.gdb-remote.packet-timeout 60"] + def setUp(self): """Fixture for unittest test case setup. @@ -714,7 +725,8 @@ class Base(unittest2.TestCase): else: self.lldbVSCodeExec = None - self.lldbOption = "-o 'settings set symbols.enable-external-lookup false'" + self.lldbOption = " ".join( + "-o '" + s + "'" for s in self.setUpCommands()) # If we spawn an lldb process for test (via pexpect), do not load the # init file unless told otherwise. @@ -1854,10 +1866,8 @@ class TestBase(Base): self.runCmd('settings set symbols.clang-modules-cache-path "%s"' % mod_cache) - # Disable Spotlight lookup. The testsuite creates - # different binaries with the same UUID, because they only - # differ in the debug info, which is not being hashed. - self.runCmd('settings set symbols.enable-external-lookup false') + for s in self.setUpCommands(): + self.runCmd(s) # Disable color. self.runCmd("settings set use-color false") diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py b/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py index c66c6bb7af6..662a0570871 100644 --- a/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py +++ b/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py @@ -11,7 +11,8 @@ class VSCodeTestCaseBase(TestBase): '''Create the Visual Studio Code debug adaptor''' self.assertTrue(os.path.exists(self.lldbVSCodeExec), 'lldb-vscode must exist') - self.vscode = vscode.DebugAdaptor(executable=self.lldbVSCodeExec) + self.vscode = vscode.DebugAdaptor( + executable=self.lldbVSCodeExec, init_commands=Base.setUpCommands()) def build_and_create_debug_adaptor(self): self.build() diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py b/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py index adb8ad50bff..638c038e169 100644 --- a/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py +++ b/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py @@ -99,7 +99,7 @@ def read_packet_thread(vs_comm): class DebugCommunication(object): - def __init__(self, recv, send): + def __init__(self, recv, send, init_commands): self.trace_file = None self.send = send self.recv = recv @@ -118,6 +118,7 @@ class DebugCommunication(object): self.output = {} self.configuration_done_sent = False self.frame_scopes = {} + self.init_commands = init_commands @classmethod def encode_content(cls, s): @@ -447,8 +448,7 @@ class DebugCommunication(object): args_dict['waitFor'] = waitFor if trace: args_dict['trace'] = trace - args_dict['initCommands'] = [ - 'settings set symbols.enable-external-lookup false'] + args_dict['initCommands'] = self.init_commands if initCommands: args_dict['initCommands'].extend(initCommands) if preRunCommands: @@ -578,8 +578,7 @@ class DebugCommunication(object): args_dict['shellExpandArguments'] = shellExpandArguments if trace: args_dict['trace'] = trace - args_dict['initCommands'] = [ - 'settings set symbols.enable-external-lookup false'] + args_dict['initCommands'] = self.init_commands if initCommands: args_dict['initCommands'].extend(initCommands) if preRunCommands: @@ -822,7 +821,7 @@ class DebugCommunication(object): class DebugAdaptor(DebugCommunication): - def __init__(self, executable=None, port=None): + def __init__(self, executable=None, port=None, init_commands=[]): self.process = None if executable is not None: self.process = subprocess.Popen([executable], @@ -830,11 +829,12 @@ class DebugAdaptor(DebugCommunication): stdout=subprocess.PIPE, stderr=subprocess.PIPE) DebugCommunication.__init__(self, self.process.stdout, - self.process.stdin) + self.process.stdin, init_commands) elif port is not None: s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect(('127.0.0.1', port)) - DebugCommunication.__init__(self, s.makefile('r'), s.makefile('w')) + DebugCommunication.__init__(self, s.makefile('r'), s.makefile('w'), + init_commands) def get_pid(self): if self.process: |