[PATCH 6/6] tests: Don't create model objects unless necessary
Stephen Finucane
stephen.finucane at intel.com
Fri Jul 1 03:30:27 AEST 2016
Creating model objects when not required introduces unnecessary
overhead and delays the tests. Avoid this by only creating new objects
when one isn't provided for us already.
Signed-off-by: Stephen Finucane <stephen.finucane at intel.com>
---
patchwork/tests/utils.py | 30 ++++++++++++++++--------------
1 files changed, 16 insertions(+), 14 deletions(-)
diff --git a/patchwork/tests/utils.py b/patchwork/tests/utils.py
index ba25b54..ac6ad42 100644
--- a/patchwork/tests/utils.py
+++ b/patchwork/tests/utils.py
@@ -152,8 +152,8 @@ def create_bundle(**kwargs):
num = Bundle.objects.count()
values = {
- 'owner': create_user(),
- 'project': create_project(),
+ 'owner': create_user() if 'owner' not in kwargs else None,
+ 'project': create_project() if 'project' not in kwargs else None,
'name': 'test_bundle_%d' % num,
}
values.update(kwargs)
@@ -169,11 +169,11 @@ def create_patch(**kwargs):
num = Patch.objects.count()
values = {
- 'submitter': create_person(),
+ 'submitter': create_person() if 'submitter' not in kwargs else None,
'delegate': None,
- 'project': create_project(),
+ 'project': create_project() if 'project' not in kwargs else None,
'msgid': make_msgid(),
- 'state': create_state(),
+ 'state': create_state() if 'state' not in kwargs else None,
'name': 'testpatch%d' % num,
'headers': '',
'content': '',
@@ -192,8 +192,8 @@ def create_cover(**kwargs):
num = CoverLetter.objects.count()
values = {
- 'submitter': create_person(),
- 'project': create_project(),
+ 'submitter': create_person() if 'person' not in kwargs else None,
+ 'project': create_project() if 'project' not in kwargs else None,
'msgid': make_msgid(),
'name': 'testpatch%d' % num,
'headers': '',
@@ -210,8 +210,8 @@ def create_cover(**kwargs):
def create_comment(**kwargs):
"""Create 'Comment' object."""
values = {
- 'submitter': create_person(),
- 'submission': create_patch(),
+ 'submitter': create_person() if 'submitter' not in kwargs else None,
+ 'submission': create_patch() if 'submission' not in kwargs else None,
'msgid': make_msgid(),
'content': SAMPLE_CONTENT,
}
@@ -226,8 +226,8 @@ def create_comment(**kwargs):
def create_check(**kwargs):
"""Create 'Check' object."""
values = {
- 'patch': create_patch(),
- 'user': create_user(),
+ 'patch': create_patch() if 'patch' not in kwargs else None,
+ 'user': create_user() if 'user' not in kwargs else None,
'date': dt.now(),
'state': Check.STATE_SUCCESS,
'target_url': 'http://example.com/',
@@ -250,8 +250,8 @@ def _create_submissions(create_func, count=1, **kwargs):
kwargs (dict): Overrides for various patch fields
"""
values = {
- 'project': create_project(),
- 'submitter': create_person(),
+ 'project': create_project() if 'project' not in kwargs else None,
+ 'submitter': create_person() if 'submitter' not in kwargs else None,
}
values.update(kwargs)
@@ -275,7 +275,9 @@ def create_patches(count=1, **kwargs):
count (int): Number of patches to create
kwargs (dict): Overrides for various patch fields
"""
- values = {'state': create_state()}
+ values = {
+ 'state': create_state() if 'state' not in kwargs else None
+ }
values.update(kwargs)
return _create_submissions(create_patch, count, **values)
--
1.7.4.1
More information about the Patchwork
mailing list