diff --git a/core/services/loaded_models_service.py b/core/services/loaded_models_service.py index 9391e6a..00ff8e1 100644 --- a/core/services/loaded_models_service.py +++ b/core/services/loaded_models_service.py @@ -7,17 +7,17 @@ class LoadedModelsService: """Build the list of models loaded by a workflow and expose its progress.""" def __init__(self, context: RouteContext): - self.adapt_custom_node_loaded_model = context.get( + self.adapt_custom_node_loaded_model = context.require( "adapt_custom_node_loaded_model" ) - self.asyncio = context.get("asyncio") - self.get_filename_from_path = context.get("get_filename_from_path") - self.get_progress_response = context.get("get_progress_response") - self.get_workflow_model_inventory = context.get( + self.asyncio = context.require("asyncio") + self.get_filename_from_path = context.require("get_filename_from_path") + self.get_progress_response = context.require("get_progress_response") + self.get_workflow_model_inventory = context.require( "get_workflow_model_inventory" ) - self.extension = context.get("self") - self.web = context.get("web") + self.extension = context.require("self") + self.web = context.require("web") async def get_loaded_models(self, request): """Get all currently loaded models in the workflow.""" diff --git a/tests/test_route_context_contract.py b/tests/test_route_context_contract.py index 229198a..ade96cc 100644 --- a/tests/test_route_context_contract.py +++ b/tests/test_route_context_contract.py @@ -2,6 +2,7 @@ import pytest from core.routes.context import RouteContext from core.services.directory_service import DirectoryService +from core.services.loaded_models_service import LoadedModelsService from core.services.scanner_service import ScannerService from core.services.workflow_service import WorkflowService @@ -45,3 +46,11 @@ def test_workflow_service_requires_mandatory_route_dependencies(): match="Missing route dependency: analyze_and_find_matches", ): WorkflowService(RouteContext({"self": extension})) + + +def test_loaded_models_service_requires_mandatory_route_dependencies(): + with pytest.raises( + KeyError, + match="Missing route dependency: adapt_custom_node_loaded_model", + ): + LoadedModelsService(RouteContext({}))