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