Add cts test for new PermissionManager api
Adding checkPermissionForDataDeliveryFromDataSource
Bug: 195144968
Tag: #refactor
Test: Build
Change-Id: I0d1abe0b5411e458116cf3be5b9d732766775fed
diff --git a/tests/tests/permission5/src/android/permission5/cts/PermissionCheckerTest.kt b/tests/tests/permission5/src/android/permission5/cts/PermissionCheckerTest.kt
index c7f175d..b7762c6 100644
--- a/tests/tests/permission5/src/android/permission5/cts/PermissionCheckerTest.kt
+++ b/tests/tests/permission5/src/android/permission5/cts/PermissionCheckerTest.kt
@@ -113,6 +113,43 @@
}
}
+ @Test
+ fun testCheckPermissionForDataDeliveryFromDataSource() {
+ runWithShellPermissionIdentity({
+ assertThat(
+ permissionManager.checkPermissionForDataDeliveryFromDataSource(
+ HELPER_PERMISSION_NAME, helperAttributionSource, null
+ )
+ ).isEqualTo(PermissionManager.PERMISSION_GRANTED)
+ }, android.Manifest.permission.UPDATE_APP_OPS_STATS)
+
+ runWithShellPermissionIdentity {
+ appOpsManager.setUidMode(HELPER_APP_OP_NAME, helperUid, AppOpsManager.MODE_IGNORED)
+ }
+
+ runWithShellPermissionIdentity({
+ assertThat(
+ permissionManager.checkPermissionForDataDeliveryFromDataSource(
+ HELPER_PERMISSION_NAME, helperAttributionSource, null
+ )
+ ).isEqualTo(PermissionManager.PERMISSION_SOFT_DENIED)
+ }, android.Manifest.permission.UPDATE_APP_OPS_STATS)
+
+ runWithShellPermissionIdentity {
+ packageManager.revokeRuntimePermission(
+ HELPER_PACKAGE_NAME, HELPER_PERMISSION_NAME, currentUser
+ )
+ }
+
+ runWithShellPermissionIdentity({
+ assertThat(
+ permissionManager.checkPermissionForDataDeliveryFromDataSource(
+ HELPER_PERMISSION_NAME, helperAttributionSource, null
+ )
+ ).isEqualTo(PermissionManager.PERMISSION_SOFT_DENIED)
+ }, android.Manifest.permission.UPDATE_APP_OPS_STATS)
+ }
+
companion object {
private const val HELPER_PACKAGE_NAME = "android.permission5.cts.blamed"
private const val HELPER_PERMISSION_NAME = android.Manifest.permission.READ_CALENDAR