• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2022-2025 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/storage_service/storage_service_aafwk.gni")
16
17ROOT_DIR = "${storage_daemon_path}"
18
19ohos_unittest("storage_daemon_test") {
20  branch_protector_ret = "pac_ret"
21  sanitize = {
22    integer_overflow = true
23    cfi = true
24    cfi_cross_dso = true
25    debug = false
26  }
27  module_out_path = "storage_service/storage_service/storage_daemon"
28
29  defines = [
30    "STORAGE_LOG_TAG = \"StorageDaemon\"",
31    "LOG_DOMAIN = 0xD004301",
32    "private = public",
33  ]
34
35  if (storage_service_user_crypto_manager) {
36    defines += [ "USER_CRYPTO_MANAGER" ]
37  }
38
39  if (storage_service_external_storage_manager) {
40    defines += [ "EXTERNAL_STORAGE_MANAGER" ]
41  }
42
43  cflags_cc = [ "-Wno-unused-const-variable" ]
44
45  include_dirs = [
46    "$ROOT_DIR/include",
47    "$ROOT_DIR/include/crypto",
48    "$ROOT_DIR/utils",
49    "${storage_manager_path}/include",
50    "${storage_daemon_path}/include/utils",
51    "${storage_interface_path}/innerkits/storage_manager/native",
52    "${storage_service_common_path}/include",
53  ]
54
55  sources = [
56    "$ROOT_DIR/crypto/src/app_clone_key_manager.cpp",
57    "$ROOT_DIR/crypto/src/key_backup.cpp",
58    "$ROOT_DIR/crypto/test/key_manager_mock.cpp",
59    "$ROOT_DIR/crypto/test/key_manager_ext_mock.cpp",
60    "$ROOT_DIR/disk/src/disk_config.cpp",
61    "$ROOT_DIR/disk/src/disk_info.cpp",
62    "$ROOT_DIR/disk/src/disk_manager.cpp",
63    "$ROOT_DIR/ipc/src/storage_daemon.cpp",
64    "$ROOT_DIR/ipc/src/storage_daemon_provider.cpp",
65    "$ROOT_DIR/ipc/src/storage_manager_client.cpp",
66    "$ROOT_DIR/ipc/test/storage_daemon_test.cpp",
67    "$ROOT_DIR/quota/quota_manager.cpp",
68    "$ROOT_DIR/user/src/mount_manager.cpp",
69    "$ROOT_DIR/user/src/mount_manager_ext.cpp",
70    "$ROOT_DIR/user/src/user_manager.cpp",
71    "$ROOT_DIR/utils/string_utils.cpp",
72    "$ROOT_DIR/utils/test/common/help_utils.cpp",
73    "$ROOT_DIR/volume/src/external_volume_info.cpp",
74    "$ROOT_DIR/volume/src/process.cpp",
75    "$ROOT_DIR/volume/src/volume_info.cpp",
76    "$ROOT_DIR/volume/src/volume_manager.cpp",
77    "${storage_manager_path}/innerkits_impl/src/storage_file_raw_data.cpp",
78  ]
79
80  deps = [
81    "${storage_daemon_path}:storage_common_utils",
82    "${storage_daemon_path}:storage_daemon_ipc",
83    "${storage_interface_path}/innerkits/storage_manager/native:storage_manager_header",
84  ]
85
86  external_deps = [
87    "ability_base:base",
88    "ability_base:want",
89    "ability_base:zuri",
90    "access_token:libaccesstoken_sdk",
91    "app_file_service:fileshare_native",
92    "app_file_service:fileuri_native",
93    "app_file_service:sandbox_helper_native",
94    "bundle_framework:appexecfwk_core",
95    "c_utils:utils",
96    "dfs_service:cloud_daemon_kit_inner",
97    "eventhandler:libeventhandler",
98    "googletest:gmock_main",
99    "googletest:gtest_main",
100    "hicollie:libhicollie",
101    "hilog:libhilog",
102    "hisysevent:libhisysevent",
103    "hitrace:hitrace_meter",
104    "huks:libhukssdk",
105    "init:libbegetutil",
106    "ipc:ipc_single",
107    "ipc:libdbinder",
108    "safwk:system_ability_fwk",
109    "samgr:samgr_proxy",
110  ]
111
112  if (enable_user_auth_framework) {
113    defines += [ "USER_AUTH_FRAMEWORK" ]
114    external_deps += [ "user_auth_framework:userauth_client" ]
115  }
116
117  if (enable_huks_hdi) {
118    defines += [ "HUKS_IDL_ENVIRONMENT" ]
119    external_deps += [ "drivers_interface_huks:libhuks_proxy_1.1", ]
120  }
121
122  use_exceptions = true
123}
124
125ohos_unittest("storage_manager_clt_test") {
126  branch_protector_ret = "pac_ret"
127  sanitize = {
128    integer_overflow = true
129    cfi = true
130    cfi_cross_dso = true
131    debug = false
132    blocklist = "${storage_service_path}/cfi_blocklist.txt"
133  }
134  module_out_path = "storage_service/storage_service/storage_daemon"
135
136  sources = [
137    "${storage_daemon_path}/disk/src/disk_info.cpp",
138    "${storage_daemon_path}/ipc/src/storage_manager_client.cpp",
139    "${storage_daemon_path}/volume/src/external_volume_info.cpp",
140    "${storage_daemon_path}/volume/src/process.cpp",
141    "${storage_daemon_path}/volume/src/volume_info.cpp",
142    "${storage_manager_path}/innerkits_impl/src/disk.cpp",
143    "${storage_manager_path}/innerkits_impl/src/volume_core.cpp",
144    "${storage_manager_path}/innerkits_impl/src/volume_external.cpp",
145    "${storage_manager_path}/mock/storage_manager_proxy_mock.cpp",
146    "storage_manager_client_test.cpp",
147  ]
148
149  include_dirs = [
150    "${storage_daemon_path}/include",
151    "${storage_interface_path}/innerkits/storage_manager/native",
152    "${storage_manager_path}/include",
153    "${storage_service_common_path}/include",
154  ]
155
156  defines = [
157    "STORAGE_LOG_TAG = \"StorageDaemon\"",
158    "LOG_DOMAIN = 0xD004301",
159    "private = public",
160  ]
161
162  deps = [
163    "${storage_daemon_path}:storage_common_utils",
164    "${storage_interface_path}/innerkits/storage_manager/native:storage_manager_header",
165  ]
166
167  external_deps = [
168    "c_utils:utils",
169    "googletest:gmock_main",
170    "googletest:gtest_main",
171    "hilog:libhilog",
172    "init:libbegetutil",
173    "ipc:ipc_single",
174    "os_account:os_account_innerkits",
175    "safwk:system_ability_fwk",
176    "samgr:samgr_proxy",
177  ]
178}
179
180ohos_unittest("storage_daemon_provider_test") {
181  branch_protector_ret = "pac_ret"
182  sanitize = {
183    integer_overflow = true
184    cfi = true
185    cfi_cross_dso = true
186    debug = false
187    blocklist = "${storage_service_path}/cfi_blocklist.txt"
188  }
189  module_out_path = "storage_service/storage_service/storage_daemon"
190
191  defines = [
192    "STORAGE_LOG_TAG = \"StorageDaemon\"",
193    "LOG_DOMAIN = 0xD004301",
194  ]
195
196  if (storage_service_user_crypto_manager) {
197    defines += [ "USER_CRYPTO_MANAGER" ]
198  }
199
200  if (storage_service_external_storage_manager) {
201    defines += [ "EXTERNAL_STORAGE_MANAGER" ]
202  }
203
204  include_dirs = [
205    "${storage_daemon_path}/include",
206    "${storage_daemon_path}/utils",
207    "${storage_interface_path}/innerkits/storage_manager/native",
208    "${storage_daemon_path}/ipc/src",
209    "${storage_daemon_path}/ipc/test",
210    "${storage_daemon_path}/include/crypto",
211  ]
212
213  sources = [
214    "${storage_daemon_path}/crypto/test/key_manager_mock.cpp",
215    "${storage_daemon_path}/crypto/test/key_manager_ext_mock.cpp",
216    "${storage_daemon_path}/disk/src/disk_info.cpp",
217    "${storage_daemon_path}/disk/src/disk_manager.cpp",
218    "${storage_daemon_path}/ipc/src/storage_daemon.cpp",
219    "${storage_daemon_path}/ipc/src/storage_daemon_provider.cpp",
220    "${storage_daemon_path}/ipc/src/storage_manager_client.cpp",
221    "${storage_daemon_path}/ipc/test/storage_daemon_provider_test.cpp",
222    "${storage_daemon_path}/observer/appstate_observer.cpp",
223    "${storage_daemon_path}/quota/quota_manager.cpp",
224    "${storage_daemon_path}/user/src/mount_manager.cpp",
225    "${storage_daemon_path}/user/src/mount_manager_ext.cpp",
226    "${storage_daemon_path}/user/src/user_manager.cpp",
227    "${storage_daemon_path}/utils/test/common/help_utils.cpp",
228    "${storage_daemon_path}/volume/src/external_volume_info.cpp",
229    "${storage_daemon_path}/volume/src/volume_info.cpp",
230    "${storage_daemon_path}/volume/src/volume_manager.cpp",
231    "${storage_manager_path}/innerkits_impl/src/storage_file_raw_data.cpp",
232  ]
233
234  deps = [
235    "${storage_daemon_path}:storage_common_utils",
236    "${storage_daemon_path}:storage_daemon_ipc",
237    "${storage_daemon_path}/crypto:libsdcrypto",
238    "${storage_interface_path}/innerkits/storage_manager/native:storage_manager_header",
239    "${storage_daemon_path}/libfscrypt:libfscryptutils",
240  ]
241
242  external_deps = [
243    "ability_base:base",
244    "ability_base:want",
245    "ability_base:zuri",
246    "access_token:libaccesstoken_sdk",
247    "app_file_service:fileshare_native",
248    "app_file_service:fileuri_native",
249    "app_file_service:sandbox_helper_native",
250    "bundle_framework:appexecfwk_core",
251    "c_utils:utils",
252    "dfs_service:cloud_daemon_kit_inner",
253    "eventhandler:libeventhandler",
254    "googletest:gmock_main",
255    "googletest:gtest_main",
256    "hicollie:libhicollie",
257    "hilog:libhilog",
258    "hisysevent:libhisysevent",
259    "hitrace:hitrace_meter",
260    "huks:libhukssdk",
261    "init:libbegetutil",
262    "ipc:ipc_single",
263    "ipc:libdbinder",
264    "safwk:system_ability_fwk",
265    "samgr:samgr_proxy"
266  ]
267  cflags_cc = [ "--coverage" ]
268  ldflags = [ "--coverage" ]
269
270  if (storage_service_media_fuse) {
271    defines += [ "STORAGE_SERVICE_MEDIA_FUSE" ]
272    external_deps += [ "ability_runtime:app_manager" ]
273  }
274
275  if (enable_user_auth_framework) {
276    defines += [ "USER_AUTH_FRAMEWORK" ]
277    external_deps += [ "user_auth_framework:userauth_client" ]
278  }
279
280  use_exceptions = true
281}
282
283group("storage_daemon_ipc_test") {
284  testonly = true
285  deps = [
286    ":storage_daemon_provider_test",
287    ":storage_daemon_test",
288    ":storage_manager_clt_test",
289  ]
290}
291