diff --git a/telematic_system/telematic_historical_data_processing/rosbag2_processing_service/test/test_service_manager.py b/telematic_system/telematic_historical_data_processing/rosbag2_processing_service/test/test_service_manager.py index 6e7a060c..90f8e6c8 100644 --- a/telematic_system/telematic_historical_data_processing/rosbag2_processing_service/test/test_service_manager.py +++ b/telematic_system/telematic_historical_data_processing/rosbag2_processing_service/test/test_service_manager.py @@ -36,6 +36,7 @@ from nats.aio.client import Client import mock +import mysql pytest_plugins = ('pytest_asyncio') @@ -140,13 +141,16 @@ def test_update_mysql_entry(self): async def test_new(self): def args_based_return(*args, **kwargs): + # In progress returns successfully, the next call to update returns an exception. Required to break out of infinite loop while testing if args == ("test_rosbag.mcap", str(ProcessingStatus.IN_PROGRESS.value)): - return True + return else: return Exception ("exception occurred") config = Config() + mysql.connector.connect = MagicMock(return_value=MagicMock()) service_manager = ServiceManager(config) + service_manager.update_mysql_entry = MagicMock(side_effect=args_based_return) with pytest.raises(Exception):