Skip to content

Commit 3149b6e

Browse files
refactor: address issues after rebase
1 parent 9b3af60 commit 3149b6e

3 files changed

Lines changed: 63 additions & 171 deletions

File tree

openedx_authz/tests/api/test_roles.py

Lines changed: 19 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -927,18 +927,22 @@ def test_assign_role_creates_extended_casbin_rule(self):
927927
# Test user with single role in single scope
928928
("alice", ["lib:Org1:math_101"], {"library_admin"}),
929929
# Test user with multiple roles in different scopes
930-
("eve", ["lib:Org2:physics_401", "lib:Org2:chemistry_501", "lib:Org2:biology_601"],
931-
{"library_admin", "library_author", "library_user"}),
930+
(
931+
"eve",
932+
["lib:Org2:physics_401", "lib:Org2:chemistry_501", "lib:Org2:biology_601"],
933+
{"library_admin", "library_author", "library_user"},
934+
),
932935
# Test user with same role in multiple scopes
933936
("liam", ["lib:Org4:art_101", "lib:Org4:art_201", "lib:Org4:art_301"], {"library_author"}),
934937
# Test user with multiple different roles in multiple scopes
935-
("peter", ["lib:Org6:project_alpha", "lib:Org6:project_beta", "lib:Org6:project_gamma", "lib:Org6:project_delta"],
936-
{"library_admin", "library_author", "library_contributor", "library_user"}),
938+
(
939+
"peter",
940+
["lib:Org6:project_alpha", "lib:Org6:project_beta", "lib:Org6:project_gamma", "lib:Org6:project_delta"],
941+
{"library_admin", "library_author", "library_contributor", "library_user"},
942+
),
937943
)
938944
@unpack
939-
def test_unassign_subject_from_all_roles_removes_all_assignments(
940-
self, subject_name, scopes, expected_roles_before
941-
):
945+
def test_unassign_subject_from_all_roles_removes_all_assignments(self, subject_name, scopes, expected_roles_before):
942946
"""Test that unassign_subject_from_all_roles removes all role assignments.
943947
944948
Expected result:
@@ -954,16 +958,12 @@ def test_unassign_subject_from_all_roles_removes_all_assignments(
954958
self.assertGreater(len(assignments_before), 0)
955959

956960
# Verify roles are what we expect before removal
957-
roles_before = {
958-
r.external_key for assignment in assignments_before for r in assignment.roles
959-
}
961+
roles_before = {r.external_key for assignment in assignments_before for r in assignment.roles}
960962
self.assertEqual(roles_before, expected_roles_before)
961963

962964
# Verify assignments exist in each expected scope
963965
for scope_name in scopes:
964-
scope_assignments = get_subject_role_assignments_in_scope(
965-
subject, ScopeData(external_key=scope_name)
966-
)
966+
scope_assignments = get_subject_role_assignments_in_scope(subject, ScopeData(external_key=scope_name))
967967
self.assertGreater(len(scope_assignments), 0)
968968

969969
# Unassign all roles from the subject
@@ -978,9 +978,7 @@ def test_unassign_subject_from_all_roles_removes_all_assignments(
978978

979979
# Verify no assignments in any of the previous scopes
980980
for scope_name in scopes:
981-
scope_assignments = get_subject_role_assignments_in_scope(
982-
subject, ScopeData(external_key=scope_name)
983-
)
981+
scope_assignments = get_subject_role_assignments_in_scope(subject, ScopeData(external_key=scope_name))
984982
self.assertEqual(len(scope_assignments), 0)
985983

986984
def test_unassign_subject_with_no_roles_returns_false(self):
@@ -1019,12 +1017,8 @@ def test_unassign_subject_does_not_affect_other_subjects(self):
10191017
shared_scope = ScopeData(external_key="lib:Org1:math_advanced")
10201018

10211019
# Verify both subjects have roles in the shared scope before
1022-
grace_assignments_before = get_subject_role_assignments_in_scope(
1023-
subject_to_unassign, shared_scope
1024-
)
1025-
heidi_assignments_before = get_subject_role_assignments_in_scope(
1026-
other_subject, shared_scope
1027-
)
1020+
grace_assignments_before = get_subject_role_assignments_in_scope(subject_to_unassign, shared_scope)
1021+
heidi_assignments_before = get_subject_role_assignments_in_scope(other_subject, shared_scope)
10281022

10291023
self.assertGreater(len(grace_assignments_before), 0)
10301024
self.assertGreater(len(heidi_assignments_before), 0)
@@ -1038,17 +1032,11 @@ def test_unassign_subject_does_not_affect_other_subjects(self):
10381032
self.assertEqual(len(grace_assignments_after), 0)
10391033

10401034
# Verify heidi still has her assignments
1041-
heidi_assignments_after = get_subject_role_assignments_in_scope(
1042-
other_subject, shared_scope
1043-
)
1035+
heidi_assignments_after = get_subject_role_assignments_in_scope(other_subject, shared_scope)
10441036
self.assertEqual(len(heidi_assignments_after), len(heidi_assignments_before))
10451037

10461038
# Verify heidi still has the library_contributor role
1047-
heidi_roles = {
1048-
r.external_key
1049-
for assignment in heidi_assignments_after
1050-
for r in assignment.roles
1051-
}
1039+
heidi_roles = {r.external_key for assignment in heidi_assignments_after for r in assignment.roles}
10521040
self.assertIn("library_contributor", heidi_roles)
10531041

10541042
def test_unassign_and_reassign_subject(self):
@@ -1085,7 +1073,5 @@ def test_unassign_and_reassign_subject(self):
10851073
new_assignments = get_subject_role_assignments_in_scope(subject, new_scope)
10861074
self.assertEqual(len(new_assignments), 1)
10871075

1088-
new_roles = {
1089-
r.external_key for assignment in new_assignments for r in assignment.roles
1090-
}
1076+
new_roles = {r.external_key for assignment in new_assignments for r in assignment.roles}
10911077
self.assertIn("library_admin", new_roles)

openedx_authz/tests/api/test_users.py

Lines changed: 16 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -234,18 +234,22 @@ def test_get_all_user_role_assignments_in_scope(self, scope_name, expected_assig
234234
# Test user with single role in single scope
235235
("alice", ["lib:Org1:math_101"], {"library_admin"}),
236236
# Test user with multiple roles in different scopes
237-
("eve", ["lib:Org2:physics_401", "lib:Org2:chemistry_501", "lib:Org2:biology_601"],
238-
{"library_admin", "library_author", "library_user"}),
237+
(
238+
"eve",
239+
["lib:Org2:physics_401", "lib:Org2:chemistry_501", "lib:Org2:biology_601"],
240+
{"library_admin", "library_author", "library_user"},
241+
),
239242
# Test user with same role in multiple scopes
240243
("liam", ["lib:Org4:art_101", "lib:Org4:art_201", "lib:Org4:art_301"], {"library_author"}),
241244
# Test user with multiple different roles in multiple scopes
242-
("peter", ["lib:Org6:project_alpha", "lib:Org6:project_beta", "lib:Org6:project_gamma", "lib:Org6:project_delta"],
243-
{"library_admin", "library_author", "library_contributor", "library_user"}),
245+
(
246+
"peter",
247+
["lib:Org6:project_alpha", "lib:Org6:project_beta", "lib:Org6:project_gamma", "lib:Org6:project_delta"],
248+
{"library_admin", "library_author", "library_contributor", "library_user"},
249+
),
244250
)
245251
@unpack
246-
def test_unassign_all_roles_from_user_removes_all_assignments(
247-
self, username, scopes, expected_roles_before
248-
):
252+
def test_unassign_all_roles_from_user_removes_all_assignments(self, username, scopes, expected_roles_before):
249253
"""Test that unassign_all_roles_from_user removes all role assignments.
250254
251255
Expected result:
@@ -259,9 +263,7 @@ def test_unassign_all_roles_from_user_removes_all_assignments(
259263
self.assertGreater(len(assignments_before), 0)
260264

261265
# Verify roles are what we expect before removal
262-
roles_before = {
263-
r.external_key for assignment in assignments_before for r in assignment.roles
264-
}
266+
roles_before = {r.external_key for assignment in assignments_before for r in assignment.roles}
265267
self.assertEqual(roles_before, expected_roles_before)
266268

267269
# Verify assignments exist in each expected scope
@@ -349,11 +351,7 @@ def test_unassign_all_roles_does_not_affect_other_users(self):
349351
self.assertEqual(len(heidi_assignments_after), len(heidi_assignments_before))
350352

351353
# Verify heidi still has the library_contributor role
352-
heidi_roles = {
353-
r.external_key
354-
for assignment in heidi_assignments_after
355-
for r in assignment.roles
356-
}
354+
heidi_roles = {r.external_key for assignment in heidi_assignments_after for r in assignment.roles}
357355
self.assertIn("library_contributor", heidi_roles)
358356

359357
def test_unassign_and_reassign_user(self):
@@ -383,21 +381,15 @@ def test_unassign_and_reassign_user(self):
383381

384382
# Assign a new role in a new scope
385383
assign_result = assign_role_to_user_in_scope(
386-
user_external_key=username,
387-
role_external_key=new_role,
388-
scope_external_key=new_scope
384+
user_external_key=username, role_external_key=new_role, scope_external_key=new_scope
389385
)
390386
self.assertTrue(assign_result)
391387

392388
# Verify the new assignment works
393-
new_assignments = get_user_role_assignments_in_scope(
394-
user_external_key=username, scope_external_key=new_scope
395-
)
389+
new_assignments = get_user_role_assignments_in_scope(user_external_key=username, scope_external_key=new_scope)
396390
self.assertEqual(len(new_assignments), 1)
397391

398-
new_roles = {
399-
r.external_key for assignment in new_assignments for r in assignment.roles
400-
}
392+
new_roles = {r.external_key for assignment in new_assignments for r in assignment.roles}
401393
self.assertIn(new_role, new_roles)
402394

403395
def test_unassign_all_roles_impacts_permissions(self):

0 commit comments

Comments
 (0)