16ea96550Sopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd.
26ea96550Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
36ea96550Sopenharmony_ci# you may not use this file except in compliance with the License.
46ea96550Sopenharmony_ci# You may obtain a copy of the License at
56ea96550Sopenharmony_ci#
66ea96550Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
76ea96550Sopenharmony_ci#
86ea96550Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
96ea96550Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
106ea96550Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
116ea96550Sopenharmony_ci# See the License for the specific language governing permissions and
126ea96550Sopenharmony_ci# limitations under the License.
136ea96550Sopenharmony_ci
146ea96550Sopenharmony_ciimport("//base/security/security_guard/security_guard.gni")
156ea96550Sopenharmony_ciimport("//build/test.gni")
166ea96550Sopenharmony_ci
176ea96550Sopenharmony_ciohos_unittest("SecurityGuardConfigManagerTest") {
186ea96550Sopenharmony_ci  install_enable = true
196ea96550Sopenharmony_ci  part_name = "security_guard"
206ea96550Sopenharmony_ci  subsystem_name = "security"
216ea96550Sopenharmony_ci  module_out_path = part_name + "/" + part_name
226ea96550Sopenharmony_ci
236ea96550Sopenharmony_ci  resource_config_file = "resource/ohos_test.xml"
246ea96550Sopenharmony_ci
256ea96550Sopenharmony_ci  include_dirs = [
266ea96550Sopenharmony_ci    "include",
276ea96550Sopenharmony_ci    "${sg_root_dir}/interfaces/inner_api/common/include",
286ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/constants/include",
296ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/json/include",
306ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/task_handler/include",
316ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/database/include",
326ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/log/include",
336ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/utils/include",
346ea96550Sopenharmony_ci    "${sg_root_dir}/services/bigdata/include",
356ea96550Sopenharmony_ci    "${sg_root_dir}/test/unittest/mock/data_collect",
366ea96550Sopenharmony_ci    "${sg_root_dir}/test/unittest/mock/rdb",
376ea96550Sopenharmony_ci  ]
386ea96550Sopenharmony_ci
396ea96550Sopenharmony_ci  sources = [
406ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/json/src/json_cfg.cpp",
416ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/utils/src/security_guard_utils.cpp",
426ea96550Sopenharmony_ci    "${sg_root_dir}/services/config_manager/src/base_config.cpp",
436ea96550Sopenharmony_ci    "${sg_root_dir}/services/config_manager/src/config_data_manager.cpp",
446ea96550Sopenharmony_ci    "${sg_root_dir}/services/config_manager/src/config_manager.cpp",
456ea96550Sopenharmony_ci    "${sg_root_dir}/services/config_manager/src/config_operator.cpp",
466ea96550Sopenharmony_ci    "${sg_root_dir}/services/config_manager/src/config_subscriber.cpp",
476ea96550Sopenharmony_ci    "${sg_root_dir}/services/config_manager/src/event_config.cpp",
486ea96550Sopenharmony_ci    "${sg_root_dir}/services/config_manager/src/model_cfg_marshalling.cpp",
496ea96550Sopenharmony_ci    "${sg_root_dir}/services/config_manager/src/model_config.cpp",
506ea96550Sopenharmony_ci    "src/security_guard_config_manager_test.cpp",
516ea96550Sopenharmony_ci  ]
526ea96550Sopenharmony_ci
536ea96550Sopenharmony_ci  deps = [ "${sg_root_dir}/services/bigdata:sg_bigdata_stamp" ]
546ea96550Sopenharmony_ci
556ea96550Sopenharmony_ci  external_deps = [
566ea96550Sopenharmony_ci    "ability_base:base",
576ea96550Sopenharmony_ci    "ability_base:want",
586ea96550Sopenharmony_ci    "access_token:libaccesstoken_sdk",
596ea96550Sopenharmony_ci    "access_token:libnativetoken",
606ea96550Sopenharmony_ci    "access_token:libtoken_setproc",
616ea96550Sopenharmony_ci    "c_utils:utils",
626ea96550Sopenharmony_ci    "googletest:gmock",
636ea96550Sopenharmony_ci    "hilog:libhilog",
646ea96550Sopenharmony_ci    "ipc:ipc_core",
656ea96550Sopenharmony_ci    "json:nlohmann_json_static",
666ea96550Sopenharmony_ci    "kv_store:distributeddata_inner",
676ea96550Sopenharmony_ci    "safwk:system_ability_fwk",
686ea96550Sopenharmony_ci    "samgr:samgr_proxy",
696ea96550Sopenharmony_ci  ]
706ea96550Sopenharmony_ci
716ea96550Sopenharmony_ci  sanitize = {
726ea96550Sopenharmony_ci    integer_overflow = true
736ea96550Sopenharmony_ci    ubsan = true
746ea96550Sopenharmony_ci    boundary_sanitize = true
756ea96550Sopenharmony_ci    cfi = true
766ea96550Sopenharmony_ci    cfi_cross_dso = true
776ea96550Sopenharmony_ci    blocklist = "${sg_root_dir}/cfi_blocklist.txt"
786ea96550Sopenharmony_ci  }
796ea96550Sopenharmony_ci  branch_protector_ret = "pac_ret"
806ea96550Sopenharmony_ci}
816ea96550Sopenharmony_ci
826ea96550Sopenharmony_ciohos_unittest("AppInfoDatabseTest") {
836ea96550Sopenharmony_ci  install_enable = true
846ea96550Sopenharmony_ci  part_name = "security_guard"
856ea96550Sopenharmony_ci  subsystem_name = "security"
866ea96550Sopenharmony_ci  module_out_path = part_name + "/" + part_name
876ea96550Sopenharmony_ci
886ea96550Sopenharmony_ci  include_dirs = [
896ea96550Sopenharmony_ci    "include",
906ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/constants/include",
916ea96550Sopenharmony_ci    "${sg_root_dir}/interfaces/inner_api/common/include",
926ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/json/include",
936ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/task_handler/include",
946ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/database/include",
956ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/log/include",
966ea96550Sopenharmony_ci    "${sg_root_dir}/frameworks/common/utils/include",
976ea96550Sopenharmony_ci    "${sg_root_dir}/services/bigdata/include",
986ea96550Sopenharmony_ci    "${sg_root_dir}/services/config_manager/include",
996ea96550Sopenharmony_ci    "${sg_root_dir}/test/unittest/mock/rdb",
1006ea96550Sopenharmony_ci    "${sg_root_dir}/test/unittest/data_collect/include",
1016ea96550Sopenharmony_ci  ]
1026ea96550Sopenharmony_ci
1036ea96550Sopenharmony_ci  sources = [
1046ea96550Sopenharmony_ci    "${sg_root_dir}/services/data_collect/store/src/database.cpp",
1056ea96550Sopenharmony_ci    "${sg_root_dir}/services/data_collect/store/src/rdb_event_store_callback.cpp",
1066ea96550Sopenharmony_ci    "src/app_info_database_test.cpp",
1076ea96550Sopenharmony_ci  ]
1086ea96550Sopenharmony_ci
1096ea96550Sopenharmony_ci  deps = [ "${sg_root_dir}/services/bigdata:sg_bigdata_stamp" ]
1106ea96550Sopenharmony_ci
1116ea96550Sopenharmony_ci  external_deps = [
1126ea96550Sopenharmony_ci    "ability_base:base",
1136ea96550Sopenharmony_ci    "ability_base:want",
1146ea96550Sopenharmony_ci    "access_token:libaccesstoken_sdk",
1156ea96550Sopenharmony_ci    "access_token:libnativetoken",
1166ea96550Sopenharmony_ci    "access_token:libtoken_setproc",
1176ea96550Sopenharmony_ci    "c_utils:utils",
1186ea96550Sopenharmony_ci    "googletest:gmock",
1196ea96550Sopenharmony_ci    "hilog:libhilog",
1206ea96550Sopenharmony_ci    "ipc:ipc_core",
1216ea96550Sopenharmony_ci    "kv_store:distributeddata_inner",
1226ea96550Sopenharmony_ci    "safwk:system_ability_fwk",
1236ea96550Sopenharmony_ci    "samgr:samgr_proxy",
1246ea96550Sopenharmony_ci  ]
1256ea96550Sopenharmony_ci
1266ea96550Sopenharmony_ci  sanitize = {
1276ea96550Sopenharmony_ci    integer_overflow = true
1286ea96550Sopenharmony_ci    ubsan = true
1296ea96550Sopenharmony_ci    boundary_sanitize = true
1306ea96550Sopenharmony_ci    cfi = true
1316ea96550Sopenharmony_ci    cfi_cross_dso = true
1326ea96550Sopenharmony_ci    blocklist = "${sg_root_dir}/cfi_blocklist.txt"
1336ea96550Sopenharmony_ci  }
1346ea96550Sopenharmony_ci  branch_protector_ret = "pac_ret"
1356ea96550Sopenharmony_ci}
1366ea96550Sopenharmony_ci
1376ea96550Sopenharmony_cigroup("unittest") {
1386ea96550Sopenharmony_ci  testonly = true
1396ea96550Sopenharmony_ci  deps = [
1406ea96550Sopenharmony_ci    ":AppInfoDatabseTest",
1416ea96550Sopenharmony_ci    ":SecurityGuardConfigManagerTest",
1426ea96550Sopenharmony_ci  ]
1436ea96550Sopenharmony_ci}
144