1# Copyright (c) 2022-2023 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("//foundation/filemanagement/app_file_service/backup.gni") 16 17ohos_unittest("ext_extension_test") { 18 branch_protector_ret = "pac_ret" 19 sanitize = { 20 integer_overflow = true 21 cfi = true 22 cfi_cross_dso = true 23 debug = false 24 } 25 26 module_out_path = path_module_out_tests 27 28 sources = [ 29 "${path_backup}/frameworks/native/backup_kit_inner/src/service_incremental_proxy.cpp", 30 "${path_backup}/frameworks/native/backup_kit_inner/src/service_proxy.cpp", 31 "ext_extension_test.cpp", 32 ] 33 34 include_dirs = [ 35 "${path_backup}/frameworks/native/backup_ext/include", 36 "${path_backup}/frameworks/native/backup_ext/src", 37 "${path_backup}/frameworks/native/backup_kit_inner/src", 38 "${path_backup}/interfaces/inner_api/native/backup_kit_inner/impl", 39 "${path_backup}/interfaces/common/include", 40 "${path_backup}/utils/include", 41 ] 42 43 deps = [ 44 "${path_backup}/utils:backup_utils", 45 "${path_jsoncpp}:jsoncpp", 46 "//third_party/googletest:gtest_main", 47 ] 48 49 external_deps = [ 50 "ability_base:want", 51 "ability_runtime:ability_context_native", 52 "ability_runtime:abilitykit_native", 53 "ability_runtime:app_context", 54 "ability_runtime:appkit_native", 55 "ability_runtime:runtime", 56 "access_token:libaccesstoken_sdk", 57 "bundle_framework:appexecfwk_core", 58 "c_utils:utils", 59 "hilog:libhilog", 60 "hitrace:hitrace_meter", 61 "ipc:ipc_core", 62 "napi:ace_napi", 63 "safwk:system_ability_fwk", 64 "samgr:samgr_proxy", 65 ] 66 67 cflags = [ "--coverage" ] 68 ldflags = [ "--coverage" ] 69 cflags_cc = [ "--coverage" ] 70 71 defines = [ 72 "LOG_TAG=\"app_file_service\"", 73 "LOG_DOMAIN=0xD004303", 74 "private=public", 75 ] 76 77 use_exceptions = true 78} 79 80ohos_unittest("ext_extension_stub_test") { 81 module_out_path = path_module_out_tests 82 83 sources = [ 84 "${path_backup_mock}/module_ipc/message_parcel_mock.cpp", 85 "${path_backup}/frameworks/native/backup_ext/src/ext_extension_stub.cpp", 86 "ext_extension_stub_test.cpp", 87 ] 88 89 include_dirs = [ 90 "${path_backup_mock}/module_ipc", 91 "${path_backup}/frameworks/native/backup_ext/include", 92 "${path_backup}/interfaces/inner_api/native/backup_kit_inner/impl", 93 "${path_backup}/interfaces/common/include", 94 "${path_backup}/utils/include", 95 ] 96 97 deps = [ 98 "${path_backup}/utils:backup_utils", 99 "//third_party/googletest:gmock_main", 100 "//third_party/googletest:gtest_main", 101 ] 102 103 external_deps = [ 104 "c_utils:utils", 105 "hilog:libhilog", 106 "ipc:ipc_core", 107 "safwk:system_ability_fwk", 108 ] 109 110 cflags = [ "--coverage" ] 111 ldflags = [ "--coverage" ] 112 cflags_cc = [ "--coverage" ] 113 114 defines = [ 115 "LOG_TAG=\"app_file_service\"", 116 "LOG_DOMAIN=0xD004303", 117 "private=public", 118 ] 119 120 use_exceptions = true 121} 122 123ohos_unittest("tar_file_test") { 124 branch_protector_ret = "pac_ret" 125 sanitize = { 126 integer_overflow = true 127 cfi = true 128 cfi_cross_dso = true 129 debug = false 130 } 131 132 module_out_path = path_module_out_tests 133 134 sources = [ 135 "${path_backup}/frameworks/native/backup_ext/src/ext_backup.cpp", 136 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_context.cpp", 137 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_context_js.cpp", 138 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_js.cpp", 139 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_loader.cpp", 140 "${path_backup}/frameworks/native/backup_ext/src/ext_extension.cpp", 141 "${path_backup}/frameworks/native/backup_ext/src/ext_extension_stub.cpp", 142 "${path_backup}/frameworks/native/backup_ext/src/sub_ext_extension.cpp", 143 "${path_backup}/frameworks/native/backup_ext/src/tar_file.cpp", 144 "${path_backup}/frameworks/native/backup_ext/src/untar_file.cpp", 145 "tar_file_test.cpp", 146 ] 147 sources += backup_mock_proxy_src 148 149 include_dirs = [ 150 "${path_ability_runtime}/services/common/include", 151 "${path_ability_runtime}/interfaces/kits/napi/aafwk/inner/napi_common", 152 "${path_ability_runtime}/interfaces/kits/native/appkit/ability_runtime", 153 "${path_backup}/frameworks/native/backup_ext/include", 154 "${path_backup}/interfaces/inner_api/native/backup_kit_inner/", 155 "${path_backup}/interfaces/inner_api/native/backup_kit_inner/impl", 156 "${path_backup}/frameworks/native/backup_kit_inner/include", 157 "${path_backup}/utils/include", 158 "${path_napi}/native_engine", 159 ] 160 include_dirs += backup_mock_utils_include 161 162 deps = [ 163 "${path_backup}/interfaces/inner_api/native/backup_kit_inner:backup_kit_inner", 164 "${path_backup}/interfaces/innerkits/native:sandbox_helper_native", 165 "${path_backup}/tests/utils:backup_test_utils", 166 "${path_backup}/utils:backup_utils", 167 "${path_googletest}:gmock_main", 168 "${path_jsoncpp}:jsoncpp", 169 ] 170 171 cflags = [ "--coverage" ] 172 ldflags = [ "--coverage" ] 173 cflags_cc = [ "--coverage" ] 174 175 external_deps = [ 176 "ability_base:want", 177 "ability_runtime:ability_context_native", 178 "ability_runtime:abilitykit_native", 179 "ability_runtime:app_context", 180 "ability_runtime:appkit_native", 181 "ability_runtime:runtime", 182 "access_token:libaccesstoken_sdk", 183 "bundle_framework:appexecfwk_core", 184 "c_utils:utils", 185 "hitrace:hitrace_meter", 186 "ipc:ipc_core", 187 "napi:ace_napi", 188 "samgr:samgr_proxy", 189 ] 190 191 defines = [ "private=public" ] 192 193 use_exceptions = true 194} 195 196ohos_unittest("untar_file_sup_test") { 197 branch_protector_ret = "pac_ret" 198 sanitize = { 199 integer_overflow = true 200 cfi = true 201 cfi_cross_dso = true 202 debug = false 203 blocklist = "${path_backup}/cfi_blocklist.txt" 204 } 205 206 module_out_path = path_module_out_tests 207 208 sources = [ 209 "${path_backup}/frameworks/native/backup_ext/src/ext_backup.cpp", 210 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_context.cpp", 211 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_context_js.cpp", 212 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_js.cpp", 213 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_loader.cpp", 214 "${path_backup}/frameworks/native/backup_ext/src/ext_extension.cpp", 215 "${path_backup}/frameworks/native/backup_ext/src/ext_extension_stub.cpp", 216 "${path_backup}/frameworks/native/backup_ext/src/sub_ext_extension.cpp", 217 "${path_backup}/frameworks/native/backup_ext/src/tar_file.cpp", 218 "${path_backup}/tests/mock/library_func_mock/library_func_mock.cpp", 219 "untar_file_sup_test.cpp", 220 ] 221 sources += backup_mock_proxy_src 222 223 include_dirs = [ 224 "${path_ability_runtime}/services/common/include", 225 "${path_ability_runtime}/interfaces/kits/napi/aafwk/inner/napi_common", 226 "${path_ability_runtime}/interfaces/kits/native/appkit/ability_runtime", 227 "${path_backup}/frameworks/native/backup_ext/include", 228 "${path_backup}/frameworks/native/backup_ext/src", 229 "${path_backup}/interfaces/inner_api/native/backup_kit_inner/", 230 "${path_backup}/interfaces/inner_api/native/backup_kit_inner/impl", 231 "${path_backup}/frameworks/native/backup_kit_inner/include", 232 "${path_backup}/tests/mock/library_func_mock", 233 "${path_backup}/utils/include", 234 "${path_napi}/native_engine", 235 ] 236 include_dirs += backup_mock_utils_include 237 238 deps = [ 239 "${path_backup}/interfaces/inner_api/native/backup_kit_inner:backup_kit_inner", 240 "${path_backup}/interfaces/innerkits/native:sandbox_helper_native", 241 "${path_backup}/tests/utils:backup_test_utils", 242 "${path_backup}/utils:backup_utils", 243 "${path_googletest}:gmock_main", 244 "${path_jsoncpp}:jsoncpp", 245 ] 246 247 cflags = [ "--coverage" ] 248 ldflags = [ "--coverage" ] 249 cflags_cc = [ "--coverage" ] 250 251 external_deps = [ 252 "ability_base:want", 253 "ability_runtime:ability_context_native", 254 "ability_runtime:abilitykit_native", 255 "ability_runtime:app_context", 256 "ability_runtime:appkit_native", 257 "ability_runtime:runtime", 258 "access_token:libaccesstoken_sdk", 259 "bundle_framework:appexecfwk_core", 260 "c_utils:utils", 261 "hitrace:hitrace_meter", 262 "ipc:ipc_core", 263 "napi:ace_napi", 264 "samgr:samgr_proxy", 265 ] 266 267 defines = [ "private=public" ] 268 269 use_exceptions = true 270} 271 272ohos_unittest("untar_file_test") { 273 branch_protector_ret = "pac_ret" 274 sanitize = { 275 integer_overflow = true 276 cfi = true 277 cfi_cross_dso = true 278 debug = false 279 } 280 281 module_out_path = path_module_out_tests 282 283 sources = [ 284 "${path_backup}/frameworks/native/backup_ext/src/ext_backup.cpp", 285 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_context.cpp", 286 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_context_js.cpp", 287 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_js.cpp", 288 "${path_backup}/frameworks/native/backup_ext/src/ext_backup_loader.cpp", 289 "${path_backup}/frameworks/native/backup_ext/src/ext_extension.cpp", 290 "${path_backup}/frameworks/native/backup_ext/src/ext_extension_stub.cpp", 291 "${path_backup}/frameworks/native/backup_ext/src/sub_ext_extension.cpp", 292 "${path_backup}/frameworks/native/backup_ext/src/tar_file.cpp", 293 "${path_backup}/frameworks/native/backup_ext/src/untar_file.cpp", 294 "untar_file_test.cpp", 295 ] 296 sources += backup_mock_proxy_src 297 298 include_dirs = [ 299 "${path_ability_runtime}/services/common/include", 300 "${path_ability_runtime}/interfaces/kits/napi/aafwk/inner/napi_common", 301 "${path_ability_runtime}/interfaces/kits/native/appkit/ability_runtime", 302 "${path_backup}/frameworks/native/backup_ext/include", 303 "${path_backup}/interfaces/inner_api/native/backup_kit_inner/", 304 "${path_backup}/interfaces/inner_api/native/backup_kit_inner/impl", 305 "${path_backup}/frameworks/native/backup_kit_inner/include", 306 "${path_backup}/utils/include", 307 "${path_napi}/native_engine", 308 ] 309 include_dirs += backup_mock_utils_include 310 311 deps = [ 312 "${path_backup}/interfaces/inner_api/native/backup_kit_inner:backup_kit_inner", 313 "${path_backup}/interfaces/innerkits/native:sandbox_helper_native", 314 "${path_backup}/tests/utils:backup_test_utils", 315 "${path_backup}/utils:backup_utils", 316 "${path_googletest}:gmock_main", 317 "${path_jsoncpp}:jsoncpp", 318 ] 319 320 cflags = [ "--coverage" ] 321 ldflags = [ "--coverage" ] 322 cflags_cc = [ "--coverage" ] 323 324 external_deps = [ 325 "ability_base:want", 326 "ability_runtime:ability_context_native", 327 "ability_runtime:abilitykit_native", 328 "ability_runtime:app_context", 329 "ability_runtime:appkit_native", 330 "ability_runtime:runtime", 331 "access_token:libaccesstoken_sdk", 332 "bundle_framework:appexecfwk_core", 333 "c_utils:utils", 334 "hitrace:hitrace_meter", 335 "ipc:ipc_core", 336 "napi:ace_napi", 337 "samgr:samgr_proxy", 338 ] 339 340 defines = [ "private=public" ] 341 342 use_exceptions = true 343} 344 345ohos_unittest("ext_backup_js_test") { 346 module_out_path = path_module_out_tests 347 348 sources = [ 349 "${path_backup}/tests/mock/backup_ext/src/ext_backup_mock.cpp", 350 "${path_backup}/tests/mock/napi/src/napi_mock.cpp", 351 "ext_backup_js_test.cpp", 352 ] 353 354 include_dirs = [ 355 "${path_backup}/frameworks/native/backup_ext/include", 356 "${path_backup}/frameworks/native/backup_ext/src", 357 "${path_backup}/frameworks/native/backup_kit_inner/src", 358 "${path_backup}/interfaces/inner_api/native/backup_kit_inner/impl", 359 "${path_backup}/interfaces/common/include", 360 "${path_backup}/tests/mock/backup_ext/include", 361 "${path_backup}/tests/mock/napi/include", 362 "${path_backup}/utils/include", 363 ] 364 365 deps = [ 366 "${path_backup}/utils:backup_utils", 367 "${path_googletest}:gmock_main", 368 "${path_googletest}:gtest_main", 369 "${path_jsoncpp}:jsoncpp", 370 ] 371 372 external_deps = [ 373 "ability_base:want", 374 "ability_runtime:ability_context_native", 375 "ability_runtime:abilitykit_native", 376 "ability_runtime:app_context", 377 "ability_runtime:appkit_native", 378 "ability_runtime:runtime", 379 "access_token:libaccesstoken_sdk", 380 "bundle_framework:appexecfwk_base", 381 "bundle_framework:appexecfwk_core", 382 "c_utils:utils", 383 "hilog:libhilog", 384 "hitrace:hitrace_meter", 385 "ipc:ipc_core", 386 "napi:ace_napi", 387 "safwk:system_ability_fwk", 388 "samgr:samgr_proxy", 389 ] 390 391 cflags = [ "--coverage" ] 392 ldflags = [ "--coverage" ] 393 cflags_cc = [ "--coverage" ] 394 395 defines = [ 396 "LOG_TAG=\"app_file_service\"", 397 "LOG_DOMAIN=0xD004303", 398 "private=public", 399 ] 400 401 use_exceptions = true 402} 403 404group("backup_ext_test") { 405 testonly = true 406 if (!use_libfuzzer) { 407 deps = [ 408 ":ext_backup_js_test", 409 ":ext_extension_stub_test", 410 ":ext_extension_test", 411 ":tar_file_test", 412 ":untar_file_sup_test", 413 ":untar_file_test", 414 ] 415 } 416} 417