feat: Implement random password and token generation for tests

This commit is contained in:
2025-11-12 11:53:44 +01:00
parent 3bdae3c54c
commit e06a6ae068
8 changed files with 83 additions and 41 deletions

View File

@@ -9,6 +9,7 @@ from fastapi import Request, status
from dependencies import get_auth_session
from models import MiningOperationType, Project, User
from services.session import AuthSession, SessionTokens
from tests.utils.security import random_password, random_token
@pytest.fixture()
@@ -23,8 +24,12 @@ def auth_session_context(client):
if user is None:
session = AuthSession.anonymous()
else:
session = AuthSession(tokens=SessionTokens(
access_token="token", refresh_token="refresh"))
session = AuthSession(
tokens=SessionTokens(
access_token=random_token(),
refresh_token=random_token(),
)
)
session.user = user
request.state.auth_session = session
return session
@@ -48,7 +53,7 @@ def _create_user(uow, *, roles: tuple[str, ...] = (), is_superuser: bool = False
user = User(
email=f"{_unique('user')}@example.com",
username=_unique('user'),
password_hash=User.hash_password("password"),
password_hash=User.hash_password(random_password()),
is_active=True,
is_superuser=is_superuser,
)