diff --git a/src/blueapi/core/context.py b/src/blueapi/core/context.py index 681660076..11cd23b14 100644 --- a/src/blueapi/core/context.py +++ b/src/blueapi/core/context.py @@ -273,6 +273,7 @@ def with_device_manager(self, manager: DeviceManager, mock: bool = False): f"{len(errs)} errors while connecting devices", exc_info=NotConnectedError(errs), ) + utils.report_successful_devices(build_result.devices, mock) return build_result.devices, { **build_result.build_errors, **build_result.connection_errors, diff --git a/src/blueapi/utils/__init__.py b/src/blueapi/utils/__init__.py index 38288853f..b3c2dda60 100644 --- a/src/blueapi/utils/__init__.py +++ b/src/blueapi/utils/__init__.py @@ -1,5 +1,5 @@ from .base_model import BlueapiBaseModel, BlueapiModelConfig, BlueapiPlanModelConfig -from .connect_devices import connect_devices +from .connect_devices import connect_devices, report_successful_devices from .file_permissions import get_owner_gid, is_sgid_set from .invalid_config_error import InvalidConfigError from .modules import is_function_sourced_from_module, load_module_all @@ -15,6 +15,7 @@ "BlueapiPlanModelConfig", "InvalidConfigError", "connect_devices", + "report_successful_devices", "is_sgid_set", "get_owner_gid", "is_function_sourced_from_module", diff --git a/src/blueapi/utils/connect_devices.py b/src/blueapi/utils/connect_devices.py index 0f68cce91..d9d2172cc 100644 --- a/src/blueapi/utils/connect_devices.py +++ b/src/blueapi/utils/connect_devices.py @@ -15,7 +15,7 @@ LOGGER = logging.getLogger(__name__) -def _report_successful_devices( +def report_successful_devices( devices: Mapping[str, AnyDevice], sim_backend: bool, ) -> None: @@ -86,7 +86,7 @@ def is_simulated_device(name, factory, **kwargs): real_devices, exceptions = _establish_device_connections( run_engine, real_devices, False ) - _report_successful_devices(real_devices, False) + report_successful_devices(real_devices, False) exception_map |= exceptions if len(sim_devices) > 0: sim_devices, exceptions = _establish_device_connections( @@ -94,6 +94,6 @@ def is_simulated_device(name, factory, **kwargs): sim_devices, # type: ignore True, ) - _report_successful_devices(sim_devices, True) + report_successful_devices(sim_devices, True) exception_map |= exceptions return exception_map