Commit 9911f962 by Ahsan Ulhaq Committed by GitHub

Merge pull request #197 from…

Merge pull request #197 from edx/ahsan/ECOM-4981-Course-Catalog-API-Title-Field-Source-Change-updated

Course Catalog API Title Field Source Change
parents 82eaddb1 2d0559fd
......@@ -307,7 +307,7 @@ class DrupalApiDataLoader(AbstractDataLoader):
# Clean Organizations separately from other orphaned instances to avoid removing all orgnaziations
# after an initial data load on an empty table.
Organization.objects.filter(courseorganization__isnull=True).delete()
Organization.objects.filter(courseorganization__isnull=True, program__isnull=True).delete()
self.delete_orphans()
logger.info('Retrieved %d course runs from %s.', len(data), api_url)
......@@ -324,6 +324,7 @@ class DrupalApiDataLoader(AbstractDataLoader):
course.full_description = self.clean_html(body['description'])
course.short_description = self.clean_html(body['subtitle'])
course.partner = self.partner
course.title = self.clean_html(body['title'])
level_type, __ = LevelType.objects.get_or_create(name=body['level']['title'])
course.level_type = level_type
......
......@@ -79,8 +79,8 @@ class Command(BaseCommand):
(partner.organizations_api_url, OrganizationsApiDataLoader,),
(partner.courses_api_url, CoursesApiDataLoader,),
(partner.ecommerce_api_url, EcommerceApiDataLoader,),
(partner.marketing_site_api_url, DrupalApiDataLoader,),
(partner.programs_api_url, ProgramsApiDataLoader,),
(partner.marketing_site_api_url, DrupalApiDataLoader,),
(partner.marketing_site_url_root, MarketingSiteDataLoader,),
)
......
......@@ -8,7 +8,8 @@ from django.test import TestCase
from course_discovery.apps.core.tests.factories import PartnerFactory
from course_discovery.apps.core.tests.utils import mock_api_callback
from course_discovery.apps.course_metadata.data_loaders import (
CoursesApiDataLoader, DrupalApiDataLoader, OrganizationsApiDataLoader, EcommerceApiDataLoader, ProgramsApiDataLoader
CoursesApiDataLoader, DrupalApiDataLoader, OrganizationsApiDataLoader, EcommerceApiDataLoader,
ProgramsApiDataLoader, MarketingSiteDataLoader
)
from course_discovery.apps.course_metadata.models import Course, CourseRun, Organization, Program
from course_discovery.apps.course_metadata.tests import mock_data
......@@ -162,6 +163,6 @@ class RefreshCourseMetadataCommandTests(TestCase):
call_command('refresh_course_metadata')
loader_classes = (OrganizationsApiDataLoader, CoursesApiDataLoader, EcommerceApiDataLoader,
DrupalApiDataLoader, ProgramsApiDataLoader)
ProgramsApiDataLoader, DrupalApiDataLoader, MarketingSiteDataLoader)
expected_calls = [mock.call('%s failed!', loader_class.__name__) for loader_class in loader_classes]
mock_logger.exception.assert_has_calls(expected_calls)
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