1# Copyright (C) 2023-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/dfs_service/distributedfile.gni") 16 17ohos_unittest("fuse_manager_test") { 18 module_out_path = "filemanagement/dfs_service" 19 20 sources = [ 21 "${distributedfile_path}/services/cloudfiledaemon/src/fuse_manager/cloud_daemon_statistic.cpp", 22 "${distributedfile_path}/services/cloudfiledaemon/src/fuse_manager/fuse_manager.cpp", 23 "fuse_manager_test.cpp", 24 "mock/libfuse_mock.cpp", 25 "mock/system_function_mock.cpp", 26 ] 27 cloud_disk = [ 28 "${services_path}/cloudfiledaemon/src/cloud_disk/database_manager.cpp", 29 "${services_path}/cloudfiledaemon/src/cloud_disk/file_operations_base.cpp", 30 "${services_path}/cloudfiledaemon/src/cloud_disk/file_operations_cloud.cpp", 31 "${services_path}/cloudfiledaemon/src/cloud_disk/file_operations_local.cpp", 32 "${services_path}/cloudfiledaemon/src/cloud_disk/fuse_operations.cpp", 33 "${distributedfile_path}/services/cloudfiledaemon/src/cloud_disk/file_operations_helper.cpp", 34 "${services_path}/cloudfiledaemon/src/cloud_disk/account_status.cpp", 35 ] 36 37 sources += cloud_disk 38 39 include_dirs = [ 40 "../../../../../communication/ipc/interfaces/innerkits/ipc_core/include", 41 "${distributedfile_path}/services/cloudfiledaemon/include", 42 "${distributedfile_path}/services/cloudfiledaemon/include/fuse_manager", 43 "${services_path}/cloudfiledaemon/include/cloud_disk/", 44 "${distributedfile_path}/adapter/cloud_adapter_example/include", 45 "${clouddisk_database_path}/include", 46 "${media_library_path}/frameworks/innerkitsimpl/media_library_helper/include", 47 "${media_library_path}/interfaces/inner_api/media_library_helper/include", 48 "${media_library_path}/frameworks/utils/include", 49 "${distributedfile_path}/test/unittests/services_daemon/mock", 50 ] 51 52 deps = [ 53 "${clouddisk_database_path}:clouddisk_database", 54 "${innerkits_native_path}/cloud_daemon_kit_inner:cloud_daemon_kit_inner", 55 "${innerkits_native_path}/cloud_file_kit_inner:cloudfile_kit", 56 "${utils_path}:libdistributedfiledentry", 57 "${utils_path}:libdistributedfileutils", 58 "//third_party/googletest:gmock_main", 59 "//third_party/googletest:gtest_main", 60 ] 61 62 external_deps = [ 63 "ability_base:zuri", 64 "ability_runtime:dataobs_manager", 65 "bounds_checking_function:libsec_shared", 66 "c_utils:utils", 67 "ffrt:libffrt", 68 "hilog:libhilog", 69 "hisysevent:libhisysevent", 70 "hitrace:hitrace_meter", 71 "init:libbegetutil", 72 "ipc:ipc_single", 73 "libfuse:libfuse", 74 "relational_store:native_rdb", 75 ] 76 77 defines = [ 78 "private=public", 79 "LOG_DOMAIN=0xD004308", 80 "LOG_TAG=\"CloudFileDaemon\"", 81 "strdup=StrdupMock", 82 ] 83 84 if (cloudsync_service_hicollie_enable) { 85 external_deps += [ "hicollie:libhicollie" ] 86 defines += [ "HICOLLIE_ENABLE" ] 87 } 88 89 use_exceptions = true 90 part_name = "dfs_service" 91 subsystem_name = "filemanagement" 92} 93 94ohos_unittest("cloud_daemon_statistic_test") { 95 module_out_path = "filemanagement/dfs_service" 96 97 sources = [ 98 "${distributedfile_path}/services/cloudfiledaemon/src/fuse_manager/cloud_daemon_statistic.cpp", 99 "cloud_daemon_statistic_test.cpp", 100 ] 101 102 cloud_disk = [ 103 "${services_path}/cloudfiledaemon/src/cloud_disk/database_manager.cpp", 104 "${services_path}/cloudfiledaemon/src/cloud_disk/file_operations_base.cpp", 105 "${services_path}/cloudfiledaemon/src/cloud_disk/file_operations_cloud.cpp", 106 "${services_path}/cloudfiledaemon/src/cloud_disk/file_operations_local.cpp", 107 "${services_path}/cloudfiledaemon/src/cloud_disk/fuse_operations.cpp", 108 ] 109 110 sources += cloud_disk 111 112 include_dirs = [ 113 "../../../../../communication/ipc/interfaces/innerkits/ipc_core/include", 114 "${distributedfile_path}/services/cloudfiledaemon/include", 115 "${distributedfile_path}/services/cloudfiledaemon/include/fuse_manager", 116 "${services_path}/cloudfiledaemon/include/cloud_disk/", 117 "${distributedfile_path}/adapter/cloud_adapter_example/include", 118 "${clouddisk_database_path}/include", 119 "${media_library_path}/frameworks/innerkitsimpl/media_library_helper/include", 120 "${media_library_path}/interfaces/inner_api/media_library_helper/include", 121 "${media_library_path}/frameworks/utils/include", 122 ] 123 124 deps = [ 125 "${clouddisk_database_path}:clouddisk_database", 126 "${innerkits_native_path}/cloud_daemon_kit_inner:cloud_daemon_kit_inner", 127 "${innerkits_native_path}/cloud_file_kit_inner:cloudfile_kit", 128 "${utils_path}:libdistributedfiledentry", 129 "${utils_path}:libdistributedfileutils", 130 "//third_party/googletest:gmock_main", 131 "//third_party/googletest:gtest_main", 132 ] 133 134 external_deps = [ 135 "ability_base:zuri", 136 "ability_runtime:dataobs_manager", 137 "ffrt:libffrt", 138 "hilog:libhilog", 139 "hisysevent:libhisysevent", 140 "hitrace:hitrace_meter", 141 "init:libbegetutil", 142 "ipc:ipc_single", 143 "libfuse:libfuse", 144 "relational_store:native_rdb", 145 ] 146 147 defines = [ 148 "private=public", 149 "LOG_DOMAIN=0xD004308", 150 "LOG_TAG=\"CloudFileDaemon\"", 151 ] 152 153 if (cloudsync_service_hicollie_enable) { 154 external_deps += [ "hicollie:libhicollie" ] 155 defines += [ "HICOLLIE_ENABLE" ] 156 } 157 158 use_exceptions = true 159 part_name = "dfs_service" 160 subsystem_name = "filemanagement" 161} 162 163ohos_unittest("cloud_daemon_test") { 164 module_out_path = "filemanagement/dfs_service" 165 166 sources = [ 167 "${distributedfile_path}/services/cloudfiledaemon/src/fuse_manager/cloud_daemon_statistic.cpp", 168 "${distributedfile_path}/services/cloudfiledaemon/src/fuse_manager/fuse_manager.cpp", 169 "${distributedfile_path}/services/cloudfiledaemon/src/ipc/cloud_daemon.cpp", 170 "${distributedfile_path}/services/cloudfiledaemon/src/ipc/cloud_daemon_stub.cpp", 171 "cloud_daemon_test.cpp", 172 "mock/system_function_mock.cpp", 173 ] 174 175 cloud_disk = [ 176 "${services_path}/cloudfiledaemon/src/cloud_disk/database_manager.cpp", 177 "${services_path}/cloudfiledaemon/src/cloud_disk/file_operations_base.cpp", 178 "${services_path}/cloudfiledaemon/src/cloud_disk/file_operations_cloud.cpp", 179 "${services_path}/cloudfiledaemon/src/cloud_disk/file_operations_local.cpp", 180 "${services_path}/cloudfiledaemon/src/cloud_disk/fuse_operations.cpp", 181 "${distributedfile_path}/services/cloudfiledaemon/src/cloud_disk/file_operations_helper.cpp", 182 "${services_path}/cloudfiledaemon/src/cloud_disk/account_status.cpp", 183 "${services_path}/cloudfiledaemon/src/cloud_disk/account_status_listener.cpp", 184 ] 185 186 sources += cloud_disk 187 188 include_dirs = [ 189 "../../../../../communication/ipc/interfaces/innerkits/ipc_core/include", 190 "${distributedfile_path}/services/cloudfiledaemon/include", 191 "${services_path}/cloudfiledaemon/include/cloud_disk/", 192 "${distributedfile_path}/adapter/cloud_adapter_example/include", 193 "${clouddisk_database_path}/include", 194 "${media_library_path}/frameworks/innerkitsimpl/media_library_helper/include", 195 "${media_library_path}/interfaces/inner_api/media_library_helper/include", 196 "${media_library_path}/frameworks/utils/include", 197 "${distributedfile_path}/test/unittests/services_daemon/mock", 198 "${distributedfile_path}/services/cloudfiledaemon/include/fuse_manager", 199 "${distributedfile_path}/interfaces/inner_api/native", 200 "${distributedfile_path}/interfaces/inner_api/native/cloud_file_kit_inner/big_data_statistics", 201 "${utils_path}/cloud_disk/include", 202 "${utils_path}/dentry/include", 203 "${utils_path}/log/include", 204 "${utils_path}/system/include", 205 "${innerkits_native_path}/cloud_daemon_kit_inner", 206 "${innerkits_native_path}/cloud_file_kit_inner/big_data_statistics", 207 "${services_path}/cloudfiledaemon/include/fuse_manager/", 208 "${services_path}/cloudfiledaemon/include/ipc/", 209 "${services_path}/cloudsyncservice/include/data_sync/", 210 ] 211 212 deps = [ 213 "${clouddisk_database_path}:clouddisk_database", 214 "${innerkits_native_path}/cloud_daemon_kit_inner:cloud_daemon_kit_inner", 215 "${innerkits_native_path}/cloud_file_kit_inner:cloudfile_kit_core", 216 "${utils_path}:libdistributedfiledentry", 217 "${utils_path}:libdistributedfileutils", 218 "//third_party/googletest:gmock_main", 219 "//third_party/googletest:gtest_main", 220 ] 221 222 external_deps = [ 223 "ability_base:zuri", 224 "ability_runtime:dataobs_manager", 225 "c_utils:utils", 226 "common_event_service:cesfwk_innerkits", 227 "ffrt:libffrt", 228 "hilog:libhilog", 229 "hisysevent:libhisysevent", 230 "hitrace:hitrace_meter", 231 "init:libbegetutil", 232 "ipc:ipc_single", 233 "libfuse:libfuse", 234 "relational_store:native_rdb", 235 "safwk:system_ability_fwk", 236 "samgr:samgr_proxy", 237 ] 238 239 defines = [ 240 "private=public", 241 "LOG_DOMAIN=0xD004308", 242 "LOG_TAG=\"CloudFileDaemon\"", 243 "access=AccessMock", 244 ] 245 246 if (cloudsync_service_hicollie_enable) { 247 external_deps += [ "hicollie:libhicollie" ] 248 defines += [ "HICOLLIE_ENABLE" ] 249 } 250 251 use_exceptions = true 252 part_name = "dfs_service" 253 subsystem_name = "filemanagement" 254} 255 256ohos_unittest("cloud_daemon_stub_test") { 257 module_out_path = "filemanagement/dfs_service" 258 259 sources = [ 260 "${distributedfile_path}/services/cloudfiledaemon/src/ipc/cloud_daemon_stub.cpp", 261 "cloud_daemon_stub_test.cpp", 262 ] 263 264 include_dirs = [ 265 "${distributedfile_path}/services/cloudfiledaemon/include", 266 "${services_path}/cloudsyncservice/include/data_sync/", 267 "${distributedfile_path}/adapter/cloud_adapter_example/include", 268 ] 269 270 deps = [ 271 "${innerkits_native_path}/cloud_daemon_kit_inner:cloud_daemon_kit_inner", 272 "${utils_path}:libdistributedfiledentry", 273 "${utils_path}:libdistributedfileutils", 274 "//third_party/googletest:gmock_main", 275 "//third_party/googletest:gtest_main", 276 ] 277 278 external_deps = [ 279 "c_utils:utils", 280 "hilog:libhilog", 281 "ipc:ipc_single", 282 "libfuse:libfuse", 283 "safwk:system_ability_fwk", 284 "samgr:samgr_proxy", 285 ] 286 287 defines = [ 288 "private=public", 289 "LOG_DOMAIN=0xD004308", 290 "LOG_TAG=\"CloudFileDaemon\"", 291 ] 292 293 use_exceptions = true 294 part_name = "dfs_service" 295 subsystem_name = "filemanagement" 296} 297 298group("services_daemon_test") { 299 testonly = true 300 301 deps = [ 302 ":cloud_daemon_statistic_test", 303 ":cloud_daemon_stub_test", 304 ":cloud_daemon_test", 305 ":fuse_manager_test", 306 ] 307} 308