1# Copyright (c) 2022 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_service_path}/services"
18
19ohos_unittest("external_volume_info_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    blocklist = "${storage_service_path}/cfi_blocklist.txt"
27  }
28  module_out_path = "storage_service/storage_daemon"
29
30  defines = [ "STORAGE_LOG_TAG = \"StorageDaemon\"" ]
31
32  include_dirs = [
33    "$ROOT_DIR/storage_daemon/include",
34    "$ROOT_DIR/common/include",
35    "$ROOT_DIR/storage_manager/include",
36    "${storage_interface_path}/innerkits/storage_manager/native",
37  ]
38
39  sources = [
40    "$ROOT_DIR/storage_daemon/ipc/src/storage_manager_client.cpp",
41    "$ROOT_DIR/storage_daemon/volume/src/external_volume_info.cpp",
42    "$ROOT_DIR/storage_daemon/volume/src/process.cpp",
43    "$ROOT_DIR/storage_daemon/volume/src/volume_info.cpp",
44    "$ROOT_DIR/storage_daemon/volume/test/external_volume_info_test.cpp",
45  ]
46
47  deps = [
48    "${storage_daemon_path}:storage_common_utils",
49    "//third_party/googletest:gmock_main",
50    "//third_party/googletest:gtest_main",
51  ]
52
53  external_deps = [
54    "c_utils:utils",
55    "hilog:libhilog",
56    "init:libbegetutil",
57    "ipc:ipc_single",
58    "safwk:system_ability_fwk",
59    "samgr:samgr_proxy",
60  ]
61}
62
63ohos_unittest("process_test") {
64  branch_protector_ret = "pac_ret"
65  sanitize = {
66    integer_overflow = true
67    cfi = true
68    cfi_cross_dso = true
69    debug = false
70    blocklist = "${storage_service_path}/cfi_blocklist.txt"
71  }
72  module_out_path = "storage_service/storage_daemon"
73
74  defines = [ "STORAGE_LOG_TAG = \"StorageDaemon\"" ]
75
76  include_dirs = [
77    "$ROOT_DIR/storage_daemon/include",
78    "$ROOT_DIR/storage_daemon/include/volume",
79    "$ROOT_DIR/common/include",
80    "${storage_interface_path}/innerkits/storage_manager/native",
81  ]
82
83  sources = [
84    "$ROOT_DIR/storage_daemon/volume/src/external_volume_info.cpp",
85    "$ROOT_DIR/storage_daemon/volume/src/process.cpp",
86    "$ROOT_DIR/storage_daemon/volume/src/volume_info.cpp",
87    "$ROOT_DIR/storage_daemon/volume/test/process_test.cpp",
88  ]
89
90  deps = [
91    "${storage_daemon_path}:storage_common_utils",
92    "//third_party/googletest:gmock_main",
93    "//third_party/googletest:gtest_main",
94  ]
95
96  external_deps = [
97    "c_utils:utils",
98    "hilog:libhilog",
99    "init:libbegetutil",
100    "ipc:ipc_single",
101  ]
102}
103
104ohos_unittest("volume_info_test") {
105  branch_protector_ret = "pac_ret"
106  sanitize = {
107    integer_overflow = true
108    cfi = true
109    cfi_cross_dso = true
110    debug = false
111    blocklist = "${storage_service_path}/cfi_blocklist.txt"
112  }
113  module_out_path = "storage_service/storage_daemon"
114
115  defines = [ "STORAGE_LOG_TAG = \"StorageDaemon\"" ]
116
117  include_dirs = [
118    "$ROOT_DIR/storage_daemon/include",
119    "$ROOT_DIR/storage_daemon/utils/test/common",
120    "$ROOT_DIR/common/include",
121    "$ROOT_DIR/storage_manager/include",
122    "${storage_interface_path}/innerkits/storage_manager/native",
123  ]
124
125  sources = [
126    "$ROOT_DIR/storage_daemon/ipc/src/storage_manager_client.cpp",
127    "$ROOT_DIR/storage_daemon/utils/test/common/help_utils.cpp",
128    "$ROOT_DIR/storage_daemon/volume/src/volume_info.cpp",
129    "$ROOT_DIR/storage_daemon/volume/test/volume_info_test.cpp",
130  ]
131
132  deps = [
133    "${storage_daemon_path}:storage_common_utils",
134    "//third_party/googletest:gmock_main",
135    "//third_party/googletest:gtest_main",
136  ]
137
138  external_deps = [
139    "c_utils:utils",
140    "hilog:libhilog",
141    "init:libbegetutil",
142    "ipc:ipc_single",
143    "safwk:system_ability_fwk",
144    "samgr:samgr_proxy",
145  ]
146}
147
148ohos_unittest("volume_manager_test") {
149  branch_protector_ret = "pac_ret"
150  sanitize = {
151    integer_overflow = true
152    cfi = true
153    cfi_cross_dso = true
154    debug = false
155  }
156  module_out_path = "storage_service/storage_daemon"
157
158  defines = [ "STORAGE_LOG_TAG = \"StorageDaemon\"" ]
159
160  include_dirs = [
161    "$ROOT_DIR/storage_daemon/include",
162    "$ROOT_DIR/storage_daemon/include/volume",
163    "$ROOT_DIR/common/include",
164    "$ROOT_DIR/storage_manager/include",
165    "${storage_interface_path}/innerkits/storage_manager/native",
166  ]
167
168  sources = [
169    "$ROOT_DIR/storage_daemon/ipc/src/storage_manager_client.cpp",
170    "$ROOT_DIR/storage_daemon/volume/src/external_volume_info.cpp",
171    "$ROOT_DIR/storage_daemon/volume/src/process.cpp",
172    "$ROOT_DIR/storage_daemon/volume/src/volume_info.cpp",
173    "$ROOT_DIR/storage_daemon/volume/src/volume_manager.cpp",
174    "$ROOT_DIR/storage_daemon/volume/test/volume_manager_test.cpp",
175    "$ROOT_DIR/storage_manager/innerkits_impl/src/volume_core.cpp",
176  ]
177
178  deps = [
179    "${storage_daemon_path}:storage_common_utils",
180    "//third_party/googletest:gmock_main",
181    "//third_party/googletest:gtest_main",
182  ]
183
184  external_deps = [
185    "c_utils:utils",
186    "hilog:libhilog",
187    "init:libbegetutil",
188    "ipc:ipc_single",
189    "safwk:system_ability_fwk",
190    "samgr:samgr_proxy",
191  ]
192}
193
194group("storage_daemon_volume_test") {
195  testonly = true
196  deps = [
197    ":external_volume_info_test",
198    ":process_test",
199    ":volume_info_test",
200    ":volume_manager_test",
201  ]
202}
203