Refactor code structure for improved readability and maintainability
Some checks failed
Backend CI / lint (push) Failing after 4m51s
Backend CI / test (push) Failing after 4m35s

This commit is contained in:
JSC
2025-08-20 11:37:28 +02:00
parent 9653062003
commit 821093f64f
15 changed files with 1897 additions and 217 deletions

View File

@@ -20,7 +20,7 @@ class TestUserRepository:
async def user_repository(
self,
test_session: AsyncSession,
) -> AsyncGenerator[UserRepository, None]: # type: ignore[misc]
) -> AsyncGenerator[UserRepository]: # type: ignore[misc]
"""Create a user repository instance."""
yield UserRepository(test_session)
@@ -209,6 +209,17 @@ class TestUserRepository:
assert user.id is not None
user_id = user.id
# Clean up any favorites that might reference this specific user to avoid foreign key constraint violations
from sqlmodel import select
from app.models.favorite import Favorite
# Only delete favorites for the user we're about to delete, not all favorites
existing_favorites = await test_session.exec(select(Favorite).where(Favorite.user_id == user_id))
for favorite in existing_favorites.all():
await test_session.delete(favorite)
await test_session.commit()
# Delete the user
await user_repository.delete(user)