diff --git a/ingestor/app.py b/ingestor/app.py index 8be22cc..4bc526c 100644 --- a/ingestor/app.py +++ b/ingestor/app.py @@ -55,7 +55,7 @@ async def main(): metrics.APP_LOOP_COUNT.labels(pod_id=POD_ID).inc() # Increment loop counter # Use asyncio.sleep instead of exit_signal.wait for better async compatibility - await asyncio.sleep(ingestor.poll_interval) + await asyncio.sleep(ingestor.poll_interval) # NOSONAR except KeyboardInterrupt: # Handle Ctrl+C gracefully print('KeyboardInterrupt received. Setting exit_signal flag.') diff --git a/tests/unit/test_ingestor.py b/tests/unit/test_ingestor.py index a988c04..cd8d7ed 100644 --- a/tests/unit/test_ingestor.py +++ b/tests/unit/test_ingestor.py @@ -186,6 +186,12 @@ def test_manage_slots_none_available_none_available(ingestor_manager_started): ingestor_manager_started.ingestor_manager.get_slot_leases.assert_called_once_with(1) +@mark.asyncio +async def test_manage_leases_no_ingestor_manager(ingestor_manager_started): + ingestor_manager_started.ingestor_manager = None + + assert await ingestor_manager_started.manage_leases(2, 2, 5) is None + @mark.asyncio async def test_manage_leases_no_available_slots_no_extra_slots(ingestor_manager_started): ingestor_manager_started.handle_acquired_tags = MagicMock() @@ -282,6 +288,12 @@ async def test_loop_no_managed(ingestor_manager_started): ingestor_manager_started.logger.info.assert_any_call('No slots acquired in this loop') +@mark.asyncio +async def test_loop_no_ingestor_manager(ingestor_manager_started): + ingestor_manager_started.ingestor_manager = None + + assert await ingestor_manager_started.loop() is None + @mark.asyncio async def test_update_ingestor_manager(ingestor_manager_started): ingestor_manager_started.ingestor_manager.managed_tags = { @@ -305,3 +317,9 @@ async def test_update_ingestor_manager(ingestor_manager_started): ingestor_manager_started.ingestor_manager.unsubscribe_slot.assert_has_calls( [call('slot_to_update'), call('slot_to_delete')] ) + +@mark.asyncio +async def test_update_ingestor_manager_no_ingestor_manager(ingestor_manager_started): + ingestor_manager_started.ingestor_manager = None + + await ingestor_manager_started.update_ingestor_manager({}) \ No newline at end of file