Skip to content

Commit b132e97

Browse files
committed
test: add migration test to verify skipping of excluded course ids
1 parent 1437e2d commit b132e97

1 file changed

Lines changed: 29 additions & 0 deletions

File tree

openedx_authz/tests/test_migrations.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1249,6 +1249,35 @@ def test_migrate_authz_to_legacy_course_roles_user_not_added(self):
12491249
self.assertEqual(len(errors), 12)
12501250
self.assertEqual(len(successes), 0)
12511251

1252+
@patch("openedx_authz.api.data.CourseOverview", CourseOverview)
1253+
def test_migrate_authz_to_legacy_course_roles_skips_excluded_course_ids(self):
1254+
"""Course-level assignments whose scope is listed in excluded_course_ids are skipped."""
1255+
migrate_legacy_course_roles_to_authz(
1256+
CourseAccessRole,
1257+
course_id_list=[self.course_id],
1258+
org_id=None,
1259+
delete_after_migration=False,
1260+
)
1261+
1262+
errors, successes = migrate_authz_to_legacy_course_roles(
1263+
CourseAccessRole,
1264+
UserSubject,
1265+
course_id_list=[self.course_id],
1266+
org_id=None,
1267+
delete_after_migration=False,
1268+
excluded_course_ids=frozenset({self.course_id}),
1269+
)
1270+
1271+
self.assertEqual(len(successes), 0)
1272+
self.assertEqual(len(errors), 12)
1273+
for entry in errors:
1274+
self.assertEqual(entry.reason, MigrationErrorReason.SKIPPED_FOR_FLAG_OVERRIDE)
1275+
self.assertEqual(
1276+
entry.details,
1277+
"Course-level authoring flag override opposes this organization-level transition",
1278+
)
1279+
self.assertEqual(entry.scope, self.course_id)
1280+
12521281
def create_library_env(self):
12531282
"""
12541283
Helper method to create a ContentLibrary environment for testing.

0 commit comments

Comments
 (0)