blob: 40a17061c7f1b7984cd90f66af90198dac9eeb07 [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",
Anton Hansson97369f82019-11-22 11:40:08 +000046 "service-jobscheduler",
Hai Zhang82a62272020-01-14 21:56:34 -080047 "service-permission",
Felipe Leme047d4d62019-12-18 13:38:00 -080048 // TODO: remove once Android migrates to JUnit 4.12,
49 // which provides assertThrows
50 "testng",
51
Colin Cross35be4242018-11-20 09:46:47 -080052 ],
53
54 aidl: {
55 local_include_dirs: ["aidl"],
56 },
57
58 libs: [
59 "android.hidl.manager-V1.0-java",
60 "android.hardware.tv.cec-V1.0-java",
61 "android.test.mock",
62 "android.test.base",
63 "android.test.runner",
64 ],
65
66 platform_apis: true,
67 test_suites: ["device-tests"],
68
69 certificate: "platform",
70
71 // These are not normally accessible from apps so they must be explicitly included.
72 jni_libs: [
73 "libbacktrace",
74 "libbase",
75 "libbinder",
Colin Cross35be4242018-11-20 09:46:47 -080076 "libc++",
77 "libcutils",
78 "liblog",
79 "liblzma",
80 "libnativehelper",
Tim Murray676d42d2019-02-13 20:47:46 -080081 "libpsi",
Colin Cross35be4242018-11-20 09:46:47 -080082 "libui",
Elliott Hughesfc885bb2018-12-12 12:32:15 -080083 "libunwindstack",
Colin Cross35be4242018-11-20 09:46:47 -080084 "libutils",
Jeongik Chae5865b82019-10-15 17:03:51 +090085 "netd_aidl_interface-cpp",
Colin Cross35be4242018-11-20 09:46:47 -080086 ],
87
88 dxflags: ["--multi-dex"],
89
90 optimize: {
91 enabled: false,
92 },
Dan Shibcef6ae2019-07-26 14:16:43 -070093
Todd Kennedy83eddae2020-03-02 09:21:25 -080094 data: [
95 ":JobTestApp",
96 ],
97
98 java_resources: [
99 ":PackageParserTestApp1",
100 ":PackageParserTestApp2",
101 ":PackageParserTestApp3",
Mohammad Samiul Islam2de4baf2020-04-29 12:08:14 +0100102 ":apex.test",
Todd Kennedy83eddae2020-03-02 09:21:25 -0800103 ],
Winson33eacc62020-01-24 12:02:58 -0800104 resource_zips: [":FrameworksServicesTests_apks_as_resources"],
Colin Cross35be4242018-11-20 09:46:47 -0800105}
106
107java_library {
108 name: "servicestests-utils",
109 srcs: [
110 "utils/**/*.java",
Winson Chiu8e865ec2020-04-01 18:20:51 +0000111 "utils/**/*.kt",
112 "utils-mockito/**/*.kt",
Colin Cross35be4242018-11-20 09:46:47 -0800113 ],
114 static_libs: [
Brett Chabotc45f1712018-12-10 16:03:34 -0800115 "junit",
Colin Cross35be4242018-11-20 09:46:47 -0800116 "mockito-target-minus-junit4",
117 ],
118 libs: [
119 "android.test.runner",
120 ],
121}
122
Winson Chiu8e865ec2020-04-01 18:20:51 +0000123java_library {
124 name: "servicestests-utils-mockito-extended",
125 srcs: [
126 "utils/**/*.java",
127 "utils/**/*.kt",
128 "utils-mockito/**/*.kt",
129 ],
130 static_libs: [
131 "junit",
132 "mockito-target-extended-minus-junit4",
133 ],
134 libs: [
135 "android.test.runner",
136 ],
137}
138
Colin Cross35be4242018-11-20 09:46:47 -0800139filegroup {
140 name: "servicestests-SuspendTestApp-files",
141 srcs: [
142 "src/com/android/server/pm/SuspendPackagesTest.java",
143 ],
144}
Winson33eacc62020-01-24 12:02:58 -0800145
146// Rules to copy all the test apks to the intermediate raw resource directory
147java_genrule {
148 name: "FrameworksServicesTests_apks_as_resources",
149 srcs: [
150 ":FrameworksCoreTests_install_complete_package_info",
151 ":FrameworksServicesTests_install_intent_filters",
152 ":FrameworksServicesTests_install_split_base",
153 ":FrameworksServicesTests_install_split_feature_a",
154 ":FrameworksServicesTests_install_uses_sdk_0",
155 ":FrameworksServicesTests_install_uses_sdk_q0",
156 ":FrameworksServicesTests_install_uses_sdk_r",
157 ":FrameworksServicesTests_install_uses_sdk_r0",
158 ":FrameworksServicesTests_install_uses_sdk_r5",
159 ],
160 out: ["FrameworkServicesTests_apks_as_resources.res.zip"],
161 tools: ["soong_zip"],
162
163 cmd: "mkdir -p $(genDir)/res/raw && " +
164 "for i in $(in); do " +
165 " x=$${i##*FrameworksCoreTests_}; cp $$i $(genDir)/res/raw/$${x%.apk};" +
166 " x=$${i##*FrameworksServicesTests_}; cp $$i $(genDir)/res/raw/$${x%.apk};" +
167 "done && " +
168 "$(location soong_zip) -o $(out) -C $(genDir)/res -D $(genDir)/res",
169}