From d17a0c6ad2cd8256a69e9d1dc0b1c20454af31fb Mon Sep 17 00:00:00 2001 From: Syed Hassan Raza Date: Wed, 18 Mar 2015 17:36:35 +0500 Subject: [PATCH] handle invalid-key exception for split courses --- lms/djangoapps/courseware/courses.py | 4 ++++ .../courseware/tests/test_module_render.py | 12 ++++++++++++ 2 files changed, 16 insertions(+) diff --git a/lms/djangoapps/courseware/courses.py b/lms/djangoapps/courseware/courses.py index bc6c64ca37..35b0d7b4dc 100644 --- a/lms/djangoapps/courseware/courses.py +++ b/lms/djangoapps/courseware/courses.py @@ -134,6 +134,10 @@ def course_image_url(course): url += '/' + course.course_image else: url += '/images/course_image.jpg' + elif course.course_image == '': + # if course_image is empty the url will be blank as location + # of the course_image does not exist + url = '' else: loc = StaticContent.compute_location(course.id, course.course_image) url = StaticContent.serialize_asset_key_with_slash(loc) diff --git a/lms/djangoapps/courseware/tests/test_module_render.py b/lms/djangoapps/courseware/tests/test_module_render.py index 946c428577..3ec1ffcddb 100644 --- a/lms/djangoapps/courseware/tests/test_module_render.py +++ b/lms/djangoapps/courseware/tests/test_module_render.py @@ -529,6 +529,7 @@ class TestTOC(ModuleStoreTestCase): self.assertIn(toc_section, actual) +@ddt.ddt class TestHtmlModifiers(ModuleStoreTestCase): """ Tests to verify that standard modifications to the output of XModule/XBlock @@ -639,6 +640,17 @@ class TestHtmlModifiers(ModuleStoreTestCase): self.assertTrue(url.startswith('/static/toy_course_dir/')) self.course.static_asset_path = "" + @ddt.data(ModuleStoreEnum.Type.mongo, ModuleStoreEnum.Type.split) + def test_course_image_for_split_course(self, store): + """ + for split courses if course_image is empty then course_image_url will be blank + """ + self.course = CourseFactory.create(default_store=store) + self.course.course_image = '' + + url = course_image_url(self.course) + self.assertEqual('', url) + def test_get_course_info_section(self): self.course.static_asset_path = "toy_course_dir" get_course_info_section(self.request, self.course, "handouts")