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