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.
13import("//build/ohos.gni")
14import("//build/test.gni")
15
16ohos_unittest("iam_executors_test") {
17  sanitize = {
18    integer_overflow = true
19    ubsan = true
20    boundary_sanitize = true
21    cfi = true
22    cfi_cross_dso = true
23    debug = false
24    blocklist = "../../../cfi_blocklist.txt"
25  }
26  branch_protector_ret = "pac_ret"
27  include_dirs = [
28    "mock",
29    "../../../frameworks/native/executors/include",
30    "../../../interfaces/inner_api/iam_executor",
31    "../../../frameworks/native/executors/include/async_command",
32    "../../../frameworks/native/executors/include/framework",
33    "../../../frameworks/native/executors/include/listener",
34    "../../../common/utils",
35    "../../../common/logs",
36  ]
37
38  sources = [
39    "../../../frameworks/native/executors/src/async_command/async_command_base.cpp",
40    "../../../frameworks/native/executors/src/async_command/auth_command.cpp",
41    "../../../frameworks/native/executors/src/async_command/collect_command.cpp",
42    "../../../frameworks/native/executors/src/async_command/custom_command.cpp",
43    "../../../frameworks/native/executors/src/async_command/enroll_command.cpp",
44    "../../../frameworks/native/executors/src/async_command/identify_command.cpp",
45    "../../../frameworks/native/executors/src/driver.cpp",
46    "../../../frameworks/native/executors/src/driver_manager.cpp",
47    "../../../frameworks/native/executors/src/executor.cpp",
48    "../../../frameworks/native/executors/src/framework/executor_mgr_wrapper.cpp",
49    "../../../frameworks/native/executors/src/framework/framework_executor_callback.cpp",
50    "../../../frameworks/native/executors/src/iauth_executor_hdi.cpp",
51    "../../../frameworks/native/executors/src/idriver_manager.cpp",
52    "../../../frameworks/native/executors/src/listener/auth_executor_mgr_status_listener.cpp",
53    "../../../frameworks/native/executors/src/listener/driver_manager_status_listener.cpp",
54    "auth_command_unit_test.cpp",
55    "driver_manager_unit_test.cpp",
56    "enroll_command_unit_test.cpp",
57    "executor_unit_test.cpp",
58    "iauth_executor_hdi_test.cpp",
59    "identify_command_unit_test.cpp",
60  ]
61
62  remove_configs = [ "//build/config/compiler:no_exceptions" ]
63
64  deps = [
65    "../../../common:iam_utils",
66    "../../../frameworks/native/client:userauth_client",
67    "../../../frameworks/native/common:attributes",
68    "../../../frameworks/native/common:dfx",
69    "//third_party/googletest:gmock_main",
70  ]
71
72  external_deps = [
73    "c_utils:utils",
74    "hdf_core:libhdf_host",
75    "hdf_core:libhdf_ipc_adapter",
76    "hdf_core:libhdf_utils",
77    "hdf_core:libhdi",
78    "hilog:libhilog",
79    "init:libbeget_proxy",
80    "ipc:ipc_single",
81    "samgr:samgr_proxy",
82  ]
83
84  configs = [
85    "../../../common:iam_log_config",
86    "../../../common:iam_utils_config",
87  ]
88
89  module_out_path = "useriam/user_auth_framework"
90
91  subsystem_name = "useriam"
92  part_name = "user_auth_framework"
93}
94