"""Unit tests for the CleanupFiles workflow.""" from unittest.mock import AsyncMock, patch import pytest @pytest.mark.asyncio @patch('model_manager.workflows.cleanup_files.workflow') @patch('model_manager.workflows.cleanup_files.POD_ID', 'temporal-pod') async def test_cleanup_files_workflow(mock_workflow_module): """Test the CleanupFiles workflow.""" from model_manager.workflows.cleanup_files import CleanupFiles # Mock execute_activity_method mock_workflow_module.execute_activity_method = AsyncMock() # Instantiate and run the workflow workflow_instance = CleanupFiles() await workflow_instance.run({}) # Verify that the activities were called with the correct parameters calls = mock_workflow_module.execute_activity_method.call_args_list assert len(calls) == 1 # Check cleanup_temp_directories call local_call_args = calls[0][0][1] assert local_call_args['temp_path'] == 'model_manager/reports/temp' assert local_call_args['metadata'] == { 'pod_id': 'temporal-pod', 'workflow_name': 'cleanup_files', }