コード例 #1
0
    Faker as FactoryFaker, )  # note I use FactoryBoy's wrapper of Faker

from astrosat.tests.providers import GeometryProvider, ValidatedProvider
from astrosat.tests.utils import optional_declaration

from example.models import (
    ExampleBulkModel,
    ExampleEpochModel,
    ExampleHashableModel,
    ExampleSingletonModel,
    ExampleUnloadableParentModel,
    ExampleUnloadableChildModel,
    ExampleConditionallyDeletedThing,
)

FactoryFaker.add_provider(GeometryProvider)
FactoryFaker.add_provider(ValidatedProvider)


class ExampleHashableModelFactory(factory.django.DjangoModelFactory):
    class Meta:
        model = ExampleHashableModel

    name = FactoryFaker("name")


class ExampleSingletonModelFactory(factory.django.DjangoModelFactory):
    class Meta:
        model = ExampleSingletonModel

    name = FactoryFaker("name")
コード例 #2
0
from factory.faker import (
    Faker as FactoryFaker, )  # note I use FactoryBoy's wrapper of Faker
from faker import Faker

from django.core.files.uploadedfile import SimpleUploadedFile
from django.utils.text import slugify

from astrosat.tests.providers import PrettyLoremProvider
from astrosat.tests.utils import optional_declaration

from allauth.account.models import EmailAddress
from astrosat_users.models import User, UserRole, UserPermission, Customer, Message, MessageAttachment
from astrosat_users.models.models_customers import CustomerType
from astrosat_users.tests.utils import *

FactoryFaker.add_provider(PrettyLoremProvider)

fake = Faker("en_GB")  # use UK-specific addresses, VAT numbers, etc.


class UserFactory(factory.django.DjangoModelFactory):
    class Meta:
        model = User
        django_get_or_create = ["email"]

    email = FactoryFaker("email")
    name = FactoryFaker("name")
    description = optional_declaration(FactoryFaker("sentence", nb_words=10),
                                       chance=50)
    registration_stage = None
    accepted_terms = True