chore: rename hasAccess to coursewareAccess

This commit is contained in:
Leangseu Kim
2022-09-12 16:22:30 -04:00
committed by leangseu-edx
parent 9262357f1b
commit 49380a00ec
3 changed files with 342 additions and 52 deletions

View File

@@ -17,7 +17,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": true,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -106,7 +106,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": true,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -164,7 +164,7 @@
"accessExpirationDate": "11/11/2000",
"canUpgrade": true,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -215,7 +215,7 @@
"accessExpirationDate": "11/11/2000",
"canUpgrade": false,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -290,7 +290,7 @@
"accessExpirationDate": "11/11/2000",
"canUpgrade": true,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -355,7 +355,7 @@
"accessExpirationDate": "11/11/2000",
"canUpgrade": true,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -406,7 +406,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": true,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -485,7 +485,7 @@
"accessExpirationDate": "11/11/2000",
"canUpgrade": true,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": true,
"isStaff": false
@@ -554,7 +554,7 @@
"accessExpirationDate": "11/11/2000",
"canUpgrade": false,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": true,
"isStaff": false
@@ -610,7 +610,7 @@
"accessExpirationDate": "11/11/2000",
"canUpgrade": false,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": true,
"isStaff": false
@@ -694,7 +694,7 @@
"accessExpirationDate": "11/11/2000",
"canUpgrade": false,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": true,
"isStaff": false
@@ -749,7 +749,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": true,
"isStaff": false
@@ -814,7 +814,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -889,7 +889,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": true,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -954,7 +954,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": true,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -991,7 +991,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": true,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1066,7 +1066,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": true,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1132,7 +1132,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": true,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1183,7 +1183,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": true,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1259,7 +1259,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": true,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1325,7 +1325,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": true,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1413,7 +1413,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1524,7 +1524,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1625,7 +1625,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": true,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1712,7 +1712,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": true,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1797,7 +1797,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1872,7 +1872,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -1934,7 +1934,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -2019,7 +2019,7 @@
"accessExpirationDate": "11/11/3030",
"canUpgrade": null,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -2081,7 +2081,7 @@
"accessExpirationDate": null,
"canUpgrade": false,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -2172,7 +2172,7 @@
"accessExpirationDate": null,
"canUpgrade": false,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -2253,7 +2253,7 @@
"accessExpirationDate": null,
"canUpgrade": false,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -2320,7 +2320,7 @@
"accessExpirationDate": null,
"canUpgrade": false,
"hasStarted": false,
"hasAccess": {
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": false
@@ -2378,6 +2378,292 @@
"numberOfCourses": 3
}
]
},
{
"cardId": "card-id104",
"enrollment": {
"accessExpirationDate": null,
"canUpgrade": false,
"hasStarted": false,
"coursewareAccess": {
"hasUnmetPrerequisites": true,
"isTooEarly": false,
"isStaff": false
},
"isAudit": false,
"isAuditAccessExpired": false,
"isEmailEnabled": false,
"hasOptedOutOfEmail": false,
"isEnrolled": false,
"isVerified": false,
"lastEnrolled": null
},
"grades": null,
"certificates": null,
"courseRun": null,
"entitlement": {
"uuid": "entitlement-course-uuid-14",
"availableSessions": [],
"canViewCourse": false,
"changeDeadline": "11/11/2000",
"enrollmentUrl": "/entitlement-enrollment",
"isEntitlement": true,
"isExpired": true,
"isFulfilled": false,
"isRefundable": true
},
"provider": {
"name": "edX Course Provider",
"website": "www.edx.com",
"email": "support@edx.com"
},
"course": {
"courseNumber": "course-number104",
"title": "Course Name 104",
"bannerUrl": "https://edx-cdn.org/v3/prod/logo.svg"
},
"relatedPrograms": [
{
"provider": "HarvardX",
"bannerUrl": "https://prod-discovery.edx-cdn.org/media/course/image/327c8e4f-315a-417b-9857-046dfc90c243-677b97464958.small.jpg",
"logoUrl": "https://prod-discovery.edx-cdn.org/organization/certificate_logos/44022f13-20df-4666-9111-cede3e5dc5b6-770e00385e7e.png",
"title": "Relativity in Modern Mechanics",
"programUrl": "www.edx/my-program",
"programType": "MicroBachelors Program",
"numberOfCourses": 3
},
{
"provider": "University of Maryland",
"bannerUrl": "https://prod-discovery.edx-cdn.org/media/programs/banner_images/9a310b98-8f27-439e-be85-12d6460245c9-f2efca129273.small.jpg",
"logoUrl": "https://prod-discovery.edx-cdn.org/organization/certificate_logos/b9dc96da-b3fc-45a6-b6b7-b8e12eb79335-ac60112330e3.png",
"title": "Pandering for Modern Professionals",
"programUrl": "www.edx/my-program-2",
"programType": "MicroBachelors Program",
"programTypeUrl": "www.edx/my-program-type",
"numberOfCourses": 3
}
]
},
{
"cardId": "card-id105",
"enrollment": {
"accessExpirationDate": null,
"canUpgrade": false,
"hasStarted": false,
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": true,
"isStaff": false
},
"isAudit": false,
"isAuditAccessExpired": false,
"isEmailEnabled": false,
"hasOptedOutOfEmail": false,
"isEnrolled": false,
"isVerified": false,
"lastEnrolled": null
},
"grades": null,
"certificates": null,
"courseRun": {
"isStarted": false,
"isArchived": false,
"startDate": "11/11/3030",
"endDate": "11/11/4040",
"minPassingGrade": 70,
"homeUrl": "edx.com/courses/my-course-url/home",
"marketingUrl": "edx.com/courses/my-course-url/marketing",
"progressUrl": "edx.com/courses/my-course-url/progress",
"unenrollUrl": "edx.com/courses/my-course-url/unenroll",
"resumeUrl": "edx.com/courses/my-course-url/resume",
"courseId": "course-number15-course-id15",
"lastEnrolled": "2022-09-06T15:20:57.513Z"
},
"entitlement": {
"uuid": "entitlement-course-uuid-15",
"availableSessions": [],
"canViewCourse": false,
"changeDeadline": "11/11/2000",
"enrollmentUrl": "/entitlement-enrollment",
"isEntitlement": true,
"isExpired": true,
"isFulfilled": false,
"isRefundable": true
},
"provider": {
"name": "edX Course Provider",
"website": "www.edx.com",
"email": "support@edx.com"
},
"course": {
"courseNumber": "course-number105",
"title": "Course Name 105",
"bannerUrl": "https://edx-cdn.org/v3/prod/logo.svg"
},
"relatedPrograms": [
{
"provider": "HarvardX",
"bannerUrl": "https://prod-discovery.edx-cdn.org/media/course/image/327c8e4f-315a-417b-9857-046dfc90c243-677b97464958.small.jpg",
"logoUrl": "https://prod-discovery.edx-cdn.org/organization/certificate_logos/44022f13-20df-4666-9111-cede3e5dc5b6-770e00385e7e.png",
"title": "Relativity in Modern Mechanics",
"programUrl": "www.edx/my-program",
"programType": "MicroBachelors Program",
"numberOfCourses": 3
},
{
"provider": "University of Maryland",
"bannerUrl": "https://prod-discovery.edx-cdn.org/media/programs/banner_images/9a310b98-8f27-439e-be85-12d6460245c9-f2efca129273.small.jpg",
"logoUrl": "https://prod-discovery.edx-cdn.org/organization/certificate_logos/b9dc96da-b3fc-45a6-b6b7-b8e12eb79335-ac60112330e3.png",
"title": "Pandering for Modern Professionals",
"programUrl": "www.edx/my-program-2",
"programType": "MicroBachelors Program",
"programTypeUrl": "www.edx/my-program-type",
"numberOfCourses": 3
}
]
},
{
"cardId": "card-id106",
"enrollment": {
"accessExpirationDate": null,
"canUpgrade": false,
"hasStarted": false,
"coursewareAccess": {
"hasUnmetPrerequisites": false,
"isTooEarly": false,
"isStaff": true
},
"isAudit": false,
"isAuditAccessExpired": false,
"isEmailEnabled": false,
"hasOptedOutOfEmail": false,
"isEnrolled": false,
"isVerified": false,
"lastEnrolled": null
},
"grades": null,
"certificates": null,
"courseRun": null,
"entitlement": {
"uuid": "entitlement-course-uuid-16",
"availableSessions": [],
"canViewCourse": false,
"changeDeadline": "11/11/2000",
"enrollmentUrl": "/entitlement-enrollment",
"isEntitlement": true,
"isExpired": true,
"isFulfilled": false,
"isRefundable": true
},
"provider": {
"name": "edX Course Provider",
"website": "www.edx.com",
"email": "support@edx.com"
},
"course": {
"courseNumber": "course-number106",
"title": "Course Name 106",
"bannerUrl": "https://edx-cdn.org/v3/prod/logo.svg"
},
"relatedPrograms": [
{
"provider": "HarvardX",
"bannerUrl": "https://prod-discovery.edx-cdn.org/media/course/image/327c8e4f-315a-417b-9857-046dfc90c243-677b97464958.small.jpg",
"logoUrl": "https://prod-discovery.edx-cdn.org/organization/certificate_logos/44022f13-20df-4666-9111-cede3e5dc5b6-770e00385e7e.png",
"title": "Relativity in Modern Mechanics",
"programUrl": "www.edx/my-program",
"programType": "MicroBachelors Program",
"numberOfCourses": 3
},
{
"provider": "University of Maryland",
"bannerUrl": "https://prod-discovery.edx-cdn.org/media/programs/banner_images/9a310b98-8f27-439e-be85-12d6460245c9-f2efca129273.small.jpg",
"logoUrl": "https://prod-discovery.edx-cdn.org/organization/certificate_logos/b9dc96da-b3fc-45a6-b6b7-b8e12eb79335-ac60112330e3.png",
"title": "Pandering for Modern Professionals",
"programUrl": "www.edx/my-program-2",
"programType": "MicroBachelors Program",
"programTypeUrl": "www.edx/my-program-type",
"numberOfCourses": 3
}
]
},
{
"cardId": "card-id107",
"enrollment": {
"accessExpirationDate": null,
"canUpgrade": false,
"hasStarted": false,
"coursewareAccess": {
"hasUnmetPrerequisites": true,
"isTooEarly": true,
"isStaff": true
},
"isAudit": false,
"isAuditAccessExpired": false,
"isEmailEnabled": false,
"hasOptedOutOfEmail": false,
"isEnrolled": false,
"isVerified": false,
"lastEnrolled": null
},
"grades": null,
"certificates": null,
"courseRun": {
"isStarted": false,
"isArchived": false,
"startDate": "11/11/3030",
"endDate": "11/11/4040",
"minPassingGrade": 70,
"homeUrl": "edx.com/courses/my-course-url/home",
"marketingUrl": "edx.com/courses/my-course-url/marketing",
"progressUrl": "edx.com/courses/my-course-url/progress",
"unenrollUrl": "edx.com/courses/my-course-url/unenroll",
"resumeUrl": "edx.com/courses/my-course-url/resume",
"courseId": "course-number15-course-id15",
"lastEnrolled": "2022-09-06T15:20:57.513Z"
},
"entitlement": {
"uuid": "entitlement-course-uuid-17",
"availableSessions": [],
"canViewCourse": false,
"changeDeadline": "11/11/2000",
"enrollmentUrl": "/entitlement-enrollment",
"isEntitlement": true,
"isExpired": true,
"isFulfilled": false,
"isRefundable": true
},
"provider": {
"name": "edX Course Provider",
"website": "www.edx.com",
"email": "support@edx.com"
},
"course": {
"courseNumber": "course-number107",
"title": "Course Name 107",
"bannerUrl": "https://edx-cdn.org/v3/prod/logo.svg"
},
"relatedPrograms": [
{
"provider": "HarvardX",
"bannerUrl": "https://prod-discovery.edx-cdn.org/media/course/image/327c8e4f-315a-417b-9857-046dfc90c243-677b97464958.small.jpg",
"logoUrl": "https://prod-discovery.edx-cdn.org/organization/certificate_logos/44022f13-20df-4666-9111-cede3e5dc5b6-770e00385e7e.png",
"title": "Relativity in Modern Mechanics",
"programUrl": "www.edx/my-program",
"programType": "MicroBachelors Program",
"numberOfCourses": 3
},
{
"provider": "University of Maryland",
"bannerUrl": "https://prod-discovery.edx-cdn.org/media/programs/banner_images/9a310b98-8f27-439e-be85-12d6460245c9-f2efca129273.small.jpg",
"logoUrl": "https://prod-discovery.edx-cdn.org/organization/certificate_logos/b9dc96da-b3fc-45a6-b6b7-b8e12eb79335-ac60112330e3.png",
"title": "Pandering for Modern Professionals",
"programUrl": "www.edx/my-program-2",
"programType": "MicroBachelors Program",
"programTypeUrl": "www.edx/my-program-type",
"numberOfCourses": 3
}
]
}
],
"emailConfirmation": {

View File

@@ -114,7 +114,7 @@ class CourseRunSerializer(serializers.Serializer):
return self.context.get("resume_course_urls", {}).get(instance.course_id)
class HasAccessSerializer(serializers.Serializer):
class CoursewareAccessSerializer(serializers.Serializer):
"""
Info determining whether a user should be able to view course material.
Mirrors logic in "show_courseware_links_for" from old dashboard.py
@@ -167,7 +167,7 @@ class EnrollmentSerializer(serializers.Serializer):
accessExpirationDate = serializers.SerializerMethodField()
isAudit = serializers.SerializerMethodField()
hasStarted = serializers.SerializerMethodField()
hasAccess = HasAccessSerializer(source="*")
coursewareAccess = CoursewareAccessSerializer(source="*")
isVerified = serializers.SerializerMethodField()
canUpgrade = serializers.SerializerMethodField()
isAuditAccessExpired = serializers.SerializerMethodField()
@@ -402,17 +402,21 @@ class UnfulfilledEntitlementSerializer(serializers.Serializer):
# This is the static constant data returned as the 'enrollment' key for all unfulfilled enrollments.
STATIC_ENTITLEMENT_ENROLLMENT_DATA = {
"accessExpirationDate": None,
"isAudit": False,
"hasStarted": False,
"hasAccess": True,
"isVerified": False,
"canUpgrade": False,
"isAuditAccessExpired": False,
"isEmailEnabled": False,
"hasOptedOutOfEmail": False,
"lastEnrolled": None,
"isEnrolled": False,
'accessExpirationDate': None,
'isAudit': False,
'hasStarted': False,
'coursewareAccess': {
"hasUnmetPrerequisites": False,
"isTooEarly": False,
"isStaff": False,
},
'isVerified': False,
'canUpgrade': False,
'isAuditAccessExpired': False,
'isEmailEnabled': False,
'hasOptedOutOfEmail': False,
'lastEnrolled': None,
'isEnrolled': False,
}
class _PseudoSessionCourseSerializer(serializers.Serializer):

View File

@@ -35,7 +35,7 @@ from lms.djangoapps.learner_home.serializers import (
EnterpriseDashboardSerializer,
EntitlementSerializer,
GradeDataSerializer,
HasAccessSerializer,
CoursewareAccessSerializer,
LearnerEnrollmentSerializer,
PlatformSettingsSerializer,
ProgramsSerializer,
@@ -195,8 +195,8 @@ class TestCourseRunSerializer(LearnerDashboardBaseTest):
@ddt.ddt
class TestHasAccessSerializer(LearnerDashboardBaseTest):
"""Tests for the HasAccessSerializer"""
class TestCoursewareAccessSerializer(LearnerDashboardBaseTest):
"""Tests for the CoursewareAccessSerializer"""
def create_test_context(self, course):
return {
@@ -230,7 +230,7 @@ class TestHasAccessSerializer(LearnerDashboardBaseTest):
)
# When I serialize
output_data = HasAccessSerializer(input_data, context=input_context).data
output_data = CoursewareAccessSerializer(input_data, context=input_context).data
# Then "hasUnmetPrerequisites" is outputs correctly
self.assertEqual(output_data["hasUnmetPrerequisites"], has_unmet_prerequisites)
@@ -253,7 +253,7 @@ class TestHasAccessSerializer(LearnerDashboardBaseTest):
)
# When I serialize
output_data = HasAccessSerializer(input_data, context=input_context).data
output_data = CoursewareAccessSerializer(input_data, context=input_context).data
# Then "isStaff" serializes properly
self.assertEqual(output_data["isStaff"], is_staff)
@@ -276,7 +276,7 @@ class TestHasAccessSerializer(LearnerDashboardBaseTest):
)
# When I serialize
output_data = HasAccessSerializer(input_data, context=input_context).data
output_data = CoursewareAccessSerializer(input_data, context=input_context).data
# Then "isTooEarly" serializes properly
self.assertEqual(output_data["isTooEarly"], is_too_early)