1# Copyright (c) 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("//foundation/filemanagement/storage_service/storage_service_aafwk.gni") 16 17ROOT_DIR = "${storage_service_path}/services" 18 19ohos_unittest("mtpfs_fuse_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_daemon" 28 29 defines = [ 30 "STORAGE_LOG_TAG = \"StorageDaemon\"", 31 "private = public", 32 ] 33 34 include_dirs = [ 35 "${storage_daemon_path}/mtpfs/include", 36 "${storage_daemon_path}/include/utils", 37 "${storage_service_common_path}/include", 38 ] 39 40 cflags = [ 41 "-w", 42 "-DFUSE_USE_VERSION=31", 43 "-D_FILE_OFFSET_BITS=64", 44 "-std=c++11", 45 ] 46 47 deps = [ "${storage_daemon_path}:storage_common_utils" ] 48 49 external_deps = [ 50 "c_utils:utils", 51 "googletest:gtest_main", 52 "hilog:libhilog", 53 ] 54 55 if (support_open_source_libmtp && 56 storage_service_external_storage_qos_trans) { 57 sources = [ 58 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_fuse.cpp", 59 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_libmtp.cpp", 60 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_mtp_device.cpp", 61 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_tmp_files_pool.cpp", 62 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_dir.cpp", 63 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_file.cpp", 64 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_tmp_file.cpp", 65 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_util.cpp", 66 "$ROOT_DIR/storage_daemon/mtpfs/test/mtpfs_fuse_test.cpp", 67 ] 68 external_deps += [ 69 "libfuse:libfuse", 70 "libmtp:libmtp", 71 "libusb:libusb", 72 "openssl:libcrypto_shared", 73 ] 74 } else { 75 sources = [ "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_main_virtual.cpp" ] 76 } 77 78 subsystem_name = "filemanagement" 79 part_name = "storage_service" 80 install_enable = true 81} 82 83ohos_unittest("mtpfs_libmtp_test") { 84 branch_protector_ret = "pac_ret" 85 sanitize = { 86 integer_overflow = true 87 cfi = true 88 cfi_cross_dso = true 89 debug = false 90 } 91 module_out_path = "storage_service/storage_daemon" 92 93 defines = [ 94 "STORAGE_LOG_TAG = \"StorageDaemon\"", 95 "private = public", 96 ] 97 98 include_dirs = [ 99 "${storage_daemon_path}/mtpfs/include", 100 "${storage_daemon_path}/include/utils", 101 "${storage_service_common_path}/include", 102 ] 103 104 cflags = [ 105 "-w", 106 "-DFUSE_USE_VERSION=31", 107 "-D_FILE_OFFSET_BITS=64", 108 "-std=c++11", 109 ] 110 111 deps = [ "${storage_daemon_path}:storage_common_utils" ] 112 113 external_deps = [ 114 "c_utils:utils", 115 "googletest:gtest_main", 116 "hilog:libhilog", 117 ] 118 119 if (support_open_source_libmtp && 120 storage_service_external_storage_qos_trans) { 121 sources = [ 122 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_fuse.cpp", 123 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_libmtp.cpp", 124 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_mtp_device.cpp", 125 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_tmp_files_pool.cpp", 126 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_dir.cpp", 127 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_file.cpp", 128 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_tmp_file.cpp", 129 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_util.cpp", 130 "$ROOT_DIR/storage_daemon/mtpfs/test/mtpfs_libmtp_test.cpp", 131 ] 132 external_deps += [ 133 "libfuse:libfuse", 134 "libmtp:libmtp", 135 "libusb:libusb", 136 "openssl:libcrypto_shared", 137 ] 138 } else { 139 sources = [ "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_main_virtual.cpp" ] 140 } 141 142 subsystem_name = "filemanagement" 143 part_name = "storage_service" 144 install_enable = true 145} 146 147ohos_unittest("mtpfs_mtp_device_test") { 148 branch_protector_ret = "pac_ret" 149 sanitize = { 150 integer_overflow = true 151 cfi = true 152 cfi_cross_dso = true 153 debug = false 154 } 155 module_out_path = "storage_service/storage_daemon" 156 157 defines = [ 158 "STORAGE_LOG_TAG = \"StorageDaemon\"", 159 "private = public", 160 ] 161 162 include_dirs = [ 163 "${storage_daemon_path}/mtpfs/include", 164 "${storage_daemon_path}/include/utils", 165 "${storage_service_common_path}/include", 166 ] 167 168 cflags = [ 169 "-w", 170 "-DFUSE_USE_VERSION=31", 171 "-D_FILE_OFFSET_BITS=64", 172 "-std=c++11", 173 ] 174 175 deps = [ "${storage_daemon_path}:storage_common_utils" ] 176 177 external_deps = [ 178 "c_utils:utils", 179 "googletest:gtest_main", 180 "hilog:libhilog", 181 ] 182 183 if (support_open_source_libmtp && 184 storage_service_external_storage_qos_trans) { 185 sources = [ 186 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_fuse.cpp", 187 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_libmtp.cpp", 188 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_mtp_device.cpp", 189 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_tmp_files_pool.cpp", 190 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_dir.cpp", 191 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_file.cpp", 192 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_tmp_file.cpp", 193 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_util.cpp", 194 "$ROOT_DIR/storage_daemon/mtpfs/test/mtpfs_mtp_device_test.cpp", 195 ] 196 external_deps += [ 197 "libfuse:libfuse", 198 "libmtp:libmtp", 199 "libusb:libusb", 200 "openssl:libcrypto_shared", 201 ] 202 } else { 203 sources = [ "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_main_virtual.cpp" ] 204 } 205 206 subsystem_name = "filemanagement" 207 part_name = "storage_service" 208 install_enable = true 209} 210 211ohos_unittest("mtpfs_tmp_files_pool_test") { 212 branch_protector_ret = "pac_ret" 213 sanitize = { 214 integer_overflow = true 215 cfi = true 216 cfi_cross_dso = true 217 debug = false 218 } 219 module_out_path = "storage_service/storage_daemon" 220 221 defines = [ 222 "STORAGE_LOG_TAG = \"StorageDaemon\"", 223 "private = public", 224 ] 225 226 include_dirs = [ 227 "${storage_daemon_path}/mtpfs/include", 228 "${storage_daemon_path}/include/utils", 229 "${storage_service_common_path}/include", 230 ] 231 232 cflags = [ 233 "-w", 234 "-DFUSE_USE_VERSION=31", 235 "-D_FILE_OFFSET_BITS=64", 236 "-std=c++11", 237 ] 238 239 deps = [ "${storage_daemon_path}:storage_common_utils" ] 240 241 external_deps = [ 242 "c_utils:utils", 243 "googletest:gtest_main", 244 "hilog:libhilog", 245 ] 246 247 if (support_open_source_libmtp && 248 storage_service_external_storage_qos_trans) { 249 sources = [ 250 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_fuse.cpp", 251 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_libmtp.cpp", 252 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_mtp_device.cpp", 253 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_tmp_files_pool.cpp", 254 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_dir.cpp", 255 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_file.cpp", 256 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_type_tmp_file.cpp", 257 "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_util.cpp", 258 "$ROOT_DIR/storage_daemon/mtpfs/test/mtpfs_tmp_files_pool_test.cpp", 259 ] 260 external_deps += [ 261 "libfuse:libfuse", 262 "libmtp:libmtp", 263 "libusb:libusb", 264 "openssl:libcrypto_shared", 265 ] 266 } else { 267 sources = [ "$ROOT_DIR/storage_daemon/mtpfs/src/mtpfs_main_virtual.cpp" ] 268 } 269 270 subsystem_name = "filemanagement" 271 part_name = "storage_service" 272 install_enable = true 273} 274 275group("storage_daemon_mtpfs_test") { 276 testonly = true 277 deps = [ 278 ":mtpfs_fuse_test", 279 ":mtpfs_libmtp_test", 280 ":mtpfs_mtp_device_test", 281 ":mtpfs_tmp_files_pool_test", 282 ] 283} 284