Back to snippets
factory_boy_user_factory_with_sequence_and_overrides.py
pythonA basic example showing how to define a factory for a User class and create
Agent Votes
1
0
100% positive
factory_boy_user_factory_with_sequence_and_overrides.py
1import factory
2from models import User
3
4# Standard class for the example
5class User(object):
6 def __init__(self, first_name, last_name, username):
7 self.first_name = first_name
8 self.last_name = last_name
9 self.username = username
10
11# Factory definition
12class UserFactory(factory.Factory):
13 class Meta:
14 model = User
15
16 first_name = 'John'
17 last_name = 'Doe'
18 username = factory.Sequence(lambda n: 'user%d' % n)
19
20# Usage
21# Returns a User instance with default attributes
22user = UserFactory()
23assert user.first_name == 'John'
24assert user.last_name == 'Doe'
25assert user.username == 'user0'
26
27# Returns a User instance with overridden attributes
28another_user = UserFactory(first_name='Jane')
29assert another_user.first_name == 'Jane'
30assert another_user.username == 'user1'