1# Copyright (c) 2024 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13 14import("//build/test.gni") 15import("../../../../device_status.gni") 16 17module_output_path = "${device_status_part_name}/device_status/unit_out" 18 19config("module_private_config") { 20 visibility = [ ":*" ] 21 22 include_dirs = [ 23 "include", 24 "${device_status_root_path}/libs/interface", 25 "${device_status_root_path}/interfaces/innerkits/interaction/include", 26 "${device_status_service_path}/delegate_task/include", 27 "${device_status_service_path}/communication/service/include", 28 "${device_status_service_path}/interaction/drag/src/include", 29 "${device_status_service_path}/device_manager/include", 30 "${device_status_utils_path}/include", 31 "${device_status_service_path}/communication/base", 32 ] 33} 34 35ohos_unittest("IntentionServiceTest") { 36 sanitize = { 37 integer_overflow = true 38 ubsan = true 39 boundary_sanitize = true 40 cfi = true 41 cfi_cross_dso = true 42 debug = false 43 blocklist = "./../../ipc_blocklist.txt" 44 } 45 46 defines = device_status_default_defines 47 48 module_out_path = module_output_path 49 include_dirs = [ "${device_status_interfaces_path}/innerkits/include" ] 50 51 sources = [ "src/intention_service_test.cpp" ] 52 53 cflags = [ "-Dprivate=public" ] 54 55 configs = [ 56 "${device_status_service_path}/interaction/drag:interaction_drag_public_config", 57 ":module_private_config", 58 ] 59 60 deps = [ 61 "${device_status_root_path}/intention/adapters/ddm_adapter:intention_ddm_adapter", 62 "${device_status_root_path}/intention/drag/server:intention_drag_server", 63 "${device_status_root_path}/intention/prototype:intention_prototype", 64 "${device_status_root_path}/intention/scheduler/timer_manager:intention_timer_manager", 65 "${device_status_root_path}/intention/services/intention_service:intention_service", 66 "${device_status_root_path}/intention/stationary/server:intention_stationary_server", 67 "${device_status_root_path}/services:devicestatus_static_service", 68 "${device_status_root_path}/utils/common:devicestatus_util", 69 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 70 ] 71 72 if (device_status_intention_framework) { 73 deps += [ 74 "${device_status_root_path}/intention/adapters/dsoftbus_adapter:intention_dsoftbus_adapter", 75 "${device_status_root_path}/intention/adapters/input_adapter:intention_input_adapter", 76 "${device_status_root_path}/intention/scheduler/plugin_manager:intention_plugin_manager", 77 ] 78 } 79 80 external_deps = [ 81 "ability_runtime:app_manager", 82 "access_token:libaccesstoken_sdk", 83 "bundle_framework:appexecfwk_core", 84 "common_event_service:cesfwk_innerkits", 85 "cJSON:cjson", 86 "c_utils:utils", 87 "data_share:datashare_consumer", 88 "device_manager:devicemanagersdk", 89 "eventhandler:libeventhandler", 90 "googletest:gtest_main", 91 "graphic_2d:libcomposer", 92 "graphic_2d:librender_service_base", 93 "graphic_2d:librender_service_client", 94 "graphic_2d:window_animation", 95 "hilog:libhilog", 96 "image_framework:image_native", 97 "input:libmmi-client", 98 "libxml2:libxml2", 99 "samgr:samgr_proxy", 100 "window_manager:libdm", 101 "window_manager:libwm", 102 "window_manager:libwmutil_base", 103 ] 104 105 if (device_status_motion_enable) { 106 defines += [ "MOTION_ENABLE" ] 107 external_deps += [ "motion:motion_interface_native" ] 108 } 109 110 if (device_status_sensor_enable) { 111 defines += [ "DEVICE_STATUS_SENSOR_ENABLE" ] 112 external_deps += [ "sensor:sensor_interface_native" ] 113 } 114} 115 116ohos_unittest("MonitorTest") { 117 module_out_path = module_output_path 118 119 include_dirs = [ 120 "${device_status_root_path}/intention/services/device_manager/include", 121 "${device_status_root_path}/libs/interface", 122 "${device_status_service_path}/communication/service/include", 123 ] 124 125 sources = [ "src/monitor_test.cpp" ] 126 127 cflags = [ 128 "-Dprivate=public", 129 "-Dprotected=public", 130 ] 131 132 deps = [ 133 "${device_status_interfaces_path}/innerkits:devicestatus_client", 134 "${device_status_root_path}/intention/prototype:intention_prototype", 135 "${device_status_root_path}/services:devicestatus_static_service", 136 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 137 "${device_status_utils_path}:devicestatus_util", 138 ] 139 140 external_deps = [ 141 "access_token:libaccesstoken_sdk", 142 "c_utils:utils", 143 "data_share:datashare_consumer", 144 "graphic_2d:librender_service_client", 145 "hilog:libhilog", 146 "input:libmmi-client", 147 "window_manager:libdm", 148 ] 149} 150 151ohos_unittest("EnumeratorTest") { 152 sanitize = { 153 cfi = true 154 cfi_cross_dso = true 155 debug = false 156 blocklist = "./../../ipc_blocklist.txt" 157 } 158 159 module_out_path = module_output_path 160 161 include_dirs = [ 162 "${device_status_root_path}/intention/services/device_manager/include", 163 "${device_status_root_path}/libs/interface", 164 "${device_status_service_path}/communication/service/include", 165 ] 166 167 sources = [ "src/enumerator_test.cpp" ] 168 169 cflags = [ 170 "-Dprivate=public", 171 "-Dprotected=public", 172 ] 173 174 deps = [ 175 "${device_status_interfaces_path}/innerkits:devicestatus_client", 176 "${device_status_root_path}/intention/prototype:intention_prototype", 177 "${device_status_root_path}/services:devicestatus_static_service", 178 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 179 "${device_status_utils_path}:devicestatus_util", 180 ] 181 182 external_deps = [ 183 "access_token:libaccesstoken_sdk", 184 "c_utils:utils", 185 "data_share:datashare_consumer", 186 "graphic_2d:librender_service_client", 187 "hilog:libhilog", 188 "input:libmmi-client", 189 "window_manager:libdm", 190 ] 191} 192 193ohos_unittest("DeviceTest") { 194 sanitize = { 195 cfi = true 196 cfi_cross_dso = true 197 debug = false 198 blocklist = "./../../ipc_blocklist.txt" 199 } 200 201 module_out_path = module_output_path 202 include_dirs = [ 203 "${device_status_root_path}/intention/services/device_manager/include", 204 "${device_status_root_path}/libs/interface", 205 "${device_status_service_path}/communication/service/include", 206 ] 207 sources = [ "src/device_test.cpp" ] 208 209 cflags = [ 210 "-Dprivate=public", 211 "-Dprotected=public", 212 ] 213 214 deps = [ 215 "${device_status_interfaces_path}/innerkits:devicestatus_client", 216 "${device_status_root_path}/intention/prototype:intention_prototype", 217 "${device_status_root_path}/services:devicestatus_static_service", 218 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 219 "${device_status_utils_path}:devicestatus_util", 220 ] 221 222 external_deps = [ 223 "access_token:libaccesstoken_sdk", 224 "c_utils:utils", 225 "data_share:datashare_consumer", 226 "graphic_2d:librender_service_client", 227 "hilog:libhilog", 228 "input:libmmi-client", 229 "window_manager:libdm", 230 ] 231} 232 233ohos_unittest("IntentionDeviceManagerTest") { 234 sanitize = { 235 cfi = true 236 cfi_cross_dso = true 237 debug = false 238 blocklist = "./../../ipc_blocklist.txt" 239 } 240 241 module_out_path = module_output_path 242 243 include_dirs = [ 244 "include", 245 "${device_status_interfaces_path}/innerkits/interaction/include", 246 "${intention_root_path}/services/device_manager/include", 247 "${device_status_utils_path}", 248 "${device_status_utils_path}/include", 249 "${device_status_root_path}/services/native/include", 250 "${device_status_root_path}/services/delegate_task/include", 251 "${device_status_interfaces_path}/innerkits/include", 252 "${device_status_root_path}/libs/interface", 253 "${device_status_service_path}/communication/service/include", 254 "${device_status_service_path}/communication/base", 255 "${device_status_service_path}/interaction/drag/include", 256 "${intention_root_path}/scheduler/timer_manager/include", 257 ] 258 259 sources = [ "src/device_manager_test.cpp" ] 260 261 cflags = [ 262 "-Dprivate=public", 263 "-Dprotected=public", 264 ] 265 266 deps = [ 267 "${device_status_root_path}/intention/adapters/ddm_adapter:intention_ddm_adapter", 268 "${device_status_root_path}/intention/cooperate/plugin:intention_cooperate", 269 "${device_status_root_path}/intention/prototype:intention_prototype", 270 "${device_status_root_path}/intention/scheduler/timer_manager:intention_timer_manager", 271 "${device_status_root_path}/intention/services/device_manager:intention_device_manager", 272 "${device_status_root_path}/services:devicestatus_service", 273 "${device_status_root_path}/services:devicestatus_static_service", 274 "${device_status_root_path}/services/interaction/drag:interaction_drag", 275 "${device_status_root_path}/utils/common:devicestatus_util", 276 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 277 ] 278 279 external_deps = [ 280 "ability_runtime:app_manager", 281 "access_token:libaccesstoken_sdk", 282 "bundle_framework:appexecfwk_core", 283 "common_event_service:cesfwk_innerkits", 284 "cJSON:cjson", 285 "c_utils:utils", 286 "data_share:datashare_consumer", 287 "googletest:gtest_main", 288 "graphic_2d:librender_service_base", 289 "graphic_2d:librender_service_client", 290 "graphic_2d:window_animation", 291 "hilog:libhilog", 292 "hisysevent:libhisysevent", 293 "input:libmmi-client", 294 "ipc:ipc_single", 295 "libxml2:libxml2", 296 "samgr:samgr_proxy", 297 "window_manager:libdm", 298 "window_manager:libwm", 299 ] 300} 301 302ohos_unittest("IntentionDumperTest") { 303 sanitize = { 304 integer_overflow = true 305 ubsan = true 306 boundary_sanitize = true 307 cfi = true 308 cfi_cross_dso = true 309 debug = false 310 blocklist = "./../../ipc_blocklist.txt" 311 } 312 313 defines = device_status_default_defines 314 315 module_out_path = module_output_path 316 include_dirs = [ "${device_status_interfaces_path}/innerkits/include" ] 317 318 sources = [ "src/intention_dumper_test.cpp" ] 319 320 cflags = [ "-Dprivate=public" ] 321 322 configs = [ 323 "${device_status_service_path}/interaction/drag:interaction_drag_public_config", 324 ":module_private_config", 325 ] 326 327 deps = [ 328 "${device_status_root_path}/intention/adapters/ddm_adapter:intention_ddm_adapter", 329 "${device_status_root_path}/intention/drag/server:intention_drag_server", 330 "${device_status_root_path}/intention/prototype:intention_prototype", 331 "${device_status_root_path}/intention/scheduler/timer_manager:intention_timer_manager", 332 "${device_status_root_path}/intention/services/intention_service:intention_service", 333 "${device_status_root_path}/services:devicestatus_static_service", 334 "${device_status_root_path}/utils/common:devicestatus_util", 335 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 336 ] 337 338 if (device_status_intention_framework) { 339 deps += [ 340 "${device_status_root_path}/intention/adapters/dsoftbus_adapter:intention_dsoftbus_adapter", 341 "${device_status_root_path}/intention/adapters/input_adapter:intention_input_adapter", 342 "${device_status_root_path}/intention/scheduler/plugin_manager:intention_plugin_manager", 343 ] 344 } 345 346 external_deps = [ 347 "ability_runtime:app_manager", 348 "access_token:libaccesstoken_sdk", 349 "bundle_framework:appexecfwk_core", 350 "common_event_service:cesfwk_innerkits", 351 "cJSON:cjson", 352 "c_utils:utils", 353 "data_share:datashare_consumer", 354 "device_manager:devicemanagersdk", 355 "eventhandler:libeventhandler", 356 "googletest:gtest_main", 357 "graphic_2d:libcomposer", 358 "graphic_2d:librender_service_base", 359 "graphic_2d:librender_service_client", 360 "graphic_2d:window_animation", 361 "hilog:libhilog", 362 "image_framework:image_native", 363 "input:libmmi-client", 364 "samgr:samgr_proxy", 365 "libxml2:libxml2", 366 "window_manager:libdm", 367 "window_manager:libwm", 368 "window_manager:libwmutil_base", 369 ] 370} 371 372ohos_unittest("BoomerangDumperTest") { 373 sanitize = { 374 integer_overflow = true 375 ubsan = true 376 boundary_sanitize = true 377 cfi = true 378 cfi_cross_dso = true 379 debug = false 380 blocklist = "./../../ipc_blocklist.txt" 381 } 382 383 defines = device_status_default_defines 384 385 module_out_path = module_output_path 386 include_dirs = [ "${device_status_interfaces_path}/innerkits/include" ] 387 388 sources = [ "src/boomerang_dumper_test.cpp" ] 389 390 cflags = [ "-Dprivate=public" ] 391 392 configs = [ 393 "${device_status_service_path}/interaction/drag:interaction_drag_public_config", 394 ":module_private_config", 395 ] 396 397 deps = [ 398 "${device_status_root_path}/intention/adapters/ddm_adapter:intention_ddm_adapter", 399 "${device_status_root_path}/intention/drag/server:intention_drag_server", 400 "${device_status_root_path}/intention/prototype:intention_prototype", 401 "${device_status_root_path}/intention/scheduler/timer_manager:intention_timer_manager", 402 "${device_status_root_path}/intention/services/intention_service:intention_service", 403 "${device_status_root_path}/services:devicestatus_static_service", 404 "${device_status_root_path}/utils/common:devicestatus_util", 405 "${device_status_root_path}/utils/ipc:devicestatus_ipc", 406 ] 407 408 if (device_status_intention_framework) { 409 deps += [ 410 "${device_status_root_path}/intention/adapters/dsoftbus_adapter:intention_dsoftbus_adapter", 411 "${device_status_root_path}/intention/adapters/input_adapter:intention_input_adapter", 412 "${device_status_root_path}/intention/scheduler/plugin_manager:intention_plugin_manager", 413 ] 414 } 415 416 external_deps = [ 417 "ability_runtime:app_manager", 418 "access_token:libaccesstoken_sdk", 419 "bundle_framework:appexecfwk_core", 420 "common_event_service:cesfwk_innerkits", 421 "cJSON:cjson", 422 "c_utils:utils", 423 "data_share:datashare_consumer", 424 "device_manager:devicemanagersdk", 425 "eventhandler:libeventhandler", 426 "googletest:gtest_main", 427 "graphic_2d:libcomposer", 428 "graphic_2d:librender_service_base", 429 "graphic_2d:librender_service_client", 430 "graphic_2d:window_animation", 431 "hilog:libhilog", 432 "image_framework:image_native", 433 "input:libmmi-client", 434 "libxml2:libxml2", 435 "window_manager:libdm", 436 "window_manager:libwm", 437 "window_manager:libwmutil_base", 438 "samgr:samgr_proxy", 439 ] 440} 441group("unittest") { 442 testonly = true 443 deps = [] 444 if (device_status_intention_framework) { 445 deps += [ 446 ":BoomerangDumperTest", 447 ":DeviceTest", 448 ":EnumeratorTest", 449 ":IntentionDeviceManagerTest", 450 ":IntentionDumperTest", 451 ":IntentionServiceTest", 452 ":MonitorTest", 453 ] 454 } 455} 456