blob: cd08e273d97727d2ba9d6d5dd1056627c26e6e6d [file] [log] [blame]
Jason Monka2f2d822018-08-13 11:10:48 -04001//
2// Copyright (C) 2018 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
Bob Badour8a6a2bc2021-02-12 17:07:05 -080017package {
18 default_applicable_licenses: ["frameworks_base_packages_SystemUI_license"],
19}
20
21// Added automatically by a large-scale-change
22// See: http://go/android-license-faq
23license {
24 name: "frameworks_base_packages_SystemUI_license",
25 visibility: [":__subpackages__"],
26 license_kinds: [
27 "SPDX-license-identifier-Apache-2.0",
28 ],
29 license_text: [
30 "NOTICE",
31 ],
32}
33
Jordan Demeulenaere68e91822022-12-16 10:55:47 +010034// Opt-in configuration for code depending on Jetpack Compose.
35soong_config_module_type {
36 name: "systemui_compose_java_defaults",
37 module_type: "java_defaults",
38 config_namespace: "ANDROID",
39 bool_variables: ["SYSTEMUI_USE_COMPOSE"],
40 properties: [
41 "srcs",
42 "static_libs",
43 ],
44}
45
46systemui_compose_java_defaults {
47 name: "SystemUI_compose_defaults",
48 soong_config_variables: {
49 SYSTEMUI_USE_COMPOSE: {
50 // Because files in compose/features/ depend on SystemUI
51 // code, we compile those files when compiling SystemUI-core.
52 // We also compile the ComposeFacade in
53 // compose/facade/enabled/.
54 srcs: [
55 "compose/features/src/**/*.kt",
56 "compose/facade/enabled/src/**/*.kt",
57 ],
58
59 // The dependencies needed by SystemUIComposeFeatures,
60 // except for SystemUI-core.
61 // Copied from compose/features/Android.bp.
62 static_libs: [
Darrell Shiacfbe672023-10-06 15:58:02 +000063 "CommunalLayoutLib",
Jordan Demeulenaere8a1747d2022-12-28 11:11:42 +010064 "PlatformComposeCore",
Jordan Demeulenaere6d5bea52023-10-12 14:12:00 +020065 "PlatformComposeSceneTransitionLayout",
Jordan Demeulenaere68e91822022-12-16 10:55:47 +010066
67 "androidx.compose.runtime_runtime",
68 "androidx.compose.material3_material3",
Jordan Demeulenaerebf43b1d2022-12-16 13:00:23 +010069 "androidx.activity_activity-compose",
Jordan Demeulenaere0bbebad2023-07-06 10:19:49 +020070 "androidx.compose.animation_animation-graphics",
Jordan Demeulenaere68e91822022-12-16 10:55:47 +010071 ],
72
73 // By default, Compose is disabled and we compile the ComposeFacade
74 // in compose/facade/disabled/.
75 conditions_default: {
76 srcs: ["compose/facade/disabled/src/**/*.kt"],
77 static_libs: [],
78 },
79 },
80 },
81}
82
Jason Monka2f2d822018-08-13 11:10:48 -040083java_library {
84 name: "SystemUI-proto",
85
86 srcs: ["src/**/*.proto"],
87
88 proto: {
89 type: "nano",
90 },
Winson Chungeb1aa3d2020-08-25 19:02:29 -070091
92 libs: [
93 "WindowManager-Shell-proto",
94 ],
Jason Monka2f2d822018-08-13 11:10:48 -040095}
96
97java_library {
98 name: "SystemUI-tags",
99 srcs: ["src/com/android/systemui/EventLogTags.logtags"],
100}
101
Jay Aliomer97d4fc7d2021-09-23 16:59:09 -0400102filegroup {
103 name: "ReleaseJavaFiles",
Jeff DeCew86b8e772021-10-25 20:35:45 -0400104 srcs: [
105 "src-release/**/*.kt",
106 "src-release/**/*.java",
107 ],
Jay Aliomer97d4fc7d2021-09-23 16:59:09 -0400108}
109
110filegroup {
111 name: "DebugJavaFiles",
Jeff DeCew86b8e772021-10-25 20:35:45 -0400112 srcs: [
113 "src-debug/**/*.kt",
114 "src-debug/**/*.java",
115 ],
Jay Aliomer97d4fc7d2021-09-23 16:59:09 -0400116}
117
Xiaozhen Lin53063042022-11-23 02:18:08 +0000118//Create a library to expose SystemUI's resources to other modules.
119android_library {
120 name: "SystemUI-res",
Peter Kalauskas84c5a992023-08-23 13:39:23 -0700121 use_resource_processor: true,
Xiaozhen Lin53063042022-11-23 02:18:08 +0000122 resource_dirs: [
123 "res-product",
124 "res-keyguard",
125 "res",
126 ],
127 static_libs: [
128 "SystemUISharedLib",
Hawkwood Glazier057df3a2023-06-14 20:10:21 +0000129 "SystemUICustomizationLib",
Xiaozhen Lin53063042022-11-23 02:18:08 +0000130 "SettingsLib",
131 "androidx.leanback_leanback",
132 "androidx.slice_slice-core",
133 "androidx.slice_slice-view",
134 ],
135 manifest: "AndroidManifest-res.xml",
136}
137
Jason Monka2f2d822018-08-13 11:10:48 -0400138android_library {
139 name: "SystemUI-core",
Jordan Demeulenaere68e91822022-12-16 10:55:47 +0100140 defaults: [
141 "SystemUI_compose_defaults",
142 ],
Jason Monka2f2d822018-08-13 11:10:48 -0400143 srcs: [
Jason Monkae7ced22018-08-22 16:56:58 -0400144 "src/**/*.kt",
Jason Monka2f2d822018-08-13 11:10:48 -0400145 "src/**/*.java",
146 "src/**/I*.aidl",
Dave Mankoff72a50022021-11-02 20:44:54 -0400147 ":ReleaseJavaFiles",
Jason Monka2f2d822018-08-13 11:10:48 -0400148 ],
Jay Aliomer97d4fc7d2021-09-23 16:59:09 -0400149 product_variables: {
150 debuggable: {
151 srcs: [":DebugJavaFiles"],
152 exclude_srcs: [":ReleaseJavaFiles"],
153 },
154 },
Colin Crossc23cde42023-06-21 11:22:11 -0700155 use_resource_processor: true,
Jason Monka2f2d822018-08-13 11:10:48 -0400156 static_libs: [
Peter Kalauskas84c5a992023-08-23 13:39:23 -0700157 "SystemUI-res",
Quang Luongc6fc5b22021-06-10 14:35:32 -0700158 "WifiTrackerLib",
Winson Chung10a9b4b2019-12-18 10:01:36 -0800159 "WindowManager-Shell",
Jordan Demeulenaerecea62bb2021-04-08 11:04:50 +0200160 "SystemUIAnimationLib",
Darrell Shi60006322023-04-06 17:58:40 +0000161 "SystemUICommon",
162 "SystemUICustomizationLib",
Darrell Shi1a21b362023-04-28 19:51:44 +0000163 "SystemUILogLib",
Jason Monka2f2d822018-08-13 11:10:48 -0400164 "SystemUIPluginLib",
165 "SystemUISharedLib",
Jerry Chang919d1d22020-07-16 12:31:24 +0800166 "SystemUI-statsd",
Jason Monka2f2d822018-08-13 11:10:48 -0400167 "SettingsLib",
Ned Burns6d480c32023-08-28 12:12:19 -0400168 "com_android_systemui_flags_lib",
Alejandro Nijamkin38859642022-06-27 14:18:17 -0700169 "androidx.core_core-ktx",
Fabian Kozynski713b7272020-03-03 18:35:52 -0500170 "androidx.viewpager2_viewpager2",
Jason Monka2f2d822018-08-13 11:10:48 -0400171 "androidx.legacy_legacy-support-v4",
172 "androidx.recyclerview_recyclerview",
173 "androidx.preference_preference",
174 "androidx.appcompat_appcompat",
Mark Renoufe2395012020-12-16 01:05:12 -0500175 "androidx.concurrent_concurrent-futures",
Jason Monka2f2d822018-08-13 11:10:48 -0400176 "androidx.mediarouter_mediarouter",
177 "androidx.palette_palette",
178 "androidx.legacy_legacy-preference-v14",
179 "androidx.leanback_leanback",
180 "androidx.slice_slice-core",
181 "androidx.slice_slice-view",
182 "androidx.slice_slice-builders",
183 "androidx.arch.core_core-runtime",
Bryce Lee436e42c2022-01-24 14:53:49 -0800184 "androidx.lifecycle_lifecycle-common-java8",
Jason Monka2f2d822018-08-13 11:10:48 -0400185 "androidx.lifecycle_lifecycle-extensions",
Jordan Demeulenaere8a169ff2022-07-13 10:42:10 +0200186 "androidx.lifecycle_lifecycle-runtime-ktx",
Joshua Tsujib1a796b2019-01-16 15:43:12 -0800187 "androidx.dynamicanimation_dynamicanimation",
Steve Elliott300b48f2019-05-29 14:13:50 -0400188 "androidx-constraintlayout_constraintlayout",
Miranda Kepharte1a22b92020-12-16 14:01:12 -0500189 "androidx.exifinterface_exifinterface",
Lucas Dupin00c1a602022-02-16 16:40:36 -0800190 "com.google.android.material_material",
Steve Elliotta7d72052020-12-16 23:04:19 -0500191 "kotlinx_coroutines_android",
192 "kotlinx_coroutines",
Hyunyoung Song5347a542019-03-01 13:32:28 -0800193 "iconloader_base",
Jason Monka2f2d822018-08-13 11:10:48 -0400194 "SystemUI-tags",
195 "SystemUI-proto",
Lucas Dupine37369f2021-08-31 00:19:39 +0000196 "monet",
Lucas Dupind83b4ee2023-07-08 11:05:47 -0700197 "libmonet",
Dave Mankoffdffcc472020-07-08 15:25:16 -0400198 "dagger2",
Brett Chabotfc8675a2023-03-27 10:33:10 -0700199 "jsr305",
Andy Wickham64e34102021-03-07 16:02:01 -0800200 "jsr330",
Beverly46817e12021-06-22 16:29:52 -0400201 "lottie",
Lucas Silva0bfb4052022-09-20 23:32:02 -0400202 "LowLightDreamLib",
Johannes Gallmann0d5183c2022-10-04 13:32:16 +0000203 "motion_tool_lib",
Jason Monka2f2d822018-08-13 11:10:48 -0400204 ],
Nikolas Havrikovc70cb072023-09-08 15:06:35 +0200205 libs: [
206 "keepanno-annotations",
207 ],
Jason Monka2f2d822018-08-13 11:10:48 -0400208 manifest: "AndroidManifest.xml",
209
Kevin Jeonf2e72182022-04-04 19:05:05 +0000210 javacflags: ["-Adagger.fastInit=enabled"],
Colin Cross6954ea72023-07-18 10:52:21 -0700211 kotlincflags: ["-Xjvm-default=all"],
Jason Monk73e8ffc2018-12-06 14:45:19 -0500212
Dave Mankoffdffcc472020-07-08 15:25:16 -0400213 plugins: ["dagger2-compiler"],
Jernej Viragbb4ff3f2022-03-10 17:52:11 +0000214
215 lint: {
216 extra_check_modules: ["SystemUILintChecker"],
217 },
Jason Monka2f2d822018-08-13 11:10:48 -0400218}
219
Tadashi G. Takaokaa6572dc2019-09-17 15:18:53 +0900220filegroup {
Fabian Kozynskid389df52022-01-06 10:52:51 -0500221 name: "AAA-src",
222 srcs: ["tests/src/com/android/AAAPlusPlusVerifySysuiRequiredTestPropertiesTest.java"],
223 path: "tests/src",
224}
225
226filegroup {
Tadashi G. Takaokaa6572dc2019-09-17 15:18:53 +0900227 name: "SystemUI-tests-utils",
228 srcs: [
Jordan Demeulenaeref7fed3c2022-07-28 18:06:49 +0200229 "tests/utils/src/**/*.java",
230 "tests/utils/src/**/*.kt",
Dave Mankoffb4935a22021-06-01 15:12:15 -0400231 ],
Jordan Demeulenaeref7fed3c2022-07-28 18:06:49 +0200232 path: "tests/utils/src",
Tadashi G. Takaokaa6572dc2019-09-17 15:18:53 +0900233}
234
Kevin Liud3793232023-02-09 20:37:27 +0000235filegroup {
Caitlin Shkuratovd3777bd2023-07-18 21:39:33 +0000236 name: "SystemUI-test-fakes",
237 srcs: [
238 /* Status bar fakes */
239 "tests/src/com/android/systemui/statusbar/pipeline/airplane/data/repository/FakeAirplaneModeRepository.kt",
Chandru S2f6c56c2023-09-21 18:13:23 -0700240 "tests/src/com/android/systemui/statusbar/pipeline/mobile/data/repository/FakeMobileConnectionRepository.kt",
241 "tests/src/com/android/systemui/statusbar/pipeline/mobile/data/repository/FakeMobileConnectionsRepository.kt",
242 "tests/src/com/android/systemui/statusbar/pipeline/mobile/util/FakeMobileMappingsProxy.kt",
Caitlin Shkuratovd3777bd2023-07-18 21:39:33 +0000243 "tests/src/com/android/systemui/statusbar/pipeline/shared/data/repository/FakeConnectivityRepository.kt",
244 "tests/src/com/android/systemui/statusbar/pipeline/wifi/data/repository/FakeWifiRepository.kt",
Darrell Shi9ea21282023-08-30 23:57:12 +0000245
FabiĂĄn Kozynski9746d312023-08-31 16:47:50 -0400246 /* QS fakes */
247 "tests/src/com/android/systemui/qs/pipeline/domain/interactor/FakeQSTile.kt",
Caitlin Shkuratovd3777bd2023-07-18 21:39:33 +0000248 ],
249 path: "tests/src",
250}
251
252filegroup {
Kevin Liud3793232023-02-09 20:37:27 +0000253 name: "SystemUI-tests-robolectric-pilots",
254 srcs: [
Kevin Liuc54db8b2023-03-22 21:41:46 +0000255 /* Keyguard converted tests */
Kevin Liud3793232023-02-09 20:37:27 +0000256 // data
Kevin Liud3793232023-02-09 20:37:27 +0000257 "tests/src/com/android/systemui/keyguard/data/quickaffordance/DoNotDisturbQuickAffordanceConfigTest.kt",
Kevin Liud3793232023-02-09 20:37:27 +0000258 "tests/src/com/android/systemui/keyguard/data/quickaffordance/FlashlightQuickAffordanceConfigTest.kt",
259 "tests/src/com/android/systemui/keyguard/data/quickaffordance/HomeControlsKeyguardQuickAffordanceConfigTest.kt",
260 "tests/src/com/android/systemui/keyguard/data/quickaffordance/KeyguardQuickAffordanceLegacySettingSyncerTest.kt",
261 "tests/src/com/android/systemui/keyguard/data/quickaffordance/KeyguardQuickAffordanceLocalUserSelectionManagerTest.kt",
262 "tests/src/com/android/systemui/keyguard/data/quickaffordance/KeyguardQuickAffordanceRemoteUserSelectionManagerTest.kt",
Kevin Liuc54db8b2023-03-22 21:41:46 +0000263 "tests/src/com/android/systemui/keyguard/data/quickaffordance/MuteQuickAffordanceConfigTest.kt",
Kevin Liud3793232023-02-09 20:37:27 +0000264 "tests/src/com/android/systemui/keyguard/data/quickaffordance/QrCodeScannerKeyguardQuickAffordanceConfigTest.kt",
265 "tests/src/com/android/systemui/keyguard/data/quickaffordance/QuickAccessWalletKeyguardQuickAffordanceConfigTest.kt",
Kevin Liuc54db8b2023-03-22 21:41:46 +0000266 "tests/src/com/android/systemui/keyguard/data/quickaffordance/VideoCameraQuickAffordanceConfigTest.kt",
267 "tests/src/com/android/systemui/keyguard/data/repository/BiometricSettingsRepositoryTest.kt",
268 "tests/src/com/android/systemui/keyguard/data/repository/DeviceEntryFaceAuthRepositoryTest.kt",
269 "tests/src/com/android/systemui/keyguard/data/repository/DeviceEntryFingerprintAuthRepositoryTest.kt",
270 "tests/src/com/android/systemui/keyguard/data/repository/DevicePostureRepositoryTest.kt",
Kevin Liud3793232023-02-09 20:37:27 +0000271 "tests/src/com/android/systemui/keyguard/data/repository/KeyguardQuickAffordanceRepositoryTest.kt",
272 "tests/src/com/android/systemui/keyguard/data/repository/KeyguardRepositoryImplTest.kt",
Kevin Liuc54db8b2023-03-22 21:41:46 +0000273 "tests/src/com/android/systemui/keyguard/data/repository/LightRevealScrimRepositoryTest.kt",
274 "tests/src/com/android/systemui/keyguard/data/repository/TrustRepositoryTest.kt",
Kevin Liud3793232023-02-09 20:37:27 +0000275 // domain
Aaron Liu8456c412023-05-31 11:12:55 -0700276 "tests/src/com/android/systemui/bouncer/domain/interactor/AlternateBouncerInteractorTest.kt",
277 "tests/src/com/android/systemui/bouncer/domain/interactor/PrimaryBouncerCallbackInteractorTest.kt",
278 "tests/src/com/android/systemui/bouncer/domain/interactor/PrimaryBouncerInteractorWithCoroutinesTest.kt",
Kevin Liud3793232023-02-09 20:37:27 +0000279 "tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardInteractorTest.kt",
Kevin Liu810fcbb2023-04-24 22:33:07 +0000280 "tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardLongPressInteractorTest.kt",
Kevin Liud3793232023-02-09 20:37:27 +0000281 "tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractorTest.kt",
282 "tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardTransitionInteractorTest.kt",
283 "tests/src/com/android/systemui/keyguard/domain/interactor/LightRevealScrimInteractorTest.kt",
Kevin Liud3793232023-02-09 20:37:27 +0000284 // ui
Aaron Liu8456c412023-05-31 11:12:55 -0700285 "tests/src/com/android/systemui/bouncer/ui/viewmodel/KeyguardBouncerViewModelTest.kt",
Kevin Liud3793232023-02-09 20:37:27 +0000286 "tests/src/com/android/systemui/keyguard/ui/viewmodel/DreamingToLockscreenTransitionViewModelTest.kt",
Kevin Liud3793232023-02-09 20:37:27 +0000287 "tests/src/com/android/systemui/keyguard/ui/viewmodel/GoneToDreamingTransitionViewModelTest.kt",
288 "tests/src/com/android/systemui/keyguard/ui/viewmodel/LockscreenToDreamingTransitionViewModelTest.kt",
289 "tests/src/com/android/systemui/keyguard/ui/viewmodel/LockscreenToOccludedTransitionViewModelTest.kt",
290 "tests/src/com/android/systemui/keyguard/ui/viewmodel/OccludedToLockscreenTransitionViewModelTest.kt",
Kevin Liu810fcbb2023-04-24 22:33:07 +0000291 "tests/src/com/android/systemui/keyguard/ui/viewmodel/PrimaryBouncerToGoneTransitionViewModelTest.kt",
Kevin Liuc54db8b2023-03-22 21:41:46 +0000292 // Keyguard helper
293 "tests/src/com/android/systemui/keyguard/data/quickaffordance/FakeKeyguardQuickAffordanceConfig.kt",
Brad Hinegardner5094a5d2023-04-25 16:28:45 -0400294 "tests/src/com/android/systemui/dock/DockManagerFake.java",
Kevin Liuc54db8b2023-03-22 21:41:46 +0000295 "tests/src/com/android/systemui/dump/LogBufferHelper.kt",
296 "tests/src/com/android/systemui/statusbar/phone/FakeKeyguardStateController.java",
Kevin Liu092b8212023-02-15 05:42:34 +0000297
Kevin Liuc54db8b2023-03-22 21:41:46 +0000298 /* Biometric converted tests */
Kevin Liu092b8212023-02-15 05:42:34 +0000299 "tests/src/com/android/systemui/biometrics/BiometricTestExtensions.kt",
Kevin Liu092b8212023-02-15 05:42:34 +0000300 "tests/src/com/android/systemui/biometrics/AuthControllerTest.java",
301 "tests/src/com/android/systemui/biometrics/BiometricDisplayListenerTest.java",
302 "tests/src/com/android/systemui/biometrics/FaceHelpMessageDeferralTest.kt",
303 "tests/src/com/android/systemui/biometrics/SideFpsControllerTest.kt",
304 "tests/src/com/android/systemui/biometrics/UdfpsControllerOverlayTest.kt",
305 "tests/src/com/android/systemui/biometrics/UdfpsControllerTest.java",
306 "tests/src/com/android/systemui/biometrics/UdfpsDialogMeasureAdapterTest.java",
307 "tests/src/com/android/systemui/biometrics/UdfpsDisplayModeTest.java",
Beverlyea7325c2023-05-03 13:49:09 +0000308 "tests/src/com/android/systemui/biometrics/UdfpsKeyguardViewLegacyControllerBaseTest.java",
309 "tests/src/com/android/systemui/biometrics/UdfpsKeyguardViewLegacyControllerTest.java",
310 "tests/src/com/android/systemui/biometrics/UdfpsKeyguardViewLegacyControllerWithCoroutinesTest.kt",
Kevin Liu092b8212023-02-15 05:42:34 +0000311 "tests/src/com/android/systemui/biometrics/UdfpsShellTest.kt",
312 "tests/src/com/android/systemui/biometrics/UdfpsViewTest.kt",
Caitlin Shkuratovd3777bd2023-07-18 21:39:33 +0000313
314 /* Status bar wifi converted tests */
315 "tests/src/com/android/systemui/statusbar/pipeline/wifi/data/repository/WifiRepositorySwitcherTest.kt",
316 "tests/src/com/android/systemui/statusbar/pipeline/wifi/data/repository/prod/DisabledWifiRepositoryTest.kt",
317 "tests/src/com/android/systemui/statusbar/pipeline/wifi/data/repository/prod/WifiRepositoryImplTest.kt",
Caitlin Shkuratove0ed29452023-07-20 13:26:29 +0000318 "tests/src/com/android/systemui/statusbar/pipeline/wifi/domain/interactor/WifiInteractorImplTest.kt",
Caitlin Shkuratov87d86642023-07-20 14:49:28 +0000319 "tests/src/com/android/systemui/statusbar/pipeline/wifi/ui/viewmodel/WifiViewModelTest.kt",
Alejandro Nijamkinfb7db262023-10-04 15:40:18 -0700320 "tests/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/FakeMobileIconsInteractor.kt",
321 "tests/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/FakeMobileIconInteractor.kt",
Aaron Liu95f9e9a2023-08-25 11:56:47 -0700322
323 /* Bouncer UI tests */
324 "tests/src/com/android/keyguard/KeyguardPasswordViewControllerTest.kt",
325 "tests/src/com/android/keyguard/KeyguardPatternViewControllerTest.kt",
326 "tests/src/com/android/keyguard/KeyguardPinBasedInputViewControllerTest.java",
327 "tests/src/com/android/keyguard/KeyguardPinViewControllerTest.kt",
328 "tests/src/com/android/keyguard/KeyguardSecurityContainerTest.java",
329 "tests/src/com/android/keyguard/KeyguardSecurityContainerControllerTest.kt",
330 "tests/src/com/android/keyguard/KeyguardSecurityViewFlipperControllerTest.java",
331 "tests/src/com/android/keyguard/KeyguardSimPinViewControllerTest.kt",
332 "tests/src/com/android/keyguard/KeyguardSimPukViewControllerTest.kt",
Darrell Shi9ea21282023-08-30 23:57:12 +0000333
334 /* Communal tests */
335 "tests/src/com/android/systemui/communal/data/repository/CommunalWidgetRepositoryImplTest.kt",
336 "tests/src/com/android/systemui/communal/domain/interactor/CommunalInteractorTest.kt",
337 "tests/src/com/android/systemui/communal/ui/view/layout/blueprints/DefaultCommunalBlueprintTest.kt",
Darrell Shi8690e222023-08-31 21:11:25 +0000338
339 /* Dream tests */
340 "tests/src/com/android/systemui/dreams/complication/HideComplicationTouchHandlerTest.java",
341 "tests/src/com/android/systemui/dreams/conditions/AssistantAttentionConditionTest.java",
342 "tests/src/com/android/systemui/dreams/conditions/DreamConditionTest.java",
343 "tests/src/com/android/systemui/dreams/touch/scrim/BouncerlessScrimControllerTest.java",
344 "tests/src/com/android/systemui/dreams/touch/scrim/ScrimManagerTest.java",
345 "tests/src/com/android/systemui/dreams/touch/BouncerSwipeTouchHandlerTest.java",
346 "tests/src/com/android/systemui/dreams/touch/ShadeTouchHandlerTest.java",
347 "tests/src/com/android/systemui/dreams/DreamOverlayAnimationsControllerTest.kt",
348 "tests/src/com/android/systemui/dreams/DreamOverlayCallbackControllerTest.kt",
349 "tests/src/com/android/systemui/dreams/DreamOverlayContainerViewControllerTest.java",
350 "tests/src/com/android/systemui/dreams/DreamOverlayNotificationCountProviderTest.java",
351 "tests/src/com/android/systemui/dreams/DreamOverlayServiceTest.java",
352 "tests/src/com/android/systemui/dreams/DreamOverlayStateControllerTest.java",
353 "tests/src/com/android/systemui/dreams/DreamOverlayStatusBarItemsProviderTest.java",
354 "tests/src/com/android/systemui/dreams/DreamOverlayStatusBarViewControllerTest.java",
Xiaowen Lei39e0d0b2023-09-06 22:50:24 +0000355
356 /* Smartspace tests */
357 "tests/src/com/android/systemui/smartspace/BcSmartspaceConfigProviderTest.kt",
358 "tests/src/com/android/systemui/smartspace/DreamSmartspaceControllerTest.kt",
359 "tests/src/com/android/systemui/smartspace/LockscreenAndDreamTargetFilterTest.kt",
360 "tests/src/com/android/systemui/smartspace/LockscreenPreconditionTest.kt",
FabiĂĄn Kozynski9746d312023-08-31 16:47:50 -0400361
362 /* Quick Settings new pipeline converted tests */
363 "tests/src/com/android/systemui/qs/pipeline/data/**/*Test.kt",
364 "tests/src/com/android/systemui/qs/pipeline/domain/**/*Test.kt",
365 "tests/src/com/android/systemui/qs/pipeline/shared/TileSpecTest.kt",
Anton Potapova0317a32023-09-25 15:45:17 +0100366 "tests/src/com/android/systemui/qs/tiles/base/**/*.kt",
367 "tests/src/com/android/systemui/qs/tiles/viewmodel/**/*.kt",
Alejandro Nijamkinfb7db262023-10-04 15:40:18 -0700368
369 /* Authentication */
370 "tests/src/com/android/systemui/authentication/data/repository/AuthenticationRepositoryTest.kt",
371 "tests/src/com/android/systemui/authentication/domain/interactor/AuthenticationInteractorTest.kt",
372
373 /* Device entry */
374 "tests/src/com/android/systemui/deviceentry/data/repository/DeviceEntryRepositoryTest.kt",
375 "tests/src/com/android/systemui/deviceentry/domain/interactor/DeviceEntryInteractorTest.kt",
376
377 /* Bouncer scene */
378 "tests/src/com/android/systemui/bouncer/domain/interactor/BouncerInteractorTest.kt",
379 "tests/src/com/android/systemui/bouncer/ui/viewmodel/AuthMethodBouncerViewModelTest.kt",
380 "tests/src/com/android/systemui/bouncer/ui/viewmodel/BouncerViewModelTest.kt",
381 "tests/src/com/android/systemui/bouncer/ui/viewmodel/PasswordBouncerViewModelTest.kt",
382 "tests/src/com/android/systemui/bouncer/ui/viewmodel/PatternBouncerViewModelTest.kt",
383 "tests/src/com/android/systemui/bouncer/ui/viewmodel/PinBouncerViewModelTest.kt",
384 "tests/src/com/android/systemui/bouncer/ui/viewmodel/PinInputViewModelTest.kt",
385
386 /* Lockscreen scene */
387 "tests/src/com/android/systemui/keyguard/ui/viewmodel/LockscreenSceneViewModelTest.kt",
388
389 /* Shade scene */
390 "tests/src/com/android/systemui/shade/ui/viewmodel/ShadeSceneViewModelTest.kt",
391 "tests/src/com/android/systemui/shade/ui/viewmodel/ShadeHeaderViewModelTest.kt",
392
393 /* Quick Settings scene */
394 "tests/src/com/android/systemui/qs/ui/viewmodel/QuickSettingsSceneViewModelTest.kt",
395
396 /* Flexiglass / Scene framework tests */
397 "tests/src/com/android/systemui/scene/SceneFrameworkIntegrationTest.kt",
398 "tests/src/com/android/systemui/scene/data/repository/SceneContainerRepositoryTest.kt",
399 "tests/src/com/android/systemui/scene/data/repository/WindowRootViewVisibilityRepositoryTest.kt",
400 "tests/src/com/android/systemui/scene/domain/interactor/SceneInteractorTest.kt",
401 "tests/src/com/android/systemui/scene/domain/interactor/WindowRootViewVisibilityInteractorTest.kt",
402 "tests/src/com/android/systemui/scene/domain/startable/SceneContainerStartableTest.kt",
403 "tests/src/com/android/systemui/scene/ui/viewmodel/SceneContainerViewModelTest.kt",
David Saffb2319612023-10-19 14:14:16 -0400404
Kevin Liud3793232023-02-09 20:37:27 +0000405 ],
406 path: "tests/src",
407}
408
David Saffb2319612023-10-19 14:14:16 -0400409filegroup {
410 name: "SystemUI-tests-multivalent",
411 srcs: [
412 "multivalentTests/src/**/*.kt",
413 ],
414 path: "multivalentTests/src",
415}
416
Bryce Leea5b08082021-10-06 11:34:56 -0700417java_library {
418 name: "SystemUI-tests-concurrency",
419 srcs: [
420 "src/com/android/systemui/util/concurrency/DelayableExecutor.java",
421 "src/com/android/systemui/util/time/SystemClock.java",
Jordan Demeulenaeref7fed3c2022-07-28 18:06:49 +0200422 "tests/utils/src/com/android/systemui/util/concurrency/FakeExecutor.java",
423 "tests/utils/src/com/android/systemui/util/time/FakeSystemClock.java",
Bryce Leea5b08082021-10-06 11:34:56 -0700424 ],
425 jarjar_rules: ":jarjar-rules-shared",
426}
427
Jason Monkae7ced22018-08-22 16:56:58 -0400428android_library {
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000429 name: "SystemUI-tests-base",
Peter Kalauskas84c5a992023-08-23 13:39:23 -0700430 use_resource_processor: true,
Sunny Goyaleb18d392020-02-07 16:48:14 -0800431 manifest: "tests/AndroidManifest-base.xml",
Jason Monkae7ced22018-08-22 16:56:58 -0400432 resource_dirs: [
433 "tests/res",
Jason Monkae7ced22018-08-22 16:56:58 -0400434 ],
Jason Monkae7ced22018-08-22 16:56:58 -0400435 static_libs: [
Peter Kalauskas84c5a992023-08-23 13:39:23 -0700436 "SystemUI-res",
Quang Luongc6fc5b22021-06-10 14:35:32 -0700437 "WifiTrackerLib",
Jordan Demeulenaerecea62bb2021-04-08 11:04:50 +0200438 "SystemUIAnimationLib",
Jason Monkae7ced22018-08-22 16:56:58 -0400439 "SystemUIPluginLib",
440 "SystemUISharedLib",
Hawkwood Glazierb8eef872022-11-11 17:56:14 +0000441 "SystemUICustomizationLib",
Hyunyoung Song3d89c932020-04-11 13:31:06 -0700442 "SystemUI-statsd",
Jason Monkae7ced22018-08-22 16:56:58 -0400443 "SettingsLib",
Ned Burns6d480c32023-08-28 12:12:19 -0400444 "com_android_systemui_flags_lib",
Jeff DeCew91a53962023-10-06 15:40:23 +0000445 "flag-junit-base",
Fabian Kozynski713b7272020-03-03 18:35:52 -0500446 "androidx.viewpager2_viewpager2",
Jason Monkae7ced22018-08-22 16:56:58 -0400447 "androidx.legacy_legacy-support-v4",
448 "androidx.recyclerview_recyclerview",
449 "androidx.preference_preference",
450 "androidx.appcompat_appcompat",
Mark Renoufe2395012020-12-16 01:05:12 -0500451 "androidx.concurrent_concurrent-futures",
Jason Monkae7ced22018-08-22 16:56:58 -0400452 "androidx.mediarouter_mediarouter",
453 "androidx.palette_palette",
454 "androidx.legacy_legacy-preference-v14",
455 "androidx.leanback_leanback",
456 "androidx.slice_slice-core",
457 "androidx.slice_slice-view",
458 "androidx.slice_slice-builders",
459 "androidx.arch.core_core-runtime",
Bryce Lee436e42c2022-01-24 14:53:49 -0800460 "androidx.lifecycle_lifecycle-common-java8",
Jason Monkae7ced22018-08-22 16:56:58 -0400461 "androidx.lifecycle_lifecycle-extensions",
Jordan Demeulenaere8a169ff2022-07-13 10:42:10 +0200462 "androidx.lifecycle_lifecycle-runtime-ktx",
Joshua Tsujib1a796b2019-01-16 15:43:12 -0800463 "androidx.dynamicanimation_dynamicanimation",
Steve Elliott300b48f2019-05-29 14:13:50 -0400464 "androidx-constraintlayout_constraintlayout",
Miranda Kepharte1a22b92020-12-16 14:01:12 -0500465 "androidx.exifinterface_exifinterface",
Pinyao Tingee191b12020-04-29 18:35:39 -0700466 "kotlinx-coroutines-android",
467 "kotlinx-coroutines-core",
Alejandro Nijamkinc738a8c2022-07-25 13:30:41 -0700468 "kotlinx_coroutines_test",
Chandru5a5e5332022-08-19 14:25:31 +0000469 "kotlin-reflect",
Lyn Han1b4f25e2019-06-11 13:56:34 -0700470 "iconloader_base",
Jason Monkae7ced22018-08-22 16:56:58 -0400471 "SystemUI-tags",
472 "SystemUI-proto",
473 "metrics-helper-lib",
Tadashi G. Takaokac7340fb2020-10-20 17:50:13 +0900474 "hamcrest-library",
475 "androidx.test.rules",
Jason Monkae7ced22018-08-22 16:56:58 -0400476 "testables",
Krzysztof KosiƄski60b70872023-10-06 20:11:39 +0000477 "truth",
Lucas Dupine37369f2021-08-31 00:19:39 +0000478 "monet",
Lucas Dupind83b4ee2023-07-08 11:05:47 -0700479 "libmonet",
Dave Mankoffdffcc472020-07-08 15:25:16 -0400480 "dagger2",
Bill Lina17858d12020-07-14 10:30:10 +0800481 "jsr330",
482 "WindowManager-Shell",
Lucas Silva0bfb4052022-09-20 23:32:02 -0400483 "LowLightDreamLib",
Johannes Gallmann0d5183c2022-10-04 13:32:16 +0000484 "motion_tool_lib",
Johannes Gallmannb642af92022-10-14 09:58:09 +0000485 "androidx.core_core-animation-testing-nodeps",
Jordan Demeulenaere54a0fae2023-01-04 11:36:46 +0100486 "androidx.compose.ui_ui",
Jason Monkae7ced22018-08-22 16:56:58 -0400487 ],
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000488}
489
490android_library {
491 name: "SystemUI-tests",
Peter Kalauskas84c5a992023-08-23 13:39:23 -0700492 use_resource_processor: true,
Jordan Demeulenaere68e91822022-12-16 10:55:47 +0100493 defaults: [
494 "SystemUI_compose_defaults",
495 ],
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000496 manifest: "tests/AndroidManifest-base.xml",
497 additional_manifests: ["tests/AndroidManifest.xml"],
498 srcs: [
499 "tests/src/**/*.kt",
500 "tests/src/**/*.java",
501 "src/**/*.kt",
502 "src/**/*.java",
503 "src/**/I*.aidl",
504 ":ReleaseJavaFiles",
David Saffb2319612023-10-19 14:14:16 -0400505 ":SystemUI-tests-multivalent",
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000506 ":SystemUI-tests-utils",
507 ],
508 static_libs: [
509 "SystemUI-tests-base",
510 "androidx.test.uiautomator_uiautomator",
Jeff DeCewa415d0e2023-08-02 11:30:09 -0400511 "androidx.core_core-animation-testing",
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000512 "mockito-target-extended-minus-junit4",
513 "androidx.test.ext.junit",
Steven Ng45b74c62023-03-23 11:23:02 +0000514 "androidx.test.ext.truth",
Colin Cross852cd142023-08-11 16:53:55 -0700515 "kotlin-test",
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000516 ],
Jason Monkae7ced22018-08-22 16:56:58 -0400517 libs: [
518 "android.test.runner",
Jason Monkae7ced22018-08-22 16:56:58 -0400519 "android.test.base",
Jordan Demeulenaere6fb22d42022-08-19 15:00:36 +0200520 "android.test.mock",
Nikolas Havrikovc70cb072023-09-08 15:06:35 +0200521 "keepanno-annotations",
Jason Monkae7ced22018-08-22 16:56:58 -0400522 ],
Colin Cross6954ea72023-07-18 10:52:21 -0700523 kotlincflags: ["-Xjvm-default=all"],
Jason Monkae7ced22018-08-22 16:56:58 -0400524 aaptflags: [
525 "--extra-packages",
Hyunyoung Song8f9d34c2019-08-30 14:47:43 -0700526 "com.android.systemui",
Jason Monkae7ced22018-08-22 16:56:58 -0400527 ],
Dave Mankoffdffcc472020-07-08 15:25:16 -0400528 plugins: ["dagger2-compiler"],
Cole Faust17f1e722022-08-16 15:30:26 -0700529 lint: {
530 test: true,
Jeff Chen194a13f2023-03-16 15:40:05 -0700531 extra_check_modules: ["SystemUILintChecker"],
Cole Faust17f1e722022-08-16 15:30:26 -0700532 },
Jason Monkae7ced22018-08-22 16:56:58 -0400533}
534
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000535android_app {
536 name: "SystemUIRobo-stub",
Peter Kalauskas84c5a992023-08-23 13:39:23 -0700537 use_resource_processor: true,
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000538 defaults: [
539 "platform_app_defaults",
Jared Duke5bf6fb32023-02-23 14:27:47 -0800540 "SystemUI_optimized_defaults",
Kevin Liud3793232023-02-09 20:37:27 +0000541 "SystemUI_compose_defaults",
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000542 ],
543 manifest: "tests/AndroidManifest-base.xml",
Kevin Liud3793232023-02-09 20:37:27 +0000544
545 srcs: [
546 "src/**/*.kt",
547 "src/**/*.java",
548 "src/**/I*.aidl",
549 ":ReleaseJavaFiles",
550 ],
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000551 static_libs: [
552 "SystemUI-tests-base",
553 ],
Nikolas Havrikovc70cb072023-09-08 15:06:35 +0200554 libs: [
555 "keepanno-annotations",
556 ],
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000557 aaptflags: [
558 "--extra-packages",
559 "com.android.systemui",
560 ],
561 dont_merge_manifests: true,
562 platform_apis: true,
563 system_ext_specific: true,
564 certificate: "platform",
565 privileged: true,
566 resource_dirs: [],
Kevin Liud3793232023-02-09 20:37:27 +0000567 kotlincflags: ["-Xjvm-default=all"],
Kevin Liu092b8212023-02-15 05:42:34 +0000568 optimize: {
569 shrink_resources: false,
570 proguard_flags_files: ["proguard.flags"],
571 },
Kevin Liud3793232023-02-09 20:37:27 +0000572
573 plugins: ["dagger2-compiler"],
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000574}
575
576android_robolectric_test {
577 name: "SystemUiRoboTests",
578 srcs: [
579 "tests/robolectric/src/**/*.kt",
580 "tests/robolectric/src/**/*.java",
Kevin Liud3793232023-02-09 20:37:27 +0000581 ":SystemUI-tests-utils",
Caitlin Shkuratovd3777bd2023-07-18 21:39:33 +0000582 ":SystemUI-test-fakes",
Kevin Liud3793232023-02-09 20:37:27 +0000583 ":SystemUI-tests-robolectric-pilots",
David Saffb2319612023-10-19 14:14:16 -0400584 ":SystemUI-tests-multivalent",
Kevin Liud3793232023-02-09 20:37:27 +0000585 ],
586 static_libs: [
587 "androidx.test.uiautomator_uiautomator",
Jeff DeCewa415d0e2023-08-02 11:30:09 -0400588 "androidx.core_core-animation-testing",
Kevin Liud3793232023-02-09 20:37:27 +0000589 "androidx.test.ext.junit",
590 "inline-mockito-robolectric-prebuilt",
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000591 ],
592 libs: [
593 "android.test.runner",
594 "android.test.base",
595 "android.test.mock",
Krzysztof KosiƄski60b70872023-10-06 20:11:39 +0000596 "truth",
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000597 ],
Kevin Liud3793232023-02-09 20:37:27 +0000598
599 upstream: true,
600
Jay Aliomer9b13ae12022-11-28 14:50:09 +0000601 instrumentation_for: "SystemUIRobo-stub",
602 java_resource_dirs: ["tests/robolectric/config"],
603}
604
Jared Duke84e94b32022-08-05 13:46:38 -0700605// Opt-out config for optimizing the SystemUI target using R8.
606// Disabled via `export SYSTEMUI_OPTIMIZE_JAVA=false`, or explicitly in Make via
607// `SYSTEMUI_OPTIMIZE_JAVA := false`.
Jared Duke9dfa77b2021-12-22 13:31:06 -0800608soong_config_module_type {
609 name: "systemui_optimized_java_defaults",
610 module_type: "java_defaults",
611 config_namespace: "ANDROID",
612 bool_variables: ["SYSTEMUI_OPTIMIZE_JAVA"],
613 properties: ["optimize"],
Jared Duke2fee7402021-10-18 14:35:04 -0700614}
615
Jared Duke9dfa77b2021-12-22 13:31:06 -0800616systemui_optimized_java_defaults {
Jared Duke5bf6fb32023-02-23 14:27:47 -0800617 name: "SystemUI_optimized_defaults",
Jared Duke2fee7402021-10-18 14:35:04 -0700618 soong_config_variables: {
Jared Duke9dfa77b2021-12-22 13:31:06 -0800619 SYSTEMUI_OPTIMIZE_JAVA: {
Jared Duke2fee7402021-10-18 14:35:04 -0700620 optimize: {
621 enabled: true,
622 optimize: true,
623 shrink: true,
Jared Duke0668af22023-02-23 14:43:31 -0800624 shrink_resources: true,
Jared Duke5ecfe872022-09-08 09:25:30 -0700625 ignore_warnings: false,
Jared Dukef0904172022-06-07 18:01:06 +0000626 proguard_compatibility: false,
Jared Duke2fee7402021-10-18 14:35:04 -0700627 },
628 conditions_default: {
629 optimize: {
Jared Duke5ecfe872022-09-08 09:25:30 -0700630 ignore_warnings: false,
Jared Dukef0904172022-06-07 18:01:06 +0000631 proguard_compatibility: false,
Jared Duke2fee7402021-10-18 14:35:04 -0700632 },
633 },
634 },
635 },
636}
637
Jason Monka2f2d822018-08-13 11:10:48 -0400638android_app {
639 name: "SystemUI",
Jared Duke2fee7402021-10-18 14:35:04 -0700640 defaults: [
641 "platform_app_defaults",
Jared Duke5bf6fb32023-02-23 14:27:47 -0800642 "SystemUI_optimized_defaults",
Jared Duke2fee7402021-10-18 14:35:04 -0700643 ],
Jason Monka2f2d822018-08-13 11:10:48 -0400644 static_libs: [
645 "SystemUI-core",
646 ],
Anton Hansson7ccca9f2019-02-08 09:01:32 +0000647 resource_dirs: [],
Jason Monka2f2d822018-08-13 11:10:48 -0400648
Colin Crossc23cde42023-06-21 11:22:11 -0700649 use_resource_processor: true,
Jason Monka2f2d822018-08-13 11:10:48 -0400650 platform_apis: true,
Jeongik Chad45d9e12019-12-04 13:38:39 +0900651 system_ext_specific: true,
Jason Monka2f2d822018-08-13 11:10:48 -0400652 certificate: "platform",
653 privileged: true,
654
Colin Cross6954ea72023-07-18 10:52:21 -0700655 kotlincflags: ["-Xjvm-default=all"],
Selim Cinek820ba2d2019-06-18 18:59:09 -0700656
Jason Monka2f2d822018-08-13 11:10:48 -0400657 dxflags: ["--multi-dex"],
Jared Duke5bf6fb32023-02-23 14:27:47 -0800658 optimize: {
659 proguard_flags_files: ["proguard.flags"],
660 },
Winson Chungb754f522020-08-03 22:17:08 -0700661 required: [
662 "privapp_whitelist_com.android.systemui",
Hongwei Wang2b227ee2022-08-19 09:38:18 -0700663 "wmshell.protolog.json.gz",
Winson Chungb754f522020-08-03 22:17:08 -0700664 ],
Jason Monka2f2d822018-08-13 11:10:48 -0400665}