blob: 343b156e443a3b3758b1a24bc3d4191c316ea153 [file] [log] [blame]
Colin Cross35be4242018-11-20 09:46:47 -08001//########################################################################
2// Build FrameworksServicesTests package
3//########################################################################
4
5android_test {
6 name: "FrameworksServicesTests",
7
8 // Include all test java files.
9 srcs: [
10 "src/**/*.java",
Winsond9d17362019-10-02 12:41:29 -070011 "src/**/*.kt",
Colin Cross35be4242018-11-20 09:46:47 -080012
13 "aidl/com/android/servicestests/aidl/INetworkStateObserver.aidl",
14 "aidl/com/android/servicestests/aidl/ICmdReceiverService.aidl",
15
16 "test-apps/JobTestApp/src/**/*.java",
17
18 "test-apps/SuspendTestApp/src/**/*.java",
19 ],
20 static_libs: [
21 "frameworks-base-testutils",
22 "services.accessibility",
23 "services.appwidget",
24 "services.autofill",
25 "services.backup",
26 "services.core",
27 "services.devicepolicy",
28 "services.net",
Danning Chen20b32ed2019-12-18 16:52:03 -080029 "services.people",
Colin Cross35be4242018-11-20 09:46:47 -080030 "services.usage",
31 "guava",
Christophe Koessler50361682019-12-17 16:40:47 -080032 "androidx.test.core",
Soonil Nagarkar17d8c832020-01-29 18:02:53 -080033 "androidx.test.ext.truth",
Colin Cross35be4242018-11-20 09:46:47 -080034 "androidx.test.runner",
35 "androidx.test.rules",
36 "mockito-target-minus-junit4",
37 "platform-test-annotations",
38 "ShortcutManagerTestUtils",
39 "truth-prebuilt",
40 "testables",
41 "testng",
42 "ub-uiautomator",
43 "platformprotosnano",
44 "hamcrest-library",
45 "servicestests-utils",
Alexander Dorokhinefed5ce22019-11-19 15:16:33 -080046 "service-appsearch",
Anton Hansson97369f82019-11-22 11:40:08 +000047 "service-jobscheduler",
Paul Duffinbace9a12020-06-02 17:48:57 +010048 "service-permission.impl",
Felipe Leme047d4d62019-12-18 13:38:00 -080049 // TODO: remove once Android migrates to JUnit 4.12,
50 // which provides assertThrows
51 "testng",
Ady Abraham15d23d82020-10-13 19:06:52 -070052 "junit",
53 "platform-compat-test-rules",
Colin Cross35be4242018-11-20 09:46:47 -080054 ],
55
56 aidl: {
57 local_include_dirs: ["aidl"],
58 },
59
60 libs: [
Lais Andrade71d90a62020-03-31 11:13:29 +010061 "android.hardware.power-java",
Colin Cross35be4242018-11-20 09:46:47 -080062 "android.hardware.tv.cec-V1.0-java",
Lais Andrade41e60542020-06-25 10:51:52 +000063 "android.hardware.vibrator-java",
Lais Andrade71d90a62020-03-31 11:13:29 +010064 "android.hidl.manager-V1.0-java",
Colin Cross35be4242018-11-20 09:46:47 -080065 "android.test.mock",
66 "android.test.base",
67 "android.test.runner",
68 ],
69
70 platform_apis: true,
71 test_suites: ["device-tests"],
72
73 certificate: "platform",
74
75 // These are not normally accessible from apps so they must be explicitly included.
76 jni_libs: [
77 "libbacktrace",
78 "libbase",
79 "libbinder",
Colin Cross35be4242018-11-20 09:46:47 -080080 "libc++",
81 "libcutils",
Alexander Dorokhinebd7bca22020-09-22 15:02:26 -070082 "libicing",
Colin Cross35be4242018-11-20 09:46:47 -080083 "liblog",
84 "liblzma",
85 "libnativehelper",
Tim Murray676d42d2019-02-13 20:47:46 -080086 "libpsi",
Colin Cross35be4242018-11-20 09:46:47 -080087 "libui",
Elliott Hughesfc885bb2018-12-12 12:32:15 -080088 "libunwindstack",
Colin Cross35be4242018-11-20 09:46:47 -080089 "libutils",
Jeongik Chae5865b82019-10-15 17:03:51 +090090 "netd_aidl_interface-cpp",
Colin Cross35be4242018-11-20 09:46:47 -080091 ],
92
93 dxflags: ["--multi-dex"],
94
95 optimize: {
96 enabled: false,
97 },
Dan Shibcef6ae2019-07-26 14:16:43 -070098
Todd Kennedy83eddae2020-03-02 09:21:25 -080099 data: [
100 ":JobTestApp",
101 ],
102
103 java_resources: [
104 ":PackageParserTestApp1",
105 ":PackageParserTestApp2",
106 ":PackageParserTestApp3",
Todd Kennedyb0036c02020-11-17 11:56:47 -0800107 ":PackageParserTestApp4",
Mohammad Samiul Islam2de4baf2020-04-29 12:08:14 +0100108 ":apex.test",
Todd Kennedy83eddae2020-03-02 09:21:25 -0800109 ],
Winson33eacc62020-01-24 12:02:58 -0800110 resource_zips: [":FrameworksServicesTests_apks_as_resources"],
Colin Cross35be4242018-11-20 09:46:47 -0800111}
112
113java_library {
114 name: "servicestests-utils",
115 srcs: [
116 "utils/**/*.java",
Winson Chiu8e865ec2020-04-01 18:20:51 +0000117 "utils/**/*.kt",
118 "utils-mockito/**/*.kt",
raylinhsude4de322020-10-19 11:24:51 +0800119 ":services.core-sources-deviceconfig-interface",
Colin Cross35be4242018-11-20 09:46:47 -0800120 ],
121 static_libs: [
Brett Chabotc45f1712018-12-10 16:03:34 -0800122 "junit",
Colin Cross35be4242018-11-20 09:46:47 -0800123 "mockito-target-minus-junit4",
124 ],
125 libs: [
126 "android.test.runner",
127 ],
128}
129
Winson Chiu8e865ec2020-04-01 18:20:51 +0000130java_library {
131 name: "servicestests-utils-mockito-extended",
132 srcs: [
133 "utils/**/*.java",
134 "utils/**/*.kt",
135 "utils-mockito/**/*.kt",
raylinhsude4de322020-10-19 11:24:51 +0800136 ":services.core-sources-deviceconfig-interface",
Winson Chiu8e865ec2020-04-01 18:20:51 +0000137 ],
138 static_libs: [
139 "junit",
140 "mockito-target-extended-minus-junit4",
141 ],
142 libs: [
143 "android.test.runner",
144 ],
145}
146
Colin Cross35be4242018-11-20 09:46:47 -0800147filegroup {
148 name: "servicestests-SuspendTestApp-files",
149 srcs: [
150 "src/com/android/server/pm/SuspendPackagesTest.java",
151 ],
152}
Winson33eacc62020-01-24 12:02:58 -0800153
154// Rules to copy all the test apks to the intermediate raw resource directory
155java_genrule {
156 name: "FrameworksServicesTests_apks_as_resources",
157 srcs: [
158 ":FrameworksCoreTests_install_complete_package_info",
159 ":FrameworksServicesTests_install_intent_filters",
160 ":FrameworksServicesTests_install_split_base",
161 ":FrameworksServicesTests_install_split_feature_a",
162 ":FrameworksServicesTests_install_uses_sdk_0",
163 ":FrameworksServicesTests_install_uses_sdk_q0",
164 ":FrameworksServicesTests_install_uses_sdk_r",
165 ":FrameworksServicesTests_install_uses_sdk_r0",
166 ":FrameworksServicesTests_install_uses_sdk_r5",
167 ],
168 out: ["FrameworkServicesTests_apks_as_resources.res.zip"],
169 tools: ["soong_zip"],
170
171 cmd: "mkdir -p $(genDir)/res/raw && " +
172 "for i in $(in); do " +
173 " x=$${i##*FrameworksCoreTests_}; cp $$i $(genDir)/res/raw/$${x%.apk};" +
174 " x=$${i##*FrameworksServicesTests_}; cp $$i $(genDir)/res/raw/$${x%.apk};" +
175 "done && " +
176 "$(location soong_zip) -o $(out) -C $(genDir)/res -D $(genDir)/res",
177}