1# Copyright (c) 2022-2024 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/ability/ability_runtime/ability_runtime.gni") 16 17module_output_path = "ability_runtime/abilitymgr" 18 19ohos_unittest("ability_manager_service_first_test") { 20 module_out_path = module_output_path 21 sanitize = { 22 cfi = true 23 cfi_cross_dso = true 24 debug = false 25 blocklist = "../../cfi_blocklist.txt" 26 } 27 branch_protector_ret = "pac_ret" 28 29 include_dirs = [ 30 "${ability_runtime_test_path}/mock/services_abilitymgr_test/libs/appexecfwk_core/include", 31 "${ability_runtime_path}/interfaces/kits/native/ability/ability_runtime/", 32 "${ability_runtime_path}/interfaces/inner_api/ability_manager/include", 33 "${ability_runtime_test_path}/mock/ability_manager_collaborator", 34 "${ability_runtime_test_path}/mock/frameworks_kits_ability_native_test/include", 35 "${ability_runtime_test_path}/mock/mock_sa_call", 36 "${ability_runtime_test_path}/mock/prepare_terminate_callback", 37 "${ability_runtime_test_path}/mock/services_abilitymgr_test/libs/aakit/include", 38 "${ability_runtime_test_path}/unittest/app_debug_listener_stub_test", 39 "mock/include", 40 ] 41 42 sources = [ 43 "${ability_runtime_path}/services/abilitymgr/src/ability_auto_startup_service.cpp", 44 "${ability_runtime_services_path}/abilitymgr/src/ability_connect_callback_stub.cpp", 45 "ability_manager_service_first_test.cpp", 46 "mock/src/mock_my_flag.cpp", 47 "mock/src/mock_permission_verification.cpp", 48 ] 49 50 configs = [ "${ability_runtime_services_path}/abilitymgr:abilityms_config" ] 51 52 deps = [ 53 "${ability_runtime_innerkits_path}/ability_manager:ability_start_setting", 54 "${ability_runtime_innerkits_path}/ability_manager:mission_info", 55 "${ability_runtime_innerkits_path}/app_manager:app_manager", 56 "${ability_runtime_innerkits_path}/deps_wrapper:ability_deps_wrapper", 57 "${ability_runtime_native_path}/ability/native:auto_startup_callback", 58 "${ability_runtime_services_path}/abilitymgr:abilityms", 59 "${ability_runtime_services_path}/common:app_util", 60 "${ability_runtime_services_path}/common:perm_verification", 61 "${ability_runtime_test_path}/mock/services_abilitymgr_test/libs/aakit:aakit_mock", 62 "//third_party/googletest:gmock_main", 63 "//third_party/googletest:gtest_main", 64 ] 65 66 external_deps = [ 67 "ability_base:session_info", 68 "ability_base:want", 69 "ability_base:zuri", 70 "ability_runtime:ability_manager", 71 "access_token:libaccesstoken_sdk", 72 "access_token:libnativetoken", 73 "access_token:libtoken_setproc", 74 "bundle_framework:appexecfwk_base", 75 "bundle_framework:appexecfwk_core", 76 "c_utils:utils", 77 "common_event_service:cesfwk_innerkits", 78 "ffrt:libffrt", 79 "hilog:libhilog", 80 "ipc:ipc_core", 81 "kv_store:distributeddata_inner", 82 "napi:ace_napi", 83 "window_manager:scene_session", 84 ] 85 86 if (ability_runtime_graphics) { 87 external_deps += [ 88 "window_manager:libwsutils", 89 "window_manager:scene_session", 90 ] 91 } 92 cflags_cc = [] 93 if (os_dlp_part_enabled) { 94 cflags_cc += [ "-DWITH_DLP" ] 95 } 96} 97 98group("unittest") { 99 testonly = true 100 deps = [ ":ability_manager_service_first_test" ] 101} 102