X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/080c940d7a8134a6e277a53b7e45eb27e2b2c87f..9e27319d4ec960e6fac43322b885e8aa355651f9:/sdk/cwl/tests/test_tq.py diff --git a/sdk/cwl/tests/test_tq.py b/sdk/cwl/tests/test_tq.py index 2afbe0cff2..a094890650 100644 --- a/sdk/cwl/tests/test_tq.py +++ b/sdk/cwl/tests/test_tq.py @@ -22,29 +22,37 @@ def fail_task(): class TestTaskQueue(unittest.TestCase): def test_tq(self): tq = TaskQueue(threading.Lock(), 2) + try: + self.assertIsNone(tq.error) - self.assertIsNone(tq.error) - - tq.add(success_task) - tq.add(success_task) - tq.add(success_task) - tq.add(success_task) + unlock = threading.Lock() + unlock.acquire() + check_done = threading.Event() - tq.join() + tq.add(success_task, unlock, check_done) + tq.add(success_task, unlock, check_done) + tq.add(success_task, unlock, check_done) + tq.add(success_task, unlock, check_done) + finally: + tq.join() self.assertIsNone(tq.error) def test_tq_error(self): tq = TaskQueue(threading.Lock(), 2) - - self.assertIsNone(tq.error) - - tq.add(success_task) - tq.add(success_task) - tq.add(fail_task) - tq.add(success_task) - - tq.join() + try: + self.assertIsNone(tq.error) + + unlock = threading.Lock() + unlock.acquire() + check_done = threading.Event() + + tq.add(success_task, unlock, check_done) + tq.add(success_task, unlock, check_done) + tq.add(fail_task, unlock, check_done) + tq.add(success_task, unlock, check_done) + finally: + tq.join() self.assertIsNotNone(tq.error)