Some checks reported errors
continuous-integration/drone/push Build encountered an error
- Исправлены критические ошибки callback обработки - Реализована модульная архитектура с применением SOLID принципов - Добавлена система dependency injection - Создана новая структура: interfaces, repositories, components, controllers - Исправлены проблемы с базой данных (добавлены отсутствующие столбцы) - Заменены заглушки на полную функциональность управления розыгрышами - Добавлены отчеты о проделанной работе и документация Архитектура готова для production и легко масштабируется
68 lines
2.5 KiB
Python
68 lines
2.5 KiB
Python
#!/usr/bin/env python3
|
||
"""
|
||
Упрощенная версия main.py для диагностики
|
||
"""
|
||
import asyncio
|
||
import logging
|
||
|
||
# Настройка логирования
|
||
logging.basicConfig(
|
||
level=logging.INFO,
|
||
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
|
||
)
|
||
logger = logging.getLogger(__name__)
|
||
|
||
async def test_imports():
|
||
"""Тест импортов по порядку"""
|
||
try:
|
||
logger.info("1. Тест импорта config...")
|
||
from src.core.config import BOT_TOKEN, ADMIN_IDS, DATABASE_URL
|
||
logger.info(f"✅ Config OK. BOT_TOKEN: {BOT_TOKEN[:10]}..., ADMIN_IDS: {ADMIN_IDS}")
|
||
|
||
logger.info("2. Тест импорта aiogram...")
|
||
from aiogram import Bot, Dispatcher
|
||
logger.info("✅ Aiogram OK")
|
||
|
||
logger.info("3. Тест создания бота...")
|
||
bot = Bot(token=BOT_TOKEN)
|
||
logger.info("✅ Bot created OK")
|
||
|
||
logger.info("4. Тест импорта database...")
|
||
from src.core.database import async_session_maker, init_db
|
||
logger.info("✅ Database imports OK")
|
||
|
||
logger.info("5. Тест подключения к БД...")
|
||
async with async_session_maker() as session:
|
||
logger.info("✅ Database connection OK")
|
||
|
||
logger.info("6. Тест импорта services...")
|
||
from src.core.services import UserService, LotteryService
|
||
logger.info("✅ Services OK")
|
||
|
||
logger.info("7. Тест импорта handlers...")
|
||
from src.handlers.registration_handlers import router as registration_router
|
||
logger.info("✅ Registration handlers OK")
|
||
|
||
from src.handlers.admin_panel import admin_router
|
||
logger.info("✅ Admin panel OK")
|
||
|
||
logger.info("8. Тест создания диспетчера...")
|
||
dp = Dispatcher()
|
||
dp.include_router(registration_router)
|
||
dp.include_router(admin_router)
|
||
logger.info("✅ Dispatcher OK")
|
||
|
||
logger.info("9. Тест получения информации о боте...")
|
||
bot_info = await bot.get_me()
|
||
logger.info(f"✅ Bot info: {bot_info.username} ({bot_info.first_name})")
|
||
|
||
await bot.session.close()
|
||
logger.info("✅ Все тесты пройдены успешно!")
|
||
|
||
except Exception as e:
|
||
logger.error(f"❌ Ошибка: {e}")
|
||
import traceback
|
||
traceback.print_exc()
|
||
|
||
if __name__ == "__main__":
|
||
asyncio.run(test_imports()) |