# Copyright (c) 2021 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import("//build/test.gni") import("../../../hidumper.gni") module_output_path = "hiviewdfx/hidumper" source_path = "${hidumper_frameworks_path}" ############################################################################### config("module_private_config") { visibility = [ ":*" ] include_dirs = [ ".", "../../", "${hidumper_interface}/innerkits/include/", "${hidumper_interface}/native/innerkits/include/", "../../../utils/native/include/", "../../../services/zidl/include", "../../../services/native/include", "${source_path}/include", "${source_path}/", "${source_path}/manager", "${source_path}/dumpers", "include", "${hidumper_frameworks_path}", "${hidumper_frameworks_path}/include", "${hidumper_frameworks_path}/include/common", "${hidumper_frameworks_path}/include/executor", "${hidumper_frameworks_path}/include/factory", "${hidumper_service_path}:interface_include", "${hidumper_service_path}/zidl/include", "${hidumper_service_path}/native/include", ] cflags_cc = [ "-DDUMP_TEST_MODE" ] } ##############################unittest########################################## ohos_unittest("HidumperServiceTest") { module_out_path = module_output_path sources = [ "hidumper_service_test.cpp" ] configs = [ "${hidumper_utils_path}:utils_config", ":module_private_config", ] deps = [ "${hidumper_service_path}:hidumperservice_source" ] external_deps = [ "c_utils:utils", "eventhandler:libeventhandler", "hilog:libhilog", "ipc:ipc_core", "safwk:system_ability_fwk", "samgr:samgr_proxy", ] cflags = [ "-Dprivate=public", #allow test code access private members ] } ohos_unittest("HidumperDumpersTest") { module_out_path = module_output_path sources = [ "hidumper_dumpers_test.cpp" ] configs = [ "${hidumper_utils_path}:utils_config", ":module_private_config", ] deps = [ "${hidumper_service_path}:hidumperservice_cpu_source_test", "${hidumper_service_path}:hidumperservice_source", ] external_deps = [ "c_utils:utils", "hilog:libhilog", "ipc:ipc_core", "samgr:samgr_proxy", ] defines = [] if (hidumper_ability_runtime_enable) { external_deps += [ "ability_runtime:app_manager" ] defines += [ "HIDUMPER_ABILITY_RUNTIME_ENABLE" ] } } ohos_unittest("HidumperOutputTest") { module_out_path = module_output_path sources = [ "hidumper_output_test.cpp" ] configs = [ "${hidumper_utils_path}:utils_config", ":module_private_config", ] deps = [ "${hidumper_service_path}:hidumperservice_source" ] external_deps = [ "c_utils:utils", "hilog:libhilog", "ipc:ipc_core", "zlib:shared_libz", ] } ohos_unittest("HidumperConfigUtilsTest") { module_out_path = module_output_path sources = [ "hidumper_configutils_test.cpp" ] configs = [ "${hidumper_utils_path}:utils_config", ":module_private_config", ] deps = [ "${hidumper_service_path}:hidumperservice_source" ] external_deps = [ "c_utils:utils", "hilog:libhilog", "init:libbegetutil", "ipc:ipc_core", "safwk:system_ability_fwk", "samgr:samgr_proxy", "zlib:shared_libz", ] } ohos_unittest("MemoryDumperTest") { module_out_path = module_output_path sources = [ "${hidumper_frameworks_path}/src/executor/memory/memory_util.cpp", "hidumper_test_utils.cpp", "memory_dumper_test.cpp", ] configs = [ ":module_private_config" ] deps = [ "${hidumper_service_path}:hidumperservice_source" ] external_deps = [ "c_utils:utils", "drivers_interface_memorytracker:libmemorytracker_proxy_1.0", "hdf_core:libhdf_utils", "hilog:libhilog", "ipc:ipc_core", "safwk:system_ability_fwk", ] cflags = [ "-Dprivate=public", #allow test code access private members ] } ohos_unittest("HidumperMemoryTest") { module_out_path = module_output_path sources = [ "hidumper_memory_test.cpp", "hidumper_test_utils.cpp", ] configs = [ ":module_private_config" ] deps = [ #"${hidumper_service_path}:hidumperservice_source", "${hidumper_service_path}:hidumpermemory_source", ] external_deps = [ "c_utils:utils", "drivers_interface_memorytracker:libmemorytracker_proxy_1.0", "hdf_core:libhdf_utils", "hilog:libhilog", "hiview:libucollection_utility", "ipc:ipc_core", "safwk:system_ability_fwk", ] cflags = [ "-Dprivate=public", #allow test code access private members ] } ohos_unittest("SADumperTest") { module_out_path = module_output_path sources = [ "hidumper_test_utils.cpp", "sa_dumper_test.cpp", ] configs = [ ":module_private_config" ] deps = [] external_deps = [ "c_utils:utils", "hilog:libhilog", "ipc:ipc_core", ] } ohos_unittest("HidumperPrivacyTest") { module_out_path = module_output_path sources = [ "hidumper_privacy_test.cpp", "hidumper_test_utils.cpp", ] configs = [ ":module_private_config" ] deps = [] external_deps = [ "c_utils:utils" ] } ohos_unittest("HidumperInnerkitsTest") { module_out_path = module_output_path sources = [ "${hidumper_frameworks_path}/src/executor/memory/get_heap_info.cpp", "${hidumper_frameworks_path}/src/executor/memory/memory_filter.cpp", "${hidumper_frameworks_path}/src/executor/memory/memory_util.cpp", "${hidumper_frameworks_path}/src/executor/memory/parse/parse_smaps_info.cpp", "hidumper_innerkits_test.cpp", ] configs = [ ":module_private_config" ] deps = [ "${hidumper_service_path}:hidumperservice_source", "../../../interfaces/innerkits:lib_dump_usage", ] external_deps = [ "c_utils:utils", "drivers_interface_memorytracker:libmemorytracker_proxy_1.0", "hdf_core:libhdf_utils", "hilog:libhilog", "hiview:libucollection_utility", "ipc:ipc_core", "samgr:samgr_proxy", ] } ohos_unittest("HidumperManagerTest") { module_out_path = module_output_path sources = [ "hidumper_manager_test.cpp", "hidumper_test_utils.cpp", ] configs = [ ":module_private_config" ] deps = [ "${hidumper_service_path}:hidumperservice_source" ] external_deps = [ "c_utils:utils", "hilog:libhilog", "init:libbegetutil", "ipc:ipc_core", "samgr:samgr_proxy", ] cflags = [ "-Dprivate=public", #allow test code access private members ] } ohos_unittest("HidumperCpuServiceTest") { module_out_path = module_output_path sources = [ "hidumper_cpu_service_test.cpp" ] configs = [ "${hidumper_utils_path}:utils_config", ":module_private_config", ] deps = [ "${hidumper_service_path}:hidumperservice_cpu_source_test", "${hidumper_service_path}:hidumperservice_source", ] external_deps = [ "c_utils:utils", "eventhandler:libeventhandler", "hilog:libhilog", "ipc:ipc_core", "safwk:system_ability_fwk", "samgr:samgr_proxy", ] defines = [] if (hidumper_ablility_base_enable) { external_deps += [ "ability_base:want" ] external_deps += [ "ability_runtime:app_manager" ] defines += [ "HIDUMPER_ABILITY_BASE_ENABLE" ] } cflags = [ "-Dprivate=public", #allow test code access private members ] } ohos_unittest("HidumperClientTest") { module_out_path = module_output_path sources = [ "hidumper_client_test.cpp", "hidumper_test_utils.cpp", ] configs = [ ":module_private_config" ] deps = [ "${hidumper_frameworks_path}:hidumperclient", "${hidumper_service_path}:hidumper_client", ] external_deps = [ "ability_runtime:app_manager", "c_utils:utils", "hilog:libhilog", "init:libbegetutil", "ipc:ipc_core", "samgr:samgr_proxy", ] cflags = [ "-Dprivate=public", #allow test code access private members ] } ohos_unittest("HidumperZidlTest") { module_out_path = module_output_path sources = [ "hidumper_zidl_test.cpp" ] configs = [ ":module_private_config", "${hidumper_service_path}:zidl_config", ] deps = [ "${hidumper_service_path}:zidl_service" ] external_deps = [ "hilog:libhilog", "ipc:ipc_core", ] cflags = [ "-Dprivate=public", #allow test code access private members ] } ohos_unittest("HidumperCpuZidlTest") { module_out_path = module_output_path sources = [ "${hidumper_service_path}/native/src/dump_cpu_data.cpp", "hidumper_cpu_zidl_test.cpp", ] configs = [ ":module_private_config", "${hidumper_service_path}:dump_cpu_config", "${hidumper_service_path}:zidl_config", ] deps = [ "${hidumper_service_path}:zidl_cpu_service" ] external_deps = [ "hilog:libhilog", "ipc:ipc_core", ] cflags = [ "-Dprivate=public", #allow test code access private members ] } ############################################################################### group("unittest") { testonly = true deps = [ # deps file ":HidumperClientTest", ":HidumperConfigUtilsTest", ":HidumperCpuServiceTest", ":HidumperDumpersTest", ":HidumperInnerkitsTest", ":HidumperManagerTest", ":HidumperMemoryTest", ":HidumperOutputTest", ":HidumperPrivacyTest", ":HidumperServiceTest", ":HidumperZidlTest", ":MemoryDumperTest", ":SADumperTest", ] } ###############################################################################