diff options
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/macosx/queues/TestQueues.py')
-rw-r--r-- | lldb/packages/Python/lldbsuite/test/macosx/queues/TestQueues.py | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/macosx/queues/TestQueues.py b/lldb/packages/Python/lldbsuite/test/macosx/queues/TestQueues.py index 46fd701dbdb..d91f58f4454 100644 --- a/lldb/packages/Python/lldbsuite/test/macosx/queues/TestQueues.py +++ b/lldb/packages/Python/lldbsuite/test/macosx/queues/TestQueues.py @@ -30,6 +30,16 @@ class TestQueues(TestBase): # Find the line numbers that we will step to in main: self.main_source = "main.c" + def remove_token(self, name): + for i in range(6): + token = name+'.token.%d'%(i+1) + if os.path.exists(token): + os.remove(token) + + def await_token(self, name): + for i in range(6): + lldbutil.wait_for_file_on_target(self, name+'.token.%d'%(i+1)) + def check_queue_for_valid_queue_id(self, queue): self.assertTrue( queue.GetQueueID() != 0, "Check queue %s for valid QueueID (got 0x%x)" % @@ -112,12 +122,14 @@ class TestQueues(TestBase): self.main_source_spec = lldb.SBFileSpec(self.main_source) break1 = target.BreakpointCreateByName("stopper", 'a.out') self.assertTrue(break1, VALID_BREAKPOINT) + self.remove_token(exe) process = target.LaunchSimple( - None, None, self.get_process_working_directory()) + [exe+'.token.'], None, self.get_process_working_directory()) self.assertTrue(process, PROCESS_IS_VALID) threads = lldbutil.get_threads_stopped_at_breakpoint(process, break1) if len(threads) != 1: self.fail("Failed to stop at breakpoint 1.") + self.await_token(exe) queue_submittor_1 = lldb.SBQueue() queue_performer_1 = lldb.SBQueue() @@ -271,8 +283,9 @@ class TestQueues(TestBase): if self.getArchitecture() in ['arm', 'arm64', 'arm64e', 'arm64_32', 'armv7', 'armv7k']: libbtr_path = "/Developer/usr/lib/libBacktraceRecording.dylib" + self.remove_token(exe) process = target.LaunchSimple( - None, + [exe+'.token.'], [ 'DYLD_INSERT_LIBRARIES=%s' % (libbtr_path), 'DYLD_LIBRARY_PATH=/usr/lib/system/introspection'], @@ -284,6 +297,7 @@ class TestQueues(TestBase): threads = lldbutil.get_threads_stopped_at_breakpoint(process, break1) if len(threads) != 1: self.fail("Failed to stop at breakpoint 1.") + self.await_token(exe) libbtr_module_filespec = lldb.SBFileSpec("libBacktraceRecording.dylib") libbtr_module = target.FindModule(libbtr_module_filespec) |