Commit bc3a6fad by Clinton Blackburn

Indexing course run languages as macrolanguage, except Chinese

ECOM-5466
parent afc1c441
......@@ -26,6 +26,7 @@ from course_discovery.apps.course_metadata.tests.factories import (
OrganizationFactory, PersonFactory, SeatFactory, ProgramFactory, CorporateEndorsementFactory, EndorsementFactory,
JobOutlookItemFactory, ExpectedLearningItemFactory, PositionFactory
)
from course_discovery.apps.ietf_language_tags.models import LanguageTag
# pylint:disable=no-member
......@@ -46,6 +47,9 @@ def serialize_datetime(d):
def serialize_language(language):
if language.code.startswith('zh'):
return language.name
return language.macrolanguage
......@@ -579,7 +583,7 @@ class AffiliateWindowSerializerTests(TestCase):
class CourseRunSearchSerializerTests(TestCase):
def test_data(self):
course_run = CourseRunFactory()
course_run = CourseRunFactory(transcript_languages=LanguageTag.objects.filter(code__in=['en-us', 'zh-cn']))
serializer = self.serialize_course_run(course_run)
course_run_key = CourseKey.from_string(course_run.key)
......
......@@ -121,13 +121,18 @@ class CourseRunIndex(BaseCourseIndex, indexes.Indexable):
return obj.status == CourseRun.Status.Published
def _prepare_language(self, language):
return language.macrolanguage
if language:
# ECOM-5466: Render the macro language for all languages except Chinese
if language.code.startswith('zh'):
return language.name
else:
return language.macrolanguage
def prepare_language(self, obj):
if obj.language:
return self._prepare_language(obj.language)
return None
def prepare_language(self, obj):
return self._prepare_language(obj.language)
def prepare_number(self, obj):
course_run_key = CourseKey.from_string(obj.key)
return course_run_key.course
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment