Make CourseOverviewFactory create new courses every time (unless otherwise specified)

This commit is contained in:
Calen Pennington
2019-06-24 14:23:08 -04:00
parent b14244fe01
commit 390122ec93
3 changed files with 6 additions and 2 deletions

View File

@@ -516,7 +516,7 @@ class StudentDashboardTests(SharedModuleStoreTestCase, MilestonesTestCaseMixin,
course_overview = CourseOverviewFactory(
start=self.TOMORROW, self_paced=True, enrollment_end=self.TOMORROW
)
course_enrollment = CourseEnrollmentFactory(user=self.user)
course_enrollment = CourseEnrollmentFactory(user=self.user, course_id=course_overview.id)
entitlement = CourseEntitlementFactory(user=self.user, enrollment_course_run=course_enrollment)
course_runs = [{
'key': six.text_type(course_overview.id),

View File

@@ -13,10 +13,12 @@ class CourseOverviewFactory(DjangoModelFactory):
class Meta(object):
model = CourseOverview
django_get_or_create = ('id', )
exclude = ('run', )
version = CourseOverview.VERSION
pre_requisite_courses = []
org = 'edX'
run = factory.Sequence('2012_Fall_{}'.format)
@factory.lazy_attribute
def _pre_requisite_courses_json(self):
@@ -28,7 +30,7 @@ class CourseOverviewFactory(DjangoModelFactory):
@factory.lazy_attribute
def id(self):
return CourseLocator(self.org, 'toy', '2012_Fall')
return CourseLocator(self.org, 'toy', self.run)
@factory.lazy_attribute
def display_name(self):

View File

@@ -139,6 +139,8 @@ class ScheduleSendEmailTestMixin(FilteredQueryCountMixin):
factory_kwargs.setdefault('start', target_day)
factory_kwargs.setdefault('upgrade_deadline', upgrade_deadline)
factory_kwargs.setdefault('enrollment__course__self_paced', True)
# Make all schedules in the same course
factory_kwargs.setdefault('enrollment__course__run', '2012_Fall')
if hasattr(self, 'experience_type'):
factory_kwargs.setdefault('experience__experience_type', self.experience_type)
schedule = ScheduleFactory(**factory_kwargs)