From c6ce34314c8dacf92ffed49d91ec01f1799a87c3 Mon Sep 17 00:00:00 2001 From: rabiaiftikhar Date: Thu, 21 Jun 2018 19:16:40 +0500 Subject: [PATCH] EDUCATOR-3055 clear the enrollment date fields for the rerun of the course --- .../tests/test_course_create_rerun.py | 15 +++++++++++++-- cms/djangoapps/contentstore/views/course.py | 2 ++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/cms/djangoapps/contentstore/tests/test_course_create_rerun.py b/cms/djangoapps/contentstore/tests/test_course_create_rerun.py index a1019fa40a..da2c19affa 100644 --- a/cms/djangoapps/contentstore/tests/test_course_create_rerun.py +++ b/cms/djangoapps/contentstore/tests/test_course_create_rerun.py @@ -1,7 +1,7 @@ """ Test view handler for rerun (and eventually create) """ -from datetime import datetime +import datetime import ddt from django.urls import reverse @@ -37,12 +37,19 @@ class TestCourseListing(ModuleStoreTestCase): self.client = AjaxEnabledTestClient() self.client.login(username=self.user.username, password='test') self.course_create_rerun_url = reverse('course_handler') + self.course_start = datetime.datetime.utcnow() + self.course_end = self.course_start + datetime.timedelta(days=30) + self.enrollment_start = self.course_start - datetime.timedelta(days=7) + self.enrollment_end = self.course_end - datetime.timedelta(days=14) source_course = CourseFactory.create( org='origin', number='the_beginning', run='first', display_name='the one and only', - start=datetime.utcnow() + start=self.course_start, + end=self.course_end, + enrollment_start=self.enrollment_start, + enrollment_end=self.enrollment_end ) self.source_course_key = source_course.id @@ -70,8 +77,12 @@ class TestCourseListing(ModuleStoreTestCase): dest_course_key = CourseKey.from_string(data['destination_course_key']) self.assertEqual(dest_course_key.run, 'copy') + source_course = self.store.get_course(self.source_course_key) dest_course = self.store.get_course(dest_course_key) self.assertEqual(dest_course.start, CourseFields.start.default) + self.assertEqual(dest_course.end, source_course.end) + self.assertEqual(dest_course.enrollment_start, None) + self.assertEqual(dest_course.enrollment_end, None) @ddt.data(ModuleStoreEnum.Type.mongo, ModuleStoreEnum.Type.split) def test_newly_created_course_has_web_certs_enabled(self, store): diff --git a/cms/djangoapps/contentstore/views/course.py b/cms/djangoapps/contentstore/views/course.py index 1e8cef3022..c477e302c9 100644 --- a/cms/djangoapps/contentstore/views/course.py +++ b/cms/djangoapps/contentstore/views/course.py @@ -914,6 +914,8 @@ def rerun_course(user, source_course_key, org, number, run, fields, async=True): # Clear the fields that must be reset for the rerun fields['advertised_start'] = None + fields['enrollment_start'] = None + fields['enrollment_end'] = None fields['video_upload_pipeline'] = {} json_fields = json.dumps(fields, cls=EdxJSONEncoder)