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("../distributeddb.gni")
15
16module_output_path = "kv_store/distributeddb"
17
18###############################################################################
19config("gaussdb_rd_config") {
20  visibility = [ ":*" ]
21  include_dirs = [
22    "../gaussdb_rd/src/common/include",
23    "../gaussdb_rd/src/executor/include",
24    "../gaussdb_rd/src/executor/document",
25    "../gaussdb_rd/src/oh_adapter/include",
26    "../gaussdb_rd/src/oh_adapter/src",
27    "../gaussdb_rd/src/interface/include",
28  ]
29
30  defines = [
31    "SQLITE_ENABLE_SNAPSHOT",
32    "SQLITE_HAS_CODEC",
33    "SQLITE_ENABLE_JSON1",
34    "USING_HILOG_LOGGER",
35    "USE_SQLITE_SYMBOLS",
36    "SQLITE_ENABLE_DROPTABLE_CALLBACK",
37  ]
38}
39
40config("gaussdb_rd_public_config") {
41  visibility = [ "*:*" ]
42  include_dirs = [
43    "../gaussdb_rd/include",
44    "../gaussdb_rd/include/grd_base",
45    "../gaussdb_rd/include/grd_document",
46    "../gaussdb_rd/include/grd_kv",
47  ]
48}
49
50config("module_private_config") {
51  visibility = [ ":*" ]
52
53  include_dirs = [
54    "./unittest/common/common",
55    "./unittest/common/syncer",
56    "./unittest/common/syncer/cloud",
57    "./unittest/common/storage",
58    "./unittest/common/storage/cloud",
59    "./unittest/common/interfaces",
60    "../include",
61    "../interfaces/include",
62    "../interfaces/include/cloud",
63    "../interfaces/include/relational",
64    "../interfaces/src",
65    "../interfaces/src/relational",
66    "../common/include",
67    "../common/include/cloud",
68    "../common/include/relational",
69    "../common/src",
70    "../common/src/cloud",
71    "../communicator/include",
72    "../communicator/src",
73    "../storage/include",
74    "../storage/src",
75    "../storage/src/cloud",
76    "../storage/src/kv",
77    "../storage/src/multiver",
78    "../storage/src/operation",
79    "../storage/src/gaussdb_rd",
80    "../storage/src/relational",
81    "../storage/src/sqlite",
82    "../storage/src/sqlite/kv",
83    "../storage/src/sqlite/relational",
84    "../storage/src/upgrader",
85    "../syncer/include",
86    "../syncer/src",
87    "../syncer/src/cloud",
88    "../syncer/src/device",
89    "../syncer/src/device/multiver",
90    "../syncer/src/device/singlever",
91    "//third_party/openssl/include/",
92    "../gaussdb_rd/include",
93    "../gaussdb_rd/include/grd_base",
94    "../gaussdb_rd/include/grd_document",
95    "../gaussdb_rd/include/grd_kv",
96  ]
97
98  defines = [
99    "SQLITE_ENABLE_SNAPSHOT",
100    "_LARGEFILE64_SOURCE",
101    "_FILE_OFFSET_BITS=64",
102    "SQLITE_HAS_CODEC",
103    "SQLITE_ENABLE_JSON1",
104    "USING_HILOG_LOGGER",
105    "USE_SQLITE_SYMBOLS",
106    "USING_DB_JSON_EXTRACT_AUTOMATICALLY",
107    "LOW_LEVEL_MEM_DEV",
108    "JSONCPP_USE_BUILDER",
109    "OMIT_FLATBUFFER",
110    "OMIT_MULTI_VER",
111    "RELATIONAL_STORE",
112    "SQLITE_DISTRIBUTE_RELATIONAL",
113    "USE_DFX_ABILITY",
114    "TRACE_SQLITE_EXECUTE",
115    "SQLITE_ENABLE_DROPTABLE_CALLBACK",
116    "OPENSSL_SUPPRESS_DEPRECATED",
117    "USE_RD_KERNEL",
118  ]
119  if (is_ohos) {
120    defines += [ "USE_FFRT" ]
121  }
122}
123
124###############################################################################
125ohos_source_set("src_file") {
126  testonly = true
127
128  sources = distributeddb_src
129  sources += [
130    "../gaussdb_rd/src/common/src/collection_option.cpp",
131    "../gaussdb_rd/src/common/src/db_config.cpp",
132    "../gaussdb_rd/src/common/src/grd_api_manager.cpp",
133    "../gaussdb_rd/src/common/src/json_common.cpp",
134    "../gaussdb_rd/src/common/src/os_api.cpp",
135    "../gaussdb_rd/src/common/src/rd_log_print.cpp",
136    "../gaussdb_rd/src/executor/base/grd_db_api.cpp",
137    "../gaussdb_rd/src/executor/base/grd_db_api_inner.cpp",
138    "../gaussdb_rd/src/executor/document/check_common.cpp",
139    "../gaussdb_rd/src/executor/document/grd_document_api.cpp",
140    "../gaussdb_rd/src/executor/document/grd_document_api_inner.cpp",
141    "../gaussdb_rd/src/executor/document/grd_resultset_api.cpp",
142    "../gaussdb_rd/src/executor/document/grd_resultset_api_inner.cpp",
143    "../gaussdb_rd/src/executor/kv/grd_kv_api.cpp",
144    "../gaussdb_rd/src/executor/kv/grd_kv_api_inner.cpp",
145    "../gaussdb_rd/src/interface/src/collection.cpp",
146    "../gaussdb_rd/src/interface/src/doc_errno.cpp",
147    "../gaussdb_rd/src/interface/src/document_key.cpp",
148    "../gaussdb_rd/src/interface/src/document_store.cpp",
149    "../gaussdb_rd/src/interface/src/document_store_manager.cpp",
150    "../gaussdb_rd/src/interface/src/projection_tree.cpp",
151    "../gaussdb_rd/src/interface/src/result_set.cpp",
152    "../gaussdb_rd/src/interface/src/result_set_common.cpp",
153    "../gaussdb_rd/src/oh_adapter/src/kv_store_manager.cpp",
154    "../gaussdb_rd/src/oh_adapter/src/rd_json_object.cpp",
155    "../gaussdb_rd/src/oh_adapter/src/rd_sqlite_utils.cpp",
156    "../gaussdb_rd/src/oh_adapter/src/sqlite_store_executor_impl.cpp",
157    "unittest/common/common/distributeddb_data_generate_unit_test.cpp",
158    "unittest/common/common/distributeddb_tools_unit_test.cpp",
159    "unittest/common/common/native_sqlite.cpp",
160    "unittest/common/common/system_time.cpp",
161    "unittest/common/common/thread_pool_test_stub.cpp",
162    "unittest/common/interfaces/process_system_api_adapter_impl.cpp",
163    "unittest/common/syncer/cloud/cloud_db_data_utils.cpp",
164    "unittest/common/syncer/cloud/cloud_db_sync_utils_test.cpp",
165    "unittest/common/syncer/cloud/virtual_asset_loader.cpp",
166    "unittest/common/syncer/cloud/virtual_cloud_data_translate.cpp",
167    "unittest/common/syncer/cloud/virtual_cloud_db.cpp",
168    "unittest/common/syncer/cloud/virtual_cloud_syncer.cpp",
169    "unittest/common/syncer/generic_virtual_device.cpp",
170    "unittest/common/syncer/kv_virtual_device.cpp",
171    "unittest/common/syncer/relational_virtual_device.cpp",
172    "unittest/common/syncer/virtual_communicator.cpp",
173    "unittest/common/syncer/virtual_communicator_aggregator.cpp",
174    "unittest/common/syncer/virtual_multi_ver_sync_db_interface.cpp",
175    "unittest/common/syncer/virtual_relational_ver_sync_db_interface.cpp",
176    "unittest/common/syncer/virtual_single_ver_sync_db_Interface.cpp",
177  ]
178
179  configs = [ ":module_private_config" ]
180
181  branch_protector_ret = "pac_ret"
182  sanitize = {
183    ubsan = true
184    boundary_sanitize = true
185    cfi = true
186    cfi_cross_dso = true
187    debug = false
188  }
189  deps = [
190    "//third_party/googletest:gtest_main",
191    "//third_party/sqlite:sqlite",
192  ]
193
194  configs += [ "//third_party/jsoncpp:jsoncpp_config" ]
195  ldflags = [ "-Wl,--exclude-libs,ALL" ]
196  deps += [
197    "//third_party/jsoncpp:jsoncpp",
198    "//third_party/openssl:libcrypto_shared",
199  ]
200  configs += [ ":gaussdb_rd_config" ]
201  public_configs = [ ":gaussdb_rd_public_config" ]
202  configs += [ "//third_party/cJSON:cJSON_config" ]
203  deps += [ "//third_party/cJSON:cjson" ]
204  external_deps = [
205    "c_utils:utils",
206    "ffrt:libffrt",
207    "hilog:libhilog",
208    "hisysevent:libhisysevent",
209    "hitrace:hitrace_meter",
210    "zlib:libz",
211  ]
212  part_name = "kv_store"
213}
214
215template("distributeddb_unittest") {
216  ohos_unittest(target_name) {
217    forward_variables_from(invoker, "*")
218    module_out_path = module_output_path
219    if (!defined(deps)) {
220      deps = []
221    }
222    if (!defined(external_deps)) {
223      external_deps = []
224    }
225    configs = [ ":module_private_config" ]
226    deps += [
227      ":src_file",
228      "//third_party/googletest:gmock_main",
229      "//third_party/googletest:gtest_main",
230      "//third_party/sqlite:sqlite",
231    ]
232    configs += [ "//third_party/jsoncpp:jsoncpp_config" ]
233    ldflags = [ "-Wl,--exclude-libs,ALL" ]
234    deps += [
235      "//third_party/jsoncpp:jsoncpp",
236      "//third_party/openssl:libcrypto_shared",
237    ]
238    external_deps = [
239      "c_utils:utils",
240      "ffrt:libffrt",
241      "hilog:libhilog",
242      "hisysevent:libhisysevent",
243      "hitrace:hitrace_meter",
244      "zlib:libz",
245    ]
246  }
247}
248
249distributeddb_unittest("DistributedDBSchemalTest") {
250  sources = [ "unittest/common/common/distributeddb_schema_unit_test.cpp" ]
251}
252
253distributeddb_unittest("DistributedDBInterfacesDatabaseTest") {
254  sources = [
255    "unittest/common/interfaces/distributeddb_interfaces_database_test.cpp",
256  ]
257}
258
259distributeddb_unittest("DistributedDBInterfacesDataOperationTest") {
260  sources = [ "unittest/common/interfaces/distributeddb_interfaces_data_operation_test.cpp" ]
261}
262
263distributeddb_unittest("DistributedDBInterfacesEncryptDatabaseTest") {
264  sources = [ "unittest/common/interfaces/distributeddb_interfaces_encrypt_database_test.cpp" ]
265}
266
267distributeddb_unittest("DistributedDBInterfacesEncryptDelegateTest") {
268  sources = [ "unittest/common/interfaces/distributeddb_interfaces_encrypt_delegate_test.cpp" ]
269}
270
271distributeddb_unittest("DistributedDBInterfacesImportAndExportTest") {
272  sources = [ "unittest/common/interfaces/distributeddb_interfaces_import_and_export_test.cpp" ]
273}
274
275distributeddb_unittest("DistributedDBCloudInterfacesReferenceTest") {
276  sources = [ "unittest/common/interfaces/distributeddb_cloud_interfaces_reference_test.cpp" ]
277}
278
279distributeddb_unittest("DistributedDBCloudInterfacesRelationalSyncTest") {
280  sources = [ "unittest/common/storage/cloud/distributeddb_cloud_interfaces_relational_sync_test.cpp" ]
281}
282
283distributeddb_unittest("DistributedDBCloudSyncerProgressManagerTest") {
284  sources = [ "unittest/common/syncer/cloud/distributeddb_cloud_syncer_progress_manager_test.cpp" ]
285}
286
287distributeddb_unittest("DistributedDBCloudSchemaMgrTest") {
288  sources =
289      [ "unittest/common/storage/distributeddb_cloud_schema_mgr_test.cpp" ]
290}
291
292distributeddb_unittest("DistributedDBStorageDataOperationTest") {
293  sources = [
294    "unittest/common/storage/distributeddb_storage_data_operation_test.cpp",
295  ]
296}
297
298distributeddb_unittest("DistributedDBStorageRegisterConflictTest") {
299  sources = [
300    "unittest/common/storage/distributeddb_storage_register_conflict_test.cpp",
301  ]
302}
303
304distributeddb_unittest("DistributedDBInterfacesTransactionTest") {
305  sources = [
306    "unittest/common/interfaces/distributeddb_interfaces_transaction_test.cpp",
307    "unittest/common/interfaces/distributeddb_interfaces_transaction_testcase.cpp",
308  ]
309}
310
311distributeddb_unittest("DistributedDBStorageTransactionDataTest") {
312  sources = [
313    "unittest/common/storage/distributeddb_storage_transaction_data_test.cpp",
314  ]
315}
316
317distributeddb_unittest("DistributedDBStorageTransactionRecordTest") {
318  sources = [
319    "unittest/common/storage/distributeddb_storage_transaction_record_test.cpp",
320  ]
321}
322
323distributeddb_unittest("DistributedDBNotificationChainTest") {
324  sources =
325      [ "unittest/common/common/distributeddb_notification_chain_test.cpp" ]
326}
327
328distributeddb_unittest("DistributedDBStorageCommitStorageTest") {
329  sources = [
330    "unittest/common/storage/distributeddb_storage_commit_storage_test.cpp",
331  ]
332}
333
334distributeddb_unittest("DistributedDBInterfacesDataOperationSyncDBTest") {
335  sources = [ "unittest/common/interfaces/distributeddb_interfaces_data_operation_syncdb_test.cpp" ]
336}
337
338distributeddb_unittest("DistributedDBInterfacesRegisterSyncDBTest") {
339  sources = [ "unittest/common/interfaces/distributeddb_interfaces_register_syncdb_test.cpp" ]
340}
341
342distributeddb_unittest("DistributedDBInterfacesRelationalObserverTest") {
343  sources = [ "unittest/common/interfaces/distributeddb_interfaces_relational_observer_test.cpp" ]
344}
345
346distributeddb_unittest("DistributedDBInterfacesTransactionSyncDBTest") {
347  sources = [
348    "unittest/common/interfaces/distributeddb_interfaces_transaction_syncdb_test.cpp",
349    "unittest/common/interfaces/distributeddb_interfaces_transaction_testcase.cpp",
350  ]
351}
352
353distributeddb_unittest("DistributedDBSingleVerP2PSimpleSyncTest") {
354  sources = [
355    "unittest/common/syncer/distributeddb_single_ver_p2p_simple_sync_test.cpp",
356  ]
357}
358
359distributeddb_unittest("DistributedDBSingleVerP2PPermissionSyncTest") {
360  sources = [ "unittest/common/syncer/distributeddb_single_ver_p2p_permission_sync_test.cpp" ]
361}
362
363distributeddb_unittest("DistributedDBSingleVerP2PComplexSyncTest") {
364  sources = [
365    "unittest/common/syncer/distributeddb_single_ver_p2p_complex_sync_test.cpp",
366  ]
367}
368
369distributeddb_unittest("DistributedDBSingleVerMsgScheduleTest") {
370  sources = [
371    "unittest/common/syncer/distributeddb_single_ver_msg_schedule_test.cpp",
372  ]
373}
374
375distributeddb_unittest("DistributedDBInterfacesNBDelegateTest") {
376  sources = [
377    "unittest/common/interfaces/distributeddb_interfaces_nb_delegate_test.cpp",
378  ]
379}
380
381distributeddb_unittest("DistributedDBCloudInterfacesRelationalExtTest") {
382  sources = [ "unittest/common/interfaces/distributeddb_cloud_interfaces_relational_ext_test.cpp" ]
383}
384
385distributeddb_unittest("DistributedDBCommonTest") {
386  sources = [ "unittest/common/common/distributeddb_common_test.cpp" ]
387}
388
389distributeddb_unittest("DistributedDBInterfacesNBDelegateLocalBatchTest") {
390  sources = [ "unittest/common/interfaces/distributeddb_interfaces_nb_delegate_local_batch_test.cpp" ]
391}
392
393distributeddb_unittest("DistributedDBInterfacesTransactionOptimizationTest") {
394  sources = [ "unittest/common/interfaces/distributeddb_interfaces_transaction_optimization_test.cpp" ]
395}
396
397distributeddb_unittest("DistributedDBInterfacesQueryDBTest") {
398  sources =
399      [ "unittest/common/interfaces/distributeddb_interfaces_query_test.cpp" ]
400}
401
402distributeddb_unittest("DistributedDBInterfacesNBDelegateSchemaPutTest") {
403  sources = [ "unittest/common/interfaces/distributeddb_interfaces_nb_delegate_schema_put_test.cpp" ]
404}
405
406distributeddb_unittest("DistributedDBInterfacesNBTransactionTest") {
407  sources = [ "unittest/common/interfaces/distributeddb_interfaces_nb_transaction_test.cpp" ]
408}
409
410distributeddb_unittest("DistributedDBInterfacesNBPublishTest") {
411  sources = [
412    "unittest/common/interfaces/distributeddb_interfaces_nb_publish_test.cpp",
413  ]
414}
415
416distributeddb_unittest("DistributedDBInterfacesNBUnpublishTest") {
417  sources = [
418    "unittest/common/interfaces/distributeddb_interfaces_nb_unpublish_test.cpp",
419  ]
420}
421
422distributeddb_unittest("DistributedDBInterfacesSpaceManagementTest") {
423  sources = [ "unittest/common/interfaces/distributeddb_interfaces_space_management_test.cpp" ]
424}
425
426distributeddb_unittest("DistributedDBStorageRegisterObserverTest") {
427  sources = [
428    "unittest/common/storage/distributeddb_storage_register_observer_test.cpp",
429  ]
430}
431
432distributeddb_unittest("DistributedDBCommunicatorTest") {
433  sources = [
434    "unittest/common/communicator/adapter_stub.cpp",
435    "unittest/common/communicator/distributeddb_communicator_common.cpp",
436    "unittest/common/communicator/distributeddb_communicator_test.cpp",
437  ]
438}
439
440distributeddb_unittest("DistributedDBCommunicatorSendReceiveTest") {
441  sources = [
442    "unittest/common/communicator/adapter_stub.cpp",
443    "unittest/common/communicator/distributeddb_communicator_common.cpp",
444    "unittest/common/communicator/distributeddb_communicator_send_receive_test.cpp",
445  ]
446}
447
448distributeddb_unittest("DistributedDBCommunicatorDeepTest") {
449  sources = [
450    "unittest/common/communicator/adapter_stub.cpp",
451    "unittest/common/communicator/distributeddb_communicator_common.cpp",
452    "unittest/common/communicator/distributeddb_communicator_deep_test.cpp",
453  ]
454}
455
456distributeddb_unittest("DistributedDBSyncerDeviceManagerTest") {
457  sources =
458      [ "unittest/common/syncer/distributeddb_syncer_device_manager_test.cpp" ]
459}
460
461distributeddb_unittest("DistributedDBMultiVerP2PSyncTest") {
462  sources =
463      [ "unittest/common/syncer/distributeddb_multi_ver_p2p_sync_test.cpp" ]
464}
465
466distributeddb_unittest("DistributedDBRelationalVerP2PSyncTest") {
467  sources = [
468    "unittest/common/syncer/distributeddb_relational_ver_p2p_sync_test.cpp",
469  ]
470}
471
472distributeddb_unittest("DistributedDBStorageSQLiteSingleVerNaturalStoreTest") {
473  sources = [
474    "unittest/common/storage/distributeddb_storage_single_ver_natural_store_testcase.cpp",
475    "unittest/common/storage/distributeddb_storage_sqlite_single_ver_natural_store_test.cpp",
476  ]
477}
478
479distributeddb_unittest(
480    "DistributedDBStorageSQLiteSingleVerNaturalExecutorTest") {
481  sources = [ "unittest/common/storage/distributeddb_storage_sqlite_single_ver_natural_executor_test.cpp" ]
482}
483
484distributeddb_unittest("DistributedDBStorageSQLiteSingleVerStorageEngineTest") {
485  sources = [ "unittest/common/storage/distributeddb_storage_sqlite_single_ver_storage_engine_test.cpp" ]
486}
487
488distributeddb_unittest("DistributedDBStorageMemorySingleVerNaturalStoreTest") {
489  sources = [
490    "unittest/common/storage/distributeddb_storage_memory_single_ver_naturall_store_test.cpp",
491    "unittest/common/storage/distributeddb_storage_single_ver_natural_store_testcase.cpp",
492  ]
493}
494
495distributeddb_unittest("DistributedDBEventLoopTimerTest") {
496  sources = [ "unittest/common/common/evloop_timer_unit_test.cpp" ]
497}
498
499distributeddb_unittest("DistributedDBTimeSyncTest") {
500  sources = [
501    "unittest/common/syncer/distributeddb_time_sync_test.cpp",
502    "unittest/common/syncer/virtual_time_sync_communicator.cpp",
503  ]
504}
505
506distributeddb_unittest("DistributedDBThreadPoolTest") {
507  sources = [ "unittest/common/common/distributeddb_thread_pool_test.cpp" ]
508}
509
510distributeddb_unittest("DistributedDBDeviceIdentifierTest") {
511  sources = [ "unittest/common/interfaces/distributeddb_interfaces_device_identifier_test.cpp" ]
512}
513
514distributeddb_unittest("DistributedDBSingleVersionResultSetTest") {
515  sources = [ "unittest/common/interfaces/distributeddb_interfaces_single_version_result_set_test.cpp" ]
516}
517
518distributeddb_unittest("DistributedDBInterfacesDatabaseCorruptTest") {
519  sources = [ "unittest/common/interfaces/distributeddb_interfaces_database_corrupt_test.cpp" ]
520}
521
522distributeddb_unittest("DistributedDBFilePackageTest") {
523  sources = [ "unittest/common/storage/distributeddb_file_package_test.cpp" ]
524}
525
526distributeddb_unittest("DistributedDBMultiVerVacuumTest") {
527  sources = [
528    "unittest/common/storage/distributeddb_multi_ver_vacuum_test.cpp",
529    "unittest/common/storage/multi_ver_vacuum_executor_stub.cpp",
530  ]
531}
532
533distributeddb_unittest("DistributedDBParcelTest") {
534  sources = [ "unittest/common/common/distributeddb_parcel_unit_test.cpp" ]
535}
536
537distributeddb_unittest("DistributedDBAbilitySyncTest") {
538  sources = [ "unittest/common/syncer/distributeddb_ability_sync_test.cpp" ]
539}
540
541distributeddb_unittest("DistributedDBSchemaObjectTest") {
542  sources = [ "unittest/common/common/distributeddb_schema_object_test.cpp" ]
543}
544
545distributeddb_unittest("DistributedDBStorageSingleVerUpgradeTest") {
546  sources = [
547    "unittest/common/storage/distributeddb_storage_single_ver_upgrade_test.cpp",
548  ]
549}
550
551distributeddb_unittest("DistributedDBSqliteRegisterTest") {
552  sources = [ "unittest\common\storage\distributeddb_sqlite_register_test.cpp" ]
553}
554
555distributeddb_unittest("DistributedDBInterfacesAutoLaunchTest") {
556  sources = [
557    "unittest/common/interfaces/distributeddb_interfaces_auto_launch_test.cpp",
558  ]
559}
560
561distributeddb_unittest("DistributedDBInterfacesIndexUnitTest") {
562  sources = [
563    "unittest\common\interfaces\distributeddb_interfaces_index_unit_test.cpp",
564  ]
565}
566
567distributeddb_unittest("DistributedDBAutoLaunchUnitTest") {
568  sources = [ "unittest/common/common/distributeddb_auto_launch_test.cpp" ]
569}
570
571distributeddb_unittest("DistributedDBDataCompressionTest") {
572  sources = [ "unittest/common/common/distributeddb_data_compression_test.cpp" ]
573}
574
575###############################################################################
576distributeddb_unittest("DistributedDBJsonPrecheckUnitTest") {
577  sources =
578      [ "unittest/common/common/distributeddb_json_precheck_unit_test.cpp" ]
579}
580
581distributeddb_unittest("DistributedDBInterfacesNBResultsetPerfTest") {
582  sources = [ "unittest/common/interfaces/distributeddb_interfaces_resultset_performance.cpp" ]
583}
584
585distributeddb_unittest("DistributedDBStorageResultAndJsonOptimizeTest") {
586  sources = [ "unittest/common/storage/distributeddb_storage_resultset_and_json_optimize.cpp" ]
587}
588
589distributeddb_unittest("DistributedDBStorageIndexOptimizeTest") {
590  sources = [
591    "unittest/common/storage/distributeddb_storage_index_optimize_test.cpp",
592  ]
593}
594
595distributeddb_unittest("DistributedDBSingleVerP2PSyncCheckTest") {
596  sources = [
597    "unittest/common/syncer/distributeddb_single_ver_p2p_sync_check_test.cpp",
598  ]
599}
600
601distributeddb_unittest("RuntimeContextProcessSystemApiAdapterImplTest") {
602  sources = [ "unittest/common/interfaces/runtime_context_process_system_api_adapter_impl_test.cpp" ]
603}
604
605distributeddb_unittest("DistributedDBInterfacesSchemaDatabaseUpgradeTest") {
606  sources = [ "unittest/common/interfaces/distributeddb_interfaces_schema_database_upgrade_test.cpp" ]
607}
608
609distributeddb_unittest("DistributedDBStorageQuerySyncTest") {
610  sources =
611      [ "unittest/common/storage/distributeddb_storage_query_sync_test.cpp" ]
612}
613
614distributeddb_unittest("DistributedDBSingleVerP2PQuerySyncTest") {
615  sources = [
616    "unittest/common/syncer/distributeddb_single_ver_p2p_query_sync_test.cpp",
617  ]
618}
619
620distributeddb_unittest("DistributedDBCommunicatorProxyTest") {
621  sources =
622      [ "unittest/common/syncer/distributeddb_communicator_proxy_test.cpp" ]
623}
624
625distributeddb_unittest("DistributedDBSingleVerP2PSubscribeSyncTest") {
626  sources = [ "unittest/common/syncer/distributeddb_single_ver_p2p_subscribe_sync_test.cpp" ]
627}
628
629distributeddb_unittest("DistributedDBMockSyncModuleTest") {
630  sources = [ "unittest/common/syncer/distributeddb_mock_sync_module_test.cpp" ]
631}
632
633distributeddb_unittest("DistributedInterfacesRelationalTest") {
634  sources = [
635    "unittest/common/interfaces/distributeddb_interfaces_relational_test.cpp",
636  ]
637}
638
639distributeddb_unittest("DistributedDBInterfacesRelationalTrackerTableTest") {
640  sources = [ "unittest/common/interfaces/distributeddb_interfaces_relational_tracker_table_test.cpp" ]
641}
642
643distributeddb_unittest("DistributedDBRelationalSchemaObjectTest") {
644  sources = [
645    "unittest/common/common/distributeddb_relational_schema_object_test.cpp",
646  ]
647}
648
649distributeddb_unittest("DistributedDBInterfacesRelationalSyncTest") {
650  sources = [ "unittest/common/interfaces/distributeddb_interfaces_relational_sync_test.cpp" ]
651}
652
653distributeddb_unittest("DistributedDBRelationalGetDataTest") {
654  sources =
655      [ "unittest/common/storage/distributeddb_relational_get_data_test.cpp" ]
656}
657
658distributeddb_unittest("DistributedDBRelationalMultiUserTest") {
659  sources =
660      [ "unittest/common/syncer/distributeddb_relational_multi_user_test.cpp" ]
661}
662
663distributeddb_unittest("DistributedDBSingleVerMultiUserTest") {
664  sources =
665      [ "unittest/common/syncer/distributeddb_single_ver_multi_user_test.cpp" ]
666}
667
668distributeddb_unittest("DistributedDBRelationalRemoteQueryTest") {
669  sources = [
670    "unittest/common/storage/distributeddb_relational_remote_query_test.cpp",
671  ]
672}
673
674distributeddb_unittest("DistributedDBRelationalResultSetTest") {
675  sources =
676      [ "unittest/common/storage/distributeddb_relational_result_set_test.cpp" ]
677}
678
679distributeddb_unittest("DistributedDBRelationalEncryptedDbTest") {
680  sources = [
681    "unittest/common/storage/distributeddb_relational_encrypted_db_test.cpp",
682  ]
683}
684
685distributeddb_unittest("DistributedDBSingleVerDLPTest") {
686  sources = [ "unittest/common/syncer/distributeddb_single_ver_dlp_test.cpp" ]
687}
688
689distributeddb_unittest("DistributedDBInterfacesRelationalRoutinesTest") {
690  sources = [ "unittest/common/interfaces/distributeddb_interfaces_relational_routines_test.cpp" ]
691}
692
693distributeddb_unittest("DistributedDBInterfacesLogTest") {
694  sources =
695      [ "unittest/common/interfaces/distributeddb_interfaces_log_test.cpp" ]
696}
697
698distributeddb_unittest("DistributedDBStorageDataConnectionTest") {
699  sources = [
700    "unittest/common/storage/distributeddb_storage_data_connection_test.cpp",
701  ]
702}
703
704distributeddb_unittest("DistributedDBRelationalSyncableStorageTest") {
705  sources = [ "unittest/common/storage/distributeddb_relational_syncable_storage_test.cpp" ]
706}
707
708distributeddb_unittest("DistributedDBRelationalCloudSyncableStorageTest") {
709  sources = [ "unittest/common/storage/distributeddb_relational_cloud_syncable_storage_test.cpp" ]
710}
711
712distributeddb_unittest("DistributedDBSqliteUtilsTest") {
713  sources = [ "unittest/common/storage/distributeddb_sqlite_utils_test.cpp" ]
714}
715
716distributeddb_unittest("DistributedDBCloudStrategyTest") {
717  sources =
718      [ "unittest/common/syncer/cloud/distributeddb_cloud_strategy_test.cpp" ]
719}
720
721distributeddb_unittest("DistributedDBCloudSyncerDownloadAssetsTest") {
722  sources = [ "unittest/common/syncer/cloud/distributeddb_cloud_syncer_download_assets_test.cpp" ]
723}
724
725distributeddb_unittest("DistributedDBCloudSyncerLockTest") {
726  sources = [
727    "unittest/common/syncer/cloud/distributeddb_cloud_syncer_lock_test.cpp",
728  ]
729}
730
731distributeddb_unittest("DistributedDBSingleVerMultiSubUserTest") {
732  sources = [
733    "unittest/common/syncer/distributeddb_single_ver_multi_sub_user_test.cpp",
734  ]
735}
736
737distributeddb_unittest("DistributedDBCloudSyncerUploadTest") {
738  sources = [
739    "unittest/common/syncer/cloud/distributeddb_cloud_syncer_upload_test.cpp",
740  ]
741}
742
743distributeddb_unittest("DistributedDBCloudSyncerDownloadTest") {
744  sources = [
745    "unittest/common/syncer/cloud/distributeddb_cloud_syncer_download_test.cpp",
746  ]
747}
748
749distributeddb_unittest("DistributedDBCloudDBProxyTest") {
750  sources =
751      [ "unittest/common/syncer/cloud/distributeddb_cloud_db_proxy_test.cpp" ]
752}
753
754distributeddb_unittest("DistributedDBCloudAssetCompareTest") {
755  sources = [
756    "unittest/common/syncer/cloud/distributeddb_cloud_asset_compare_test.cpp",
757  ]
758}
759
760distributeddb_unittest("DistributedDBCloudSaveCloudDataTest") {
761  sources = [ "unittest/common/storage/cloud/distributeddb_cloud_save_cloud_data_test.cpp" ]
762}
763
764distributeddb_unittest(
765    "DistributedDBCloudInterfacesRelationalRemoveDeviceDataTest") {
766  sources = [ "unittest/common/interfaces/distributeddb_cloud_interfaces_relational_remove_device_data_test.cpp" ]
767}
768
769distributeddb_unittest("DistributedDBCloudCheckSyncTest") {
770  sources = [
771    "unittest/common/storage/cloud/distributeddb_cloud_check_sync_test.cpp",
772  ]
773}
774
775distributeddb_unittest("DistributedDBCloudTableCompoundPrimaryKeySyncTest") {
776  sources = [ "unittest/common/syncer/cloud/distributeddb_cloud_table_compound_primary_key_sync_test.cpp" ]
777}
778
779distributeddb_unittest("DistributedDBCloudTableWithoutPrimaryKeySyncTest") {
780  sources = [ "unittest/common/syncer/cloud/distributeddb_cloud_table_without_primary_key_sync_test.cpp" ]
781}
782
783distributeddb_unittest("DistributedDBCloudInterfacesSetCloudSchemaTest") {
784  sources = [ "unittest/common/interfaces/distributeddb_cloud_interfaces_set_cloud_schema_test.cpp" ]
785}
786
787distributeddb_unittest("DistributedDBCloudReferenceSyncTest") {
788  sources = [
789    "unittest/common/storage/cloud/distributeddb_cloud_reference_sync_test.cpp",
790  ]
791}
792
793distributeddb_unittest("DistributedDBCloudAssetsOperationSyncTest") {
794  sources = [ "unittest/common/storage/cloud/distributeddb_cloud_assets_operation_sync_test.cpp" ]
795}
796
797distributeddb_unittest("DistributedDBCloudTaskMergeTest") {
798  sources = [
799    "unittest/common/storage/cloud/distributeddb_cloud_task_merge_test.cpp",
800  ]
801}
802
803###############################################################################
804# testcase using rd kernel
805
806distributeddb_unittest(
807    "DistributedDBStorageMemoryRdSingleVerNaturalStoreTest") {
808  sources = [
809    "unittest/common/storage/distributeddb_storage_memory_rd_single_ver_natural_store_test.cpp",
810    "unittest/common/storage/distributeddb_storage_rd_single_ver_natural_store_testcase.cpp",
811  ]
812}
813
814distributeddb_unittest("DistributedDBStorageRdRegisterObserverTest") {
815  sources = [ "unittest/common/storage/distributeddb_storage_rd_register_observer_test.cpp" ]
816}
817
818distributeddb_unittest("DistributedDBStorageRdResultAndJsonOptimizeTest") {
819  sources = [ "unittest/common/storage/distributeddb_storage_rd_result_and_json_optimize_test.cpp" ]
820}
821
822distributeddb_unittest("DistributedDBStorageRdSingleVerNaturalExecutorTest") {
823  sources = [ "unittest/common/storage/distributeddb_storage_rd_single_ver_natural_executor_test.cpp" ]
824}
825
826distributeddb_unittest("DistributedDBStorageRdSingleVerNaturalStoreTest") {
827  sources = [
828    "unittest/common/storage/distributeddb_storage_rd_single_ver_natural_store_test.cpp",
829    "unittest/common/storage/distributeddb_storage_rd_single_ver_natural_store_testcase.cpp",
830  ]
831}
832
833distributeddb_unittest("DistributedDBStorageRdSingleVerStorageEngineTest") {
834  sources = [ "unittest/common/storage/distributeddb_storage_rd_single_ver_storage_engine_test.cpp" ]
835}
836
837distributeddb_unittest("DistributedDBInterfacesNBDelegateRdTest") {
838  sources = [ "unittest/common/interfaces/distributeddb_interfaces_nb_delegate_rd_test.cpp" ]
839}
840
841distributeddb_unittest("DistributedDBInterfacesDatabaseRdKernelTest") {
842  sources = [ "unittest/common/interfaces/distributeddb_interfaces_database_rd_kernel_test.cpp" ]
843}
844
845distributeddb_unittest("DistributedDBStorageSingleVerDatabaseOperTest") {
846  sources = [ "unittest/common/storage/distributeddb_storage_single_ver_database_oper_test.cpp" ]
847}
848
849distributeddb_unittest("DistributedDBSqliteRelationalUtilsTest") {
850  sources = [
851    "unittest/common/storage/distributeddb_sqlite_relational_utils_test.cpp",
852  ]
853}
854
855distributeddb_unittest("DistributedDBMetaDataTest") {
856  sources = [ "unittest/common/syncer/distributeddb_meta_data_test.cpp" ]
857}
858
859distributeddb_unittest("DistributedDBCloudKvSyncerTest") {
860  sources =
861      [ "unittest/common/syncer/cloud/distributeddb_cloud_kv_syncer_test.cpp" ]
862}
863
864distributeddb_unittest("DistributedDBCloudKvTest") {
865  sources = [ "unittest/common/syncer/cloud/distributeddb_cloud_kv_test.cpp" ]
866}
867
868distributeddb_unittest("DistributedDBCloudKvStoreTest") {
869  sources =
870      [ "unittest/common/syncer/cloud/distributeddb_cloud_kvstore_test.cpp" ]
871}
872
873###############################################################################
874group("unittest") {
875  testonly = true
876  deps = [ "//third_party/googletest:gmock" ]
877
878  deps += [
879    ":DistributedDBAbilitySyncTest",
880    ":DistributedDBAutoLaunchUnitTest",
881    ":DistributedDBCloudAssetCompareTest",
882    ":DistributedDBCloudAssetsOperationSyncTest",
883    ":DistributedDBCloudCheckSyncTest",
884    ":DistributedDBCloudDBProxyTest",
885    ":DistributedDBCloudInterfacesReferenceTest",
886    ":DistributedDBCloudInterfacesRelationalExtTest",
887    ":DistributedDBCloudInterfacesRelationalRemoveDeviceDataTest",
888    ":DistributedDBCloudInterfacesRelationalSyncTest",
889    ":DistributedDBCloudInterfacesSetCloudSchemaTest",
890    ":DistributedDBCloudKvStoreTest",
891    ":DistributedDBCloudKvSyncerTest",
892    ":DistributedDBCloudKvTest",
893    ":DistributedDBCloudReferenceSyncTest",
894    ":DistributedDBCloudSaveCloudDataTest",
895    ":DistributedDBCloudSchemaMgrTest",
896    ":DistributedDBCloudStrategyTest",
897    ":DistributedDBCloudSyncerDownloadTest",
898    ":DistributedDBCloudSyncerLockTest",
899    ":DistributedDBCloudSyncerProgressManagerTest",
900    ":DistributedDBCloudSyncerUploadTest",
901    ":DistributedDBCloudTableCompoundPrimaryKeySyncTest",
902    ":DistributedDBCloudTableWithoutPrimaryKeySyncTest",
903    ":DistributedDBCloudTaskMergeTest",
904    ":DistributedDBCommonTest",
905    ":DistributedDBCommunicatorDeepTest",
906    ":DistributedDBCommunicatorProxyTest",
907    ":DistributedDBCommunicatorSendReceiveTest",
908    ":DistributedDBCommunicatorTest",
909    ":DistributedDBDataCompressionTest",
910    ":DistributedDBDeviceIdentifierTest",
911    ":DistributedDBEventLoopTimerTest",
912    ":DistributedDBFilePackageTest",
913    ":DistributedDBInterfacesAutoLaunchTest",
914    ":DistributedDBInterfacesDataOperationSyncDBTest",
915    ":DistributedDBInterfacesDataOperationTest",
916    ":DistributedDBInterfacesDatabaseCorruptTest",
917    ":DistributedDBInterfacesDatabaseTest",
918    ":DistributedDBInterfacesEncryptDatabaseTest",
919    ":DistributedDBInterfacesEncryptDelegateTest",
920    ":DistributedDBInterfacesImportAndExportTest",
921    ":DistributedDBInterfacesIndexUnitTest",
922    ":DistributedDBInterfacesLogTest",
923    ":DistributedDBInterfacesNBDelegateLocalBatchTest",
924    ":DistributedDBInterfacesNBDelegateSchemaPutTest",
925    ":DistributedDBInterfacesNBDelegateTest",
926    ":DistributedDBInterfacesNBPublishTest",
927    ":DistributedDBInterfacesNBResultsetPerfTest",
928    ":DistributedDBInterfacesNBTransactionTest",
929    ":DistributedDBInterfacesNBUnpublishTest",
930    ":DistributedDBInterfacesQueryDBTest",
931    ":DistributedDBInterfacesRegisterSyncDBTest",
932    ":DistributedDBInterfacesRelationalObserverTest",
933    ":DistributedDBInterfacesRelationalRoutinesTest",
934    ":DistributedDBInterfacesRelationalSyncTest",
935    ":DistributedDBInterfacesRelationalTrackerTableTest",
936    ":DistributedDBInterfacesSchemaDatabaseUpgradeTest",
937    ":DistributedDBInterfacesSpaceManagementTest",
938    ":DistributedDBInterfacesTransactionOptimizationTest",
939    ":DistributedDBInterfacesTransactionSyncDBTest",
940    ":DistributedDBInterfacesTransactionTest",
941    ":DistributedDBJsonPrecheckUnitTest",
942    ":DistributedDBMetaDataTest",
943    ":DistributedDBMockSyncModuleTest",
944    ":DistributedDBMultiVerP2PSyncTest",
945    ":DistributedDBMultiVerVacuumTest",
946    ":DistributedDBNotificationChainTest",
947    ":DistributedDBParcelTest",
948    ":DistributedDBRelationalCloudSyncableStorageTest",
949    ":DistributedDBRelationalEncryptedDbTest",
950    ":DistributedDBRelationalGetDataTest",
951    ":DistributedDBRelationalMultiUserTest",
952    ":DistributedDBRelationalRemoteQueryTest",
953    ":DistributedDBRelationalResultSetTest",
954    ":DistributedDBRelationalSchemaObjectTest",
955    ":DistributedDBRelationalSyncableStorageTest",
956    ":DistributedDBRelationalVerP2PSyncTest",
957    ":DistributedDBSchemaObjectTest",
958    ":DistributedDBSchemalTest",
959    ":DistributedDBSingleVerDLPTest",
960    ":DistributedDBSingleVerMsgScheduleTest",
961    ":DistributedDBSingleVerMultiSubUserTest",
962    ":DistributedDBSingleVerMultiUserTest",
963    ":DistributedDBSingleVerP2PComplexSyncTest",
964    ":DistributedDBSingleVerP2PPermissionSyncTest",
965    ":DistributedDBSingleVerP2PQuerySyncTest",
966    ":DistributedDBSingleVerP2PSimpleSyncTest",
967    ":DistributedDBSingleVerP2PSubscribeSyncTest",
968    ":DistributedDBSingleVerP2PSyncCheckTest",
969    ":DistributedDBSingleVersionResultSetTest",
970    ":DistributedDBSqliteRegisterTest",
971    ":DistributedDBSqliteRelationalUtilsTest",
972    ":DistributedDBSqliteUtilsTest",
973    ":DistributedDBStorageCommitStorageTest",
974    ":DistributedDBStorageDataConnectionTest",
975    ":DistributedDBStorageDataOperationTest",
976    ":DistributedDBStorageIndexOptimizeTest",
977    ":DistributedDBStorageMemorySingleVerNaturalStoreTest",
978    ":DistributedDBStorageQuerySyncTest",
979    ":DistributedDBStorageRegisterConflictTest",
980    ":DistributedDBStorageRegisterObserverTest",
981    ":DistributedDBStorageResultAndJsonOptimizeTest",
982    ":DistributedDBStorageSQLiteSingleVerNaturalExecutorTest",
983    ":DistributedDBStorageSQLiteSingleVerNaturalStoreTest",
984    ":DistributedDBStorageSQLiteSingleVerStorageEngineTest",
985    ":DistributedDBStorageSingleVerDatabaseOperTest",
986    ":DistributedDBStorageSingleVerUpgradeTest",
987    ":DistributedDBStorageTransactionDataTest",
988    ":DistributedDBStorageTransactionRecordTest",
989    ":DistributedDBSyncerDeviceManagerTest",
990    ":DistributedDBThreadPoolTest",
991    ":DistributedDBTimeSyncTest",
992    ":DistributedInterfacesRelationalTest",
993    ":RuntimeContextProcessSystemApiAdapterImplTest",
994  ]
995
996  if (defined(global_parts_info.distributeddatamgr_kv_store_lite)) {
997    deps += [
998      ":DistributedDBInterfacesDatabaseRdKernelTest",
999      ":DistributedDBInterfacesNBDelegateRdTest",
1000      ":DistributedDBStorageMemoryRdSingleVerNaturalStoreTest",
1001      ":DistributedDBStorageRdRegisterObserverTest",
1002      ":DistributedDBStorageRdResultAndJsonOptimizeTest",
1003      ":DistributedDBStorageRdSingleVerNaturalExecutorTest",
1004      ":DistributedDBStorageRdSingleVerNaturalStoreTest",
1005      ":DistributedDBStorageRdSingleVerStorageEngineTest",
1006    ]
1007  }
1008}
1009
1010###############################################################################
1011group("distributeddatamgr_fuzztest") {
1012  testonly = true
1013  deps = []
1014  deps += [
1015    "fuzztest/cloudsync_fuzzer:fuzztest",
1016    "fuzztest/delegate_fuzzer:fuzztest",
1017    "fuzztest/fileoper_fuzzer:fuzztest",
1018    "fuzztest/importfile_fuzzer:fuzztest",
1019    "fuzztest/iprocesscommunicator_fuzzer:fuzztest",
1020    "fuzztest/json_fuzzer:fuzztest",
1021    "fuzztest/jsoninner_fuzzer:fuzztest",
1022    "fuzztest/kvdelegatemanager_fuzzer:fuzztest",
1023    "fuzztest/kvstoreresultset_fuzzer:fuzztest",
1024    "fuzztest/nbdelegate_fuzzer:fuzztest",
1025    "fuzztest/parseckeck_fuzzer:fuzztest",
1026    "fuzztest/query_fuzzer:fuzztest",
1027    "fuzztest/rekey_fuzzer:fuzztest",
1028    "fuzztest/relationalstoredelegate_fuzzer:fuzztest",
1029    "fuzztest/relationalstoremanager_fuzzer:fuzztest",
1030    "fuzztest/schemadelegate_fuzzer:fuzztest",
1031    "fuzztest/storage_fuzzer:fuzztest",
1032    "fuzztest/sync_fuzzer:fuzztest",
1033  ]
1034}
1035###############################################################################
1036