# 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("//foundation/distributeddatamgr/datamgr_service/datamgr_service.gni") module_output_path = "datamgr_service/distributeddataservice" ############################################################################### config("module_private_config") { visibility = [ ":*" ] include_dirs = [ "${kv_store_path}/frameworks/innerkitsimpl/distributeddatasvc/include", "${kv_store_path}/frameworks/common", "${kv_store_path}/frameworks/innerkitsimpl/distributeddatafwk/include", "${kv_store_path}/frameworks/innerkitsimpl/distributeddatafwk/src", "${kv_store_path}/frameworks/innerkitsimpl/kvdb/include", "${kv_store_path}/interfaces/innerkits/distributeddata/include", "${data_service_path}/adapter/include/permission", "${data_service_path}/adapter/include/account", "${data_service_path}/adapter/include", "${data_service_path}/adapter/include/dfx", "${data_service_path}/adapter/include/broadcaster", "${data_service_path}/adapter/include/utils", "${data_service_path}/framework/include", "${data_service_path}/service/bootstrap/include", "${data_service_path}/service/common", "${data_service_path}/service/config/include", "${data_service_path}/service/crypto/include", "${data_service_path}/service/directory/include", "${data_service_path}/service/permission/include", "${data_service_path}/service/matrix/include", "${data_service_path}/service/waterversion", "${data_service_path}/app/src/session_manager", "${data_service_path}/service/kvdb", "${device_manager_path}/interfaces/inner_kits/native_cpp/include", "//commonlibrary/c_utils/base/include", "//utils/system/safwk/native/include", "../include", "../src", "../src/security", "unittest", "../src/installer", "../src/flowctrl_manager", "../../service/backup/include", "../../../../interfaces/innerkits/distributeddata", "../../service/dumper/include", "//third_party/json/single_include", ] if (datamgr_service_power) { include_dirs += [ "//base/powermgr/power_manager/interfaces/innerkits/native/include" ] } ldflags = [ "-Wl,--whole-archive" ] defines = [ "OPENSSL_SUPPRESS_DEPRECATED" ] } ohos_unittest("KvStoreDataServiceTest") { module_out_path = module_output_path sources = [ "${data_service_path}/service/common/xcollie.cpp", "../src/db_info_handle_impl.cpp", "../src/feature_stub_impl.cpp", "../src/kvstore_account_observer.cpp", "../src/kvstore_data_service.cpp", "../src/kvstore_data_service_stub.cpp", "../src/kvstore_device_listener.cpp", "../src/kvstore_meta_manager.cpp", "../src/security/security.cpp", "../src/security/sensitive.cpp", "../src/session_manager/route_head_handler_impl.cpp", "../src/session_manager/session_manager.cpp", "../src/session_manager/upgrade_manager.cpp", "../src/task_manager.cpp", "unittest/kvstore_data_service_test.cpp", ] configs = [ ":module_private_config" ] external_deps = [ "access_token:libaccesstoken_sdk", "c_utils:utils", "dataclassification:data_transit_mgr", "device_auth:deviceauth_sdk", "file_api:securitylabel", "hicollie:libhicollie", "hilog:libhilog", "hisysevent:libhisysevent", "hitrace:hitrace_meter", "hitrace:libhitracechain", "ipc:ipc_core", "memmgr:memmgrclient", "safwk:system_ability_fwk", "samgr:samgr_proxy", ] if (datamgr_service_power) { external_deps += [ "battery_manager:batterysrv_client", "power_manager:powermgr_client", ] } cflags = [ "-Dprivate=public", "-Dprotected=public", ] deps = [ "${data_service_path}/adapter:distributeddata_adapter", "${data_service_path}/adapter/broadcaster:distributeddata_broadcaster_static", "${data_service_path}/adapter/utils:distributeddata_utils_static", "${data_service_path}/app/src/checker:distributeddata_checker_static", "${data_service_path}/app/src/flowctrl_manager:distributeddata_flowctrl_static", "${data_service_path}/app/src/installer:distributeddata_installer_static", "${data_service_path}/framework:distributeddatasvcfwk", "${data_service_path}/service:distributeddatasvc", "${kv_store_path}/frameworks/libs/distributeddb:distributeddb", "${kv_store_path}/interfaces/innerkits/distributeddata:distributeddata_inner", "${kv_store_path}/interfaces/innerkits/distributeddatamgr:distributeddata_mgr", "//third_party/googletest:gtest_main", ] part_name = "datamgr_service" } ohos_unittest("SessionManagerTest") { module_out_path = module_output_path sources = [ "../src/kvstore_meta_manager.cpp", "../src/session_manager/route_head_handler_impl.cpp", "../src/session_manager/session_manager.cpp", "../src/session_manager/upgrade_manager.cpp", "unittest/session_manager_test.cpp", ] sanitize = { cfi = true cfi_cross_dso = true debug = false } cflags_cc = [ "-DUT_TEST" ] configs = [ ":module_private_config" ] external_deps = [ "access_token:libaccesstoken_sdk", "access_token:libnativetoken", "access_token:libtoken_setproc", "c_utils:utils", "dataclassification:data_transit_mgr", "device_auth:deviceauth_sdk", "file_api:securitylabel", "hilog:libhilog", "hisysevent:libhisysevent", "ipc:ipc_core", "safwk:system_ability_fwk", "samgr:samgr_proxy", ] if (datamgr_service_power) { external_deps += [ "battery_manager:batterysrv_client", "power_manager:powermgr_client", ] } deps = [ "${kv_store_path}/interfaces/innerkits/distributeddatamgr:distributeddata_mgr", "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/adapter:distributeddata_adapter", "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/adapter/broadcaster:distributeddata_broadcaster_static", "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/adapter/utils:distributeddata_utils_static", "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/app/src/checker:distributeddata_checker_static", "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/framework:distributeddatasvcfwk", "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/service:distributeddatasvc", "//foundation/distributeddatamgr/kv_store/frameworks/libs/distributeddb:distributeddb", "//foundation/distributeddatamgr/kv_store/interfaces/innerkits/distributeddata:distributeddata_inner", "//third_party/googletest:gtest_main", ] part_name = "datamgr_service" } ohos_unittest("KvStoreFlowCtrlManagerTest") { module_out_path = module_output_path sources = [ "unittest/kvstore_flowctrl_manager_test.cpp" ] configs = [ ":module_private_config" ] external_deps = [ "access_token:libaccesstoken_sdk", "c_utils:utils", "dataclassification:data_transit_mgr", "device_auth:deviceauth_sdk", "file_api:securitylabel", "hilog:libhilog", "hisysevent:libhisysevent", "ipc:ipc_core", "safwk:system_ability_fwk", "samgr:samgr_proxy", ] if (datamgr_service_power) { external_deps += [ "battery_manager:batterysrv_client", "power_manager:powermgr_client", ] } deps = [ "${kv_store_path}/interfaces/innerkits/distributeddatamgr:distributeddata_mgr", "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/adapter:distributeddata_adapter", "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/app/src/flowctrl_manager:distributeddata_flowctrl_static", "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/framework:distributeddatasvcfwk", "//foundation/distributeddatamgr/datamgr_service/services/distributeddataservice/service:distributeddatasvc", "//foundation/distributeddatamgr/kv_store/interfaces/innerkits/distributeddata:distributeddata_inner", "//third_party/googletest:gtest_main", ] part_name = "datamgr_service" } ohos_unittest("KvStoreDataServiceClearTest") { module_out_path = module_output_path sources = [ "${data_service_path}/app/src/db_info_handle_impl.cpp", "${data_service_path}/app/src/feature_stub_impl.cpp", "${data_service_path}/app/src/kvstore_account_observer.cpp", "${data_service_path}/app/src/kvstore_data_service.cpp", "${data_service_path}/app/src/kvstore_data_service_stub.cpp", "${data_service_path}/app/src/kvstore_device_listener.cpp", "${data_service_path}/app/src/kvstore_meta_manager.cpp", "${data_service_path}/app/src/security/security.cpp", "${data_service_path}/app/src/security/sensitive.cpp", "${data_service_path}/app/src/session_manager/route_head_handler_impl.cpp", "${data_service_path}/app/src/session_manager/session_manager.cpp", "${data_service_path}/app/src/session_manager/upgrade_manager.cpp", "${data_service_path}/app/src/task_manager.cpp", "${data_service_path}/service/common/xcollie.cpp", "unittest/kvstore_data_service_clear_test.cpp", ] sanitize = { cfi = true cfi_cross_dso = true debug = false } configs = [ ":module_private_config" ] external_deps = [ "access_token:libaccesstoken_sdk", "access_token:libnativetoken", "access_token:libtoken_setproc", "access_token:libtokenid_sdk", "c_utils:utils", "dataclassification:data_transit_mgr", "device_auth:deviceauth_sdk", "file_api:securitylabel", "hicollie:libhicollie", "hilog:libhilog", "hisysevent:libhisysevent", "hitrace:hitrace_meter", "hitrace:libhitracechain", "ipc:ipc_core", "kv_store:distributeddata_inner", "kv_store:distributeddata_mgr", "kv_store:distributeddb", "memmgr:memmgrclient", "safwk:system_ability_fwk", "samgr:samgr_proxy", ] if (datamgr_service_power) { external_deps += [ "battery_manager:batterysrv_client", "power_manager:powermgr_client", ] } deps = [ "${data_service_path}/adapter:distributeddata_adapter", "${data_service_path}/adapter/broadcaster:distributeddata_broadcaster_static", "${data_service_path}/adapter/utils:distributeddata_utils_static", "${data_service_path}/app/src/checker:distributeddata_checker_static", "${data_service_path}/app/src/flowctrl_manager:distributeddata_flowctrl_static", "${data_service_path}/app/src/installer:distributeddata_installer_static", "${data_service_path}/framework:distributeddatasvcfwk", "${data_service_path}/service:distributeddatasvc", "//third_party/googletest:gtest_main", ] part_name = "datamgr_service" } ############################################################################### group("unittest") { testonly = true deps = [] deps += [ ":KvStoreDataServiceClearTest", ":KvStoreDataServiceTest", ":KvStoreFlowCtrlManagerTest", ":SessionManagerTest", ] } ############################################################################### group("moduletest") { testonly = true deps = [ "//third_party/googletest:gmock", "//third_party/googletest:gtest_main", "//third_party/sqlite:sqlite", ] deps += [ #":DistributedDataAccountEventModuleTest", #":DistributedDataFlowCtrlManagerTest", ] } ###############################################################################