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("../../../../common/config/common.gni") 16 17module_output_path = "enterprise_device_management/enterprise_device_management" 18 19config("module_private_config") { 20 visibility = [ ":*" ] 21 include_dirs = [ "../" ] 22} 23 24config("edm_config") { 25 visibility = [ ":*" ] 26 include_dirs = [ 27 "../../../../services/edm/include", 28 "../../../../services/edm/include/connection", 29 "../../../../services/edm/include/database", 30 "../../../../services/edm/include/strategy", 31 "../../../../services/edm_plugin/include", 32 "../../../../services/edm_plugin/include/utils", 33 "../../../../framework/extension/include", 34 ] 35} 36 37ohos_static_library("edmservice_static") { 38 testonly = true 39 sources = [ 40 "../../../../services/edm/src/admin.cpp", 41 "../../../../services/edm/src/admin_manager.cpp", 42 "../../../../services/edm/src/admin_policies_storage_rdb.cpp", 43 "../../../../services/edm/src/application_state_observer.cpp", 44 "../../../../services/edm/src/connection/enterprise_admin_connection.cpp", 45 "../../../../services/edm/src/connection/enterprise_admin_proxy.cpp", 46 "../../../../services/edm/src/connection/enterprise_bundle_connection.cpp", 47 "../../../../services/edm/src/connection/enterprise_conn_manager.cpp", 48 "../../../../services/edm/src/connection/enterprise_update_connection.cpp", 49 "../../../../services/edm/src/database/edm_rdb_data_manager.cpp", 50 "../../../../services/edm/src/database/edm_rdb_open_callback.cpp", 51 "../../../../services/edm/src/device_policies_storage_rdb.cpp", 52 "../../../../services/edm/src/enterprise_device_mgr_ability.cpp", 53 "../../../../services/edm/src/enterprise_device_mgr_stub.cpp", 54 "../../../../services/edm/src/permission_manager.cpp", 55 "../../../../services/edm/src/plugin_manager.cpp", 56 "../../../../services/edm/src/policy_manager.cpp", 57 "../../../../services/edm/src/strategy/enhance_execute_strategy.cpp", 58 "../../../../services/edm/src/strategy/replace_execute_strategy.cpp", 59 "../../../../services/edm/src/strategy/single_execute_strategy.cpp", 60 "../../../../services/edm/src/super_admin.cpp", 61 "../../../../services/edm/src/user_policy_manager.cpp", 62 "../../../../services/edm_plugin/src/utils/clipboard_policy_serializer.cpp", 63 "../../../../services/edm_plugin/src/utils/clipboard_utils.cpp", 64 "../../../../services/edm_plugin/src/utils/fingerprint_policy_serializer.cpp", 65 "../../../../services/edm_plugin/src/utils/password_policy_serializer.cpp", 66 ] 67 68 public_configs = [ 69 ":edm_config", 70 "../../../../common/config:coverage_flags", 71 ] 72 73 defines = [] 74 75 if (target_cpu == "arm64") { 76 defines += [ "_ARM64_" ] 77 print("defines _ARM64_") 78 } 79 80 if (target_cpu == "x86_64") { 81 defines += [ "_X86_64_" ] 82 print("defines _X86_64_") 83 } 84 85 if (common_event_service_edm_enable) { 86 defines += [ "COMMON_EVENT_SERVICE_EDM_ENABLE" ] 87 } 88 89 external_deps = [ 90 "ability_base:want", 91 "ability_runtime:app_manager", 92 "ability_runtime:extension_manager", 93 "access_token:libaccesstoken_sdk", 94 "access_token:libtokenid_sdk", 95 "bundle_framework:appexecfwk_base", 96 "cJSON:cjson", 97 "c_utils:utils", 98 "common_event_service:cesfwk_innerkits", 99 "hilog:libhilog", 100 "init:libbegetutil", 101 "ipc:ipc_core", 102 "jsoncpp:jsoncpp", 103 "pasteboard:pasteboard_client", 104 "relational_store:native_rdb", 105 "safwk:system_ability_fwk", 106 "window_manager:sms", 107 ] 108 109 if (os_account_edm_enable) { 110 external_deps += [ 111 "os_account:libaccountkits", 112 "os_account:os_account_innerkits", 113 ] 114 } 115 116 deps = [ 117 "../../../../common/external:edm_external_adapters", 118 "../../../../common/native:edm_commom", 119 "../../../../interfaces/inner_api:edmservice_kits", 120 "../../../../interfaces/inner_api/plugin_kits:plugin_kits", 121 ] 122 123 sanitize = { 124 boundary_sanitize = true 125 cfi = true 126 cfi_cross_dso = true 127 debug = false 128 integer_overflow = true 129 ubsan = true 130 } 131 branch_protector_ret = "pac_ret" 132 subsystem_name = "customization" 133 part_name = "enterprise_device_management" 134} 135 136ohos_unittest("EdmServicesUnitTest") { 137 module_out_path = module_output_path 138 139 include_dirs = [ 140 "./include", 141 "./include/mock", 142 "../../common/mock/include", 143 "../../external_mock/include", 144 "../../../../interfaces/inner_api/plugin_kits/include/utils", 145 ] 146 147 sources = [ 148 "./src/admin_manager_test.cpp", 149 "./src/admin_test.cpp", 150 "./src/device_policies_storage_rdb_test.cpp", 151 "./src/enhance_execute_strategy_test.cpp", 152 "./src/enterprise_admin_connection_test.cpp", 153 "./src/enterprise_bundle_connection_test.cpp", 154 "./src/enterprise_conn_manager_test.cpp", 155 "./src/enterprise_device_mgr_ability_test.cpp", 156 "./src/enterprise_update_connection_test.cpp", 157 "./src/iplugin_template_test.cpp", 158 "./src/permission_manager_test.cpp", 159 "./src/plugin_manager_test.cpp", 160 "./src/policy_manager_test.cpp", 161 "./src/replace_execute_strategy_test.cpp", 162 "./src/single_execute_strategy_test.cpp", 163 "./src/user_policy_manager_test.cpp", 164 ] 165 166 defines = [] 167 if (common_event_service_edm_enable) { 168 defines += [ "COMMON_EVENT_SERVICE_EDM_ENABLE" ] 169 } 170 171 configs = [ 172 ":module_private_config", 173 "../../../../common/config:coverage_flags", 174 ] 175 176 deps = [ 177 ":edmservice_static", 178 "../../../../common/external:edm_external_adapters", 179 "../../../../common/native:edm_commom", 180 "../../../../interfaces/inner_api:edmservice_kits", 181 "../../../../interfaces/inner_api/plugin_kits:plugin_kits", 182 "../../utils:edm_unittest_utils", 183 "//third_party/googletest:gmock_main", 184 ] 185 186 external_deps = [ 187 "ability_base:want", 188 "ability_runtime:ability_manager", 189 "access_token:libaccesstoken_sdk", 190 "access_token:libnativetoken", 191 "access_token:libtoken_setproc", 192 "bundle_framework:appexecfwk_core", 193 "cJSON:cjson", 194 "c_utils:utils", 195 "common_event_service:cesfwk_innerkits", 196 "hilog:libhilog", 197 "ipc:ipc_core", 198 "jsoncpp:jsoncpp", 199 "safwk:system_ability_fwk", 200 "samgr:samgr_proxy", 201 "window_manager:sms", 202 ] 203 204 if (os_account_edm_enable) { 205 external_deps += [ 206 "os_account:libaccountkits", 207 "os_account:os_account_innerkits", 208 ] 209 defines += [ "OS_ACCOUNT_EDM_ENABLE" ] 210 } 211 212 sanitize = { 213 boundary_sanitize = true 214 cfi = true 215 cfi_cross_dso = true 216 debug = false 217 integer_overflow = true 218 ubsan = true 219 blocklist = "../../cfi_blocklist.txt" 220 } 221 branch_protector_ret = "pac_ret" 222 subsystem_name = "customization" 223 part_name = "enterprise_device_management" 224} 225 226group("unittest") { 227 testonly = true 228 229 deps = [ 230 # deps file 231 ":EdmServicesUnitTest", 232 ] 233} 234