forked from WasinTh/tutorial-django-rest
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfactories.py
More file actions
30 lines (21 loc) · 838 Bytes
/
Copy pathfactories.py
File metadata and controls
30 lines (21 loc) · 838 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import factory
from django.utils import timezone
from django.contrib.auth import get_user_model
from account.models import Customer, Transaction
class UserFactory(factory.django.DjangoModelFactory):
class Meta:
model = get_user_model()
username = factory.Faker('user_name')
class CustomerFactory(factory.django.DjangoModelFactory):
class Meta:
model = Customer
user = factory.SubFactory(UserFactory)
current_amount = 0
class TransactionFactory(factory.django.DjangoModelFactory):
class Meta:
model = Transaction
created = factory.Faker('past_datetime', tzinfo=timezone.get_current_timezone())
amount = factory.Faker('pyint', min_value=0)
note = ''
type = factory.Iterator([x[0] for x in Transaction.Type.choices])
customer = factory.SubFactory(CustomerFactory)