blob: 0ddb2b140df842dd339bcb602371360bd0b54635 [file] [log] [blame]
Colin Cross35be4242018-11-20 09:46:47 -08001//########################################################################
2// Build FrameworksServicesTests package
3//########################################################################
4
Bob Badour8a6a2bc2021-02-12 17:07:05 -08005package {
6 // See: http://go/android-license-faq
7 // A large-scale-change added 'default_applicable_licenses' to import
8 // all of the 'license_kinds' from "frameworks_base_license"
9 // to get the below license kinds:
10 // SPDX-license-identifier-Apache-2.0
11 default_applicable_licenses: ["frameworks_base_license"],
12}
13
Colin Cross35be4242018-11-20 09:46:47 -080014android_test {
15 name: "FrameworksServicesTests",
16
17 // Include all test java files.
18 srcs: [
19 "src/**/*.java",
Winsond9d17362019-10-02 12:41:29 -070020 "src/**/*.kt",
Colin Cross35be4242018-11-20 09:46:47 -080021
22 "aidl/com/android/servicestests/aidl/INetworkStateObserver.aidl",
23 "aidl/com/android/servicestests/aidl/ICmdReceiverService.aidl",
24
25 "test-apps/JobTestApp/src/**/*.java",
26
27 "test-apps/SuspendTestApp/src/**/*.java",
28 ],
29 static_libs: [
30 "frameworks-base-testutils",
31 "services.accessibility",
32 "services.appwidget",
33 "services.autofill",
34 "services.backup",
35 "services.core",
36 "services.devicepolicy",
37 "services.net",
Danning Chen20b32ed2019-12-18 16:52:03 -080038 "services.people",
Colin Cross35be4242018-11-20 09:46:47 -080039 "services.usage",
Roshan Pius27e1a872021-03-31 12:07:17 -070040 "services.uwb",
Colin Cross35be4242018-11-20 09:46:47 -080041 "guava",
Venkatarama NG. Avadhanib886ab42020-11-05 15:36:55 +053042 "guava-android-testlib",
Christophe Koessler50361682019-12-17 16:40:47 -080043 "androidx.test.core",
Soonil Nagarkar17d8c832020-01-29 18:02:53 -080044 "androidx.test.ext.truth",
Colin Cross35be4242018-11-20 09:46:47 -080045 "androidx.test.runner",
46 "androidx.test.rules",
Jing Ji37c53752021-03-30 00:39:49 -070047 "cts-wm-util",
Ruslan Tkhakokhov735cbd52020-12-04 12:41:11 +000048 "platform-compat-test-rules",
Colin Cross35be4242018-11-20 09:46:47 -080049 "mockito-target-minus-junit4",
50 "platform-test-annotations",
51 "ShortcutManagerTestUtils",
52 "truth-prebuilt",
53 "testables",
54 "testng",
55 "ub-uiautomator",
56 "platformprotosnano",
57 "hamcrest-library",
58 "servicestests-utils",
Alexander Dorokhinefed5ce22019-11-19 15:16:33 -080059 "service-appsearch",
Anton Hansson97369f82019-11-22 11:40:08 +000060 "service-jobscheduler",
Paul Duffinbace9a12020-06-02 17:48:57 +010061 "service-permission.impl",
Felipe Leme047d4d62019-12-18 13:38:00 -080062 // TODO: remove once Android migrates to JUnit 4.12,
63 // which provides assertThrows
64 "testng",
Ady Abraham15d23d82020-10-13 19:06:52 -070065 "junit",
66 "platform-compat-test-rules",
Colin Cross35be4242018-11-20 09:46:47 -080067 ],
68
69 aidl: {
70 local_include_dirs: ["aidl"],
71 },
72
73 libs: [
Jeongik Cha969b9212021-01-28 00:49:47 +090074 "android.hardware.power-V1-java",
Colin Cross35be4242018-11-20 09:46:47 -080075 "android.hardware.tv.cec-V1.0-java",
Lais Andradec4f27f32020-11-17 20:29:03 +000076 "android.hardware.vibrator-V2-java",
Lais Andrade71d90a62020-03-31 11:13:29 +010077 "android.hidl.manager-V1.0-java",
Colin Cross35be4242018-11-20 09:46:47 -080078 "android.test.mock",
79 "android.test.base",
80 "android.test.runner",
81 ],
82
83 platform_apis: true,
84 test_suites: ["device-tests"],
85
86 certificate: "platform",
87
88 // These are not normally accessible from apps so they must be explicitly included.
89 jni_libs: [
90 "libbacktrace",
91 "libbase",
92 "libbinder",
Colin Cross35be4242018-11-20 09:46:47 -080093 "libc++",
94 "libcutils",
Alexander Dorokhinebd7bca22020-09-22 15:02:26 -070095 "libicing",
Colin Cross35be4242018-11-20 09:46:47 -080096 "liblog",
97 "liblzma",
98 "libnativehelper",
Tim Murray676d42d2019-02-13 20:47:46 -080099 "libpsi",
Colin Cross35be4242018-11-20 09:46:47 -0800100 "libui",
Elliott Hughesfc885bb2018-12-12 12:32:15 -0800101 "libunwindstack",
Colin Cross35be4242018-11-20 09:46:47 -0800102 "libutils",
Jeongik Cha969b9212021-01-28 00:49:47 +0900103 "netd_aidl_interface-V5-cpp",
Colin Cross35be4242018-11-20 09:46:47 -0800104 ],
105
106 dxflags: ["--multi-dex"],
107
108 optimize: {
109 enabled: false,
110 },
Dan Shibcef6ae2019-07-26 14:16:43 -0700111
Todd Kennedy83eddae2020-03-02 09:21:25 -0800112 data: [
113 ":JobTestApp",
114 ],
115
116 java_resources: [
117 ":PackageParserTestApp1",
118 ":PackageParserTestApp2",
119 ":PackageParserTestApp3",
Todd Kennedyb0036c02020-11-17 11:56:47 -0800120 ":PackageParserTestApp4",
Mohammad Samiul Islam2de4baf2020-04-29 12:08:14 +0100121 ":apex.test",
Nikita Ioffe59344a62021-06-03 03:14:06 +0100122 ":test.rebootless_apex_v1",
123 ":test.rebootless_apex_v2",
124 ":com.android.apex.cts.shim.v1_prebuilt",
125 ":com.android.apex.cts.shim.v2_different_certificate_prebuilt",
126 ":com.android.apex.cts.shim.v2_unsigned_apk_container_prebuilt",
Todd Kennedy83eddae2020-03-02 09:21:25 -0800127 ],
Winson33eacc62020-01-24 12:02:58 -0800128 resource_zips: [":FrameworksServicesTests_apks_as_resources"],
Colin Cross35be4242018-11-20 09:46:47 -0800129}
130
131java_library {
Patrick Baumann4b4558e2020-10-13 17:09:43 -0700132 name: "servicestests-core-utils",
133 srcs: [
134 "src/com/android/server/pm/PackageSettingBuilder.java",
135 ],
136 static_libs: [
137 "services.core",
138 ],
139}
140
141java_library {
Colin Cross35be4242018-11-20 09:46:47 -0800142 name: "servicestests-utils",
143 srcs: [
144 "utils/**/*.java",
Winson Chiu8e865ec2020-04-01 18:20:51 +0000145 "utils/**/*.kt",
146 "utils-mockito/**/*.kt",
raylinhsude4de322020-10-19 11:24:51 +0800147 ":services.core-sources-deviceconfig-interface",
Colin Cross35be4242018-11-20 09:46:47 -0800148 ],
149 static_libs: [
Brett Chabotc45f1712018-12-10 16:03:34 -0800150 "junit",
Colin Cross35be4242018-11-20 09:46:47 -0800151 "mockito-target-minus-junit4",
152 ],
153 libs: [
154 "android.test.runner",
155 ],
156}
157
Winson Chiu8e865ec2020-04-01 18:20:51 +0000158java_library {
159 name: "servicestests-utils-mockito-extended",
160 srcs: [
161 "utils/**/*.java",
162 "utils/**/*.kt",
163 "utils-mockito/**/*.kt",
raylinhsude4de322020-10-19 11:24:51 +0800164 ":services.core-sources-deviceconfig-interface",
Winson Chiu8e865ec2020-04-01 18:20:51 +0000165 ],
166 static_libs: [
167 "junit",
168 "mockito-target-extended-minus-junit4",
169 ],
170 libs: [
171 "android.test.runner",
172 ],
173}
174
Colin Cross35be4242018-11-20 09:46:47 -0800175filegroup {
176 name: "servicestests-SuspendTestApp-files",
177 srcs: [
178 "src/com/android/server/pm/SuspendPackagesTest.java",
179 ],
180}
Winson33eacc62020-01-24 12:02:58 -0800181
182// Rules to copy all the test apks to the intermediate raw resource directory
183java_genrule {
184 name: "FrameworksServicesTests_apks_as_resources",
185 srcs: [
186 ":FrameworksCoreTests_install_complete_package_info",
187 ":FrameworksServicesTests_install_intent_filters",
188 ":FrameworksServicesTests_install_split_base",
189 ":FrameworksServicesTests_install_split_feature_a",
190 ":FrameworksServicesTests_install_uses_sdk_0",
191 ":FrameworksServicesTests_install_uses_sdk_q0",
Anton Hansson7db3ca22021-02-24 12:57:26 +0000192 ":FrameworksServicesTests_install_uses_sdk_q0_r0",
193 ":FrameworksServicesTests_install_uses_sdk_r_none",
Winson33eacc62020-01-24 12:02:58 -0800194 ":FrameworksServicesTests_install_uses_sdk_r0",
195 ":FrameworksServicesTests_install_uses_sdk_r5",
Anton Hansson7db3ca22021-02-24 12:57:26 +0000196 ":FrameworksServicesTests_install_uses_sdk_r0_s0",
197 ":FrameworksServicesTests_install_uses_sdk_r0_s5",
Winson33eacc62020-01-24 12:02:58 -0800198 ],
199 out: ["FrameworkServicesTests_apks_as_resources.res.zip"],
200 tools: ["soong_zip"],
201
202 cmd: "mkdir -p $(genDir)/res/raw && " +
203 "for i in $(in); do " +
204 " x=$${i##*FrameworksCoreTests_}; cp $$i $(genDir)/res/raw/$${x%.apk};" +
205 " x=$${i##*FrameworksServicesTests_}; cp $$i $(genDir)/res/raw/$${x%.apk};" +
206 "done && " +
207 "$(location soong_zip) -o $(out) -C $(genDir)/res -D $(genDir)/res",
208}