140f5d65dSopenharmony_ci# Copyright (c) 2022-2024 Huawei Device Co., Ltd.
240f5d65dSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
340f5d65dSopenharmony_ci# you may not use this file except in compliance with the License.
440f5d65dSopenharmony_ci# You may obtain a copy of the License at
540f5d65dSopenharmony_ci#
640f5d65dSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
740f5d65dSopenharmony_ci#
840f5d65dSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
940f5d65dSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1040f5d65dSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1140f5d65dSopenharmony_ci# See the License for the specific language governing permissions and
1240f5d65dSopenharmony_ci# limitations under the License.
1340f5d65dSopenharmony_ci
1440f5d65dSopenharmony_ciimport("//build/test.gni")
1540f5d65dSopenharmony_ciimport("//foundation/filemanagement/app_file_service/backup.gni")
1640f5d65dSopenharmony_ci
1740f5d65dSopenharmony_ciohos_unittest("backup_tool_test") {
1840f5d65dSopenharmony_ci  branch_protector_ret = "pac_ret"
1940f5d65dSopenharmony_ci
2040f5d65dSopenharmony_ci  module_out_path = path_module_out_tests
2140f5d65dSopenharmony_ci
2240f5d65dSopenharmony_ci  sources = [
2340f5d65dSopenharmony_ci    "${path_backup_mock}/b_filesystem/b_file_mock.cpp",
2440f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/src/b_incremental_backup_session.cpp",
2540f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/src/b_incremental_data.cpp",
2640f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/src/service_incremental_reverse.cpp",
2740f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/src/service_reverse.cpp",
2840f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/src/service_reverse_stub.cpp",
2940f5d65dSopenharmony_ci    "${path_backup}/tests/mock/backup_kit_inner/b_session_backup_mock.cpp",
3040f5d65dSopenharmony_ci    "${path_backup}/tools/backup_tool/src/tools_op.cpp",
3140f5d65dSopenharmony_ci    "${path_backup}/tools/backup_tool/src/tools_op_backup.cpp",
3240f5d65dSopenharmony_ci    "${path_backup}/tools/backup_tool/src/tools_op_check_sa.cpp",
3340f5d65dSopenharmony_ci    "${path_backup}/tools/backup_tool/src/tools_op_help.cpp",
3440f5d65dSopenharmony_ci    "backup_tool/tools_op_backup_test.cpp",
3540f5d65dSopenharmony_ci    "backup_tool/tools_op_check_sa_test.cpp",
3640f5d65dSopenharmony_ci    "backup_tool/tools_op_help_test.cpp",
3740f5d65dSopenharmony_ci    "backup_tool/tools_op_incremental_backup_test.cpp",
3840f5d65dSopenharmony_ci    "backup_tool/tools_op_test.cpp",
3940f5d65dSopenharmony_ci  ]
4040f5d65dSopenharmony_ci  sources += backup_mock_proxy_src
4140f5d65dSopenharmony_ci
4240f5d65dSopenharmony_ci  include_dirs = [
4340f5d65dSopenharmony_ci    "${path_base}/include",
4440f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/include",
4540f5d65dSopenharmony_ci    "${path_backup}/interfaces/inner_api/native/backup_kit_inner/impl",
4640f5d65dSopenharmony_ci    "${path_backup}/interfaces/inner_api/native/backup_kit_inner",
4740f5d65dSopenharmony_ci    "${path_backup}/tools/backup_tool/include",
4840f5d65dSopenharmony_ci    "${path_backup}/tools/backup_tool/src",
4940f5d65dSopenharmony_ci  ]
5040f5d65dSopenharmony_ci  include_dirs += backup_mock_utils_include
5140f5d65dSopenharmony_ci
5240f5d65dSopenharmony_ci  deps = [
5340f5d65dSopenharmony_ci    "${path_backup}/tests/utils:backup_test_utils",
5440f5d65dSopenharmony_ci    "${path_backup}/utils:backup_utils",
5540f5d65dSopenharmony_ci    "${path_googletest}:gmock_main",
5640f5d65dSopenharmony_ci    "${path_jsoncpp}:jsoncpp",
5740f5d65dSopenharmony_ci  ]
5840f5d65dSopenharmony_ci
5940f5d65dSopenharmony_ci  cflags = [ "--coverage" ]
6040f5d65dSopenharmony_ci
6140f5d65dSopenharmony_ci  ldflags = [ "--coverage" ]
6240f5d65dSopenharmony_ci
6340f5d65dSopenharmony_ci  cflags_cc = [ "--coverage" ]
6440f5d65dSopenharmony_ci
6540f5d65dSopenharmony_ci  external_deps = [
6640f5d65dSopenharmony_ci    "c_utils:utils",
6740f5d65dSopenharmony_ci    "hilog:libhilog",
6840f5d65dSopenharmony_ci    "hitrace:hitrace_meter",
6940f5d65dSopenharmony_ci    "ipc:ipc_core",
7040f5d65dSopenharmony_ci    "samgr:samgr_proxy",
7140f5d65dSopenharmony_ci  ]
7240f5d65dSopenharmony_ci
7340f5d65dSopenharmony_ci  sanitize = {
7440f5d65dSopenharmony_ci    integer_overflow = true
7540f5d65dSopenharmony_ci    cfi = true
7640f5d65dSopenharmony_ci    cfi_cross_dso = true
7740f5d65dSopenharmony_ci    debug = false
7840f5d65dSopenharmony_ci  }
7940f5d65dSopenharmony_ci
8040f5d65dSopenharmony_ci  use_exceptions = true
8140f5d65dSopenharmony_ci}
8240f5d65dSopenharmony_ci
8340f5d65dSopenharmony_ciohos_unittest("backup_tool_restore_test") {
8440f5d65dSopenharmony_ci  branch_protector_ret = "pac_ret"
8540f5d65dSopenharmony_ci
8640f5d65dSopenharmony_ci  module_out_path = path_module_out_tests
8740f5d65dSopenharmony_ci
8840f5d65dSopenharmony_ci  sources = [
8940f5d65dSopenharmony_ci    "${path_backup_mock}/b_filesystem/b_file_mock.cpp",
9040f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/src/b_incremental_data.cpp",
9140f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/src/b_incremental_restore_session.cpp",
9240f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/src/service_incremental_reverse.cpp",
9340f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/src/service_reverse.cpp",
9440f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/src/service_reverse_stub.cpp",
9540f5d65dSopenharmony_ci    "${path_backup}/tests/mock/backup_kit_inner/b_session_restore_async_mock.cpp",
9640f5d65dSopenharmony_ci    "${path_backup}/tests/mock/backup_kit_inner/b_session_restore_mock.cpp",
9740f5d65dSopenharmony_ci    "${path_backup}/tools/backup_tool/src/tools_op.cpp",
9840f5d65dSopenharmony_ci    "backup_tool/tools_op_incremental_restore_test.cpp",
9940f5d65dSopenharmony_ci    "backup_tool/tools_op_restore_async_test.cpp",
10040f5d65dSopenharmony_ci    "backup_tool/tools_op_restore_test.cpp",
10140f5d65dSopenharmony_ci  ]
10240f5d65dSopenharmony_ci  sources += backup_mock_proxy_src
10340f5d65dSopenharmony_ci
10440f5d65dSopenharmony_ci  include_dirs = [
10540f5d65dSopenharmony_ci    "${path_base}/include",
10640f5d65dSopenharmony_ci    "${path_backup}/frameworks/native/backup_kit_inner/include",
10740f5d65dSopenharmony_ci    "${path_backup}/interfaces/inner_api/native/backup_kit_inner/impl",
10840f5d65dSopenharmony_ci    "${path_backup}/interfaces/inner_api/native/backup_kit_inner",
10940f5d65dSopenharmony_ci    "${path_backup}/tools/backup_tool/include",
11040f5d65dSopenharmony_ci    "${path_backup}/tools/backup_tool/src",
11140f5d65dSopenharmony_ci  ]
11240f5d65dSopenharmony_ci  include_dirs += backup_mock_utils_include
11340f5d65dSopenharmony_ci
11440f5d65dSopenharmony_ci  deps = [
11540f5d65dSopenharmony_ci    "${path_backup}/tests/utils:backup_test_utils",
11640f5d65dSopenharmony_ci    "${path_backup}/utils:backup_utils",
11740f5d65dSopenharmony_ci    "${path_googletest}:gmock_main",
11840f5d65dSopenharmony_ci    "${path_jsoncpp}:jsoncpp",
11940f5d65dSopenharmony_ci  ]
12040f5d65dSopenharmony_ci
12140f5d65dSopenharmony_ci  cflags = [ "--coverage" ]
12240f5d65dSopenharmony_ci
12340f5d65dSopenharmony_ci  ldflags = [ "--coverage" ]
12440f5d65dSopenharmony_ci
12540f5d65dSopenharmony_ci  cflags_cc = [ "--coverage" ]
12640f5d65dSopenharmony_ci
12740f5d65dSopenharmony_ci  external_deps = [
12840f5d65dSopenharmony_ci    "c_utils:utils",
12940f5d65dSopenharmony_ci    "hilog:libhilog",
13040f5d65dSopenharmony_ci    "hitrace:hitrace_meter",
13140f5d65dSopenharmony_ci    "ipc:ipc_core",
13240f5d65dSopenharmony_ci    "samgr:samgr_proxy",
13340f5d65dSopenharmony_ci  ]
13440f5d65dSopenharmony_ci
13540f5d65dSopenharmony_ci  sanitize = {
13640f5d65dSopenharmony_ci    integer_overflow = true
13740f5d65dSopenharmony_ci    cfi = true
13840f5d65dSopenharmony_ci    cfi_cross_dso = true
13940f5d65dSopenharmony_ci    debug = false
14040f5d65dSopenharmony_ci  }
14140f5d65dSopenharmony_ci
14240f5d65dSopenharmony_ci  defines = [
14340f5d65dSopenharmony_ci    "LOG_TAG=\"app_file_service\"",
14440f5d65dSopenharmony_ci    "LOG_DOMAIN=0xD004303",
14540f5d65dSopenharmony_ci    "private = public",
14640f5d65dSopenharmony_ci  ]
14740f5d65dSopenharmony_ci
14840f5d65dSopenharmony_ci  use_exceptions = true
14940f5d65dSopenharmony_ci}
15040f5d65dSopenharmony_ci
15140f5d65dSopenharmony_cigroup("backup_test") {
15240f5d65dSopenharmony_ci  testonly = true
15340f5d65dSopenharmony_ci
15440f5d65dSopenharmony_ci  deps = [
15540f5d65dSopenharmony_ci    ":backup_tool_restore_test",
15640f5d65dSopenharmony_ci    ":backup_tool_test",
15740f5d65dSopenharmony_ci  ]
15840f5d65dSopenharmony_ci}
159