Skip to content

Commit 06655cd

Browse files
authored
chore: more code clean up (#293)
1 parent 16d36ad commit 06655cd

File tree

2 files changed

+31
-32
lines changed

2 files changed

+31
-32
lines changed

adbe/adb_enhanced.py

Lines changed: 29 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -920,29 +920,35 @@ def get_permission_group(args) -> str | None:
920920
# Android keeps emptying these groups so that granted permissions are denied
921921
# but the expectation of this tool is to do the right mapping
922922
def _get_hardcoded_permissions_for_group(permission_group) -> list[str]:
923-
if permission_group == "android.permission-group.CONTACTS":
924-
return ["android.permission.READ_CONTACTS", "android.permission.WRITE_CONTACTS"]
925-
if permission_group == "android.permission-group.PHONE":
926-
return ["android.permission.READ_PHONE_STATE", "android.permission.READ_PHONE_NUMBERS",
927-
"android.permission.CALL_PHONE", "android.permission.ANSWER_PHONE_CALLS"]
928-
if permission_group == "android.permission-group.CALENDAR":
929-
return ["android.permission.READ_CALENDAR", "android.permission.WRITE_CALENDAR"]
930-
if permission_group == "android.permission-group.CAMERA":
931-
return ["android.permission.CAMERA"]
932-
if permission_group == "android.permission-group.SENSORS":
933-
return ["android.permission.BODY_SENSORS"]
934-
if permission_group == "android.permission-group.LOCATION":
935-
return ["android.permission.ACCESS_FINE_LOCATION", "android.permission.ACCESS_COARSE_LOCATION"]
936-
if permission_group == "android.permission-group.STORAGE":
937-
return ["android.permission.READ_EXTERNAL_STORAGE", "android.permission.WRITE_EXTERNAL_STORAGE"]
938-
if permission_group == "android.permission-group.MICROPHONE":
939-
return ["android.permission.RECORD_AUDIO"]
940-
if permission_group == "android.special-permission-group.NOTIFICATIONS":
941-
return ["android.permission.POST_NOTIFICATIONS"]
942-
if permission_group == "android.permission-group.SMS":
943-
return ["android.permission.READ_SMS", "android.permission.RECEIVE_SMS", "android.permission.SEND_SMS"]
944-
print_verbose(f"Unexpected permission group: {permission_group}")
945-
return []
923+
match permission_group:
924+
case "android.permission-group.CONTACTS":
925+
return ["android.permission.READ_CONTACTS", "android.permission.WRITE_CONTACTS"]
926+
case "android.permission-group.PHONE":
927+
return [
928+
"android.permission.READ_PHONE_STATE",
929+
"android.permission.READ_PHONE_NUMBERS",
930+
"android.permission.CALL_PHONE",
931+
"android.permission.ANSWER_PHONE_CALLS"
932+
]
933+
case "android.permission-group.CALENDAR":
934+
return ["android.permission.READ_CALENDAR", "android.permission.WRITE_CALENDAR"]
935+
case "android.permission-group.CAMERA":
936+
return ["android.permission.CAMERA"]
937+
case "android.permission-group.SENSORS":
938+
return ["android.permission.BODY_SENSORS"]
939+
case "android.permission-group.LOCATION":
940+
return ["android.permission.ACCESS_FINE_LOCATION", "android.permission.ACCESS_COARSE_LOCATION"]
941+
case "android.permission-group.STORAGE":
942+
return ["android.permission.READ_EXTERNAL_STORAGE", "android.permission.WRITE_EXTERNAL_STORAGE"]
943+
case "android.permission-group.MICROPHONE":
944+
return ["android.permission.RECORD_AUDIO"]
945+
case "android.special-permission-group.NOTIFICATIONS":
946+
return ["android.permission.POST_NOTIFICATIONS"]
947+
case "android.permission-group.SMS":
948+
return ["android.permission.READ_SMS", "android.permission.RECEIVE_SMS", "android.permission.SEND_SMS"]
949+
case _:
950+
print_verbose(f"Unexpected permission group: {permission_group}")
951+
return [] # Default case if no match found
946952

947953

948954
# Pass the full-qualified permission group name to this method.

tests/adbe_tests.py

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -171,19 +171,12 @@ def test_permissions_grant_revoke() -> None:
171171

172172

173173
# Cache the SDK version after first use
174-
_sdk_version = None
175-
176-
174+
@functools.lru_cache(maxsize=1)
177175
def _get_device_sdk_version():
178-
global _sdk_version
179-
# Return the cached value, if available
180-
if _sdk_version is not None:
181-
return _sdk_version
182176
stdout_data, _ = _assert_success("devices")
183177
regex_result = re.search(r"SDK version: ([0-9]+)", stdout_data)
184178
assert regex_result is not None
185-
_sdk_version = int(regex_result.group(1))
186-
return _sdk_version
179+
return int(regex_result.group(1))
187180

188181

189182
def test_apps() -> None:

0 commit comments

Comments
 (0)