| 1234567891011121314151617181920212223242526 |
- import pytest
- from agency_swarm.ui.demos.compact import compact_thread
- from agency_swarm.utils.thread import ThreadManager
- class _Agency:
- def __init__(self, entry_points):
- self.entry_points = entry_points
- self.thread_manager = ThreadManager()
- """Edge-case tests for compact_thread.
- This file intentionally avoids mocking the OpenAI client to non-Response
- types. In production, compact_thread receives an OpenAI Response object.
- """
- @pytest.mark.asyncio
- async def test_compact_thread_requires_entry_points(monkeypatch):
- # Avoid touching TerminalDemoLauncher; function raises early when no entry points
- agency = _Agency(entry_points=[])
- with pytest.raises(RuntimeError) as ei:
- await compact_thread(agency, [])
- assert "Agency has no entry points" in str(ei.value)
|