| //######################################################################## |
| // Build FrameworksServicesTests package |
| //######################################################################## |
| |
| package { |
| // See: http://go/android-license-faq |
| // A large-scale-change added 'default_applicable_licenses' to import |
| // all of the 'license_kinds' from "frameworks_base_license" |
| // to get the below license kinds: |
| // SPDX-license-identifier-Apache-2.0 |
| default_applicable_licenses: ["frameworks_base_license"], |
| } |
| |
| android_test { |
| name: "FrameworksServicesTests", |
| |
| // Include all test java files. |
| srcs: [ |
| "src/**/*.java", |
| "src/**/*.kt", |
| |
| "aidl/com/android/servicestests/aidl/INetworkStateObserver.aidl", |
| "aidl/com/android/servicestests/aidl/ICmdReceiverService.aidl", |
| |
| "test-apps/JobTestApp/src/**/*.java", |
| |
| "test-apps/SuspendTestApp/src/**/*.java", |
| ], |
| static_libs: [ |
| "frameworks-base-testutils", |
| "services.accessibility", |
| "services.appwidget", |
| "services.autofill", |
| "services.backup", |
| "services.core", |
| "services.devicepolicy", |
| "services.net", |
| "services.people", |
| "services.usage", |
| "guava", |
| "androidx.test.core", |
| "androidx.test.ext.truth", |
| "androidx.test.runner", |
| "androidx.test.rules", |
| "platform-compat-test-rules", |
| "mockito-target-minus-junit4", |
| "platform-test-annotations", |
| "ShortcutManagerTestUtils", |
| "truth-prebuilt", |
| "testables", |
| "testng", |
| "ub-uiautomator", |
| "platformprotosnano", |
| "hamcrest-library", |
| "servicestests-utils", |
| "service-appsearch", |
| "service-jobscheduler", |
| "service-permission.impl", |
| // TODO: remove once Android migrates to JUnit 4.12, |
| // which provides assertThrows |
| "testng", |
| "junit", |
| "platform-compat-test-rules", |
| ], |
| |
| aidl: { |
| local_include_dirs: ["aidl"], |
| }, |
| |
| libs: [ |
| "android.hardware.power-V1-java", |
| "android.hardware.tv.cec-V1.0-java", |
| "android.hardware.vibrator-V2-java", |
| "android.hidl.manager-V1.0-java", |
| "android.test.mock", |
| "android.test.base", |
| "android.test.runner", |
| ], |
| |
| platform_apis: true, |
| test_suites: ["device-tests"], |
| |
| certificate: "platform", |
| |
| // These are not normally accessible from apps so they must be explicitly included. |
| jni_libs: [ |
| "libbacktrace", |
| "libbase", |
| "libbinder", |
| "libc++", |
| "libcutils", |
| "libicing", |
| "liblog", |
| "liblzma", |
| "libnativehelper", |
| "libpsi", |
| "libui", |
| "libunwindstack", |
| "libutils", |
| "netd_aidl_interface-V5-cpp", |
| ], |
| |
| dxflags: ["--multi-dex"], |
| |
| optimize: { |
| enabled: false, |
| }, |
| |
| data: [ |
| ":JobTestApp", |
| ], |
| |
| java_resources: [ |
| ":PackageParserTestApp1", |
| ":PackageParserTestApp2", |
| ":PackageParserTestApp3", |
| ":PackageParserTestApp4", |
| ":apex.test", |
| ], |
| resource_zips: [":FrameworksServicesTests_apks_as_resources"], |
| } |
| |
| java_library { |
| name: "servicestests-core-utils", |
| srcs: [ |
| "src/com/android/server/pm/PackageSettingBuilder.java", |
| ], |
| static_libs: [ |
| "services.core", |
| ], |
| } |
| |
| java_library { |
| name: "servicestests-utils", |
| srcs: [ |
| "utils/**/*.java", |
| "utils/**/*.kt", |
| "utils-mockito/**/*.kt", |
| ":services.core-sources-deviceconfig-interface", |
| ], |
| static_libs: [ |
| "junit", |
| "mockito-target-minus-junit4", |
| ], |
| libs: [ |
| "android.test.runner", |
| ], |
| } |
| |
| java_library { |
| name: "servicestests-utils-mockito-extended", |
| srcs: [ |
| "utils/**/*.java", |
| "utils/**/*.kt", |
| "utils-mockito/**/*.kt", |
| ":services.core-sources-deviceconfig-interface", |
| ], |
| static_libs: [ |
| "junit", |
| "mockito-target-extended-minus-junit4", |
| ], |
| libs: [ |
| "android.test.runner", |
| ], |
| } |
| |
| filegroup { |
| name: "servicestests-SuspendTestApp-files", |
| srcs: [ |
| "src/com/android/server/pm/SuspendPackagesTest.java", |
| ], |
| } |
| |
| // Rules to copy all the test apks to the intermediate raw resource directory |
| java_genrule { |
| name: "FrameworksServicesTests_apks_as_resources", |
| srcs: [ |
| ":FrameworksCoreTests_install_complete_package_info", |
| ":FrameworksServicesTests_install_intent_filters", |
| ":FrameworksServicesTests_install_split_base", |
| ":FrameworksServicesTests_install_split_feature_a", |
| ":FrameworksServicesTests_install_uses_sdk_0", |
| ":FrameworksServicesTests_install_uses_sdk_q0", |
| ":FrameworksServicesTests_install_uses_sdk_r", |
| ":FrameworksServicesTests_install_uses_sdk_r0", |
| ":FrameworksServicesTests_install_uses_sdk_r5", |
| ], |
| out: ["FrameworkServicesTests_apks_as_resources.res.zip"], |
| tools: ["soong_zip"], |
| |
| cmd: "mkdir -p $(genDir)/res/raw && " + |
| "for i in $(in); do " + |
| " x=$${i##*FrameworksCoreTests_}; cp $$i $(genDir)/res/raw/$${x%.apk};" + |
| " x=$${i##*FrameworksServicesTests_}; cp $$i $(genDir)/res/raw/$${x%.apk};" + |
| "done && " + |
| "$(location soong_zip) -o $(out) -C $(genDir)/res -D $(genDir)/res", |
| } |