blob: fb4dfb4e08268f2fa196e9761384bf7369722b37 [file] [log] [blame]
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.permissioncontroller.permission.ui
import android.permission.cts.PermissionUtils.grantPermission
import android.permission.cts.PermissionUtils.install
import android.permission.cts.PermissionUtils.uninstallApp
// Test Apps' APK files
private const val APK_DIRECTORY = "/data/local/tmp/permissioncontroller/tests/inprocess/"
private const val LOCATION_PERM_USER_APK = "$APK_DIRECTORY/AppThatRequestsLocation.apk"
private const val CAMERA_PERM_USER_APK = "$APK_DIRECTORY/AppThatUsesCameraPermission.apk"
private const val ADDITIONAL_PERM_USER_APK = "$APK_DIRECTORY/AppThatUsesAdditionalPermission.apk"
private const val TWO_ADDITIONAL_PERM_USER_APK =
"$APK_DIRECTORY/AppThatUsesTwoAdditionalPermission.apk"
private const val ADDITIONAL_PERM_DEFINER_APK =
"$APK_DIRECTORY/AppThatDefinesAdditionalPermission.apk"
// All 4 of the AppThatUses_X_Permission(s) applications share the same package name.
private const val PERM_USER_PACKAGE =
"com.android.permissioncontroller.tests.appthatrequestpermission"
private const val PERM_DEFINER_PACKAGE =
"com.android.permissioncontroller.tests.appthatdefinespermission"
const val CAMERA_TEST_APP_LABEL = "CameraRequestApp"
const val TEST_APP_DEFINED_PERMISSION_A = "com.android.permissioncontroller.tests.A"
const val TEST_APP_DEFINED_PERMISSION_B = "com.android.permissioncontroller.tests.B"
const val TEST_APP_DEFINED_PERMISSION_C = "com.android.permissioncontroller.tests.C"
const val TEST_APP_DEFINED_PERMISSION_A_LABEL = "Permission A"
const val TEST_APP_DEFINED_PERMISSION_B_LABEL = "Permission B"
const val TEST_APP_DEFINED_PERMISSION_C_LABEL = "Permission C"
fun installTestAppThatRequestsLocation() = install(LOCATION_PERM_USER_APK)
fun installTestAppThatUsesCameraPermission() = install(CAMERA_PERM_USER_APK)
fun installTestAppThatUsesAdditionalPermission() = install(ADDITIONAL_PERM_USER_APK)
fun installTestAppThatUsesTwoAdditionalPermissions() = install(TWO_ADDITIONAL_PERM_USER_APK)
fun installTestAppThatDefinesAdditionalPermissions() = install(ADDITIONAL_PERM_DEFINER_APK)
fun uninstallTestApps() {
uninstallApp(PERM_USER_PACKAGE)
uninstallApp(PERM_DEFINER_PACKAGE)
}
fun grantTestAppPermission(permission: String) = grantPermission(PERM_USER_PACKAGE, permission)