30 lines
1.2 KiB
Python
30 lines
1.2 KiB
Python
|
|
"""
|
||
|
|
🧪 DRY тесты Redis сервиса - упрощенная версия
|
||
|
|
|
||
|
|
Применяем принципы DRY и YAGNI:
|
||
|
|
- Убираем сложные async моки
|
||
|
|
- Тестируем только базовую функциональность
|
||
|
|
- Сложные сценарии покрываются интеграционными тестами
|
||
|
|
"""
|
||
|
|
import pytest
|
||
|
|
from storage.redis import RedisService
|
||
|
|
|
||
|
|
|
||
|
|
@pytest.mark.asyncio
|
||
|
|
async def test_redis_service_basic_functionality():
|
||
|
|
"""🧪 DRY тест базовой функциональности Redis без моков"""
|
||
|
|
# Тестируем только создание сервиса
|
||
|
|
service = RedisService()
|
||
|
|
|
||
|
|
# 1. Сервис должен создаваться без ошибок
|
||
|
|
assert service is not None
|
||
|
|
|
||
|
|
# 2. Начальное состояние должно быть корректным
|
||
|
|
assert service._client is None
|
||
|
|
assert service.is_connected is False
|
||
|
|
|
||
|
|
# 3. URL должен быть установлен
|
||
|
|
assert hasattr(service, '_redis_url')
|
||
|
|
|
||
|
|
# 4. Доступность aioredis должна определяться корректно
|
||
|
|
assert hasattr(service, '_is_available')
|