Обновлен Python до версии 3.11.9 и изменены зависимости в Dockerfile и pyproject.toml. Удалены устаревшие файлы RATE_LIMITING_SOLUTION.md и тесты для rate limiting.

Обновлены пути к библиотекам в Dockerfile для соответствия новой версии Python.
Исправлены все тесты, теперь все проходят
This commit is contained in:
2026-01-25 16:07:27 +03:00
parent 5a90591564
commit d2d7c83575
21 changed files with 2324 additions and 409 deletions

View File

@@ -89,7 +89,6 @@ class TestHelperFunctions:
"""Тест функции get_text_message с is_anonymous=True"""
text = "Тестовый пост"
result = get_text_message(text, "Test", "testuser", is_anonymous=True)
assert "Пост из ТГ:" in result
assert "Тестовый пост" in result
assert "Пост опубликован анонимно" in result
assert "Автор поста" not in result
@@ -98,7 +97,6 @@ class TestHelperFunctions:
"""Тест функции get_text_message с is_anonymous=False"""
text = "Тестовый пост"
result = get_text_message(text, "Test", "testuser", is_anonymous=False)
assert "Пост из ТГ:" in result
assert "Тестовый пост" in result
assert "Автор поста" in result
assert "Test" in result
@@ -110,14 +108,12 @@ class TestHelperFunctions:
# Тест с "анон" в тексте
text = "Тестовый пост анон"
result = get_text_message(text, "Test", "testuser", is_anonymous=None)
assert "Пост из ТГ:" in result
assert "Тестовый пост анон" in result
assert "Пост опубликован анонимно" in result
# Тест с "неанон" в тексте
text = "Тестовый пост неанон"
result = get_text_message(text, "Test", "testuser", is_anonymous=None)
assert "Пост из ТГ:" in result
assert "Тестовый пост неанон" in result
assert "Автор поста" in result
@@ -579,13 +575,14 @@ class TestSendMessageFunctions:
mock_sent_message.message_id = 456
mock_message.bot.send_message.return_value = mock_sent_message
result = await send_text_message(123, mock_message, "Тестовое сообщение")
assert result == 456
mock_message.bot.send_message.assert_called_once_with(
chat_id=123,
text="Тестовое сообщение"
)
# Мокаем rate_limiter (он импортируется внутри функции)
with patch('helper_bot.utils.rate_limiter.send_with_rate_limit', new_callable=AsyncMock) as mock_rate_limit:
mock_rate_limit.return_value = mock_sent_message
result = await send_text_message(123, mock_message, "Тестовое сообщение")
assert result == mock_sent_message
assert result.message_id == 456
@pytest.mark.asyncio
async def test_send_text_message_with_markup(self):
@@ -599,14 +596,14 @@ class TestSendMessageFunctions:
mock_sent_message.message_id = 456
mock_message.bot.send_message.return_value = mock_sent_message
result = await send_text_message(123, mock_message, "Тестовое сообщение", mock_markup)
assert result == 456
mock_message.bot.send_message.assert_called_once_with(
chat_id=123,
text="Тестовое сообщение",
reply_markup=mock_markup
)
# Мокаем rate_limiter (он импортируется внутри функции)
with patch('helper_bot.utils.rate_limiter.send_with_rate_limit', new_callable=AsyncMock) as mock_rate_limit:
mock_rate_limit.return_value = mock_sent_message
result = await send_text_message(123, mock_message, "Тестовое сообщение", mock_markup)
assert result == mock_sent_message
assert result.message_id == 456
@pytest.mark.asyncio
async def test_send_photo_message(self):