Merge branch 'master' into alfredoguillem/enterprise-bump

This commit is contained in:
Alfredo Guillem
2022-09-27 20:47:05 +02:00
committed by GitHub
3 changed files with 19 additions and 11 deletions

View File

@@ -48,7 +48,7 @@ class CourseProviderSerializer(serializers.Serializer):
class CourseSerializer(serializers.Serializer):
"""Course header information, derived from a CourseOverview"""
bannerImgSrc = serializers.URLField(source="banner_image_url")
bannerImgSrc = serializers.URLField(source="image_urls.small")
courseName = serializers.CharField(source="display_name_with_default")
courseNumber = serializers.CharField(source="display_number_with_default")
@@ -407,9 +407,6 @@ class LearnerEnrollmentSerializer(serializers.Serializer):
gradeData = GradeDataSerializer(source="*")
programs = serializers.SerializerMethodField()
# TODO - remove "allow_null" as each of these are implemented, temp for testing.
courseProvider = CourseProviderSerializer(allow_null=True)
def get_entitlement(self, instance):
"""
If this enrollment is the fulfillment of an entitlement, include information about the entitlement
@@ -537,7 +534,10 @@ class EnterpriseDashboardSerializer(serializers.Serializer):
url = serializers.SerializerMethodField()
def get_url(self, instance):
return urljoin(settings.ENTERPRISE_LEARNER_PORTAL_BASE_URL, instance["uuid"])
return urljoin(
settings.ENTERPRISE_LEARNER_PORTAL_BASE_URL,
instance["slug"],
)
class LearnerDashboardSerializer(serializers.Serializer):

View File

@@ -51,6 +51,7 @@ from lms.djangoapps.learner_home.test_utils import (
datetime_to_django_format,
random_bool,
random_date,
random_string,
random_url,
)
from xmodule.data import CertificatesDisplayBehaviors
@@ -991,15 +992,17 @@ class TestEnterpriseDashboardSerializer(TestCase):
"""High-level tests for EnterpriseDashboardSerializer"""
@classmethod
def generate_test_data(cls):
def generate_test_enterprise_customer(cls):
return {
"name": random_string(),
"slug": str(uuid4()),
"enable_learner_portal": True,
"uuid": str(uuid4()),
"name": str(uuid4()),
}
def test_structure(self):
"""Test that nothing breaks and the output fields look correct"""
input_data = self.generate_test_data()
input_data = self.generate_test_enterprise_customer()
output_data = EnterpriseDashboardSerializer(input_data).data
@@ -1007,12 +1010,12 @@ class TestEnterpriseDashboardSerializer(TestCase):
"label",
"url",
]
assert output_data.keys() == set(expected_keys)
self.assertEqual(output_data.keys(), set(expected_keys))
def test_happy_path(self):
"""Test that data serializes correctly"""
input_data = self.generate_test_data()
input_data = self.generate_test_enterprise_customer()
output_data = EnterpriseDashboardSerializer(input_data).data
@@ -1022,7 +1025,7 @@ class TestEnterpriseDashboardSerializer(TestCase):
"label": input_data["name"],
"url": settings.ENTERPRISE_LEARNER_PORTAL_BASE_URL
+ "/"
+ input_data["uuid"],
+ input_data["slug"],
},
)

View File

@@ -15,6 +15,11 @@ from openedx.core.djangoapps.content.course_overviews.tests.factories import (
from xmodule.modulestore.tests.factories import CourseFactory
def random_string():
"""Test util for generating a random string"""
return str(uuid4())
def random_bool():
"""Test util for generating a random boolean"""
return bool(getrandbits(1))