diff --git a/tests/auth/test_oauth.py b/tests/auth/test_oauth.py index a3592570..c8b12209 100644 --- a/tests/auth/test_oauth.py +++ b/tests/auth/test_oauth.py @@ -246,6 +246,44 @@ with ( # Импортируем необходимые модели from orm.community import Community, CommunityAuthor +@pytest.fixture +def oauth_db_session(): + """Фикстура для сессии базы данных в OAuth тестах""" + from services.db import local_session + session = local_session() + try: + yield session + finally: + session.close() + +@pytest.fixture +def simple_user(oauth_db_session): + """Фикстура для простого пользователя""" + from auth.orm import Author + import time + + # Создаем тестового пользователя + user = Author( + email="simple@test.com", + name="Simple User", + slug="simple-user", + email_verified=True, + created_at=int(time.time()), + updated_at=int(time.time()), + last_seen=int(time.time()) + ) + oauth_db_session.add(user) + oauth_db_session.commit() + + yield user + + # Очистка + try: + oauth_db_session.query(Author).where(Author.id == user.id).delete() + oauth_db_session.commit() + except Exception: + oauth_db_session.rollback() + @pytest.fixture def test_community(oauth_db_session, simple_user): """ diff --git a/tests/test_db_coverage.py b/tests/test_db_coverage.py index bbd87680..3208b350 100644 --- a/tests/test_db_coverage.py +++ b/tests/test_db_coverage.py @@ -18,6 +18,10 @@ class TestModel(Base): id = Column(Integer, primary_key=True) name = Column(String) description = Column(String, nullable=True) + + def __init__(self, name: str = None, description: str = None): + self.name = name + self.description = description class TestDatabaseFunctions: """Тесты для функций работы с базой данных"""