()
| 15 | |
| 16 | @pytest.fixture |
| 17 | def db() -> Generator[Session, None, None]: |
| 18 | with Session(engine) as session: |
| 19 | init_db(session) |
| 20 | yield session |
| 21 | try: |
| 22 | statement = select(User).options( |
| 23 | selectinload(User.collections), selectinload(User.practice_sessions) |
| 24 | ) |
| 25 | users = session.exec(statement).all() |
| 26 | for user in users: |
| 27 | session.delete(user) |
| 28 | session.commit() |
| 29 | except Exception as e: |
| 30 | print(f"Error during cleanup: {e}") |
| 31 | session.rollback() |
| 32 | |
| 33 | |
| 34 | @pytest.fixture |