2026-02-25 11:15:48 +02:00
|
|
|
from unittest.mock import AsyncMock, MagicMock
|
2026-02-25 02:20:44 +02:00
|
|
|
|
2026-02-26 13:00:31 -08:00
|
|
|
import pytest
|
|
|
|
|
|
2026-02-25 02:20:44 +02:00
|
|
|
|
|
|
|
|
@pytest.fixture
|
2026-02-25 11:15:48 +02:00
|
|
|
def patched_summarizer_chain(monkeypatch):
|
|
|
|
|
chain = MagicMock()
|
|
|
|
|
chain.ainvoke = AsyncMock(return_value=MagicMock(content="The summary."))
|
|
|
|
|
|
|
|
|
|
template = MagicMock()
|
|
|
|
|
template.__or__ = MagicMock(return_value=chain)
|
|
|
|
|
|
|
|
|
|
monkeypatch.setattr(
|
|
|
|
|
"app.indexing_pipeline.document_summarizer.SUMMARY_PROMPT_TEMPLATE",
|
|
|
|
|
template,
|
|
|
|
|
)
|
|
|
|
|
return chain
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@pytest.fixture
|
|
|
|
|
def patched_chunker_instance(monkeypatch):
|
|
|
|
|
mock = MagicMock()
|
|
|
|
|
mock.chunk.return_value = [MagicMock(text="prose chunk")]
|
2026-02-26 13:00:31 -08:00
|
|
|
monkeypatch.setattr(
|
|
|
|
|
"app.indexing_pipeline.document_chunker.config.chunker_instance", mock
|
|
|
|
|
)
|
2026-02-25 02:20:44 +02:00
|
|
|
return mock
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@pytest.fixture
|
2026-02-25 11:15:48 +02:00
|
|
|
def patched_code_chunker_instance(monkeypatch):
|
|
|
|
|
mock = MagicMock()
|
|
|
|
|
mock.chunk.return_value = [MagicMock(text="code chunk")]
|
2026-02-26 13:00:31 -08:00
|
|
|
monkeypatch.setattr(
|
|
|
|
|
"app.indexing_pipeline.document_chunker.config.code_chunker_instance", mock
|
|
|
|
|
)
|
2026-02-25 02:20:44 +02:00
|
|
|
return mock
|