summaryrefslogtreecommitdiff
path: root/framework-s/java
diff options
context:
space:
mode:
author Richard MacGregor <rmacgregor@google.com> 2024-12-09 10:17:53 -0800
committer Richard MacGregor <rmacgregor@google.com> 2024-12-10 10:36:56 -0800
commit01f6f18575f7986878d251a57abfeef40e4d5ff9 (patch)
tree9b2b6af8cda043f8d3dace5a8064a510874d860b /framework-s/java
parentf3775f7f4cb1318e5c792c13b24c9542bd87a627 (diff)
Followup fixes for RoleManager test api
Followup fixes for RoleManager get/setDefaultHoldersForTest and is/setRoleVisibleForTest LOW_COVERAGE_REASON=b/382484309 Relnote: N/A Flag: com.android.permission.flags.cross_user_role_enabled Bug: 381315745 Test: atest RoleManagerTest Test: atest RoleManagerMultiUserTest Change-Id: I19ddcd4a71682f89ccf32322833db3404f46c86f
Diffstat (limited to 'framework-s/java')
-rw-r--r--framework-s/java/android/app/role/IRoleManager.aidl9
-rw-r--r--framework-s/java/android/app/role/RoleManager.java18
2 files changed, 17 insertions, 10 deletions
diff --git a/framework-s/java/android/app/role/IRoleManager.aidl b/framework-s/java/android/app/role/IRoleManager.aidl
index dc5bc8cb4..cf98a6016 100644
--- a/framework-s/java/android/app/role/IRoleManager.aidl
+++ b/framework-s/java/android/app/role/IRoleManager.aidl
@@ -85,11 +85,12 @@ interface IRoleManager {
boolean isApplicationVisibleForRoleAsUser(in String roleName, in String packageName,
int userId);
- List<String> getDefaultHoldersForTest(in String roleName);
+ List<String> getDefaultHoldersForTestAsUser(in String roleName, int userId);
- void setDefaultHoldersForTest(in String roleName, in List<String> packageNames);
+ void setDefaultHoldersForTestAsUser(in String roleName, in List<String> packageNames,
+ int userId);
- boolean isRoleVisibleForTest(in String roleName);
+ boolean isRoleVisibleForTestAsUser(in String roleName, int userId);
- void setRoleVisibleForTest(in String roleName, boolean visible);
+ void setRoleVisibleForTestAsUser(in String roleName, boolean visible, int userId);
}
diff --git a/framework-s/java/android/app/role/RoleManager.java b/framework-s/java/android/app/role/RoleManager.java
index 42445b4d6..65b513e9d 100644
--- a/framework-s/java/android/app/role/RoleManager.java
+++ b/framework-s/java/android/app/role/RoleManager.java
@@ -1189,7 +1189,8 @@ public final class RoleManager {
public List<String> getDefaultHoldersForTest(@NonNull String roleName) {
Preconditions.checkStringNotEmpty(roleName, "roleName cannot be null or empty");
try {
- return mService.getDefaultHoldersForTest(roleName);
+ return mService.getDefaultHoldersForTestAsUser(roleName,
+ mContext.getUser().getIdentifier());
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
@@ -1203,9 +1204,10 @@ public final class RoleManager {
* not persisted.
* <p>
* Throws {@link IllegalArgumentException} if role is not a test role
+ * Throws {@link NullPointerException} if packageNames is {@code null}
*
* @param roleName the name of the role to set test default holders for
- * @param packageNames a list of package names of the default holders or {@code null} to unset
+ * @param packageNames a list of package names of the default holders, or an empty list to unset
*
* @hide
*/
@@ -1215,10 +1217,12 @@ public final class RoleManager {
@UserHandleAware
@FlaggedApi(com.android.permission.flags.Flags.FLAG_CROSS_USER_ROLE_ENABLED)
public void setDefaultHoldersForTest(
- @NonNull String roleName, @Nullable List<String> packageNames) {
+ @NonNull String roleName, @NonNull List<String> packageNames) {
Preconditions.checkStringNotEmpty(roleName, "roleName cannot be null or empty");
+ Objects.requireNonNull(packageNames, "packageNames cannot be null");
try {
- mService.setDefaultHoldersForTest(roleName, packageNames);
+ mService.setDefaultHoldersForTestAsUser(roleName, packageNames,
+ mContext.getUser().getIdentifier());
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
@@ -1245,7 +1249,8 @@ public final class RoleManager {
public boolean isRoleVisibleForTest(@NonNull String roleName) {
Preconditions.checkStringNotEmpty(roleName, "roleName cannot be null or empty");
try {
- return mService.isRoleVisibleForTest(roleName);
+ return mService.isRoleVisibleForTestAsUser(roleName,
+ mContext.getUser().getIdentifier());
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
@@ -1272,7 +1277,8 @@ public final class RoleManager {
public void setRoleVisibleForTest(@NonNull String roleName, boolean visible) {
Preconditions.checkStringNotEmpty(roleName, "roleName cannot be null or empty");
try {
- mService.setRoleVisibleForTest(roleName, visible);
+ mService.setRoleVisibleForTestAsUser(roleName, visible,
+ mContext.getUser().getIdentifier());
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}