Skip to content

Commit f851d12

Browse files
committed
fix: update course listing authorization tests
1 parent a7b3110 commit f851d12

1 file changed

Lines changed: 17 additions & 11 deletions

File tree

cms/djangoapps/contentstore/tests/test_course_listing.py

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -839,7 +839,7 @@ def test_course_listing_with_platform_scope(self):
839839
Verify that a platform-wide scope (`course-v1:*`) grants access to all
840840
courses across orgs when the AuthZ course authoring toggle is enabled.
841841
"""
842-
_, _, authz_courses, _ = self._create_courses()
842+
_, _, authz_courses, legacy_courses = self._create_courses()
843843
org2_course_key = CourseLocator("Org2", "Course1", "AuthzRun")
844844
org2_course = self._create_course(org2_course_key)
845845
assign_role_to_user_in_scope(
@@ -850,11 +850,19 @@ def test_course_listing_with_platform_scope(self):
850850

851851
request = self._make_request(self.authorized_user)
852852

853-
with self._authz_waffle_context(active=True):
853+
with patch.object(
854+
core_toggles.AUTHZ_COURSE_AUTHORING_FLAG,
855+
"is_enabled",
856+
return_value=True,
857+
):
854858
courses, _ = get_courses_accessible_to_user(request)
855859

856860
result_ids = {c.id for c in courses}
857-
expected_ids = {*(c.id for c in authz_courses), org2_course.id}
861+
expected_ids = {
862+
*(c.id for c in authz_courses),
863+
*(c.id for c in legacy_courses),
864+
org2_course.id
865+
}
858866

859867
self.assertEqual(result_ids, expected_ids) # noqa: PT009
860868

@@ -890,19 +898,17 @@ def test_get_course_keys_from_scopes_with_platform_scope(self):
890898
"""
891899
Platform-wide scopes should resolve to all courses with AuthZ enabled.
892900
"""
893-
authz_keys, _, _, _ = self._create_courses()
894-
org2_course_key = CourseLocator("Org2", "Course1", "AuthzRun")
895-
self._create_course(org2_course_key)
896-
enabled_keys = {str(key) for key in authz_keys}
901+
authz_keys, legacy_keys, _, _ = self._create_courses()
902+
enabled_keys = {str(key) for key in authz_keys + legacy_keys}
897903

898904
with patch.object(
899905
core_toggles.AUTHZ_COURSE_AUTHORING_FLAG,
900906
"is_enabled",
901907
side_effect=self._mock_authz_toggle(enabled_keys),
902908
):
903-
course_keys = _get_course_keys_from_scopes([PlatformCourseOverviewGlobData.build_external_key()])
909+
course_keys = _get_course_keys_from_scopes([PlatformCourseOverviewGlobData(external_key="course-v1:*")])
904910

905-
self.assertEqual(course_keys, set(authz_keys)) # noqa: PT009
911+
self.assertEqual(course_keys, set(authz_keys) | set(legacy_keys)) # noqa: PT009
906912

907913
def test_get_course_keys_from_scopes_platform_scope_short_circuits(self):
908914
"""
@@ -918,8 +924,8 @@ def test_get_course_keys_from_scopes_platform_scope_short_circuits(self):
918924
):
919925
course_keys = _get_course_keys_from_scopes(
920926
[
921-
OrgCourseOverviewGlobData.build_external_key("Org1"),
922-
PlatformCourseOverviewGlobData.build_external_key(),
927+
OrgCourseOverviewGlobData(external_key="course-v1:Org1+*"),
928+
PlatformCourseOverviewGlobData(external_key="course-v1:*"),
923929
]
924930
)
925931

0 commit comments

Comments
 (0)