Редактировать test_summarize.py

This commit is contained in:
Markov Andrey
2026-06-30 10:36:00 +00:00
parent 7ad96314c0
commit b04e73a30b

58
tests/test_summarize.py Normal file
View File

@@ -0,0 +1,58 @@
# -*- coding: utf-8 -*-
"""
Тесты для модуля суммаризации документа.
"""
import pytest
from core.functions.summarize_document import summarize_document
@pytest.mark.asyncio
async def test_summarize_success(mock_giga, mock_bot_config):
"""
Тест: успешная суммаризация.
"""
mock_giga.chat.return_value = "Краткое содержание документа: ... [Суммаризация документа: test.docx]"
result = await summarize_document(
giga=mock_giga,
text="Длинный текст документа...",
title="test.docx",
prompt_text="Ты — эксперт по суммаризации...",
bot_config=mock_bot_config
)
assert "Краткое содержание" in result
@pytest.mark.asyncio
async def test_summarize_empty_prompt(mock_giga, mock_bot_config):
"""
Тест: при пустом промпте возвращается сообщение об ошибке.
"""
result = await summarize_document(
giga=mock_giga,
text="Текст",
title="doc.docx",
prompt_text="",
bot_config=mock_bot_config
)
assert "Не удалось загрузить промпт" in result
@pytest.mark.asyncio
async def test_summarize_long_text(mock_giga, mock_bot_config):
"""
Тест: текст обрезается до max_chars.
"""
mock_giga.chat.return_value = "Суммаризация..."
long_text = "a" * 10000 # 10 000 символов
result = await summarize_document(
giga=mock_giga,
text=long_text,
title="test.docx",
prompt_text="Ты — эксперт...",
bot_config=mock_bot_config
)
# Проверяем, что chat был вызван (значит, обрезка прошла без ошибок)
mock_giga.chat.assert_called_once()