From cb57016d1b052fd0ac24f09d3d3d41fed4aa0d2c Mon Sep 17 00:00:00 2001 From: chenchaohao Date: Sat, 6 Apr 2024 20:44:57 +0800 Subject: [PATCH] lock ut Signed-off-by: chenchaohao --- ...cloud_interfaces_set_cloud_schema_test.cpp | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/frameworks/libs/distributeddb/test/unittest/common/interfaces/distributeddb_cloud_interfaces_set_cloud_schema_test.cpp b/frameworks/libs/distributeddb/test/unittest/common/interfaces/distributeddb_cloud_interfaces_set_cloud_schema_test.cpp index 1e021725497..faabb669605 100644 --- a/frameworks/libs/distributeddb/test/unittest/common/interfaces/distributeddb_cloud_interfaces_set_cloud_schema_test.cpp +++ b/frameworks/libs/distributeddb/test/unittest/common/interfaces/distributeddb_cloud_interfaces_set_cloud_schema_test.cpp @@ -1890,4 +1890,34 @@ namespace { EXPECT_EQ(sqlite3_exec(db_, sql.c_str(), CloudDBSyncUtilsTest::QueryCountCallback, reinterpret_cast(cloudCount), nullptr), SQLITE_OK); } + + /** + * @tc.name: SetCloudSchemaConcurrentTest001 + * @tc.desc: SetCloudSchema and setdistributedtable + * @tc.type: FUNC + * @tc.require: + * @tc.author: chenchaohao + */ + HWTEST_F(DistributedDBCloudInterfacesSetCloudSchemaTest, SetCloudSchemaConcurrentTest001, TestSize.Level0) + { + /** + * @tc.steps:step1. use set shared table + * @tc.expected: step1. return OK + */ + DataBaseSchema dataBaseSchema; + TableSchema tableSchema = { + .name = g_tableName1, + .sharedTableName = g_sharedTableName1, + .fields = g_cloudField1 + }; + dataBaseSchema.tables.push_back(tableSchema); + std::thread t1 ([this, dataBaseSchema]() { + ASSERT_EQ(g_delegate->SetCloudDbSchema(dataBaseSchema), DBStatus::OK); + }); + std::thread t2 ([this]() { + ASSERT_EQ(g_delegate->CreateDistributedTable(g_tableName1, CLOUD_COOPERATION), DBStatus::OK); + }); + t1.join(); + t2.join(); + } } // namespace \ No newline at end of file -- Gitee