gmao/tests/factories/user.py

23 lines
723 B
Python
Raw Normal View History

2026-08-14 18:02:25 +02:00
import factory
from app_new.core.models.user import User
from app_new import db
class UserFactory(factory.alchemy.SQLAlchemyModelFactory):
class Meta:
model = User
sqlalchemy_session = db.session
sqlalchemy_session_persistence = 'commit'
username = factory.Sequence(lambda n: f'user_{n}')
email = factory.LazyAttribute(lambda obj: f'{obj.username}@test.local')
password_hash = 'pbkdf2:sha256$fakehash$fakehash' # mot de passe factice
full_name = factory.LazyAttribute(lambda obj: obj.username.replace('_', ' ').title())
role = 'technicien'
2026-08-14 18:02:25 +02:00
is_active = True
class AdminFactory(UserFactory):
role = 'admin'
username = factory.Sequence(lambda n: f'admin_{n}')