feat: abort immediately on max call duration exceed

This commit is contained in:
Abhishek Kumar 2026-05-31 13:21:37 +05:30
parent 78ba62e185
commit c586d02d5d
3 changed files with 27 additions and 5 deletions

View file

@ -0,0 +1,19 @@
from unittest.mock import AsyncMock
import pytest
from pipecat.utils.enums import EndTaskReason
from api.services.workflow.pipecat_engine_callbacks import create_max_duration_callback
@pytest.mark.asyncio
async def test_max_duration_callback_aborts_immediately():
engine = AsyncMock()
callback = create_max_duration_callback(engine)
await callback()
engine.end_call_with_reason.assert_awaited_once_with(
EndTaskReason.CALL_DURATION_EXCEEDED.value,
abort_immediately=True,
)