1# Copyright (c) 2021 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. 13import("//build/test.gni") 14import("//foundation/distributeddatamgr/kv_store/kv_store.gni") 15 16module_output_path = "kv_store/distributeddatafwk" 17 18############################################################################### 19config("module_private_config") { 20 visibility = [ ":*" ] 21 22 include_dirs = [ 23 "../include/", 24 "../src/", 25 "../../distributeddatasvc/include/", 26 "../../kvdb/include/", 27 "../../kvdb/src/", 28 "../../../common/", 29 "../../../../interfaces/innerkits/distributeddata/include/", 30 "../../../../interfaces/innerkits/distributeddatamgr/include/", 31 32 # for ipc_core interfaces. 33 "//commonlibrary/c_utils/base/include", 34 "//foundation/distributeddatamgr/kv_store/interfaces/innerkits/distributeddata/include", 35 "//foundation/distributedhardware/device_manager/interfaces/inner_kits/native_cpp/include", 36 "//base/hiviewdfx/hitrace/interfaces/native/innerkits/include", 37 ] 38} 39 40############################################################################### 41ohos_source_set("distributeddatafwk_src_file") { 42 testonly = true 43 44 old_sources = [ 45 "../../distributeddatasvc/src/datamgr_service_proxy.cpp", 46 "../../distributeddatasvc/src/distributed_data_mgr.cpp", 47 "../../distributeddatasvc/src/kvstore_data_service_mgr.cpp", 48 "../src/blob.cpp", 49 "../src/change_notification.cpp", 50 "../src/data_query.cpp", 51 "../src/distributed_kv_data_manager.cpp", 52 "../src/ikvstore_client_death_observer.cpp", 53 "../src/ikvstore_observer.cpp", 54 "../src/kv_utils.cpp", 55 "../src/kvdb_notifier_client.cpp", 56 "../src/kvdb_notifier_stub.cpp", 57 "../src/kvstore_client_death_observer.cpp", 58 "../src/kvstore_datashare_bridge.cpp", 59 "../src/kvstore_observer_client.cpp", 60 "../src/kvstore_service_death_notifier.cpp", 61 "../src/sync_observer.cpp", 62 ] 63 64 kvdb_sources = [ 65 "../../kvdb/src/backup_manager.cpp", 66 "../../kvdb/src/convertor.cpp", 67 "../../kvdb/src/dev_manager.cpp", 68 "../../kvdb/src/device_convertor.cpp", 69 "../../kvdb/src/kv_types_util.cpp", 70 "../../kvdb/src/kvdb_service_client.cpp", 71 "../../kvdb/src/observer_bridge.cpp", 72 "../../kvdb/src/process_communication_impl.cpp", 73 "../../kvdb/src/process_system_api_adapter_impl.cpp", 74 "../../kvdb/src/security_manager.cpp", 75 "../../kvdb/src/single_store_impl.cpp", 76 "../../kvdb/src/store_factory.cpp", 77 "../../kvdb/src/store_manager.cpp", 78 "../../kvdb/src/store_result_set.cpp", 79 "../../kvdb/src/store_util.cpp", 80 "../../kvdb/src/system_api.cpp", 81 "../../kvdb/src/task_executor.cpp", 82 "../../kvdb/src/task_executor_adapter.cpp", 83 ] 84 85 sources = old_sources + kvdb_sources 86 if (qemu_disable) { 87 sources += [ "../../kvdb/src/auto_sync_timer.cpp" ] 88 } else { 89 sources += [ "../../kvdb/src/auto_sync_timer_mock.cpp" ] 90 } 91 configs = [ ":module_private_config" ] 92 93 deps = [ 94 "../../../../databaseutils:database_utils", 95 "../../../../interfaces/innerkits/distributeddatamgr:distributeddata_mgr", 96 "//foundation/distributeddatamgr/kv_store/frameworks/libs/distributeddb:distributeddb", 97 "//foundation/distributedhardware/device_manager/interfaces/inner_kits/native_cpp:devicemanagersdk", 98 ] 99 external_deps = [ 100 "access_token:libaccesstoken_sdk", 101 "access_token:libtokenid_sdk", 102 "c_utils:utils", 103 "file_api:securitylabel", 104 "hilog:libhilog", 105 "hisysevent:libhisysevent", 106 "hitrace:hitrace_meter", 107 "hitrace:libhitracechain", 108 "huks:libhukssdk", 109 "ipc:ipc_single", 110 "samgr:samgr_proxy", 111 ] 112 if (dms_service_enable && qemu_disable) { 113 external_deps += [ "dmsfwk:distributed_sdk" ] 114 } 115 116 public_external_deps = [ 117 "data_share:datashare_common", 118 "data_share:datashare_provider", 119 ] 120 121 part_name = "kv_store" 122} 123 124ohos_unittest("DistributedKvDataManagerTest") { 125 module_out_path = module_output_path 126 127 sources = [ 128 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 129 "unittest/distributed_kv_data_manager_test.cpp", 130 ] 131 132 configs = [ ":module_private_config" ] 133 134 external_deps = [ 135 "c_utils:utils", 136 "hilog:libhilog", 137 "ipc:ipc_single", 138 "samgr:samgr_proxy", 139 ] 140 141 deps = [ 142 ":distributeddatafwk_src_file", 143 "//third_party/googletest:gtest_main", 144 ] 145} 146 147ohos_unittest("DistributedKvDataManagerEncryptTest") { 148 module_out_path = module_output_path 149 150 sources = [ 151 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 152 "unittest/distributed_kv_data_manager_encrypt_test.cpp", 153 ] 154 155 configs = [ ":module_private_config" ] 156 157 external_deps = [ 158 "c_utils:utils", 159 "hilog:libhilog", 160 "ipc:ipc_single", 161 "samgr:samgr_proxy", 162 ] 163 164 deps = [ 165 ":distributeddatafwk_src_file", 166 "//third_party/googletest:gtest_main", 167 ] 168} 169 170ohos_unittest("LocalSubscribeStoreTest") { 171 module_out_path = module_output_path 172 173 sources = [ 174 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 175 "unittest/local_subscribe_store_test.cpp", 176 ] 177 178 configs = [ ":module_private_config" ] 179 180 external_deps = [ 181 "c_utils:utils", 182 "hilog:libhilog", 183 "ipc:ipc_single", 184 "samgr:samgr_proxy", 185 ] 186 187 deps = [ 188 ":distributeddatafwk_src_file", 189 "//third_party/googletest:gtest_main", 190 ] 191} 192 193ohos_unittest("LocalSubscribeDeviceStoreTest") { 194 module_out_path = module_output_path 195 196 sources = [ 197 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 198 "unittest/local_subscribe_device_store_test.cpp", 199 ] 200 201 configs = [ ":module_private_config" ] 202 203 external_deps = [ 204 "c_utils:utils", 205 "hilog:libhilog", 206 "ipc:ipc_single", 207 "samgr:samgr_proxy", 208 ] 209 210 deps = [ 211 ":distributeddatafwk_src_file", 212 "//third_party/googletest:gtest_main", 213 ] 214} 215 216ohos_unittest("SingleKvStoreClientQueryTest") { 217 module_out_path = module_output_path 218 219 sources = [ 220 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 221 "unittest/single_kvstore_client_query_test.cpp", 222 ] 223 224 configs = [ ":module_private_config" ] 225 226 external_deps = [ 227 "c_utils:utils", 228 "hilog:libhilog", 229 "ipc:ipc_single", 230 "samgr:samgr_proxy", 231 ] 232 233 deps = [ 234 ":distributeddatafwk_src_file", 235 "//third_party/googletest:gtest_main", 236 ] 237} 238 239ohos_unittest("SingleKvStoreClientTest") { 240 module_out_path = module_output_path 241 242 sources = [ 243 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 244 "unittest/single_kvstore_client_test.cpp", 245 ] 246 247 configs = [ ":module_private_config" ] 248 249 external_deps = [ 250 "c_utils:utils", 251 "hilog:libhilog", 252 "ipc:ipc_single", 253 "samgr:samgr_proxy", 254 ] 255 256 deps = [ 257 ":distributeddatafwk_src_file", 258 "//third_party/googletest:gtest_main", 259 ] 260} 261 262ohos_unittest("SingleKvStoreAsyncGetTest") { 263 module_out_path = module_output_path 264 265 sources = [ 266 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 267 "unittest/single_kvstore_async_get_test.cpp", 268 ] 269 270 configs = [ ":module_private_config" ] 271 272 external_deps = [ 273 "c_utils:utils", 274 "hilog:libhilog", 275 "ipc:ipc_single", 276 "samgr:samgr_proxy", 277 ] 278 279 deps = [ 280 ":distributeddatafwk_src_file", 281 "//third_party/googletest:gtest_main", 282 ] 283} 284 285ohos_unittest("DeviceKvStoreTest") { 286 module_out_path = module_output_path 287 288 sources = [ 289 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 290 "unittest/device_kvstore_test.cpp", 291 ] 292 293 configs = [ ":module_private_config" ] 294 295 external_deps = [ 296 "c_utils:utils", 297 "hilog:libhilog", 298 "ipc:ipc_single", 299 "samgr:samgr_proxy", 300 ] 301 302 deps = [ 303 ":distributeddatafwk_src_file", 304 "//third_party/googletest:gtest_main", 305 ] 306} 307 308ohos_unittest("BlobTest") { 309 module_out_path = module_output_path 310 311 sources = [ 312 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 313 "unittest/blob_test.cpp", 314 ] 315 316 configs = [ ":module_private_config" ] 317 318 deps = [ 319 ":distributeddatafwk_src_file", 320 "//third_party/googletest:gtest_main", 321 ] 322 323 external_deps = [ 324 "c_utils:utils", 325 "hilog:libhilog", 326 "ipc:ipc_single", 327 ] 328} 329 330ohos_unittest("TypesUtilTest") { 331 module_out_path = module_output_path 332 333 sources = [ 334 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 335 "unittest/types_util_test.cpp", 336 ] 337 338 configs = [ ":module_private_config" ] 339 340 deps = [ 341 ":distributeddatafwk_src_file", 342 "//third_party/googletest:gtest_main", 343 ] 344 345 external_deps = [ 346 "c_utils:utils", 347 "hilog:libhilog", 348 "ipc:ipc_single", 349 ] 350} 351 352ohos_unittest("KvUtilTest") { 353 module_out_path = module_output_path 354 355 sources = [ 356 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 357 "unittest/kv_utils_test.cpp", 358 ] 359 360 configs = [ ":module_private_config" ] 361 362 deps = [ 363 ":distributeddatafwk_src_file", 364 "//third_party/googletest:gtest_main", 365 ] 366 367 external_deps = [ 368 "c_utils:utils", 369 "hilog:libhilog", 370 "ipc:ipc_single", 371 ] 372} 373 374ohos_unittest("KvstoreDatashareBridgeTest") { 375 module_out_path = module_output_path 376 377 sources = [ 378 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 379 "unittest/kvstore_datashare_bridge_test.cpp", 380 ] 381 382 configs = [ ":module_private_config" ] 383 384 deps = [ 385 ":distributeddatafwk_src_file", 386 "//third_party/googletest:gtest_main", 387 ] 388 389 external_deps = [ 390 "c_utils:utils", 391 "hilog:libhilog", 392 "ipc:ipc_single", 393 ] 394} 395 396ohos_unittest("DistributedDataMgrTest") { 397 module_out_path = module_output_path 398 399 sources = [ 400 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 401 "unittest/distributed_data_mgr_test.cpp", 402 ] 403 404 configs = [ ":module_private_config" ] 405 406 external_deps = [ 407 "access_token:libaccesstoken_sdk", 408 "access_token:libnativetoken", 409 "access_token:libtoken_setproc", 410 "c_utils:utils", 411 "hilog:libhilog", 412 "ipc:ipc_single", 413 "samgr:samgr_proxy", 414 ] 415 416 deps = [ 417 ":distributeddatafwk_src_file", 418 "//third_party/googletest:gtest_main", 419 ] 420} 421 422ohos_unittest("EndPointTest") { 423 module_out_path = module_output_path 424 425 sources = [ 426 "../../kvdb/src/kv_hiview_reporter_mock.cpp", 427 "unittest/end_point_test.cpp", 428 ] 429 430 configs = [ ":module_private_config" ] 431 432 external_deps = [ 433 "c_utils:utils", 434 "hilog:libhilog", 435 "ipc:ipc_single", 436 "samgr:samgr_proxy", 437 ] 438 439 deps = [ 440 ":distributeddatafwk_src_file", 441 "//third_party/googletest:gtest_main", 442 ] 443} 444 445############################################################################### 446group("unittest") { 447 testonly = true 448 449 deps = [] 450 451 deps += [ 452 ":BlobTest", 453 ":DeviceKvStoreTest", 454 ":DistributedDataMgrTest", 455 ":DistributedKvDataManagerEncryptTest", 456 ":DistributedKvDataManagerTest", 457 ":EndPointTest", 458 ":KvUtilTest", 459 ":KvstoreDatashareBridgeTest", 460 ":LocalSubscribeDeviceStoreTest", 461 ":LocalSubscribeStoreTest", 462 ":SingleKvStoreAsyncGetTest", 463 ":SingleKvStoreClientQueryTest", 464 ":SingleKvStoreClientTest", 465 ":TypesUtilTest", 466 ] 467} 468