Commit effee03b by David Baumgold

Merge pull request #1867 from edx/db/update-factory-boy

Update factory_boy to 2.2.1
parents 2bc156cd d15391fd
from course_modes.models import CourseMode from course_modes.models import CourseMode
from factory import DjangoModelFactory from factory.django import DjangoModelFactory
# Factories don't have __init__ methods, and are self documenting # Factories don't have __init__ methods, and are self documenting
# pylint: disable=W0232 # pylint: disable=W0232
......
...@@ -6,15 +6,8 @@ from student.models import (User, UserProfile, Registration, ...@@ -6,15 +6,8 @@ from student.models import (User, UserProfile, Registration,
from course_modes.models import CourseMode from course_modes.models import CourseMode
from django.contrib.auth.models import Group, AnonymousUser from django.contrib.auth.models import Group, AnonymousUser
from datetime import datetime from datetime import datetime
from factory import ( import factory
DjangoModelFactory, from factory.django import DjangoModelFactory
Factory,
LazyAttribute,
post_generation,
PostGenerationMethodCall,
Sequence,
SubFactory,
)
from uuid import uuid4 from uuid import uuid4
from pytz import UTC from pytz import UTC
...@@ -26,8 +19,7 @@ class GroupFactory(DjangoModelFactory): ...@@ -26,8 +19,7 @@ class GroupFactory(DjangoModelFactory):
FACTORY_FOR = Group FACTORY_FOR = Group
FACTORY_DJANGO_GET_OR_CREATE = ('name', ) FACTORY_DJANGO_GET_OR_CREATE = ('name', )
name = Sequence(u'group{0}'.format) name = factory.Sequence(u'group{0}'.format)
class UserStandingFactory(DjangoModelFactory): class UserStandingFactory(DjangoModelFactory):
...@@ -43,7 +35,7 @@ class UserProfileFactory(DjangoModelFactory): ...@@ -43,7 +35,7 @@ class UserProfileFactory(DjangoModelFactory):
FACTORY_DJANGO_GET_OR_CREATE = ('user', ) FACTORY_DJANGO_GET_OR_CREATE = ('user', )
user = None user = None
name = LazyAttribute(u'{0.user.first_name} {0.user.last_name}'.format) name = factory.LazyAttribute(u'{0.user.first_name} {0.user.last_name}'.format)
level_of_education = None level_of_education = None
gender = u'm' gender = u'm'
mailing_address = None mailing_address = None
...@@ -72,11 +64,10 @@ class UserFactory(DjangoModelFactory): ...@@ -72,11 +64,10 @@ class UserFactory(DjangoModelFactory):
FACTORY_FOR = User FACTORY_FOR = User
FACTORY_DJANGO_GET_OR_CREATE = ('email', 'username') FACTORY_DJANGO_GET_OR_CREATE = ('email', 'username')
username = Sequence(u'robot{0}'.format) username = factory.Sequence(u'robot{0}'.format)
email = Sequence(u'robot+test+{0}@edx.org'.format) email = factory.Sequence(u'robot+test+{0}@edx.org'.format)
password = PostGenerationMethodCall('set_password', password = factory.PostGenerationMethodCall('set_password', 'test')
'test') first_name = factory.Sequence(u'Robot{0}'.format)
first_name = Sequence(u'Robot{0}'.format)
last_name = 'Test' last_name = 'Test'
is_staff = False is_staff = False
is_active = True is_active = True
...@@ -84,7 +75,7 @@ class UserFactory(DjangoModelFactory): ...@@ -84,7 +75,7 @@ class UserFactory(DjangoModelFactory):
last_login = datetime(2012, 1, 1, tzinfo=UTC) last_login = datetime(2012, 1, 1, tzinfo=UTC)
date_joined = datetime(2011, 1, 1, tzinfo=UTC) date_joined = datetime(2011, 1, 1, tzinfo=UTC)
@post_generation @factory.post_generation
def profile(obj, create, extracted, **kwargs): # pylint: disable=unused-argument, no-self-argument def profile(obj, create, extracted, **kwargs): # pylint: disable=unused-argument, no-self-argument
if create: if create:
obj.save() obj.save()
...@@ -94,7 +85,7 @@ class UserFactory(DjangoModelFactory): ...@@ -94,7 +85,7 @@ class UserFactory(DjangoModelFactory):
else: else:
return None return None
@post_generation @factory.post_generation
def groups(self, create, extracted, **kwargs): def groups(self, create, extracted, **kwargs):
if extracted is None: if extracted is None:
return return
...@@ -106,7 +97,7 @@ class UserFactory(DjangoModelFactory): ...@@ -106,7 +97,7 @@ class UserFactory(DjangoModelFactory):
self.groups.add(GroupFactory.simple_generate(create, name=group_name)) self.groups.add(GroupFactory.simple_generate(create, name=group_name))
class AnonymousUserFactory(Factory): class AnonymousUserFactory(factory.Factory):
FACTORY_FOR = AnonymousUser FACTORY_FOR = AnonymousUser
...@@ -117,7 +108,7 @@ class AdminFactory(UserFactory): ...@@ -117,7 +108,7 @@ class AdminFactory(UserFactory):
class CourseEnrollmentFactory(DjangoModelFactory): class CourseEnrollmentFactory(DjangoModelFactory):
FACTORY_FOR = CourseEnrollment FACTORY_FOR = CourseEnrollment
user = SubFactory(UserFactory) user = factory.SubFactory(UserFactory)
course_id = u'edX/toy/2012_Fall' course_id = u'edX/toy/2012_Fall'
...@@ -137,6 +128,6 @@ class PendingEmailChangeFactory(DjangoModelFactory): ...@@ -137,6 +128,6 @@ class PendingEmailChangeFactory(DjangoModelFactory):
""" """
FACTORY_FOR = PendingEmailChange FACTORY_FOR = PendingEmailChange
user = SubFactory(UserFactory) user = factory.SubFactory(UserFactory)
new_email = Sequence(u'new+email+{0}@edx.org'.format) new_email = factory.Sequence(u'new+email+{0}@edx.org'.format)
activation_key = Sequence(u'{:0<30d}'.format) activation_key = factory.Sequence(u'{:0<30d}'.format)
import json import json
from functools import partial from functools import partial
import factory
from factory import DjangoModelFactory, SubFactory, post_generation from factory.django import DjangoModelFactory
# Imported to re-export # Imported to re-export
# pylint: disable=unused-import # pylint: disable=unused-import
...@@ -40,7 +40,7 @@ class InstructorFactory(UserFactory): ...@@ -40,7 +40,7 @@ class InstructorFactory(UserFactory):
""" """
last_name = "Instructor" last_name = "Instructor"
@post_generation @factory.post_generation
def course(self, create, extracted, **kwargs): def course(self, create, extracted, **kwargs):
if extracted is None: if extracted is None:
raise ValueError("Must specify a course location for a course instructor user") raise ValueError("Must specify a course location for a course instructor user")
...@@ -54,7 +54,7 @@ class StaffFactory(UserFactory): ...@@ -54,7 +54,7 @@ class StaffFactory(UserFactory):
""" """
last_name = "Staff" last_name = "Staff"
@post_generation @factory.post_generation
def course(self, create, extracted, **kwargs): def course(self, create, extracted, **kwargs):
if extracted is None: if extracted is None:
raise ValueError("Must specify a course location for a course staff user") raise ValueError("Must specify a course location for a course staff user")
...@@ -68,7 +68,7 @@ class BetaTesterFactory(UserFactory): ...@@ -68,7 +68,7 @@ class BetaTesterFactory(UserFactory):
""" """
last_name = "Beta-Tester" last_name = "Beta-Tester"
@post_generation @factory.post_generation
def course(self, create, extracted, **kwargs): def course(self, create, extracted, **kwargs):
if extracted is None: if extracted is None:
raise ValueError("Must specify a course location for a beta-tester user") raise ValueError("Must specify a course location for a beta-tester user")
...@@ -82,7 +82,7 @@ class OrgStaffFactory(UserFactory): ...@@ -82,7 +82,7 @@ class OrgStaffFactory(UserFactory):
""" """
last_name = "Org-Staff" last_name = "Org-Staff"
@post_generation @factory.post_generation
def course(self, create, extracted, **kwargs): def course(self, create, extracted, **kwargs):
if extracted is None: if extracted is None:
raise ValueError("Must specify a course location for an org-staff user") raise ValueError("Must specify a course location for an org-staff user")
...@@ -96,7 +96,7 @@ class OrgInstructorFactory(UserFactory): ...@@ -96,7 +96,7 @@ class OrgInstructorFactory(UserFactory):
""" """
last_name = "Org-Instructor" last_name = "Org-Instructor"
@post_generation @factory.post_generation
def course(self, create, extracted, **kwargs): def course(self, create, extracted, **kwargs):
if extracted is None: if extracted is None:
raise ValueError("Must specify a course location for an org-instructor user") raise ValueError("Must specify a course location for an org-instructor user")
...@@ -109,7 +109,7 @@ class GlobalStaffFactory(UserFactory): ...@@ -109,7 +109,7 @@ class GlobalStaffFactory(UserFactory):
""" """
last_name = "GlobalStaff" last_name = "GlobalStaff"
@post_generation @factory.post_generation
def set_staff(self, create, extracted, **kwargs): def set_staff(self, create, extracted, **kwargs):
GlobalStaff().add_users(self) GlobalStaff().add_users(self)
...@@ -118,7 +118,7 @@ class StudentModuleFactory(DjangoModelFactory): ...@@ -118,7 +118,7 @@ class StudentModuleFactory(DjangoModelFactory):
FACTORY_FOR = StudentModule FACTORY_FOR = StudentModule
module_type = "problem" module_type = "problem"
student = SubFactory(UserFactory) student = factory.SubFactory(UserFactory)
course_id = "MITx/999/Robot_Super_Course" course_id = "MITx/999/Robot_Super_Course"
state = None state = None
grade = None grade = None
...@@ -139,7 +139,7 @@ class StudentPrefsFactory(DjangoModelFactory): ...@@ -139,7 +139,7 @@ class StudentPrefsFactory(DjangoModelFactory):
field_name = 'existing_field' field_name = 'existing_field'
value = json.dumps('old_value') value = json.dumps('old_value')
student = SubFactory(UserFactory) student = factory.SubFactory(UserFactory)
module_type = 'MockProblemModule' module_type = 'MockProblemModule'
...@@ -148,4 +148,4 @@ class StudentInfoFactory(DjangoModelFactory): ...@@ -148,4 +148,4 @@ class StudentInfoFactory(DjangoModelFactory):
field_name = 'existing_field' field_name = 'existing_field'
value = json.dumps('old_value') value = json.dumps('old_value')
student = SubFactory(UserFactory) student = factory.SubFactory(UserFactory)
from factory import DjangoModelFactory from factory.django import DjangoModelFactory
from django_comment_common.models import Role, Permission from django_comment_common.models import Role, Permission
......
import json import json
from factory import DjangoModelFactory, SubFactory import factory
from factory.django import DjangoModelFactory
from student.tests.factories import UserFactory as StudentUserFactory from student.tests.factories import UserFactory as StudentUserFactory
from instructor_task.models import InstructorTask from instructor_task.models import InstructorTask
from celery.states import PENDING from celery.states import PENDING
...@@ -16,4 +17,4 @@ class InstructorTaskFactory(DjangoModelFactory): ...@@ -16,4 +17,4 @@ class InstructorTaskFactory(DjangoModelFactory):
task_id = None task_id = None
task_state = PENDING task_state = PENDING
task_output = None task_output = None
requester = SubFactory(StudentUserFactory) requester = factory.SubFactory(StudentUserFactory)
...@@ -5,7 +5,8 @@ import json ...@@ -5,7 +5,8 @@ import json
from uuid import uuid4 from uuid import uuid4
from random import shuffle from random import shuffle
from tempfile import NamedTemporaryFile from tempfile import NamedTemporaryFile
from factory import DjangoModelFactory, SubFactory import factory
from factory.django import DjangoModelFactory
from django.test import TestCase from django.test import TestCase
from django.test.client import Client from django.test.client import Client
...@@ -51,7 +52,7 @@ class UserLicenseFactory(DjangoModelFactory): ...@@ -51,7 +52,7 @@ class UserLicenseFactory(DjangoModelFactory):
FACTORY_FOR = UserLicense FACTORY_FOR = UserLicense
user = None user = None
software = SubFactory(CourseSoftwareFactory) software = factory.SubFactory(CourseSoftwareFactory)
serial = SERIAL_1 serial = SERIAL_1
......
from factory import DjangoModelFactory from factory.django import DjangoModelFactory
from user_api.models import UserPreference from user_api.models import UserPreference
......
...@@ -92,7 +92,7 @@ transifex-client==0.9.1 ...@@ -92,7 +92,7 @@ transifex-client==0.9.1
# Used for testing # Used for testing
coverage==3.7 coverage==3.7
ddt==0.4.0 ddt==0.4.0
factory_boy==2.0.2 factory_boy==2.2.1
mock==1.0.1 mock==1.0.1
nosexcover==1.0.7 nosexcover==1.0.7
pep8==1.4.5 pep8==1.4.5
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment