• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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/ohos.gni")
15import("//build/test.gni")
16import("../../../user_auth_framework.gni")
17
18ohos_unittest("iam_services_test") {
19  sanitize = {
20    integer_overflow = true
21    ubsan = true
22    boundary_sanitize = true
23    cfi = true
24    cfi_cross_dso = true
25    debug = false
26    blocklist = "../../../cfi_blocklist.txt"
27  }
28  branch_protector_ret = "pac_ret"
29
30  cflags = [
31    "-DIAM_TEST_ENABLE",
32    "-Dprivate=public",
33    "-Dprotected=public",
34  ]
35  include_dirs = [
36    "inc",
37    "mocks",
38    "../../../services/base/inc",
39    "../../../services/core/inc",
40    "../../../services/core/src",
41    "../../../services/context/inc",
42    "../../../services/context/src",
43    "../../../services/ipc/inc",
44    "../../../services/load_mode/inc",
45    "../../../services/remote_connect/inc",
46    "../../../frameworks/common/inc",
47    "../../../frameworks/native/ipc/inc",
48    "../../../frameworks/native/ipc/common_defines",
49    "../inner_api/mocks",
50  ]
51
52  sources = [
53    "../../../services/base/src/finite_state_machine_builder.cpp",
54    "../../../services/base/src/finite_state_machine_impl.cpp",
55    "../../../services/base/src/relative_timer.cpp",
56    "../../../services/base/src/system_ability_listener.cpp",
57    "../../../services/base/src/thread_handler_impl.cpp",
58    "../../../services/base/src/thread_handler_manager.cpp",
59    "../../../services/base/src/thread_handler_singleton_impl.cpp",
60    "../../../services/context/src/auth_widget_helper.cpp",
61    "../../../services/context/src/base_context.cpp",
62    "../../../services/context/src/context_appstate_observer.cpp",
63    "../../../services/context/src/context_callback_impl.cpp",
64    "../../../services/context/src/context_death_recipient.cpp",
65    "../../../services/context/src/context_factory.cpp",
66    "../../../services/context/src/context_helper.cpp",
67    "../../../services/context/src/context_pool_impl.cpp",
68    "../../../services/context/src/delete_context.cpp",
69    "../../../services/context/src/enroll_context.cpp",
70    "../../../services/context/src/identify_context.cpp",
71    "../../../services/context/src/local_remote_auth_context.cpp",
72    "../../../services/context/src/remote_auth_context.cpp",
73    "../../../services/context/src/remote_auth_invoker_context.cpp",
74    "../../../services/context/src/remote_auth_service.cpp",
75    "../../../services/context/src/remote_executor_stub.cpp",
76    "../../../services/context/src/remote_iam_callback.cpp",
77    "../../../services/context/src/schedule_holder_context.cpp",
78    "../../../services/context/src/simple_auth_context.cpp",
79    "../../../services/context/src/trace.cpp",
80    "../../../services/context/src/ui_extension_ability_connection.cpp",
81    "../../../services/context/src/widget_client.cpp",
82    "../../../services/context/src/widget_context.cpp",
83    "../../../services/context/src/widget_context_callback_impl.cpp",
84    "../../../services/context/src/widget_json.cpp",
85    "../../../services/core/src/authentication_impl.cpp",
86    "../../../services/core/src/credential_info_impl.cpp",
87    "../../../services/core/src/delete_impl.cpp",
88    "../../../services/core/src/driver_state_manager.cpp",
89    "../../../services/core/src/enrolled_info_impl.cpp",
90    "../../../services/core/src/enrollment_impl.cpp",
91    "../../../services/core/src/event_listener_manager.cpp",
92    "../../../services/core/src/identification_impl.cpp",
93    "../../../services/core/src/os_accounts_manager_impl.cpp",
94    "../../../services/core/src/publish_event_adapter_mock.cpp",
95    "../../../services/core/src/remote_executor_proxy.cpp",
96    "../../../services/core/src/remote_msg_util.cpp",
97    "../../../services/core/src/resource_node_impl.cpp",
98    "../../../services/core/src/resource_node_pool_impl.cpp",
99    "../../../services/core/src/resource_node_utils.cpp",
100    "../../../services/core/src/risk_event_manager.cpp",
101    "../../../services/core/src/schedule_node_builder.cpp",
102    "../../../services/core/src/schedule_node_helper.cpp",
103    "../../../services/core/src/schedule_node_impl.cpp",
104    "../../../services/core/src/schedule_resource_node_listener.cpp",
105    "../../../services/core/src/screenlock_status_listener.cpp",
106    "../../../services/core/src/secure_user_info_impl.cpp",
107    "../../../services/core/src/system_param_manager.cpp",
108    "../../../services/core/src/update_pin_param_impl.cpp",
109    "../../../services/core/src/user_idm_database_impl.cpp",
110    "../../../services/core/src/user_info_impl.cpp",
111    "../../../services/core/src/widget_schedule_node_impl.cpp",
112    "../../../services/ipc/src/co_auth_service.cpp",
113    "../../../services/ipc/src/executor_messenger_service.cpp",
114    "../../../services/ipc/src/hdi_message_callback_service.cpp",
115    "../../../services/ipc/src/service_init_manager.cpp",
116    "../../../services/ipc/src/template_cache_manager.cpp",
117    "../../../services/ipc/src/user_auth_service.cpp",
118    "../../../services/ipc/src/user_idm_service.cpp",
119    "../../../services/load_mode/src/load_mode_handler.cpp",
120    "../../../services/load_mode/src/load_mode_handler_default.cpp",
121    "../../../services/remote_connect/src/device_manager_util.cpp",
122    "../../../services/remote_connect/src/remote_connect_listener.cpp",
123    "../../../services/remote_connect/src/remote_connect_listener_manager.cpp",
124    "../../../services/remote_connect/src/remote_connect_manager.cpp",
125    "../../../services/remote_connect/src/socket_factory.cpp",
126    "../../../services/remote_connect/src/soft_bus_base_socket.cpp",
127    "../../../services/remote_connect/src/soft_bus_client_socket.cpp",
128    "../../../services/remote_connect/src/soft_bus_manager.cpp",
129    "../../../services/remote_connect/src/soft_bus_message.cpp",
130    "../../../services/remote_connect/src/soft_bus_server_socket.cpp",
131    "../../../services/remote_connect/src/soft_bus_socket_listener.cpp",
132    "mocks/mock_ipc_common.cpp",
133    "mocks/mock_iuser_auth_interface.cpp",
134    "mocks/mock_socket.cpp",
135    "src/attributes_test.cpp",
136    "src/auth_widget_helper_test.cpp",
137    "src/authentication_impl_test.cpp",
138    "src/co_auth_service_test.cpp",
139    "src/context_appstate_observer_test.cpp",
140    "src/context_callback_impl_test.cpp",
141    "src/context_factory_test.cpp",
142    "src/context_pool_test.cpp",
143    "src/credential_info_test.cpp",
144    "src/delete_context_test.cpp",
145    "src/delete_impl_test.cpp",
146    "src/driver_state_manager_test.cpp",
147    "src/enroll_context_test.cpp",
148    "src/enrolled_info_test.cpp",
149    "src/enrollment_impl_test.cpp",
150    "src/event_listener_manager_test.cpp",
151    "src/executor_messenger_service_test.cpp",
152    "src/hisysevent_adapter_test.cpp",
153    "src/identification_impl_test.cpp",
154    "src/identify_context_test.cpp",
155    "src/ipc_common_test.cpp",
156    "src/os_accounts_manager_test.cpp",
157    "src/relative_timer_test.cpp",
158    "src/remote_auth_context_test.cpp",
159    "src/remote_auth_invoker_context_test.cpp",
160    "src/resource_node_pool_test.cpp",
161    "src/resource_node_test.cpp",
162    "src/resource_node_utils_test.cpp",
163    "src/risk_event_manager_test.cpp",
164    "src/schedule_node_helper_test.cpp",
165    "src/schedule_node_test.cpp",
166    "src/screenlock_status_listener_test.cpp",
167    "src/secure_user_info_test.cpp",
168    "src/simple_auth_context_test.cpp",
169    "src/soft_bus_base_socket_test.cpp",
170    "src/soft_bus_client_socket_test.cpp",
171    "src/soft_bus_manager_test.cpp",
172    "src/soft_bus_server_socket_test.cpp",
173    "src/state_machine_test.cpp",
174    "src/strong_auth_status_manager_test.cpp",
175    "src/system_ability_listener_test.cpp",
176    "src/system_param_manager_test.cpp",
177    "src/template_cache_manager_test.cpp",
178    "src/thread_handler_impl_test.cpp",
179    "src/thread_handler_manager_test.cpp",
180    "src/ui_extension_ability_connection_test.cpp",
181    "src/update_pin_param_test.cpp",
182    "src/user_auth_service_test_part01.cpp",
183    "src/user_auth_service_test_part02.cpp",
184    "src/user_idm_database_test.cpp",
185    "src/user_idm_service_test.cpp",
186    "src/user_info_test.cpp",
187    "src/widget_client_test.cpp",
188    "src/widget_context_callback_impl_test.cpp",
189    "src/widget_context_test.cpp",
190    "src/widget_json_test.cpp",
191    "src/widget_schedule_node_impl_test.cpp",
192  ]
193
194  deps = [
195    "../../../common:iam_utils",
196    "../../../frameworks/native/client:userauth_client",
197    "../../../frameworks/native/common:attributes",
198    "../../../frameworks/native/common:dfx",
199    "../../../frameworks/native/ipc:userauth_service_ipc",
200  ]
201
202  external_deps = [
203    "ability_base:base",
204    "ability_base:want",
205    "ability_base:zuri",
206    "ability_runtime:ability_context_native",
207    "ability_runtime:abilitykit_native",
208    "ability_runtime:app_manager",
209    "ability_runtime:extension_manager",
210    "access_token:libaccesstoken_sdk",
211    "access_token:libnativetoken",
212    "access_token:libtoken_setproc",
213    "access_token:libtokenid_sdk",
214    "c_utils:utils",
215    "device_manager:devicemanagersdk",
216    "drivers_interface_user_auth:libuser_auth_proxy_4.0",
217    "dsoftbus:softbus_client",
218    "googletest:gmock",
219    "hdf_core:libhdf_utils",
220    "hdf_core:libhdi",
221    "hilog:libhilog",
222    "hisysevent:libhisysevent",
223    "hitrace:hitrace_meter",
224    "init:libbeget_proxy",
225    "init:libbegetutil",
226    "ipc:ipc_single",
227    "napi:ace_napi",
228    "os_account:os_account_innerkits",
229    "safwk:system_ability_fwk",
230    "samgr:samgr_proxy",
231    "config_policy:configpolicy_util"
232  ]
233
234  defines = []
235  if (screenlock_client_enable) {
236    external_deps += [
237      "eventhandler:libeventhandler",
238      "ffrt:libffrt",
239      "preferences:native_preferences",
240      "screenlock_mgr:screenlock_client"
241    ]
242    sources += [
243      "../../../services/core/src/strong_auth_status_manager_impl.cpp",
244    ]
245  } else {
246    sources += [
247      "../../../services/core/src/strong_auth_status_manager_mock.cpp",
248    ]
249  }
250
251  configs = [
252    "../../../common:iam_log_config",
253    "../../../common:iam_utils_config",
254  ]
255
256  remove_configs = [ "//build/config/compiler:no_exceptions" ]
257
258  module_out_path = "user_auth_framework/user_auth_framework"
259
260  subsystem_name = "useriam"
261  part_name = "user_auth_framework"
262}
263