Skip to content

Commit 0011e6c

Browse files
committed
test: avoid restarting a worker thread
1 parent 8f3a1ff commit 0011e6c

1 file changed

Lines changed: 16 additions & 2 deletions

File tree

bec_server/tests/tests_scan_server/test_scan_server_queue.py

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,10 @@ def _get_queuemanager(queues: str | list[str] | None = None) -> QueueManager:
4747

4848

4949
class RequestBlockQueueMock(RequestBlockQueue):
50-
request_blocks = []
51-
_scan_id = []
50+
def __init__(self, instruction_queue, assembler) -> None:
51+
super().__init__(instruction_queue, assembler)
52+
self.request_blocks = []
53+
self._scan_id = []
5254

5355
@property
5456
def scan_id(self):
@@ -429,6 +431,12 @@ def test_set_clear_sends_message(queuemanager_mock):
429431
@pytest.mark.timeout(5)
430432
def test_set_restart(queuemanager_mock):
431433
queue_manager = queuemanager_mock()
434+
primary_queue = queue_manager.queues["primary"]
435+
primary_queue.signal_event.set()
436+
primary_queue.scan_worker.shutdown()
437+
438+
# Replace the live queue worker with a queue whose worker thread has not been started.
439+
queue_manager.queues["primary"] = ScanQueue(queue_manager, queue_name="primary")
432440
msg = messages.ScanQueueMessage(
433441
scan_type="grid_scan",
434442
parameter={"args": {"samx": (-5, 5, 3)}, "kwargs": {}},
@@ -460,6 +468,12 @@ def test_set_restart_no_active_scan(queuemanager_mock):
460468
RUNNING or PAUSED state to be active.
461469
"""
462470
queue_manager = queuemanager_mock()
471+
primary_queue = queue_manager.queues["primary"]
472+
primary_queue.signal_event.set()
473+
primary_queue.scan_worker.shutdown()
474+
475+
# Replace the live queue worker with a queue whose worker thread has not been started.
476+
queue_manager.queues["primary"] = ScanQueue(queue_manager, queue_name="primary")
463477
msg = messages.ScanQueueMessage(
464478
scan_type="grid_scan",
465479
parameter={"args": {"samx": (-5, 5, 3)}, "kwargs": {}},

0 commit comments

Comments
 (0)