1// Copyright (C) 2023 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//      http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15package {
16    default_applicable_licenses: ["Android-Apache-2.0"],
17}
18
19java_library {
20    name: "android.car-no-dep",
21    defaults: [
22        "android.car-defaults",
23    ],
24    aidl: {
25        include_dirs: [
26            "packages/services/Car/car-lib/src",
27            "packages/modules/Bluetooth/framework/aidl-export",
28        ],
29    },
30    static_libs: [
31        "fake.com.android.car.internal.dep",
32    ],
33    sdk_version: "module_current",
34    lint: {
35        baseline_filename: "lint-baseline.xml",
36    },
37}
38
39java_defaults {
40    name: "CarLibUnitTestDefault",
41    static_libs: [
42        "android.car-no-dep",
43        "android.car.test.utils",
44        "androidx.annotation_annotation",
45        "androidx.test.core",
46        "androidx.test.ext.junit",
47        "androidx.test.rules",
48        "flag-junit",
49        "platform-test-annotations",
50        "truth",
51        "vehicle-hal-support-lib",
52        "car-helper-lib",
53    ],
54    libs: [
55        "android.test.base.stubs.system",
56        "framework-annotations-lib",
57    ],
58}
59
60java_defaults {
61    name: "CarLibDeviceUnitTestDefault",
62    static_libs: [
63        "mockito-target-extended",
64        "ravenwood-junit",
65    ],
66    libs: [
67        "android.car.builtin.stubs.module_lib",
68    ],
69    defaults: [
70        "CarLibUnitTestDefault",
71    ],
72    test_suites: [
73        "general-tests",
74        "automotive-tests",
75        "automotive-general-tests",
76    ],
77    // mockito-target-inline dependency
78    jni_libs: [
79        "libdexmakerjvmtiagent",
80        "libstaticjvmtiagent",
81    ],
82    platform_apis: true,
83}
84
85android_ravenwood_test {
86    name: "CarLibHostUnitTest",
87    static_libs: [
88        "android.car.builtin.testonly",
89    ],
90    defaults: [
91        "CarLibUnitTestDefault",
92    ],
93    auto_gen_config: true,
94    srcs: [
95        "src/**/*.java",
96        "src/**/*.aidl",
97    ],
98    aidl: {
99        include_dirs: [
100            "packages/services/Car/car-lib/src",
101        ],
102    },
103    exclude_srcs: [
104        // TODO(b/354795535): Enable CarLibAdminUnitTest on host.
105        "src/android/car/admin/**/*.java",
106        // TODO(b/354785409): Enable CarLibAppUnitTest on host.
107        "src/android/car/app/**/*.java",
108        // TODO(b/354796364): Enable cluster renderer test on host.
109        "src/android/car/cluster/renderer/*.java",
110        // TODO(b/374729716): Enable internal BinderKeyValueContainerTest on host.
111        "src/com/android/car/internal/util/BinderKeyValueContainerTest.java",
112        // TODO(b/376501867): Enable UserHelperUnitTest on host.
113        "src/com/android/car/internal/user/UserHelperUnitTest.java",
114        // The following cannot be enabled because AudioAttributes is
115        // not supported on host.
116        "src/android/car/media/CarAudioZoneConfigInfoUnitTest.java",
117        "src/android/car/media/CarVolumeGroupEventUnitTest.java",
118        "src/android/car/media/CarVolumeGroupInfoUnitTest.java",
119        "src/android/car/oem/AudioFocusEntryUnitTest.java",
120        "src/android/car/oem/OemCarAudio*.java",
121        // The following cannot be enabled because FadeManagerConfiguration
122        // is not supported on host.
123        "src/android/car/oem/CarAudioFadeConfigurationUnitTest.java",
124    ],
125}
126
127android_test {
128    name: "CarLibAdminUnitTest",
129    defaults: [
130        "CarLibDeviceUnitTestDefault",
131    ],
132    srcs: [
133        "src/android/car/admin/*.java",
134    ],
135}
136
137android_test {
138    name: "CarLibAppUnitTest",
139    defaults: [
140        "CarLibDeviceUnitTestDefault",
141    ],
142    srcs: [
143        "src/android/car/app/*.java",
144    ],
145    manifest: "AndroidManifest_AppUnitTest.xml",
146}
147
148android_test {
149    name: "CarLibCarUnitTest",
150    defaults: [
151        "CarLibDeviceUnitTestDefault",
152    ],
153    srcs: [
154        "src/android/car/CarUnitTest.java",
155    ],
156}
157
158android_test {
159    name: "CarLibClusterUnitTest",
160    defaults: [
161        "CarLibDeviceUnitTestDefault",
162    ],
163    srcs: [
164        "src/android/car/cluster/*.java",
165    ],
166}
167
168android_test {
169    name: "CarLibPmUnitTest",
170    defaults: [
171        "CarLibDeviceUnitTestDefault",
172    ],
173    srcs: [
174        "src/android/car/content/pm/*.java",
175    ],
176}
177
178android_test {
179    name: "CarLibEvsUnitTest",
180    defaults: [
181        "CarLibDeviceUnitTestDefault",
182    ],
183    srcs: [
184        "src/android/car/evs/*.java",
185    ],
186}
187
188android_test {
189    name: "CarLibPropertyUnitTest",
190    defaults: [
191        "CarLibDeviceUnitTestDefault",
192    ],
193    srcs: [
194        "src/android/car/hardware/property/*.java",
195    ],
196}
197
198android_test {
199    name: "CarLibMediaUnitTest",
200    defaults: [
201        "CarLibDeviceUnitTestDefault",
202    ],
203    srcs: [
204        "src/android/car/media/*.java",
205        "src/com/android/car/audio/*.java",
206    ],
207}
208
209android_test {
210    name: "CarLibNavigationUnitTest",
211    defaults: [
212        "CarLibDeviceUnitTestDefault",
213    ],
214    srcs: [
215        "src/android/car/navigation/*.java",
216    ],
217}
218
219android_test {
220    name: "CarLibOccupantConnectionUnitTest",
221    defaults: [
222        "CarLibDeviceUnitTestDefault",
223    ],
224    srcs: [
225        "src/android/car/occupantconnection/*",
226    ],
227    aidl: {
228        include_dirs: [
229            "packages/services/Car/car-lib/src",
230        ],
231    },
232    manifest: "AndroidManifest_OccupantConnectionUnitTest.xml",
233}
234
235android_test {
236    name: "CarLibOemUnitTest",
237    defaults: [
238        "CarLibDeviceUnitTestDefault",
239    ],
240    srcs: [
241        "src/android/car/oem/*.java",
242    ],
243}
244
245android_test {
246    name: "CarLibOsUnitTest",
247    defaults: [
248        "CarLibDeviceUnitTestDefault",
249    ],
250    srcs: [
251        "src/android/car/os/*.java",
252    ],
253}
254
255android_test {
256    name: "CarLibRemoteAccessUnitTest",
257    defaults: [
258        "CarLibDeviceUnitTestDefault",
259    ],
260    srcs: [
261        "src/android/car/remoteaccess/*.java",
262    ],
263}
264
265android_test {
266    name: "CarLibUserUnitTest",
267    defaults: [
268        "CarLibDeviceUnitTestDefault",
269    ],
270    srcs: [
271        "src/android/car/user/*.java",
272    ],
273}
274
275android_test {
276    name: "CarLibUtilConcurrentUnitTest",
277    defaults: [
278        "CarLibDeviceUnitTestDefault",
279    ],
280    srcs: [
281        "src/android/car/util/concurrent/*.java",
282    ],
283}
284
285android_test {
286    name: "CarLibVmsUnitTest",
287    defaults: [
288        "CarLibDeviceUnitTestDefault",
289    ],
290    srcs: [
291        "src/android/car/vms/*.java",
292    ],
293}
294
295android_test {
296    name: "CarLibWifiUnitTest",
297    defaults: [
298        "CarLibDeviceUnitTestDefault",
299    ],
300    srcs: [
301        "src/android/car/wifi/*.java",
302    ],
303}
304
305android_test {
306    name: "CarLibInternalUnitTest",
307    defaults: [
308        "CarLibDeviceUnitTestDefault",
309    ],
310    srcs: [
311        "src/com/android/car/internal/**/*.java",
312    ],
313}
314