1package { 2 default_team: "trendy_team_enterprise", 3 default_applicable_licenses: ["Android-Apache-2.0"], 4} 5 6java_library_static { 7 name: "TestApp_JavaProtos", 8 sdk_version: "core_current", 9 host_supported: true, 10 proto: { 11 type: "lite", 12 }, 13 srcs: ["src/library/main/proto/testapp_protos.proto"], 14} 15 16android_library { 17 name: "TestApp_TestApps", 18 sdk_version: "system_current", 19 srcs: [ 20 "src/testapps/main/java/**/*.java", 21 "src/testapps/main/java/**/*.kt", 22 ], 23 static_libs: [ 24 "EventLib", 25 "TestApp_Annotations", 26 "ConnectedAppsSDK", 27 "ConnectedAppsSDK_Annotations", 28 "androidx.annotation_annotation", 29 "RemoteFrameworkClasses", 30 "TestApisReflection", 31 ], 32 manifest: "src/testapps/main/AndroidManifest.xml", 33 min_sdk_version: "29", 34 plugins: [ 35 "ConnectedAppsSDK_Processor", 36 "TestApp_Processor", 37 ], 38 lint: { 39 baseline_filename: "lint-baseline.xml", 40 }, 41} 42 43android_library { 44 name: "TestApp", 45 sdk_version: "system_current", 46 srcs: [ 47 "src/library/main/java/**/*.java", 48 "src/library/main/java/**/*.kt", 49 ], 50 static_libs: [ 51 "Nene", 52 "EventLib", 53 "Queryable", 54 "TestApp_Annotations", 55 "ConnectedAppsSDK", 56 "ConnectedAppsSDK_Annotations", 57 "androidx.annotation_annotation", 58 "TestApp_TestApps", 59 "TestApp_JavaProtos", 60 "QueryableCommonAndroid", 61 "auto_value_annotations", 62 ], 63 manifest: "src/library/main/AndroidManifest.xml", 64 min_sdk_version: "29", 65 assets: [ 66 ":TestApp_Apps", 67 ":TestApp_Metadata_Resources", 68 ], 69 plugins: [ 70 "ConnectedAppsSDK_Processor", 71 "TestApp_Processor", 72 "auto_annotation_plugin", 73 ], 74} 75 76android_test { 77 name: "TestAppTest", 78 srcs: [ 79 "src/test/java/**/*.java", 80 "src/test/java/**/*.kt", 81 ], 82 test_suites: [ 83 "general-tests", 84 ], 85 static_libs: [ 86 "Nene", 87 "TestApp", 88 "TestApp_TestApps", 89 "bedstead", 90 "bedstead-enterprise", 91 "EventLib", 92 "androidx.test.ext.junit", 93 "truth", 94 "testng", // for assertThrows 95 "bedstead-performance-analyzer", 96 ], 97 manifest: "src/test/AndroidManifest.xml", 98 min_sdk_version: "29", 99 plugins: ["auto_annotation_plugin"], 100} 101 102python_binary_host { 103 name: "index_testapps", 104 version: { 105 py3: { 106 embedded_launcher: true, 107 }, 108 }, 109 main: "tools/index/index_testapps.py", 110 srcs: [ 111 "tools/index/index_testapps.py", 112 "src/library/main/proto/testapp_protos.proto", 113 ], 114 proto: { 115 canonical_path_from_root: false, 116 }, 117} 118 119java_genrule { 120 name: "TestApp_Apps", 121 srcs: [ 122 ":EmptyTestApp", 123 ":NotEmptyTestApp", 124 ":DeviceAdminTestApp", 125 ":TestOnlyDeviceAdminTestApp", 126 ":LockTaskApp", 127 ":DelegateTestApp", 128 ":ContentTestApp", 129 ":DevicePolicyManagementRoleHolderTestApp", 130 ":RemoteDPCTestApp", 131 ":RemoteDPCTestAppTargetingV28", 132 ":RemoteDPCTestAppTargetingV30", 133 ":DialerApp", 134 ":SmsApp", 135 ":AccountManagementApp", 136 ":RemoteAccountAuthenticatorApp", 137 ":MLCTestApp", 138 ":MultipleActivitiesTestApp", 139 ":HeadlessDOSingleUserTestApp", 140 ":RemoteDeviceAdminTestApp", 141 ], 142 out: [ 143 "testapps/index.txt", 144 "testapps/EmptyTestApp.apk", 145 "testapps/NotEmptyTestApp.apk", 146 "testapps/DeviceAdminTestApp.apk", 147 "testapps/TestOnlyDeviceAdminTestApp.apk", 148 "testapps/LockTaskApp.apk", 149 "testapps/DelegateTestApp.apk", 150 "testapps/ContentTestApp.apk", 151 "testapps/DevicePolicyManagementRoleHolderTestApp.apk", 152 "testapps/RemoteDPCTestApp.apk", 153 "testapps/RemoteDPCTestAppTargetingV28.apk", 154 "testapps/RemoteDPCTestAppTargetingV30.apk", 155 "testapps/DialerApp.apk", 156 "testapps/SmsApp.apk", 157 "testapps/AccountManagementApp.apk", 158 "testapps/RemoteAccountAuthenticatorApp.apk", 159 "testapps/MLCTestApp.apk", 160 "testapps/MultipleActivitiesTestApp.apk", 161 "testapps/HeadlessDOSingleUserTestApp.apk", 162 "testapps/RemoteDeviceAdminTestApp.apk", 163 ], 164 tools: [ 165 "index_testapps", 166 "aapt2", 167 ], 168 cmd: "mkdir -p $(genDir)/testapps" + 169 " && cp $(location :EmptyTestApp) $(genDir)/testapps" + 170 " && cp $(location :NotEmptyTestApp) $(genDir)/testapps" + 171 " && cp $(location :DeviceAdminTestApp) $(genDir)/testapps" + 172 " && cp $(location :TestOnlyDeviceAdminTestApp) $(genDir)/testapps" + 173 " && cp $(location :LockTaskApp) $(genDir)/testapps" + 174 " && cp $(location :DelegateTestApp) $(genDir)/testapps" + 175 " && cp $(location :ContentTestApp) $(genDir)/testapps" + 176 " && cp $(location :DevicePolicyManagementRoleHolderTestApp) $(genDir)/testapps" + 177 " && cp $(location :RemoteDPCTestApp) $(genDir)/testapps" + 178 " && cp $(location :RemoteDPCTestAppTargetingV28) $(genDir)/testapps" + 179 " && cp $(location :RemoteDPCTestAppTargetingV30) $(genDir)/testapps" + 180 " && cp $(location :DialerApp) $(genDir)/testapps" + 181 " && cp $(location :SmsApp) $(genDir)/testapps" + 182 " && cp $(location :AccountManagementApp) $(genDir)/testapps" + 183 " && cp $(location :RemoteAccountAuthenticatorApp) $(genDir)/testapps" + 184 " && cp $(location :MLCTestApp) $(genDir)/testapps" + 185 " && cp $(location :MultipleActivitiesTestApp) $(genDir)/testapps" + 186 " && cp $(location :HeadlessDOSingleUserTestApp) $(genDir)/testapps" + 187 " && cp $(location :RemoteDeviceAdminTestApp) $(genDir)/testapps" + 188 " && $(location index_testapps) --directory $(genDir)/testapps --aapt2 $(location aapt2)", 189} 190 191java_genrule { 192 name: "TestApp_Metadata_Resources", 193 srcs: [ 194 "src/testapps/main/res/**/xml/*", 195 ], 196 out: [ 197 "resources/device_admin.xml", 198 "resources/headless_single_user_device_admin.xml", 199 "resources/no_headless_device_owner_device_admin.xml", 200 "resources/test_xml.xml", 201 ], 202 cmd: "mkdir -p $(genDir)/resources" + 203 " && cp $(in) $(genDir)/resources", 204} 205 206android_test_helper_app { 207 name: "EmptyTestApp", 208 static_libs: [ 209 "TestApp_TestApps", 210 ], 211 defaults: ["mts-target-sdk-version-current"], 212 manifest: "manifests/EmptyTestAppManifest.xml", 213 min_sdk_version: "29", 214 sdk_version: "system_current", 215} 216 217android_test_helper_app { 218 name: "NotEmptyTestApp", 219 static_libs: [ 220 "TestApp_TestApps", 221 ], 222 resource_dirs: ["src/testapps/main/res/test_resources"], 223 defaults: ["mts-target-sdk-version-current"], 224 manifest: "manifests/NotEmptyTestAppManifest.xml", 225 additional_manifests: ["CommonManifest.xml"], 226 min_sdk_version: "29", 227 sdk_version: "system_current", 228} 229 230android_test_helper_app { 231 name: "DeviceAdminTestApp", 232 static_libs: [ 233 "TestApp_TestApps", 234 ], 235 defaults: ["mts-target-sdk-version-current"], 236 resource_dirs: ["src/testapps/main/res/device_admin"], 237 manifest: "manifests/DeviceAdminManifest.xml", 238 additional_manifests: ["CommonManifest.xml"], 239 min_sdk_version: "29", 240 sdk_version: "system_current", 241} 242 243android_test_helper_app { 244 name: "HeadlessDOSingleUserTestApp", 245 static_libs: [ 246 "TestApp_TestApps", 247 ], 248 defaults: ["mts-target-sdk-version-current"], 249 resource_dirs: ["src/testapps/main/res/device_admin"], 250 manifest: "manifests/HeadlessDOSingleUserManifest.xml", 251 additional_manifests: ["CommonManifest.xml"], 252 min_sdk_version: "29", 253 sdk_version: "test_current", 254} 255 256android_test_helper_app { 257 name: "TestOnlyDeviceAdminTestApp", 258 static_libs: [ 259 "TestApp_TestApps", 260 ], 261 defaults: ["mts-target-sdk-version-current"], 262 resource_dirs: ["src/testapps/main/res/device_admin"], 263 manifest: "manifests/TestOnlyDeviceAdminManifest.xml", 264 additional_manifests: ["CommonManifest.xml"], 265 min_sdk_version: "29", 266 sdk_version: "system_current", 267} 268 269android_test_helper_app { 270 name: "LockTaskApp", 271 static_libs: [ 272 "TestApp_TestApps", 273 ], 274 defaults: ["mts-target-sdk-version-current"], 275 manifest: "manifests/LockTaskAppManifest.xml", 276 additional_manifests: ["CommonManifest.xml"], 277 min_sdk_version: "29", 278 sdk_version: "system_current", 279} 280 281android_test_helper_app { 282 name: "DelegateTestApp", 283 static_libs: [ 284 "TestApp_TestApps", 285 ], 286 defaults: ["mts-target-sdk-version-current"], 287 manifest: "manifests/DelegateManifest.xml", 288 additional_manifests: ["CommonManifest.xml"], 289 min_sdk_version: "29", 290 sdk_version: "system_current", 291} 292 293android_test_helper_app { 294 name: "ContentTestApp", 295 static_libs: [ 296 "TestApp_TestApps", 297 ], 298 defaults: ["mts-target-sdk-version-current"], 299 manifest: "manifests/ContentAppManifest.xml", 300 additional_manifests: ["CommonManifest.xml"], 301 min_sdk_version: "29", 302 sdk_version: "system_current", 303} 304 305android_test_helper_app { 306 name: "DevicePolicyManagementRoleHolderTestApp", 307 static_libs: [ 308 "TestApp_TestApps", 309 ], 310 defaults: ["mts-target-sdk-version-current"], 311 manifest: "manifests/DevicePolicyManagementRoleHolderManifest.xml", 312 additional_manifests: ["CommonManifest.xml"], 313 resource_dirs: ["src/testapps/main/res/device_admin"], 314 min_sdk_version: "29", 315 sdk_version: "system_current", 316} 317 318android_test_helper_app { 319 name: "RemoteDPCTestApp", 320 static_libs: [ 321 "TestApp_TestApps", 322 ], 323 defaults: ["mts-target-sdk-version-current"], 324 resource_dirs: ["src/testapps/main/res/device_admin"], 325 manifest: "manifests/RemoteDPCManifest.xml", 326 additional_manifests: ["CommonManifest.xml"], 327 min_sdk_version: "29", 328 sdk_version: "system_current", 329 target_sdk_version: "35", 330} 331 332android_test_helper_app { 333 name: "RemoteDPCTestAppTargetingV28", 334 static_libs: [ 335 "TestApp_TestApps", 336 ], 337 resource_dirs: ["src/testapps/main/res/device_admin"], 338 manifest: "manifests/RemoteDPCManifest.xml", 339 additional_manifests: ["CommonManifest.xml"], 340 aaptflags: [ 341 "--rename-manifest-package com.android.cts.RemoteDPCV28", 342 ], 343 min_sdk_version: "29", 344 target_sdk_version: "28", 345} 346 347android_test_helper_app { 348 name: "RemoteDPCTestAppTargetingV30", 349 static_libs: [ 350 "TestApp_TestApps", 351 ], 352 resource_dirs: ["src/testapps/main/res/device_admin"], 353 manifest: "manifests/RemoteDPCManifest.xml", 354 additional_manifests: ["CommonManifest.xml"], 355 aaptflags: [ 356 "--rename-manifest-package com.android.cts.RemoteDPCV30", 357 ], 358 min_sdk_version: "30", 359 target_sdk_version: "30", 360} 361 362android_test_helper_app { 363 name: "DialerApp", 364 static_libs: [ 365 "TestApp_TestApps", 366 ], 367 defaults: ["mts-target-sdk-version-current"], 368 manifest: "manifests/DialerAppManifest.xml", 369 additional_manifests: ["CommonManifest.xml"], 370 min_sdk_version: "29", 371 sdk_version: "system_current", 372} 373 374android_test_helper_app { 375 name: "SmsApp", 376 static_libs: [ 377 "TestApp_TestApps", 378 ], 379 defaults: ["mts-target-sdk-version-current"], 380 manifest: "manifests/SmsAppManifest.xml", 381 additional_manifests: ["CommonManifest.xml"], 382 min_sdk_version: "29", 383 sdk_version: "system_current", 384} 385 386android_test_helper_app { 387 name: "AccountManagementApp", 388 static_libs: [ 389 "TestApp_TestApps", 390 ], 391 defaults: ["mts-target-sdk-version-current"], 392 resource_dirs: ["src/testapps/main/res/accountmanagement"], 393 manifest: "manifests/AccountManagementManifest.xml", 394 additional_manifests: ["CommonManifest.xml"], 395 min_sdk_version: "29", 396 sdk_version: "system_current", 397} 398 399android_test_helper_app { 400 name: "MLCTestApp", 401 static_libs: [ 402 "TestApp_TestApps", 403 ], 404 defaults: ["mts-target-sdk-version-current"], 405 manifest: "manifests/MLCTestAppManifest.xml", 406 resource_dirs: ["src/testapps/main/res/mlctestapp"], 407 additional_manifests: ["CommonManifest.xml"], 408 min_sdk_version: "29", 409 sdk_version: "system_current", 410} 411 412android_test_helper_app { 413 name: "RemoteAccountAuthenticatorApp", 414 static_libs: [ 415 "TestApp_TestApps", 416 ], 417 defaults: ["mts-target-sdk-version-current"], 418 resource_dirs: ["src/testapps/main/res/accountmanagement"], 419 manifest: "manifests/RemoteAccountAuthenticatorManifest.xml", 420 additional_manifests: ["CommonManifest.xml"], 421 min_sdk_version: "29", 422 sdk_version: "system_current", 423} 424 425android_test_helper_app { 426 name: "MultipleActivitiesTestApp", 427 static_libs: [ 428 "TestApp_TestApps", 429 ], 430 defaults: ["mts-target-sdk-version-current"], 431 manifest: "manifests/MultipleActivitiesTestAppManifest.xml", 432 additional_manifests: ["CommonManifest.xml"], 433 min_sdk_version: "29", 434} 435 436android_test_helper_app { 437 name: "RemoteDeviceAdminTestApp", 438 static_libs: [ 439 "TestApp_TestApps", 440 ], 441 resource_dirs: ["src/testapps/main/res/device_admin"], 442 manifest: "manifests/deviceadmin/RemoteDeviceAdminManifest.xml", 443 additional_manifests: ["CommonManifest.xml"], 444 min_sdk_version: "29", 445} 446 447java_library { 448 name: "TestApp_Annotations", 449 sdk_version: "core_current", 450 srcs: [ 451 "src/processor/main/java/com/android/bedstead/testapp/processor/annotations/*.java", 452 "src/processor/main/java/com/android/bedstead/testapp/processor/annotations/*.kt", 453 ], 454 host_supported: true, 455} 456 457java_plugin { 458 name: "TestApp_Processor", 459 processor_class: "com.android.bedstead.testapp.processor.Processor", 460 static_libs: [ 461 "javapoet", 462 "auto_service_annotations", 463 "TestApp_Annotations", 464 "ConnectedAppsSDK_Annotations", 465 "RemoteFrameworkClasses_Processor_Src", 466 ], 467 srcs: [ 468 "src/processor/main/java/com/android/bedstead/testapp/processor/Processor.java", 469 ], 470 plugins: ["auto_service_plugin"], 471 generates_api: true, 472} 473