Files
edx-platform/common/djangoapps/course_modes/tests/factories.py

34 lines
856 B
Python

"""
Factories for course mode models.
"""
import random
from factory import lazy_attribute
from factory.django import DjangoModelFactory
from opaque_keys.edx.locator import CourseLocator
from course_modes.models import CourseMode
# Factories are self documenting
# pylint: disable=missing-docstring
class CourseModeFactory(DjangoModelFactory):
class Meta(object):
model = CourseMode
course_id = CourseLocator('MITx', '999', 'Robot_Super_Course')
mode_slug = CourseMode.DEFAULT_MODE_SLUG
currency = 'usd'
expiration_datetime = None
suggested_prices = ''
@lazy_attribute
def min_price(self):
if CourseMode.is_verified_slug(self.mode_slug):
return random.randint(1, 100)
return 0
@lazy_attribute
def mode_display_name(self):
return '{0} course'.format(self.mode_slug)