blob: b8c6daf70b414b688e85ba35626f3db727348f95 [file] [log] [blame]
Avi Drissman0db84842022-09-13 19:47:041# Copyright 2015 The Chromium Authors
tfarinacdc7e5d2015-02-23 09:52:242# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
Yuta Hijikata57d60812020-10-24 01:00:555import("//build/config/chromeos/ui_mode.gni")
tfarinacdc7e5d2015-02-23 09:52:246import("//build/config/features.gni")
Scott Violetc8240b02018-03-08 22:03:597import("//device/vr/buildflags/buildflags.gni")
tfarinacdc7e5d2015-02-23 09:52:248import("//testing/test.gni")
9
scheib56010cc2015-06-25 01:29:4710if (is_android) {
mcasas649deb52017-04-28 01:55:5211 import("//build/config/android/config.gni")
Sam Maier2cb3f6d2023-09-08 14:50:2012 import("//build/config/android/rules.gni")
13 import("//third_party/jni_zero/jni_zero.gni")
scheib56010cc2015-06-25 01:29:4714}
15
erikchenceb2fff2015-04-27 17:50:5416if (is_mac) {
17 import("//build/config/mac/mac_sdk.gni")
18}
19
Sean McAllister224ef732020-08-04 17:27:5520is_linux_without_udev = (is_linux || is_chromeos) && !use_udev
scheib7a4cf042015-03-31 04:33:4421
tfarinacdc7e5d2015-02-23 09:52:2422test("device_unittests") {
23 sources = [
alexis.menardb39a30822016-09-30 15:14:3924 "base/synchronization/one_writer_seqlock_unittest.cc",
Julie Jeongeun Kimcc191202023-03-08 03:43:4025 "bluetooth/adapter_unittest.cc",
26 "bluetooth/advertisement_unittest.cc",
27 "bluetooth/bluetooth_adapter_unittest.cc",
28 "bluetooth/bluetooth_advertisement_unittest.cc",
29 "bluetooth/bluetooth_device_unittest.cc",
30 "bluetooth/bluetooth_discovery_filter_unittest.cc",
31 "bluetooth/bluetooth_local_gatt_characteristic_unittest.cc",
32 "bluetooth/bluetooth_local_gatt_descriptor_unittest.cc",
Julie Jeongeun Kimcc191202023-03-08 03:43:4033 "bluetooth/bluetooth_remote_gatt_characteristic_unittest.cc",
34 "bluetooth/bluetooth_remote_gatt_descriptor_unittest.cc",
35 "bluetooth/bluetooth_remote_gatt_service_unittest.cc",
36 "bluetooth/device_unittest.cc",
Juliet Levesque6e611a82024-03-05 23:28:3037 "bluetooth/gatt_service_unittest.cc",
Julie Jeongeun Kimcc191202023-03-08 03:43:4038 "bluetooth/public/cpp/bluetooth_uuid_unittest.cc",
39 "bluetooth/server_socket_unittest.cc",
40 "bluetooth/socket_unittest.cc",
41 "bluetooth/string_util_icu_unittest.cc",
42 "bluetooth/test/bluetooth_gatt_server_test.cc",
43 "bluetooth/test/bluetooth_gatt_server_test.h",
44 "bluetooth/test/bluetooth_test.cc",
45 "bluetooth/test/bluetooth_test.h",
46 "bluetooth/test/mock_pairing_delegate.cc",
47 "bluetooth/test/mock_pairing_delegate.h",
48 "bluetooth/test/test_bluetooth_adapter_observer.cc",
49 "bluetooth/test/test_bluetooth_adapter_observer.h",
50 "bluetooth/test/test_bluetooth_advertisement_observer.cc",
51 "bluetooth/test/test_bluetooth_advertisement_observer.h",
52 "bluetooth/test/test_bluetooth_local_gatt_service_delegate.cc",
53 "bluetooth/test/test_bluetooth_local_gatt_service_delegate.h",
Matt Reynolds7c498e52017-12-06 22:06:2454 "gamepad/abstract_haptic_gamepad_unittest.cc",
Matt Reynoldscdb73c32019-08-23 00:46:2955 "gamepad/dualshock4_controller_unittest.cc",
Matt Reynolds96bd76a2019-06-12 21:15:1656 "gamepad/gamepad_blocklist_unittest.cc",
Matt Reynolds054d99b2018-12-06 02:40:2457 "gamepad/gamepad_id_list_unittest.cc",
bajonesb9bb4c42016-07-07 00:10:5158 "gamepad/gamepad_provider_unittest.cc",
ke.hebee6a642016-12-10 01:56:1959 "gamepad/gamepad_service_unittest.cc",
Matt Reynolds27a13de2019-08-20 21:03:3360 "gamepad/hid_haptic_gamepad_unittest.cc",
Oksana Zhuravlova96b546c2018-08-08 19:01:3361 "gamepad/public/cpp/gamepad_mojom_traits_unittest.cc",
Matt Reynolds5fcd224792019-08-29 21:24:0162 "gamepad/xbox_hid_controller_unittest.cc",
tfarinacdc7e5d2015-02-23 09:52:2463 "test/run_all_unittests.cc",
tfarinacdc7e5d2015-02-23 09:52:2464 ]
65
Julie Jeongeun Kimcc191202023-03-08 03:43:4066 if (is_apple) {
Julie Jeongeun Kim0c67cfe2023-03-07 03:40:5467 sources += [
Julie Jeongeun Kimcc191202023-03-08 03:43:4068 "bluetooth/bluetooth_low_energy_adapter_apple_unittest.mm",
Sylvain Defresne72188072020-10-05 11:54:4169 "bluetooth/bluetooth_low_energy_advertisement_manager_mac_unittest.mm",
70 "bluetooth/test/bluetooth_test_mac.h",
71 "bluetooth/test/bluetooth_test_mac.mm",
72 "bluetooth/test/mock_bluetooth_cbcharacteristic_mac.h",
73 "bluetooth/test/mock_bluetooth_cbcharacteristic_mac.mm",
74 "bluetooth/test/mock_bluetooth_cbdescriptor_mac.h",
75 "bluetooth/test/mock_bluetooth_cbdescriptor_mac.mm",
76 "bluetooth/test/mock_bluetooth_cbperipheral_mac.h",
77 "bluetooth/test/mock_bluetooth_cbperipheral_mac.mm",
78 "bluetooth/test/mock_bluetooth_cbservice_mac.h",
79 "bluetooth/test/mock_bluetooth_cbservice_mac.mm",
80 "bluetooth/test/mock_bluetooth_central_manager_mac.h",
81 "bluetooth/test/mock_bluetooth_central_manager_mac.mm",
82 ]
83 }
84
Julie Jeongeun Kimcc191202023-03-08 03:43:4085 if (is_mac) {
86 sources += [ "bluetooth/bluetooth_adapter_mac_unittest.mm" ]
87 }
88
Sylvain Defresne72188072020-10-05 11:54:4189 if (is_android) {
90 sources += [
91 "bluetooth/bluetooth_adapter_android_unittest.cc",
92 "bluetooth/test/bluetooth_test_android.cc",
93 "bluetooth/test/bluetooth_test_android.h",
94 ]
95 }
96
97 if (is_win) {
98 sources += [
99 "bluetooth/bluetooth_adapter_win_unittest.cc",
100 "bluetooth/bluetooth_device_win_unittest.cc",
Sylvain Defresne72188072020-10-05 11:54:41101 "bluetooth/bluetooth_service_record_win_unittest.cc",
102 "bluetooth/bluetooth_task_manager_win_unittest.cc",
103 "bluetooth/test/bluetooth_test_win.cc",
104 "bluetooth/test/bluetooth_test_win.h",
Qiaofei Ye5a02f892021-02-05 01:49:15105 "gamepad/wgi_data_fetcher_win_unittest.cc",
Sylvain Defresne72188072020-10-05 11:54:41106 ]
107 }
108
Scott Grahambf77d352018-10-25 17:50:54109 if (is_fuchsia) {
110 sources += [
111 "bluetooth/test/bluetooth_test_fuchsia.cc",
112 "bluetooth/test/bluetooth_test_fuchsia.h",
113 ]
114 }
115
tfarinacdc7e5d2015-02-23 09:52:24116 deps = [
Ovidio Henriquez21095442019-03-06 18:22:55117 "//base",
tfarinacdc7e5d2015-02-23 09:52:24118 "//base/test:test_support",
Yuta Hijikata57d60812020-10-24 01:00:55119 "//build:chromeos_buildflags",
Jun Choi3545f502018-03-14 01:30:00120 "//components/apdu",
Kim Paulhamus35995bb62018-01-05 11:47:04121 "//components/cbor",
Donna Wu4dc9df32019-05-20 03:56:21122 "//components/device_event_log",
Nina Satragno6eb69362024-02-12 23:30:36123 "//crypto:test_support",
Donna Wu4dc9df32019-05-20 03:56:21124 "//device/base",
alexis.menardb39a30822016-09-30 15:14:39125 "//device/base/synchronization",
Julie Jeongeun Kimcc191202023-03-08 03:43:40126 "//device/bluetooth",
127 "//device/bluetooth:deprecated_experimental_mojo",
128 "//device/bluetooth:fake_bluetooth",
129 "//device/bluetooth:mocks",
Juliet Levesque4ffba5d2024-03-07 23:09:22130 "//device/bluetooth/public/mojom:deprecated_experimental_interfaces",
bajonesb9bb4c42016-07-07 00:10:51131 "//device/gamepad",
132 "//device/gamepad:test_helpers",
juncai2f298a82017-04-18 03:51:39133 "//device/gamepad/public/cpp:shared_with_blink",
James Hollyer24f30cb722021-06-18 21:22:24134 "//device/gamepad/public/cpp:switches",
Reilly Grantfa93b142018-02-01 02:13:48135 "//device/gamepad/public/mojom",
Ken Rockot9b26bc52018-07-04 19:57:49136 "//mojo/core/embedder",
rockot85dce0862015-11-13 01:33:59137 "//mojo/public/cpp/bindings",
Oksana Zhuravlova96b546c2018-08-08 19:01:33138 "//mojo/public/cpp/test_support:test_utils",
tfarinacdc7e5d2015-02-23 09:52:24139 "//net",
140 "//testing/gmock",
141 "//testing/gtest",
Nathaniel Manistaca9287e72024-04-02 15:40:57142 "//third_party/abseil-cpp:absl",
Blink Reformata30d4232018-04-07 15:31:06143 "//third_party/blink/public:blink_headers",
Ovidio Henriquez21095442019-03-06 18:22:55144 "//ui/base",
tfarinacdc7e5d2015-02-23 09:52:24145 "//url",
146 ]
147
Ovidio Henriquez21095442019-03-06 18:22:55148 data_deps = [
Julie Jeongeun Kimcc191202023-03-08 03:43:40149 "bluetooth/strings:bluetooth_test_strings",
Haiyang Pan1c813ca2021-11-24 18:52:16150 "//testing/buildbot/filters:device_unittests_filters",
Ovidio Henriquez21095442019-03-06 18:22:55151 "//ui/resources:ui_test_pak_data",
152 ]
153
Renuga Nanjappana42eda422024-05-09 16:30:13154 if (is_android && enable_chrome_android_internal) {
155 data_deps += [ "//clank/build/bot/filters:device_unittests_filters" ]
156 }
157
Julie Jeongeun Kim0c67cfe2023-03-07 03:40:54158 if (!is_ios) {
Julie Jeongeun Kim0c67cfe2023-03-07 03:40:54159 deps += [
Julie Jeongeun Kim0c67cfe2023-03-07 03:40:54160 "//device/fido",
161 "//device/fido:test_support",
162 ]
Julie Jeongeun Kim0c67cfe2023-03-07 03:40:54163 }
164
Nina Satragno1867ead2020-06-15 18:38:13165 # Most of the FIDO implementation is not compiled in for Android.
Julie Jeongeun Kim0c67cfe2023-03-07 03:40:54166 if (!is_android && !is_ios) {
Nina Satragno1867ead2020-06-15 18:38:13167 sources += [
168 "fido/attestation_statement_formats_unittest.cc",
Martin Kreichgauerdc572252020-10-16 17:46:10169 "fido/auth_token_requester_unittest.cc",
Nina Satragno1867ead2020-06-15 18:38:13170 "fido/bio/enrollment_handler_unittest.cc",
171 "fido/ble_adapter_manager_unittest.cc",
172 "fido/cable/fido_ble_connection_unittest.cc",
173 "fido/cable/fido_ble_frames_unittest.cc",
174 "fido/cable/fido_ble_transaction_unittest.cc",
175 "fido/cable/fido_cable_device_unittest.cc",
176 "fido/cable/fido_cable_discovery_unittest.cc",
177 "fido/cable/fido_cable_handshake_handler_unittest.cc",
178 "fido/cable/v2_handshake_unittest.cc",
179 "fido/cbor_extract_unittest.cc",
180 "fido/credential_management_handler_unittest.cc",
181 "fido/ctap_request_unittest.cc",
182 "fido/ctap_response_unittest.cc",
Ken Buchanan414814902023-11-28 21:15:18183 "fido/enclave/enclave_protocol_utils_unittest.cc",
Livia Seibert5552d832024-04-19 21:13:03184 "fido/enclave/verify/claim_unittest.cc",
Livia Seibert64296a822024-04-23 18:28:57185 "fido/enclave/verify/endorsement_unittest.cc",
Livia Seibert0910e152024-05-02 22:49:56186 "fido/enclave/verify/rekor_unittest.cc",
Nibir Nawfil Afifccd5052e2024-04-18 03:04:39187 "fido/enclave/verify/utils_unittest.cc",
Nina Satragno1867ead2020-06-15 18:38:13188 "fido/fake_fido_discovery_unittest.cc",
Nina Satragno395c0fb2020-09-14 22:30:07189 "fido/fido_device_authenticator_unittest.cc",
Nina Satragno1867ead2020-06-15 18:38:13190 "fido/fido_device_discovery_unittest.cc",
191 "fido/fido_parsing_utils_unittest.cc",
192 "fido/fido_request_handler_unittest.cc",
Adam Langley051b97932021-01-11 19:11:23193 "fido/filter_unittest.cc",
Nina Satragno1867ead2020-06-15 18:38:13194 "fido/get_assertion_handler_unittest.cc",
195 "fido/get_assertion_task_unittest.cc",
196 "fido/hid/fido_hid_message_unittest.cc",
Nina Satragno395c0fb2020-09-14 22:30:07197 "fido/large_blob_unittest.cc",
Nina Satragno1867ead2020-06-15 18:38:13198 "fido/make_credential_handler_unittest.cc",
199 "fido/make_credential_task_unittest.cc",
Martin Kreichgauer0787dc32020-10-05 17:44:11200 "fido/pin_unittest.cc",
Nina Satragno1867ead2020-06-15 18:38:13201 "fido/test_callback_receiver_unittest.cc",
202 "fido/u2f_command_constructor_unittest.cc",
203 "fido/u2f_register_operation_unittest.cc",
204 "fido/u2f_sign_operation_unittest.cc",
205 "fido/virtual_ctap2_device_unittest.cc",
Nina Satragnob4edd6762022-05-16 20:51:47206 "fido/virtual_fido_device_authenticator_unittest.cc",
Nina Satragno1867ead2020-06-15 18:38:13207 "fido/virtual_u2f_device_unittest.cc",
Nina Satragno1867ead2020-06-15 18:38:13208 ]
209
Nina Satragno7f33f9b2023-01-31 22:09:03210 deps += [
Ken Buchanan414814902023-11-28 21:15:18211 "//components/sync/protocol:protocol",
Nina Satragno7f33f9b2023-01-31 22:09:03212 "//device/fido:mocks",
213 "//services/data_decoder/public/cpp:test_support",
214 ]
Martin Kreichgauer108eb102022-06-29 23:08:41215
Nibir Nawfil Afif2ac16ae42024-05-06 19:22:31216 data = [ "fido/enclave/verify/testdata/" ]
Livia Seibert0910e152024-05-02 22:49:56217
Katherine Lai5595158a2023-08-12 02:18:08218 if (is_chromeos_lacros) {
219 deps += [ "//chromeos/startup" ]
220 }
221
Martin Kreichgauer108eb102022-06-29 23:08:41222 if (is_mac) {
223 data_deps += [ "fido/strings:fido_test_strings" ]
224 }
Nina Satragno1867ead2020-06-15 18:38:13225 }
226
Sylvain Defresne72188072020-10-05 11:54:41227 if (is_mac) {
228 sources += [
Nina Satragnoc04208c2024-04-24 17:59:45229 "fido/enclave/icloud_recovery_key_mac_unittest.mm",
Avi Drissman36cfbd8d2023-06-13 19:37:25230 "fido/mac/authenticator_unittest.mm",
231 "fido/mac/browsing_data_deletion_unittest.mm",
Sylvain Defresne72188072020-10-05 11:54:41232 "fido/mac/credential_metadata_unittest.cc",
Avi Drissman36cfbd8d2023-06-13 19:37:25233 "fido/mac/credential_store_unittest.mm",
234 "fido/mac/get_assertion_operation_unittest_mac.mm",
235 "fido/mac/icloud_keychain_unittest.mm",
236 "fido/mac/make_credential_operation_unittest_mac.mm",
Sylvain Defresne72188072020-10-05 11:54:41237 "fido/mac/util_unittest.cc",
238 ]
Nina Satragnoc04208c2024-04-24 17:59:45239 deps += [
240 "//components/trusted_vault",
241 "//device/fido:icloud_keychain_test_support",
242 ]
Sylvain Defresne72188072020-10-05 11:54:41243 }
244
245 if (is_win) {
Nina Satragno115ceadb2022-05-25 20:59:46246 sources += [
247 "fido/win/authenticator_unittest.cc",
248 "fido/win/type_conversions_unittest.cc",
249 ]
Sylvain Defresne72188072020-10-05 11:54:41250 }
251
Nina Satragno1867ead2020-06-15 18:38:13252 # FIDO HID:
scheibcfdca0e2015-04-01 05:27:58253 # Android doesn't compile.
scheib7a4cf042015-03-31 04:33:44254 # Linux, requires udev.
Julie Jeongeun Kim0c67cfe2023-03-07 03:40:54255 if (!is_linux_without_udev && !is_android && !is_ios) {
scheib7a4cf042015-03-31 04:33:44256 sources += [
Kim Paulhamus534308e2018-07-23 20:58:43257 "fido/hid/fido_hid_device_unittest.cc",
258 "fido/hid/fido_hid_discovery_unittest.cc",
scheib7a4cf042015-03-31 04:33:44259 ]
260 deps += [
jdoerrie3e747742018-02-05 16:04:16261 "//device/fido:test_support",
Matt Reynolds11d261c2022-07-22 23:42:48262 "//services/device/public/cpp:test_support",
scheib7a4cf042015-03-31 04:33:44263 ]
264 }
265
266 if (use_udev) {
Matt Reynoldsd4103e72020-05-07 21:33:50267 sources += [
268 "udev_linux/udev_unittest.cc",
269 "udev_linux/udev_watcher_unittest.cc",
270 ]
Zentaro Kavanagh8c7826f2020-04-30 22:11:03271 deps += [
272 "//device/udev_linux",
273 "//device/udev_linux:test_support",
274 ]
scheib7a4cf042015-03-31 04:33:44275 }
276
scheib56010cc2015-06-25 01:29:47277 if (is_android) {
agrieve97176362015-12-01 16:36:19278 deps += [
279 ":bluetooth_test_java",
280 ":bluetooth_test_jni_headers",
281 ]
scheib56010cc2015-06-25 01:29:47282 }
283
Nico Weberd73c90382022-03-30 20:37:50284 if (is_chromeos) {
Michael Hansen3d4544f2021-07-19 20:37:56285 sources += [
286 "bluetooth/bluetooth_low_energy_scan_filter_unittest.cc",
Theo Johnson-Kanue80a4f22021-07-21 15:59:45287 "bluetooth/chromeos/bluetooth_connection_logger_unittest.cc",
Michael Hansen3d4544f2021-07-19 20:37:56288 "bluetooth/chromeos/bluetooth_utils_unittest.cc",
289 ]
Samuel Huang471ff9c2021-12-02 14:30:03290 deps += [ "//chromeos/constants" ]
Kyle Horimoto419ea9a2022-05-13 02:10:08291 if (is_chromeos_ash) {
Chad Duffinf7166572023-07-17 17:37:15292 deps += [
293 "//ash/constants",
294 "//chromeos/ash/services/nearby/public/cpp/",
295 "//chromeos/ash/services/secure_channel/public/cpp/shared",
296 ]
Kyle Horimoto419ea9a2022-05-13 02:10:08297 }
Samuel Huang471ff9c2021-12-02 14:30:03298 if (is_chromeos_lacros) {
299 deps += [ "//chromeos/lacros:test_support" ]
300 }
Ryan Hansberry27c9c582019-03-22 04:38:52301 }
302
dnicoara59acb3022015-12-17 18:13:16303 if ((is_chromeos || is_linux) && use_dbus) {
agrieve95ba4442016-04-25 15:47:13304 configs += [ "//build/config/linux/dbus" ]
rkc41077042015-11-06 07:20:58305
306 sources += [
Michael Hansend7b356d2022-03-10 22:42:45307 "bluetooth/bluez/bluetooth_adapter_bluez_unittest.cc",
rkc122239752016-04-20 23:59:08308 "bluetooth/bluez/bluetooth_adapter_profile_bluez_unittest.cc",
309 "bluetooth/bluez/bluetooth_advertisement_bluez_unittest.cc",
rkc122239752016-04-20 23:59:08310 "bluetooth/bluez/bluetooth_bluez_unittest.cc",
311 "bluetooth/bluez/bluetooth_gatt_bluez_unittest.cc",
rkc2ffd5612016-06-24 02:00:22312 "bluetooth/bluez/bluetooth_service_attribute_value_bluez_unittest.cc",
313 "bluetooth/bluez/bluetooth_service_record_bluez_unittest.cc",
rkc122239752016-04-20 23:59:08314 "bluetooth/bluez/bluetooth_socket_bluez_unittest.cc",
rkca7a149d2016-04-29 08:15:37315 "bluetooth/dbus/bluetooth_gatt_application_service_provider_unittest.cc",
Chris Mumford6627ae42021-05-03 18:54:40316 "bluetooth/dbus/bluetooth_gatt_characteristic_service_provider_unittest.cc",
Sonny Sasaka4840018f2021-10-19 20:31:06317 "bluetooth/floss/bluetooth_floss_unittest.cc",
Abhishek Pandit-Subedif88888a2022-10-19 16:29:48318 "bluetooth/floss/bluetooth_gatt_floss_unittest.cc",
Sarvesh Kalwitcd3f12d2024-04-09 01:49:12319 "bluetooth/floss/bluetooth_local_gatt_service_floss_unittest.cc",
Abhishek Pandit-Subedi7d053582022-08-20 05:15:29320 "bluetooth/floss/bluetooth_socket_floss_unittest.cc",
Sonny Sasaka54ac834a2022-08-09 19:59:11321 "bluetooth/floss/exported_callback_manager_unittest.cc",
Abhishek Pandit-Subedi61837982021-08-23 17:19:39322 "bluetooth/floss/floss_adapter_client_unittest.cc",
howardchungcc9f7702022-11-11 09:02:59323 "bluetooth/floss/floss_admin_client_unittest.cc",
John Laic3f3d5f2022-10-26 08:28:12324 "bluetooth/floss/floss_advertiser_client_unittest.cc",
Jesse Melhuishf9d0feb2022-11-03 01:25:26325 "bluetooth/floss/floss_battery_manager_client_unittest.cc",
WhaleChangfccdf2f42023-08-02 07:41:14326 "bluetooth/floss/floss_bluetooth_telephony_client_unittest.cc",
Sonny Sasakab0d8c3f32022-09-30 01:23:14327 "bluetooth/floss/floss_dbus_client_unittest.cc",
Yun-Hao Chungd20ee712023-10-04 05:11:49328 "bluetooth/floss/floss_dbus_manager_unittest.cc",
Sarveshc94e10db2023-01-31 22:05:58329 "bluetooth/floss/floss_gatt_manager_client_unittest.cc",
Katherine Lai579c4672022-09-09 19:22:30330 "bluetooth/floss/floss_lescan_client_unittest.cc",
Abhishek Pandit-Subedidf109c62021-08-18 19:30:55331 "bluetooth/floss/floss_manager_client_unittest.cc",
Abhishek Pandit-Subedi3cba9a5d2022-08-11 17:55:11332 "bluetooth/floss/floss_socket_manager_unittest.cc",
Ying Hsu0fd253f2023-10-16 18:10:56333 "bluetooth/floss/floss_version_unittest.cc",
rkc519a20c62016-04-16 23:18:07334 "bluetooth/test/bluetooth_test_bluez.cc",
335 "bluetooth/test/bluetooth_test_bluez.h",
rkc41077042015-11-06 07:20:58336 ]
337
Claudius van der Merwe0e6ac6162021-08-16 11:52:21338 deps += [
339 "//dbus",
340 "//dbus:test_support",
341 ]
James Hollyer976d3eea2019-10-02 06:21:09342
Nico Weberd73c90382022-03-30 20:37:50343 if (is_chromeos) {
Claudius van der Merwed844d9f2021-08-23 19:37:19344 sources += [
345 "bluetooth/dbus/bluetooth_advertisement_monitor_application_service_provider_unittest.cc",
346 "bluetooth/dbus/bluetooth_advertisement_monitor_service_provider_unittest.cc",
347 ]
James Hollyer976d3eea2019-10-02 06:21:09348 deps += [ "//services/data_decoder/public/mojom" ]
349 }
rkc41077042015-11-06 07:20:58350 }
351
Ryan Keane2a3aa8e92022-06-09 18:51:32352 if (is_castos) {
353 # Cast does not support GATT server mode.
354 sources -= [
355 "bluetooth/bluetooth_local_gatt_characteristic_unittest.cc",
356 "bluetooth/bluetooth_local_gatt_descriptor_unittest.cc",
Ryan Keane2a3aa8e92022-06-09 18:51:32357 ]
Stephen Lanhamccd5c252018-04-10 04:21:56358
Ryan Keane2a3aa8e92022-06-09 18:51:32359 sources += [
360 "bluetooth/cast/bluetooth_adapter_cast_unittest.cc",
361 "bluetooth/cast/bluetooth_utils_unittest.cc",
362 "bluetooth/test/bluetooth_test_cast.cc",
363 "bluetooth/test/bluetooth_test_cast.h",
364 ]
Stephen Lanhamccd5c252018-04-10 04:21:56365
Ryan Keane2a3aa8e92022-06-09 18:51:32366 deps += [
367 "//chromecast/device/bluetooth:util",
368 "//chromecast/device/bluetooth/le",
369 "//chromecast/device/bluetooth/le:test_support",
370 "//chromecast/device/bluetooth/shlib:mock_shlib",
371 ]
Pavel Kalinnikov9f6591002017-11-01 22:09:18372 }
373
Julie Jeongeun Kimcc191202023-03-08 03:43:40374 if (is_apple) {
krstnmnlsn332a71cf2015-07-17 18:59:58375 deps += [ "//third_party/ocmock" ]
376 ldflags = [ "-ObjC" ]
Robert Sesek95a026b2020-06-30 23:22:01377 frameworks = [
Robert Seseke55299452020-02-19 15:18:14378 "CoreBluetooth.framework",
rsesekdbb69c72016-05-11 17:26:35379 "IOKit.framework",
Martin Kreichgauere11b8a992022-06-23 17:08:26380 "Foundation.framework",
Julie Jeongeun Kimcc191202023-03-08 03:43:40381 ]
382 }
383
384 if (is_mac) {
385 frameworks += [
386 "IOBluetooth.framework",
Martin Kreichgauere11b8a992022-06-23 17:08:26387 "Security.framework",
Adam Langley0436ac22023-05-12 04:47:39388 "AuthenticationServices.framework",
rsesekdbb69c72016-05-11 17:26:35389 ]
tfarinacdc7e5d2015-02-23 09:52:24390 }
gogeraldcab31232016-02-03 21:20:33391
392 if (is_win) {
393 sources += [
gogeraldb8c706a2016-02-05 01:07:37394 "bluetooth/bluetooth_classic_win_fake.cc",
395 "bluetooth/bluetooth_classic_win_fake.h",
Jan Wilken Doerriecc0bd292018-05-14 12:28:28396 "bluetooth/test/fake_bluetooth_adapter_winrt.cc",
397 "bluetooth/test/fake_bluetooth_adapter_winrt.h",
Jan Wilken Doerriec75765a752018-07-20 11:36:18398 "bluetooth/test/fake_bluetooth_le_advertisement_data_section_winrt.cc",
399 "bluetooth/test/fake_bluetooth_le_advertisement_data_section_winrt.h",
Jan Wilken Doerrief397e842018-08-23 17:40:17400 "bluetooth/test/fake_bluetooth_le_advertisement_publisher_status_changed_event_args_winrt.cc",
401 "bluetooth/test/fake_bluetooth_le_advertisement_publisher_status_changed_event_args_winrt.h",
402 "bluetooth/test/fake_bluetooth_le_advertisement_publisher_winrt.cc",
403 "bluetooth/test/fake_bluetooth_le_advertisement_publisher_winrt.h",
Jan Wilken Dörried4dc7782018-06-04 09:38:13404 "bluetooth/test/fake_bluetooth_le_advertisement_received_event_args_winrt.cc",
405 "bluetooth/test/fake_bluetooth_le_advertisement_received_event_args_winrt.h",
406 "bluetooth/test/fake_bluetooth_le_advertisement_watcher_winrt.cc",
407 "bluetooth/test/fake_bluetooth_le_advertisement_watcher_winrt.h",
408 "bluetooth/test/fake_bluetooth_le_advertisement_winrt.cc",
409 "bluetooth/test/fake_bluetooth_le_advertisement_winrt.h",
Jan Wilken Doerried9b78b92018-06-18 17:35:43410 "bluetooth/test/fake_bluetooth_le_device_winrt.cc",
411 "bluetooth/test/fake_bluetooth_le_device_winrt.h",
Jan Wilken Doerriec75765a752018-07-20 11:36:18412 "bluetooth/test/fake_bluetooth_le_manufacturer_data_winrt.cc",
413 "bluetooth/test/fake_bluetooth_le_manufacturer_data_winrt.h",
Jan Wilken Doerrie7aa28512018-08-17 08:11:41414 "bluetooth/test/fake_device_information_custom_pairing_winrt.cc",
415 "bluetooth/test/fake_device_information_custom_pairing_winrt.h",
Jan Wilken Doerrie9092f832018-08-14 07:05:11416 "bluetooth/test/fake_device_information_pairing_winrt.cc",
417 "bluetooth/test/fake_device_information_pairing_winrt.h",
Jan Wilken Doerrie7c0e41dc2018-05-16 08:37:52418 "bluetooth/test/fake_device_information_winrt.cc",
419 "bluetooth/test/fake_device_information_winrt.h",
Jan Wilken Doerrie7aa28512018-08-17 08:11:41420 "bluetooth/test/fake_device_pairing_requested_event_args_winrt.cc",
421 "bluetooth/test/fake_device_pairing_requested_event_args_winrt.h",
422 "bluetooth/test/fake_device_pairing_result_winrt.cc",
423 "bluetooth/test/fake_device_pairing_result_winrt.h",
Jan Wilken Doerriebcd90ba2018-08-30 12:36:29424 "bluetooth/test/fake_device_watcher_winrt.cc",
425 "bluetooth/test/fake_device_watcher_winrt.h",
Jan Wilken Doerried66e0a92018-07-07 10:48:19426 "bluetooth/test/fake_gatt_characteristic_winrt.cc",
427 "bluetooth/test/fake_gatt_characteristic_winrt.h",
428 "bluetooth/test/fake_gatt_characteristics_result_winrt.cc",
429 "bluetooth/test/fake_gatt_characteristics_result_winrt.h",
Jan Wilken Doerrie2a3e6c92018-07-31 08:39:16430 "bluetooth/test/fake_gatt_descriptor_winrt.cc",
431 "bluetooth/test/fake_gatt_descriptor_winrt.h",
432 "bluetooth/test/fake_gatt_descriptors_result_winrt.cc",
433 "bluetooth/test/fake_gatt_descriptors_result_winrt.h",
Jan Wilken Doerried9b78b92018-06-18 17:35:43434 "bluetooth/test/fake_gatt_device_service_winrt.cc",
435 "bluetooth/test/fake_gatt_device_service_winrt.h",
436 "bluetooth/test/fake_gatt_device_services_result_winrt.cc",
437 "bluetooth/test/fake_gatt_device_services_result_winrt.h",
Jan Wilken Doerrie1bd49ee2018-07-30 10:59:00438 "bluetooth/test/fake_gatt_read_result_winrt.cc",
439 "bluetooth/test/fake_gatt_read_result_winrt.h",
Martin Kreichgauer3d6c10d2020-06-16 17:25:51440 "bluetooth/test/fake_gatt_session_winrt.cc",
441 "bluetooth/test/fake_gatt_session_winrt.h",
Jan Wilken Dörriee0029d12018-08-06 14:06:08442 "bluetooth/test/fake_gatt_value_changed_event_args_winrt.cc",
443 "bluetooth/test/fake_gatt_value_changed_event_args_winrt.h",
Jan Wilken Doerrief5b008c42018-08-01 08:12:56444 "bluetooth/test/fake_gatt_write_result_winrt.cc",
445 "bluetooth/test/fake_gatt_write_result_winrt.h",
Jan Wilken Dörriedc7c81c2018-06-12 07:34:38446 "bluetooth/test/fake_radio_winrt.cc",
447 "bluetooth/test/fake_radio_winrt.h",
gogeraldcab31232016-02-03 21:20:33448 ]
449 }
bajones7ab52ec32016-08-19 19:54:25450
Bill Orr1862b4f2018-05-10 17:56:45451 if (enable_vr) {
Michael Thiessen21e56152017-10-16 18:55:17452 sources += [
Anna Maria114d35052017-12-08 23:13:29453 "vr/orientation/orientation_device_provider_unittest.cc",
454 "vr/orientation/orientation_device_unittest.cc",
Bill Orrb35b4cd82019-03-05 00:13:39455 "vr/util/fps_meter_unittest.cc",
456 "vr/util/sliding_average_unittest.cc",
Alex Cooper93f1c752019-11-22 23:58:02457 "vr/util/stage_utils_unittest.cc",
Michael Thiessen21e56152017-10-16 18:55:17458 "vr/vr_device_base_unittest.cc",
Michael Thiessen21e56152017-10-16 18:55:17459 ]
bajones7ab52ec32016-08-19 19:54:25460
Bill Orr1862b4f2018-05-10 17:56:45461 defines = [ "DEVICE_VR_IMPLEMENTATION" ]
462
bajones7ab52ec32016-08-19 19:54:25463 deps += [
464 "//device/vr",
Alexander Cooper53e25812020-04-01 17:35:58465 "//device/vr:vr_fakes",
Alex Cooper51ea2f3c2021-02-18 03:51:26466 "//device/vr:vr_util",
Alexander Coopercb573b02020-04-21 22:16:35467 "//device/vr/orientation",
Rafael Cintron5b95b8d2020-11-04 01:58:10468 "//device/vr/public/mojom:isolated_xr_service",
Anna Maria114d35052017-12-08 23:13:29469 "//services/device/public/cpp/generic_sensor",
470 "//ui/display",
Roman Karasev72254172018-04-05 18:10:03471 "//ui/display:test_support",
bajones7ab52ec32016-08-19 19:54:25472 ]
473 }
Matt Reynoldsb37eb1292019-03-19 22:19:40474
475 # Some gamepad tests require the HID service. Only build these tests on
476 # platforms where the HID service is enabled.
Julie Jeongeun Kim0c67cfe2023-03-07 03:40:54477 if (!is_android && !is_fuchsia && !is_ios) {
Matt Reynoldsb37eb1292019-03-19 22:19:40478 sources += [ "gamepad/nintendo_data_fetcher_unittest.cc" ]
479
480 deps += [
481 "//services/device:test_support",
482 "//services/device/hid",
Matt Reynolds11d261c2022-07-22 23:42:48483 "//services/device/public/cpp:test_support",
Matt Reynoldsb37eb1292019-03-19 22:19:40484 ]
485 }
Martin Kreichgauerd15e7e42021-02-26 06:54:22486
Howard Yang72a1412b2022-04-13 00:16:02487 if (is_chromeos) {
Martin Kreichgauerd15e7e42021-02-26 06:54:22488 deps += [ "//chromeos/dbus/u2f" ]
489 }
tfarinacdc7e5d2015-02-23 09:52:24490}
scheib56010cc2015-06-25 01:29:47491
492if (is_android) {
Matt Reynolds7c498e52017-12-06 22:06:24493 bluetooth_java_sources_needing_jni = [
494 "bluetooth/test/android/java/src/org/chromium/device/bluetooth/Fakes.java",
James Hollyerf8e00682019-11-20 02:11:21495 "bluetooth/test/android/java/src/org/chromium/device/bluetooth/ChromeBluetoothScanFilter.java",
Matt Reynolds7c498e52017-12-06 22:06:24496 ]
scheib56010cc2015-06-25 01:29:47497
498 generate_jni("bluetooth_test_jni_headers") {
Eric Stevenson4c4d6342019-10-04 20:02:47499 testonly = true
scheib56010cc2015-06-25 01:29:47500 sources = bluetooth_java_sources_needing_jni
scheib56010cc2015-06-25 01:29:47501 }
502
503 android_library("bluetooth_test_java") {
Shimi Zhang0d7b74af2018-02-08 17:28:02504 testonly = true
Andrew Grieveff870b02023-06-13 20:50:36505
Natalie Chouinard8b9cf7c2019-12-20 02:21:40506 sources = bluetooth_java_sources_needing_jni
scheib56010cc2015-06-25 01:29:47507 deps = [
508 "//base:base_java",
ortuno5966ddb2016-07-01 02:07:25509 "//components/location/android:location_java",
scheib56010cc2015-06-25 01:29:47510 "//device/bluetooth:java",
Peter Wen22bc3ec2019-03-28 22:18:02511 "//third_party/android_sdk:android_test_mock_java",
Peter Kotwicz04093722021-02-13 00:35:37512 "//third_party/androidx:androidx_annotation_annotation_java",
Sam Maier1fcc2d52023-10-17 18:34:53513 "//third_party/jni_zero:jni_zero_java",
scheib56010cc2015-06-25 01:29:47514 ]
ortunocc9b46d12016-08-25 16:47:23515
Andrew Grieveff870b02023-06-13 20:50:36516 srcjar_deps = [
517 ":bluetooth_test_javagen",
518 ":bluetooth_test_jni_headers",
519 ]
scheib56010cc2015-06-25 01:29:47520 }
bajonesb9bb4c42016-07-07 00:10:51521
Mohamed Heikalbf107d92022-06-24 20:42:00522 robolectric_binary("device_junit_tests") {
Matt Reynolds29cbad52021-03-19 23:37:55523 sources = [
524 "gamepad/android/junit/src/org/chromium/device/gamepad/GamepadDeviceTest.java",
525 "gamepad/android/junit/src/org/chromium/device/gamepad/GamepadMappingsTest.java",
526 ]
bajonesb9bb4c42016-07-07 00:10:51527 deps = [
mcasas649deb52017-04-28 01:55:52528 "$google_play_services_package:google_play_services_base_java",
529 "$google_play_services_package:google_play_services_basement_java",
530 "$google_play_services_package:google_play_services_location_java",
bajonesb9bb4c42016-07-07 00:10:51531 "//base:base_java_test_support",
Andrew Grieve916bc9b2018-02-02 01:38:59532 "//base:base_junit_test_support",
bajonesb9bb4c42016-07-07 00:10:51533 "//device/gamepad:java",
alexander.shalamov55ac6a4c2016-11-30 09:04:17534 "//mojo/public/java:bindings_java",
Peter Kotwicz04093722021-02-13 00:35:37535 "//third_party/androidx:androidx_annotation_annotation_java",
Andrew Walbrand8f55c92020-07-01 17:09:03536 "//third_party/hamcrest:hamcrest_java",
bajonesb9bb4c42016-07-07 00:10:51537 ]
538 srcjar_deps = [ "//device/gamepad:java_enums_srcjar" ]
539 }
ortunocc9b46d12016-08-25 16:47:23540
541 java_cpp_enum("bluetooth_test_javagen") {
Nico Weberb355af2e2020-01-14 03:27:58542 sources = [ "bluetooth/test/bluetooth_test.h" ]
ortunocc9b46d12016-08-25 16:47:23543 }
scheib56010cc2015-06-25 01:29:47544}