diff --git a/lms/djangoapps/course_api/blocks/api.py b/lms/djangoapps/course_api/blocks/api.py index 234358d3a0..e33c9252b9 100644 --- a/lms/djangoapps/course_api/blocks/api.py +++ b/lms/djangoapps/course_api/blocks/api.py @@ -7,7 +7,7 @@ from lms.djangoapps.course_blocks.transformers.hidden_content import HiddenConte from openedx.core.djangoapps.content.block_structure.transformers import BlockStructureTransformers from .transformers.blocks_api import BlocksAPITransformer -from .transformers.milestones import MilestonesTransformer +from .transformers.milestones import MilestonesAndSpecialExamsTransformer from .serializers import BlockSerializer, BlockDictSerializer @@ -56,7 +56,7 @@ def get_blocks( include_special_exams = True if user is not None: transformers += COURSE_BLOCK_ACCESS_TRANSFORMERS - transformers += [MilestonesTransformer(include_special_exams), HiddenContentTransformer()] + transformers += [MilestonesAndSpecialExamsTransformer(include_special_exams), HiddenContentTransformer()] transformers += [ BlocksAPITransformer( block_counts, diff --git a/lms/djangoapps/course_api/blocks/transformers/__init__.py b/lms/djangoapps/course_api/blocks/transformers/__init__.py index 9d34d0a743..36ee5e6bc1 100644 --- a/lms/djangoapps/course_api/blocks/transformers/__init__.py +++ b/lms/djangoapps/course_api/blocks/transformers/__init__.py @@ -6,7 +6,7 @@ from lms.djangoapps.course_blocks.transformers.visibility import VisibilityTrans from .student_view import StudentViewTransformer from .block_counts import BlockCountsTransformer from .navigation import BlockNavigationTransformer -from .milestones import MilestonesTransformer +from .milestones import MilestonesAndSpecialExamsTransformer class SupportedFieldType(object): @@ -45,7 +45,7 @@ SUPPORTED_FIELDS = [ # 'student_view_multi_device' SupportedFieldType(StudentViewTransformer.STUDENT_VIEW_MULTI_DEVICE, StudentViewTransformer), - SupportedFieldType('special_exam_info', MilestonesTransformer), + SupportedFieldType('special_exam_info', MilestonesAndSpecialExamsTransformer), # set the block_field_name to None so the entire data for the transformer is serialized SupportedFieldType(None, BlockCountsTransformer, BlockCountsTransformer.BLOCK_COUNTS), diff --git a/lms/djangoapps/course_api/blocks/transformers/milestones.py b/lms/djangoapps/course_api/blocks/transformers/milestones.py index a0483e6ec9..d0b33efe51 100644 --- a/lms/djangoapps/course_api/blocks/transformers/milestones.py +++ b/lms/djangoapps/course_api/blocks/transformers/milestones.py @@ -17,7 +17,7 @@ from util import milestones_helpers log = logging.getLogger(__name__) -class MilestonesTransformer(BlockStructureTransformer): +class MilestonesAndSpecialExamsTransformer(BlockStructureTransformer): """ A transformer that handles both milestones and special (timed) exams. @@ -106,6 +106,8 @@ class MilestonesTransformer(BlockStructureTransformer): usage_info.user.id )) + # TODO: As part of a cleanup effort, this transformer should be split into + # MilestonesTransformer and SpecialExamsTransformer, which are completely independent. def add_special_exam_info(self, block_key, block_structure, usage_info): """ For special exams, add the special exam information to the course blocks. diff --git a/lms/djangoapps/course_api/blocks/transformers/tests/test_milestones.py b/lms/djangoapps/course_api/blocks/transformers/tests/test_milestones.py index 9955b5a4d0..5652aae3f1 100644 --- a/lms/djangoapps/course_api/blocks/transformers/tests/test_milestones.py +++ b/lms/djangoapps/course_api/blocks/transformers/tests/test_milestones.py @@ -12,7 +12,7 @@ from openedx.core.lib.gating import api as gating_api from openedx.core.djangoapps.content.block_structure.transformers import BlockStructureTransformers from student.tests.factories import CourseEnrollmentFactory -from ..milestones import MilestonesTransformer +from ..milestones import MilestonesAndSpecialExamsTransformer from ...api import get_course_blocks @@ -23,7 +23,7 @@ class MilestonesTransformerTestCase(CourseStructureTestCase, MilestonesTestCaseM """ Test behavior of ProctoredExamTransformer """ - TRANSFORMER_CLASS_TO_TEST = MilestonesTransformer + TRANSFORMER_CLASS_TO_TEST = MilestonesAndSpecialExamsTransformer def setUp(self): """ diff --git a/setup.py b/setup.py index 3d6713cef1..8b1c6c0bf6 100644 --- a/setup.py +++ b/setup.py @@ -52,7 +52,7 @@ setup( "visibility = lms.djangoapps.course_blocks.transformers.visibility:VisibilityTransformer", "hidden_content = lms.djangoapps.course_blocks.transformers.hidden_content:HiddenContentTransformer", "course_blocks_api = lms.djangoapps.course_api.blocks.transformers.blocks_api:BlocksAPITransformer", - "milestones = lms.djangoapps.course_api.blocks.transformers.milestones:MilestonesTransformer", + "milestones = lms.djangoapps.course_api.blocks.transformers.milestones:MilestonesAndSpecialExamsTransformer", "grades = lms.djangoapps.grades.transformer:GradesTransformer", ], }