26 lines
598 B
Python
26 lines
598 B
Python
|
|
# ruff: noqa: S311
|
||
|
|
"""
|
||
|
|
Core application factories
|
||
|
|
"""
|
||
|
|
from django.conf import settings
|
||
|
|
from django.contrib.auth.hashers import make_password
|
||
|
|
|
||
|
|
import factory.fuzzy
|
||
|
|
from faker import Faker
|
||
|
|
|
||
|
|
from core import models
|
||
|
|
|
||
|
|
fake = Faker()
|
||
|
|
|
||
|
|
|
||
|
|
class UserFactory(factory.django.DjangoModelFactory):
|
||
|
|
"""A factory to random users for testing purposes."""
|
||
|
|
|
||
|
|
class Meta:
|
||
|
|
model = models.User
|
||
|
|
|
||
|
|
sub = factory.Sequence(lambda n: f"user{n!s}")
|
||
|
|
email = factory.Faker("email")
|
||
|
|
language = factory.fuzzy.FuzzyChoice([lang[0] for lang in settings.LANGUAGES])
|
||
|
|
password = make_password("password")
|