199451b44SJordan Rupprecht
299451b44SJordan Rupprechtimport unittest2
399451b44SJordan Rupprecht
499451b44SJordan Rupprechtfrom lldbsuite.test.decorators import *
599451b44SJordan Rupprechtfrom lldbsuite.test.concurrent_base import ConcurrentEventsBase
699451b44SJordan Rupprechtfrom lldbsuite.test.lldbtest import TestBase
799451b44SJordan Rupprecht
899451b44SJordan Rupprecht
999451b44SJordan Rupprecht@skipIfWindows
1099451b44SJordan Rupprechtclass ConcurrentTwoBreakpointsOneWatchpoint(ConcurrentEventsBase):
1199451b44SJordan Rupprecht
1299451b44SJordan Rupprecht    # Atomic sequences are not supported yet for MIPS in LLDB.
1399451b44SJordan Rupprecht    @skipIf(triple='^mips')
1499451b44SJordan Rupprecht    @add_test_categories(["watchpoint"])
15f47a84bcSMichał Górny    @expectedFailureAll(archs=["aarch64"], oslist=["freebsd"],
16f47a84bcSMichał Górny                        bugnumber="llvm.org/pr49433")
1799451b44SJordan Rupprecht    def test(self):
1899451b44SJordan Rupprecht        """Test two threads that trigger a breakpoint and one watchpoint thread. """
19*d7dbe2c4SPavel Labath        self.build()
2099451b44SJordan Rupprecht        self.do_thread_actions(
2199451b44SJordan Rupprecht            num_breakpoint_threads=2,
2299451b44SJordan Rupprecht            num_watchpoint_threads=1)
23