11from __future__ import annotations
22
33import time
4+ from dataclasses import dataclass
45from importlib .metadata import version
56from typing import TYPE_CHECKING , Callable , Generator
67from unittest .mock import MagicMock , patch
1112from bec_lib import messages
1213from bec_lib .endpoints import MessageEndpoints
1314from bec_lib .logger import bec_logger
15+ from bec_server .scan_server .procedures .constants import _CONTAINER , _WORKER
1416from bec_server .scan_server .procedures .container_utils import get_backend
1517from bec_server .scan_server .procedures .container_worker import ContainerProcedureWorker
1618from bec_server .scan_server .procedures .manager import ProcedureManager
2729pytestmark = pytest .mark .random_order (disabled = True )
2830
2931
32+ @dataclass (frozen = True )
33+ class PATCHED_CONSTANTS :
34+ WORKER = _WORKER ()
35+ CONTAINER = _CONTAINER ()
36+ MANAGER_SHUTDOWN_TIMEOUT_S = 2
37+ BEC_VERSION = version ("bec_lib" )
38+ REDIS_HOST = "localhost"
39+
40+
3041@pytest .fixture
3142def client_logtool_and_manager (
3243 bec_ipython_client_fixture_with_logtool : tuple [BECIPythonClient , "LogTestTool" ],
@@ -84,6 +95,7 @@ def cb(worker: ContainerProcedureWorker):
8495
8596@pytest .mark .timeout (100 )
8697@patch ("bec_server.scan_server.procedures.manager.procedure_registry.is_registered" , lambda _ : True )
98+ @patch ("bec_server.scan_server.procedures.container_worker.PROCEDURE" , PATCHED_CONSTANTS ())
8799def test_happy_path_container_procedure_runner (
88100 client_logtool_and_manager : tuple [BECIPythonClient , "LogTestTool" , ProcedureManager ],
89101):
@@ -103,7 +115,6 @@ def test_happy_path_container_procedure_runner(
103115
104116 logtool .fetch ()
105117 assert logtool .is_present_in_any_message ("procedure accepted: True, message:" )
106- assert "test string" in "\n " .join (manager ._logs )
107118 assert logtool .is_present_in_any_message (
108119 "ContainerWorker started container for queue primary"
109120 ), f"Log content relating to procedures: { manager } "
0 commit comments