Добавлены новые методы для получения статистики постов пользователей, информации о последних постах и количестве банов. Обновлены запросы в репозиториях для сортировки пользователей по дате бана. Исправлены вызовы функций форматирования сообщений для администраторов. Обновлены тесты для проверки новых функциональностей.
This commit is contained in:
@@ -665,7 +665,7 @@ class TestSendMessageFunctions:
|
||||
|
||||
assert result == mock_sent_message
|
||||
mock_message.bot.send_photo.assert_called_once_with(
|
||||
chat_id=123, caption="Подпись к фото", photo="photo.jpg"
|
||||
chat_id=123, caption="Подпись к фото", photo="photo.jpg", parse_mode="HTML"
|
||||
)
|
||||
|
||||
@pytest.mark.asyncio
|
||||
@@ -684,7 +684,7 @@ class TestSendMessageFunctions:
|
||||
|
||||
assert result == mock_sent_message
|
||||
mock_message.bot.send_video.assert_called_once_with(
|
||||
chat_id=123, caption="Подпись к видео", video="video.mp4"
|
||||
chat_id=123, caption="Подпись к видео", video="video.mp4", parse_mode="HTML"
|
||||
)
|
||||
|
||||
|
||||
@@ -722,8 +722,9 @@ class TestUtilityFunctions:
|
||||
"""Тест получения списка заблокированных пользователей"""
|
||||
mock_db = AsyncMock()
|
||||
mock_db.get_banned_users_from_db_with_limits.return_value = [
|
||||
(123, "Spam", 1704067200), # user_id, ban_reason, unban_date (timestamp)
|
||||
(456, "Violation", 1704153600),
|
||||
# user_id, ban_reason, unban_date (timestamp), ban_date (timestamp)
|
||||
(123, "Spam", 1704067200, 1703980800),
|
||||
(456, "Violation", 1704153600, 1704067200),
|
||||
]
|
||||
mock_db.get_username.return_value = None
|
||||
mock_db.get_full_name_by_id.return_value = "Test User"
|
||||
@@ -734,18 +735,16 @@ class TestUtilityFunctions:
|
||||
assert "Test User" in result
|
||||
assert "Spam" in result
|
||||
assert "Violation" in result
|
||||
assert "<b>Дата бана:</b>" in result
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_get_banned_users_list_with_string_timestamp(self):
|
||||
"""Тест получения списка заблокированных пользователей со строковым timestamp"""
|
||||
mock_db = AsyncMock()
|
||||
mock_db.get_banned_users_from_db_with_limits.return_value = [
|
||||
(
|
||||
123,
|
||||
"Spam",
|
||||
"1704067200",
|
||||
), # user_id, ban_reason, unban_date (string timestamp)
|
||||
(456, "Violation", "1704153600"),
|
||||
# user_id, ban_reason, unban_date (string timestamp), ban_date (string timestamp)
|
||||
(123, "Spam", "1704067200", "1703980800"),
|
||||
(456, "Violation", "1704153600", "1704067200"),
|
||||
]
|
||||
mock_db.get_username.return_value = None
|
||||
mock_db.get_full_name_by_id.return_value = "Test User"
|
||||
@@ -756,6 +755,7 @@ class TestUtilityFunctions:
|
||||
assert "Test User" in result
|
||||
assert "Spam" in result
|
||||
assert "Violation" in result
|
||||
assert "<b>Дата бана:</b>" in result
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_get_banned_users_buttons(self):
|
||||
|
||||
Reference in New Issue
Block a user