Fix apex_sepolicy_tests_test
check_rule() should collect errors and return them. The previous fix was
early returing when there's a successful case.
Bug: 285225556
Test: atest apex_sepolicy_tests_test
Change-Id: I71c207210c565ab280f8794d201c074812b49acb
diff --git a/tests/apex_sepolicy_tests.py b/tests/apex_sepolicy_tests.py
index c8ecc60..518ebbc 100644
--- a/tests/apex_sepolicy_tests.py
+++ b/tests/apex_sepolicy_tests.py
@@ -81,6 +81,7 @@
def check_rule(pol, path: str, tcontext: str, rule: Rule) -> List[str]:
"""Returns error message if scontext can't read the target"""
+ errors = []
match rule:
case AllowRead(tclass, scontext):
# Test every source in scontext(set)
@@ -90,9 +91,10 @@
tclass={tclass},
perms={'read'}))
if len(te_rules) > 0:
- return [] # no errors
+ continue # no errors
- return [f"Error: {path}: {s} can't read. (tcontext={tcontext})"]
+ errors.append(f"Error: {path}: {s} can't read. (tcontext={tcontext})")
+ return errors
rules = [