Skip to content

Commit bf7e447

Browse files
refactor: drop black changes for not modified files
1 parent f39a330 commit bf7e447

4 files changed

Lines changed: 47 additions & 225 deletions

File tree

openedx_authz/tests/test_commands.py

Lines changed: 13 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,7 @@
1212
from django.core.management.base import CommandError
1313

1414
from openedx_authz.management.commands.enforcement import Command as EnforcementCommand
15-
from openedx_authz.tests.test_utils import (
16-
make_action_key,
17-
make_scope_key,
18-
make_user_key,
19-
)
15+
from openedx_authz.tests.test_utils import make_action_key, make_scope_key, make_user_key
2016

2117

2218
# pylint: disable=protected-access
@@ -46,10 +42,7 @@ def test_requires_policy_file_argument(self):
4642
with self.assertRaises(CommandError) as ctx:
4743
call_command("enforcement")
4844

49-
self.assertEqual(
50-
"Error: the following arguments are required: --policy-file-path",
51-
str(ctx.exception),
52-
)
45+
self.assertEqual("Error: the following arguments are required: --policy-file-path", str(ctx.exception))
5346

5447
def test_policy_file_not_found_raises(self):
5548
"""Test that command errors when the provided policy file does not exist."""
@@ -60,18 +53,13 @@ def test_policy_file_not_found_raises(self):
6053

6154
self.assertEqual(f"Policy file not found: {non_existent}", str(ctx.exception))
6255

63-
@patch.object(
64-
EnforcementCommand, "_get_file_path", return_value="invalid/path/model.conf"
65-
)
56+
@patch.object(EnforcementCommand, "_get_file_path", return_value="invalid/path/model.conf")
6657
def test_model_file_not_found_raises(self, mock_get_file_path: Mock):
6758
"""Test that command errors when the provided model file does not exist."""
6859
with self.assertRaises(CommandError) as ctx:
6960
call_command("enforcement", policy_file_path=self.policy_file_path.name)
7061

71-
self.assertEqual(
72-
f"Model file not found: {mock_get_file_path.return_value}",
73-
str(ctx.exception),
74-
)
62+
self.assertEqual(f"Model file not found: {mock_get_file_path.return_value}", str(ctx.exception))
7563

7664
@patch("openedx_authz.management.commands.enforcement.casbin.Enforcer")
7765
def test_error_creating_enforcer_raises(self, mock_enforcer_cls: Mock):
@@ -81,16 +69,11 @@ def test_error_creating_enforcer_raises(self, mock_enforcer_cls: Mock):
8169
with self.assertRaises(CommandError) as ctx:
8270
call_command("enforcement", policy_file_path=self.policy_file_path.name)
8371

84-
self.assertEqual(
85-
"Error creating Casbin enforcer: Enforcer creation error",
86-
str(ctx.exception),
87-
)
72+
self.assertEqual("Error creating Casbin enforcer: Enforcer creation error", str(ctx.exception))
8873

8974
@patch("openedx_authz.management.commands.enforcement.casbin.Enforcer")
9075
@patch.object(EnforcementCommand, "_run_interactive_mode")
91-
def test_successful_run_prints_summary(
92-
self, mock_run_interactive: Mock, mock_enforcer_cls: Mock
93-
):
76+
def test_successful_run_prints_summary(self, mock_run_interactive: Mock, mock_enforcer_cls: Mock):
9477
"""
9578
Test successful command execution with policy file and interactive mode.
9679
When files exist, command should create enforcer, print counts, and call interactive loop.
@@ -107,11 +90,7 @@ def test_successful_run_prints_summary(
10790
mock_enforcer.get_named_grouping_policy.return_value = action_grouping
10891
mock_enforcer_cls.return_value = mock_enforcer
10992

110-
call_command(
111-
"enforcement",
112-
policy_file_path=self.policy_file_path.name,
113-
stdout=self.buffer,
114-
)
93+
call_command("enforcement", policy_file_path=self.policy_file_path.name, stdout=self.buffer)
11594

11695
output = self.buffer.getvalue()
11796
self.assertIn("Casbin Interactive Enforcement", output)
@@ -128,13 +107,8 @@ def test_run_interactive_mode_displays_help(self):
128107

129108
example_text = f"Example: {make_user_key('alice')} {make_action_key('read')} {make_scope_key('org', 'OpenedX')}"
130109
self.assertIn("Interactive Mode", self.buffer.getvalue())
131-
self.assertIn(
132-
"Test custom enforcement requests interactively.", self.buffer.getvalue()
133-
)
134-
self.assertIn(
135-
"Enter 'quit', 'exit', or 'q' to exit the interactive mode.",
136-
self.buffer.getvalue(),
137-
)
110+
self.assertIn("Test custom enforcement requests interactively.", self.buffer.getvalue())
111+
self.assertIn("Enter 'quit', 'exit', or 'q' to exit the interactive mode.", self.buffer.getvalue())
138112
self.assertIn("Format: subject action scope", self.buffer.getvalue())
139113
self.assertIn(example_text, self.buffer.getvalue())
140114

@@ -148,17 +122,9 @@ def test_run_interactive_mode_maintains_interactive_loop(self):
148122
self.assertEqual(mock_input.call_count, len(input_values))
149123

150124
@data(
151-
[
152-
f"{make_user_key('alice')} {make_action_key('read')} {make_scope_key('org', 'OpenedX')}"
153-
],
154-
[
155-
f"{make_user_key('bob')} {make_action_key('read')} {make_scope_key('org', 'OpenedX')}"
156-
]
157-
* 5,
158-
[
159-
f"{make_user_key('john')} {make_action_key('read')} {make_scope_key('org', 'OpenedX')}"
160-
]
161-
* 10,
125+
[f"{make_user_key('alice')} {make_action_key('read')} {make_scope_key('org', 'OpenedX')}"],
126+
[f"{make_user_key('bob')} {make_action_key('read')} {make_scope_key('org', 'OpenedX')}"] * 5,
127+
[f"{make_user_key('john')} {make_action_key('read')} {make_scope_key('org', 'OpenedX')}"] * 10,
162128
)
163129
def test_run_interactive_mode_processes_request(self, user_input: list[str]):
164130
"""Test that the interactive mode processes the request."""
@@ -216,9 +182,7 @@ def test_interactive_request_invalid_format(self):
216182
invalid_output = self.buffer.getvalue()
217183
self.assertIn("✗ Invalid format. Expected 3 parts, got 2", invalid_output)
218184
self.assertIn("Format: subject action scope", invalid_output)
219-
self.assertIn(
220-
f"Example: {user_input} {make_scope_key('org', 'OpenedX')}", invalid_output
221-
)
185+
self.assertIn(f"Example: {user_input} {make_scope_key('org', 'OpenedX')}", invalid_output)
222186

223187
@data(ValueError(), IndexError(), TypeError())
224188
def test_interactive_request_error(self, exception: Exception):

openedx_authz/tests/test_enforcement.py

Lines changed: 23 additions & 145 deletions
Original file line numberDiff line numberDiff line change
@@ -139,9 +139,7 @@ class SystemWideRoleTests(CasbinEnforcementTestCase):
139139
{
140140
"subject": make_user_key("user-1"),
141141
"action": make_action_key("manage"),
142-
"scope": make_scope_key(
143-
"course", "course-v1:any-org+any-course+any-course-run"
144-
),
142+
"scope": make_scope_key("course", "course-v1:any-org+any-course+any-course-run"),
145143
"expected_result": True,
146144
},
147145
{
@@ -169,19 +167,8 @@ class ActionGroupingTests(CasbinEnforcementTestCase):
169167
"""
170168

171169
POLICY = [
172-
[
173-
"p",
174-
make_role_key("role-1"),
175-
make_action_key("manage"),
176-
make_scope_key("org", "*"),
177-
"allow",
178-
],
179-
[
180-
"g",
181-
make_user_key("user-1"),
182-
make_role_key("role-1"),
183-
make_scope_key("org", "any-org"),
184-
],
170+
["p", make_role_key("role-1"), make_action_key("manage"), make_scope_key("org", "*"), "allow"],
171+
["g", make_user_key("user-1"), make_role_key("role-1"), make_scope_key("org", "any-org")],
185172
] + COMMON_ACTION_GROUPING
186173

187174
CASES = [
@@ -229,112 +216,29 @@ class RoleAssignmentTests(CasbinEnforcementTestCase):
229216
POLICY = [
230217
# Policies
231218
["p", make_role_key("platform_admin"), make_action_key("manage"), "*", "allow"],
232-
[
233-
"p",
234-
make_role_key("org_admin"),
235-
make_action_key("manage"),
236-
make_scope_key("org", "*"),
237-
"allow",
238-
],
239-
[
240-
"p",
241-
make_role_key("org_editor"),
242-
make_action_key("edit"),
243-
make_scope_key("org", "*"),
244-
"allow",
245-
],
246-
[
247-
"p",
248-
make_role_key("org_author"),
249-
make_action_key("write"),
250-
make_scope_key("org", "*"),
251-
"allow",
252-
],
253-
[
254-
"p",
255-
make_role_key("course_admin"),
256-
make_action_key("manage"),
257-
make_scope_key("course", "*"),
258-
"allow",
259-
],
260-
[
261-
"p",
262-
make_role_key("library_admin"),
263-
make_action_key("manage"),
264-
make_scope_key("lib", "*"),
265-
"allow",
266-
],
267-
[
268-
"p",
269-
make_role_key("library_editor"),
270-
make_action_key("edit"),
271-
make_scope_key("lib", "*"),
272-
"allow",
273-
],
274-
[
275-
"p",
276-
make_role_key("library_reviewer"),
277-
make_action_key("read"),
278-
make_scope_key("lib", "*"),
279-
"allow",
280-
],
281-
[
282-
"p",
283-
make_role_key("library_author"),
284-
make_action_key("write"),
285-
make_scope_key("lib", "*"),
286-
"allow",
287-
],
219+
["p", make_role_key("org_admin"), make_action_key("manage"), make_scope_key("org", "*"), "allow"],
220+
["p", make_role_key("org_editor"), make_action_key("edit"), make_scope_key("org", "*"), "allow"],
221+
["p", make_role_key("org_author"), make_action_key("write"), make_scope_key("org", "*"), "allow"],
222+
["p", make_role_key("course_admin"), make_action_key("manage"), make_scope_key("course", "*"), "allow"],
223+
["p", make_role_key("library_admin"), make_action_key("manage"), make_scope_key("lib", "*"), "allow"],
224+
["p", make_role_key("library_editor"), make_action_key("edit"), make_scope_key("lib", "*"), "allow"],
225+
["p", make_role_key("library_reviewer"), make_action_key("read"), make_scope_key("lib", "*"), "allow"],
226+
["p", make_role_key("library_author"), make_action_key("write"), make_scope_key("lib", "*"), "allow"],
288227
# Role assignments
289228
["g", make_user_key("user-1"), make_role_key("platform_admin"), "*"],
290-
[
291-
"g",
292-
make_user_key("user-2"),
293-
make_role_key("org_admin"),
294-
make_scope_key("org", "any-org"),
295-
],
296-
[
297-
"g",
298-
make_user_key("user-3"),
299-
make_role_key("org_editor"),
300-
make_scope_key("org", "any-org"),
301-
],
302-
[
303-
"g",
304-
make_user_key("user-4"),
305-
make_role_key("org_author"),
306-
make_scope_key("org", "any-org"),
307-
],
229+
["g", make_user_key("user-2"), make_role_key("org_admin"), make_scope_key("org", "any-org")],
230+
["g", make_user_key("user-3"), make_role_key("org_editor"), make_scope_key("org", "any-org")],
231+
["g", make_user_key("user-4"), make_role_key("org_author"), make_scope_key("org", "any-org")],
308232
[
309233
"g",
310234
make_user_key("user-5"),
311235
make_role_key("course_admin"),
312236
make_scope_key("course", "course-v1:any-org+any-course+any-course-run"),
313237
],
314-
[
315-
"g",
316-
make_user_key("user-6"),
317-
make_role_key("library_admin"),
318-
make_library_key("lib@any-org@any-library"),
319-
],
320-
[
321-
"g",
322-
make_user_key("user-7"),
323-
make_role_key("library_editor"),
324-
make_library_key("lib@any-org@any-library"),
325-
],
326-
[
327-
"g",
328-
make_user_key("user-8"),
329-
make_role_key("library_reviewer"),
330-
make_library_key("lib@any-org@any-library"),
331-
],
332-
[
333-
"g",
334-
make_user_key("user-9"),
335-
make_role_key("library_author"),
336-
make_library_key("lib@any-org@any-library"),
337-
],
238+
["g", make_user_key("user-6"), make_role_key("library_admin"), make_library_key("lib@any-org@any-library")],
239+
["g", make_user_key("user-7"), make_role_key("library_editor"), make_library_key("lib@any-org@any-library")],
240+
["g", make_user_key("user-8"), make_role_key("library_reviewer"), make_library_key("lib@any-org@any-library")],
241+
["g", make_user_key("user-9"), make_role_key("library_author"), make_library_key("lib@any-org@any-library")],
338242
] + COMMON_ACTION_GROUPING
339243

340244
CASES = [
@@ -365,9 +269,7 @@ class RoleAssignmentTests(CasbinEnforcementTestCase):
365269
{
366270
"subject": make_user_key("user-5"),
367271
"action": make_action_key("manage"),
368-
"scope": make_scope_key(
369-
"course", "course-v1:any-org+any-course+any-course-run"
370-
),
272+
"scope": make_scope_key("course", "course-v1:any-org+any-course+any-course-run"),
371273
"expected_result": True,
372274
},
373275
{
@@ -412,13 +314,7 @@ class DeniedAccessTests(CasbinEnforcementTestCase):
412314

413315
POLICY = [
414316
["p", make_role_key("platform_admin"), make_action_key("manage"), "*", "allow"],
415-
[
416-
"p",
417-
make_role_key("platform_admin"),
418-
make_action_key("manage"),
419-
make_scope_key("org", "restricted-org"),
420-
"deny",
421-
],
317+
["p", make_role_key("platform_admin"), make_action_key("manage"), make_scope_key("org", "restricted-org"), "deny"],
422318
["g", make_user_key("user-1"), make_role_key("platform_admin"), "*"],
423319
] + COMMON_ACTION_GROUPING
424320

@@ -479,27 +375,9 @@ class WildcardScopeTests(CasbinEnforcementTestCase):
479375
POLICY = [
480376
# Policies
481377
["p", make_role_key("platform_admin"), make_action_key("manage"), "*", "allow"],
482-
[
483-
"p",
484-
make_role_key("org_admin"),
485-
make_action_key("manage"),
486-
make_scope_key("org", "*"),
487-
"allow",
488-
],
489-
[
490-
"p",
491-
make_role_key("course_admin"),
492-
make_action_key("manage"),
493-
make_scope_key("course", "*"),
494-
"allow",
495-
],
496-
[
497-
"p",
498-
make_role_key("library_admin"),
499-
make_action_key("manage"),
500-
make_scope_key("lib", "*"),
501-
"allow",
502-
],
378+
["p", make_role_key("org_admin"), make_action_key("manage"), make_scope_key("org", "*"), "allow"],
379+
["p", make_role_key("course_admin"), make_action_key("manage"), make_scope_key("course", "*"), "allow"],
380+
["p", make_role_key("library_admin"), make_action_key("manage"), make_scope_key("lib", "*"), "allow"],
503381
# Role assignments
504382
["g", make_user_key("user-1"), make_role_key("platform_admin"), "*"],
505383
["g", make_user_key("user-2"), make_role_key("org_admin"), "*"],

openedx_authz/tests/test_filter.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ def test_initialization_with_multiple_attributes(self):
4646
ptype=["p"],
4747
v0=[make_user_key("alice")],
4848
v1=[make_action_key("read")],
49-
v2=[make_scope_key("org", "MIT")],
49+
v2=[make_scope_key("org", "MIT")]
5050
)
5151
self.assertEqual(f.ptype, ["p"])
5252
self.assertEqual(f.v0, [make_user_key("alice")])
@@ -138,7 +138,7 @@ def test_filter_role_assignments(self):
138138
ptype=["g"],
139139
v0=[make_user_key("alice")],
140140
v1=[make_role_key("admin")],
141-
v2=[make_scope_key("org", "MIT")],
141+
v2=[make_scope_key("org", "MIT")]
142142
)
143143
self.assertEqual(f.ptype, ["g"])
144144
self.assertEqual(f.v0, [make_user_key("alice")])
@@ -171,9 +171,7 @@ def test_filter_deny_policies(self):
171171

172172
def test_filter_wildcard_resources(self):
173173
"""Test filter for wildcard resource patterns."""
174-
f = Filter(
175-
ptype=["p"], v2=[make_scope_key("lib", "*"), make_scope_key("course", "*")]
176-
)
174+
f = Filter(ptype=["p"], v2=[make_scope_key("lib", "*"), make_scope_key("course", "*")])
177175
self.assertEqual(f.ptype, ["p"])
178176
self.assertIn(make_scope_key("lib", "*"), f.v2)
179177
self.assertIn(make_scope_key("course", "*"), f.v2)

0 commit comments

Comments
 (0)