Correct event testing

This commit is contained in:
Sebastiaan
2025-06-09 14:38:47 +02:00
parent b590d58c74
commit 5aab2add76
3 changed files with 38 additions and 15 deletions

View File

@@ -7,8 +7,10 @@ from sqlmodel import Session, delete
from app.core.config import settings
from app.core.db import engine, init_db
from app.main import app
from app.models.user import User
from app.tests.utils.user import authentication_token_from_email
from app.models.event import Event
from app.models.user import User, PermissionRight
from app.tests.utils.event import create_random_event
from app.tests.utils.user import authentication_token_from_email, create_random_user
from app.tests.utils.utils import get_superuser_token_headers
@@ -38,3 +40,20 @@ def normal_user_token_headers(client: TestClient, db: Session) -> dict[str, str]
return authentication_token_from_email(
client=client, email=settings.EMAIL_TEST_USER, db=db
)
class EventUserHeader:
def __init__(self, user: User, event: Event, headers: dict[str, str]) -> None:
self.user = user
self.event = event
self.headers = headers
@pytest.fixture(scope="module")
def event_user_token_headers(client: TestClient, db: Session) -> EventUserHeader:
user = create_random_user(db)
event = create_random_event(db, name="Test event for user", contact=str(user.email))
event.add_user(user=user, rights=PermissionRight.ADMIN, session=db)
headers = authentication_token_from_email(client=client, email=str(user.email), db=db)
return EventUserHeader(user, event, headers)