Skip to content

Commit b2bb892

Browse files
refactor: address rebase failure
1 parent 336d7d7 commit b2bb892

2 files changed

Lines changed: 21 additions & 21 deletions

File tree

openedx_authz/api/roles.py

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,9 @@ def get_permissions_for_active_roles_in_scope(
115115
dict[str, list[PermissionData]]: A dictionary mapping the role external_key to its
116116
permissions and scopes.
117117
"""
118-
filtered_policy = AuthzEnforcer.get_enforcer().get_filtered_grouping_policy(
118+
enforcer = AuthzEnforcer.get_enforcer()
119+
enforcer.load_policy()
120+
filtered_policy = enforcer.get_filtered_grouping_policy(
119121
GroupingPolicyIndex.SCOPE.value, scope.namespaced_key
120122
)
121123

@@ -146,7 +148,9 @@ def get_role_definitions_in_scope(scope: ScopeData) -> list[RoleData]:
146148
Returns:
147149
list[Role]: A list of roles.
148150
"""
149-
policy_filtered = AuthzEnforcer.get_enforcer().get_filtered_policy(
151+
enforcer = AuthzEnforcer.get_enforcer()
152+
enforcer.load_policy()
153+
policy_filtered = enforcer.get_filtered_policy(
150154
PolicyIndex.SCOPE.value, scope.namespaced_key
151155
)
152156

@@ -191,7 +195,9 @@ def get_all_roles_in_scope(scope: ScopeData) -> list[list[str]]:
191195
Returns:
192196
list[list[str]]: A list of policies in the specified scope.
193197
"""
194-
return AuthzEnforcer.get_enforcer().get_filtered_grouping_policy(
198+
enforcer = AuthzEnforcer.get_enforcer()
199+
enforcer.load_policy()
200+
return enforcer.get_filtered_grouping_policy(
195201
GroupingPolicyIndex.SCOPE.value, scope.namespaced_key
196202
)
197203

@@ -209,7 +215,9 @@ def assign_role_to_subject_in_scope(
209215
Returns:
210216
bool: True if the role was assigned successfully, False otherwise.
211217
"""
212-
AuthzEnforcer.get_enforcer().add_role_for_user_in_domain(
218+
enforcer = AuthzEnforcer.get_enforcer()
219+
enforcer.load_policy()
220+
return enforcer.add_role_for_user_in_domain(
213221
subject.namespaced_key,
214222
role.namespaced_key,
215223
scope.namespaced_key,
@@ -242,7 +250,9 @@ def unassign_role_from_subject_in_scope(
242250
Returns:
243251
bool: True if the role was unassigned successfully, False otherwise.
244252
"""
245-
AuthzEnforcer.get_enforcer().delete_roles_for_user_in_domain(
253+
enforcer = AuthzEnforcer.get_enforcer()
254+
enforcer.load_policy()
255+
return enforcer.delete_roles_for_user_in_domain(
246256
subject.namespaced_key, role.namespaced_key, scope.namespaced_key
247257
)
248258

@@ -299,10 +309,11 @@ def get_subject_role_assignments_in_scope(
299309
Returns:
300310
list[RoleAssignmentData]: A list of role assignments for the subject in the scope.
301311
"""
302-
AuthzEnforcer.get_enforcer().load_policy()
312+
enforcer = AuthzEnforcer.get_enforcer()
313+
enforcer.load_policy()
303314
# TODO: we still need to get the remaining data for the role like email, etc
304315
role_assignments = []
305-
for namespaced_key in AuthzEnforcer.get_enforcer().get_roles_for_user_in_domain(
316+
for namespaced_key in enforcer.get_roles_for_user_in_domain(
306317
subject.namespaced_key, scope.namespaced_key
307318
):
308319
role = RoleData(namespaced_key=namespaced_key)
@@ -398,8 +409,7 @@ def get_subjects_for_role(role: RoleData) -> list[SubjectData]:
398409
Returns:
399410
list[SubjectData]: A list of subjects assigned to the specified role.
400411
"""
401-
policies = AuthzEnforcer.get_enforcer().get_filtered_grouping_policy(
402-
GroupingPolicyIndex.ROLE.value,
403-
role.namespaced_key
404-
)
412+
enforcer = AuthzEnforcer.get_enforcer()
413+
enforcer.load_policy()
414+
policies = enforcer.get_filtered_grouping_policy(GroupingPolicyIndex.ROLE.value, role.namespaced_key)
405415
return [SubjectData(namespaced_key=policy[GroupingPolicyIndex.SUBJECT.value]) for policy in policies]

openedx_authz/tests/api/test_roles.py

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -98,16 +98,6 @@ def setUpClass(cls):
9898
super().setUpClass()
9999
cls._seed_database_with_policies()
100100

101-
def setUp(self):
102-
"""Set up test environment."""
103-
super().setUp()
104-
global_enforcer.load_policy() # Load policies before each test to simulate fresh start
105-
106-
def tearDown(self):
107-
"""Clean up after each test to ensure isolation."""
108-
super().tearDown()
109-
global_enforcer.clear_policy() # Clear policies after each test to ensure isolation
110-
111101

112102
class RolesTestSetupMixin(BaseRolesTestCase):
113103
"""Test case with comprehensive role assignments for general roles testing."""

0 commit comments

Comments
 (0)