1# Copyright (c) 2021 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("../../../hidumper.gni") 16 17module_output_path = "hiviewdfx/hidumper" 18 19source_path = "${hidumper_frameworks_path}" 20 21############################################################################### 22config("module_private_config") { 23 visibility = [ ":*" ] 24 25 include_dirs = [ 26 ".", 27 "../../", 28 "${hidumper_interface}/innerkits/include/", 29 "${hidumper_interface}/native/innerkits/include/", 30 "../../../utils/native/include/", 31 "../../../services/zidl/include", 32 "../../../services/native/include", 33 "${source_path}/include", 34 "${source_path}/", 35 "${source_path}/manager", 36 "${source_path}/dumpers", 37 "include", 38 "${hidumper_frameworks_path}", 39 "${hidumper_frameworks_path}/include", 40 "${hidumper_frameworks_path}/include/common", 41 "${hidumper_frameworks_path}/include/executor", 42 "${hidumper_frameworks_path}/include/factory", 43 "${hidumper_service_path}:interface_include", 44 "${hidumper_service_path}/zidl/include", 45 "${hidumper_service_path}/native/include", 46 ] 47 48 cflags_cc = [ "-DDUMP_TEST_MODE" ] 49} 50 51##############################unittest########################################## 52ohos_unittest("HidumperServiceTest") { 53 module_out_path = module_output_path 54 55 sources = [ "hidumper_service_test.cpp" ] 56 57 configs = [ 58 "${hidumper_utils_path}:utils_config", 59 ":module_private_config", 60 ] 61 62 deps = [ "${hidumper_service_path}:hidumperservice_source" ] 63 64 external_deps = [ 65 "c_utils:utils", 66 "eventhandler:libeventhandler", 67 "hilog:libhilog", 68 "ipc:ipc_core", 69 "safwk:system_ability_fwk", 70 "samgr:samgr_proxy", 71 ] 72 73 cflags = [ 74 "-Dprivate=public", #allow test code access private members 75 ] 76} 77 78ohos_unittest("HidumperDumpersTest") { 79 module_out_path = module_output_path 80 81 sources = [ "hidumper_dumpers_test.cpp" ] 82 83 configs = [ 84 "${hidumper_utils_path}:utils_config", 85 ":module_private_config", 86 ] 87 88 deps = [ 89 "${hidumper_service_path}:hidumperservice_cpu_source_test", 90 "${hidumper_service_path}:hidumperservice_source", 91 ] 92 93 external_deps = [ 94 "c_utils:utils", 95 "hilog:libhilog", 96 "ipc:ipc_core", 97 "samgr:samgr_proxy", 98 ] 99 100 defines = [] 101 if (hidumper_ability_runtime_enable) { 102 external_deps += [ "ability_runtime:app_manager" ] 103 defines += [ "HIDUMPER_ABILITY_RUNTIME_ENABLE" ] 104 } 105} 106 107ohos_unittest("HidumperOutputTest") { 108 module_out_path = module_output_path 109 110 sources = [ "hidumper_output_test.cpp" ] 111 112 configs = [ 113 "${hidumper_utils_path}:utils_config", 114 ":module_private_config", 115 ] 116 117 deps = [ "${hidumper_service_path}:hidumperservice_source" ] 118 119 external_deps = [ 120 "c_utils:utils", 121 "hilog:libhilog", 122 "ipc:ipc_core", 123 "zlib:shared_libz", 124 ] 125} 126 127ohos_unittest("HidumperConfigUtilsTest") { 128 module_out_path = module_output_path 129 130 sources = [ "hidumper_configutils_test.cpp" ] 131 132 configs = [ 133 "${hidumper_utils_path}:utils_config", 134 ":module_private_config", 135 ] 136 137 deps = [ "${hidumper_service_path}:hidumperservice_source" ] 138 139 external_deps = [ 140 "c_utils:utils", 141 "hilog:libhilog", 142 "init:libbegetutil", 143 "ipc:ipc_core", 144 "safwk:system_ability_fwk", 145 "samgr:samgr_proxy", 146 "zlib:shared_libz", 147 ] 148} 149 150ohos_unittest("MemoryDumperTest") { 151 module_out_path = module_output_path 152 153 sources = [ 154 "${hidumper_frameworks_path}/src/executor/memory/memory_util.cpp", 155 "hidumper_test_utils.cpp", 156 "memory_dumper_test.cpp", 157 ] 158 159 configs = [ ":module_private_config" ] 160 161 deps = [ "${hidumper_service_path}:hidumperservice_source" ] 162 163 external_deps = [ 164 "c_utils:utils", 165 "drivers_interface_memorytracker:libmemorytracker_proxy_1.0", 166 "hdf_core:libhdf_utils", 167 "hilog:libhilog", 168 "ipc:ipc_core", 169 "safwk:system_ability_fwk", 170 ] 171 cflags = [ 172 "-Dprivate=public", #allow test code access private members 173 ] 174} 175 176ohos_unittest("HidumperMemoryTest") { 177 module_out_path = module_output_path 178 179 sources = [ 180 "hidumper_memory_test.cpp", 181 "hidumper_test_utils.cpp", 182 ] 183 184 configs = [ ":module_private_config" ] 185 186 deps = [ 187 #"${hidumper_service_path}:hidumperservice_source", 188 "${hidumper_service_path}:hidumpermemory_source", 189 ] 190 191 external_deps = [ 192 "c_utils:utils", 193 "drivers_interface_memorytracker:libmemorytracker_proxy_1.0", 194 "hdf_core:libhdf_utils", 195 "hilog:libhilog", 196 "hiview:libucollection_utility", 197 "ipc:ipc_core", 198 "safwk:system_ability_fwk", 199 ] 200 cflags = [ 201 "-Dprivate=public", #allow test code access private members 202 ] 203} 204 205ohos_unittest("SADumperTest") { 206 module_out_path = module_output_path 207 sources = [ 208 "hidumper_test_utils.cpp", 209 "sa_dumper_test.cpp", 210 ] 211 configs = [ ":module_private_config" ] 212 deps = [] 213 external_deps = [ 214 "c_utils:utils", 215 "hilog:libhilog", 216 "ipc:ipc_core", 217 ] 218} 219 220ohos_unittest("HidumperPrivacyTest") { 221 module_out_path = module_output_path 222 223 sources = [ 224 "hidumper_privacy_test.cpp", 225 "hidumper_test_utils.cpp", 226 ] 227 228 configs = [ ":module_private_config" ] 229 230 deps = [] 231 232 external_deps = [ "c_utils:utils" ] 233} 234 235ohos_unittest("HidumperInnerkitsTest") { 236 module_out_path = module_output_path 237 238 sources = [ 239 "${hidumper_frameworks_path}/src/executor/memory/get_heap_info.cpp", 240 "${hidumper_frameworks_path}/src/executor/memory/memory_filter.cpp", 241 "${hidumper_frameworks_path}/src/executor/memory/memory_util.cpp", 242 "${hidumper_frameworks_path}/src/executor/memory/parse/parse_smaps_info.cpp", 243 "hidumper_innerkits_test.cpp", 244 ] 245 246 configs = [ ":module_private_config" ] 247 248 deps = [ 249 "${hidumper_service_path}:hidumperservice_source", 250 "../../../interfaces/innerkits:lib_dump_usage", 251 ] 252 253 external_deps = [ 254 "c_utils:utils", 255 "drivers_interface_memorytracker:libmemorytracker_proxy_1.0", 256 "hdf_core:libhdf_utils", 257 "hilog:libhilog", 258 "hiview:libucollection_utility", 259 "ipc:ipc_core", 260 "samgr:samgr_proxy", 261 ] 262} 263 264ohos_unittest("HidumperManagerTest") { 265 module_out_path = module_output_path 266 267 sources = [ 268 "hidumper_manager_test.cpp", 269 "hidumper_test_utils.cpp", 270 ] 271 272 configs = [ ":module_private_config" ] 273 274 deps = [ "${hidumper_service_path}:hidumperservice_source" ] 275 276 external_deps = [ 277 "c_utils:utils", 278 "hilog:libhilog", 279 "init:libbegetutil", 280 "ipc:ipc_core", 281 "samgr:samgr_proxy", 282 ] 283 284 cflags = [ 285 "-Dprivate=public", #allow test code access private members 286 ] 287} 288 289ohos_unittest("HidumperCpuServiceTest") { 290 module_out_path = module_output_path 291 292 sources = [ "hidumper_cpu_service_test.cpp" ] 293 294 configs = [ 295 "${hidumper_utils_path}:utils_config", 296 ":module_private_config", 297 ] 298 299 deps = [ 300 "${hidumper_service_path}:hidumperservice_cpu_source_test", 301 "${hidumper_service_path}:hidumperservice_source", 302 ] 303 304 external_deps = [ 305 "c_utils:utils", 306 "eventhandler:libeventhandler", 307 "hilog:libhilog", 308 "ipc:ipc_core", 309 "safwk:system_ability_fwk", 310 "samgr:samgr_proxy", 311 ] 312 defines = [] 313 if (hidumper_ablility_base_enable) { 314 external_deps += [ "ability_base:want" ] 315 external_deps += [ "ability_runtime:app_manager" ] 316 defines += [ "HIDUMPER_ABILITY_BASE_ENABLE" ] 317 } 318 319 cflags = [ 320 "-Dprivate=public", #allow test code access private members 321 ] 322} 323 324ohos_unittest("HidumperClientTest") { 325 module_out_path = module_output_path 326 327 sources = [ 328 "hidumper_client_test.cpp", 329 "hidumper_test_utils.cpp", 330 ] 331 332 configs = [ ":module_private_config" ] 333 334 deps = [ 335 "${hidumper_frameworks_path}:hidumperclient", 336 "${hidumper_service_path}:hidumper_client", 337 ] 338 339 external_deps = [ 340 "ability_runtime:app_manager", 341 "c_utils:utils", 342 "hilog:libhilog", 343 "init:libbegetutil", 344 "ipc:ipc_core", 345 "samgr:samgr_proxy", 346 ] 347 348 cflags = [ 349 "-Dprivate=public", #allow test code access private members 350 ] 351} 352 353ohos_unittest("HidumperZidlTest") { 354 module_out_path = module_output_path 355 356 sources = [ "hidumper_zidl_test.cpp" ] 357 358 configs = [ 359 ":module_private_config", 360 "${hidumper_service_path}:zidl_config", 361 ] 362 363 deps = [ "${hidumper_service_path}:zidl_service" ] 364 365 external_deps = [ 366 "hilog:libhilog", 367 "ipc:ipc_core", 368 ] 369 cflags = [ 370 "-Dprivate=public", #allow test code access private members 371 ] 372} 373 374ohos_unittest("HidumperCpuZidlTest") { 375 module_out_path = module_output_path 376 377 sources = [ 378 "${hidumper_service_path}/native/src/dump_cpu_data.cpp", 379 "hidumper_cpu_zidl_test.cpp", 380 ] 381 382 configs = [ 383 ":module_private_config", 384 "${hidumper_service_path}:dump_cpu_config", 385 "${hidumper_service_path}:zidl_config", 386 ] 387 388 deps = [ "${hidumper_service_path}:zidl_cpu_service" ] 389 390 external_deps = [ 391 "hilog:libhilog", 392 "ipc:ipc_core", 393 ] 394 cflags = [ 395 "-Dprivate=public", #allow test code access private members 396 ] 397} 398 399############################################################################### 400group("unittest") { 401 testonly = true 402 403 deps = [ 404 # deps file 405 ":HidumperClientTest", 406 ":HidumperConfigUtilsTest", 407 ":HidumperCpuServiceTest", 408 ":HidumperDumpersTest", 409 ":HidumperInnerkitsTest", 410 ":HidumperManagerTest", 411 ":HidumperMemoryTest", 412 ":HidumperOutputTest", 413 ":HidumperPrivacyTest", 414 ":HidumperServiceTest", 415 ":HidumperZidlTest", 416 ":MemoryDumperTest", 417 ":SADumperTest", 418 ] 419} 420############################################################################### 421