From cfac0fc324ea586e9791f5dd6143cb832d070268 Mon Sep 17 00:00:00 2001 From: lizhengxing Date: Mon, 8 Sep 2025 11:50:48 +0800 Subject: [PATCH] dh ut Signed-off-by: lizhengxing --- .../backup_ext/ext_extension_sub_test.cpp | 41 ++++++ .../module_ipc/svc_session_manager_test.cpp | 71 ++++++++++ .../b_json_entity_extension_config_test.cpp | 128 ++++++++++++++++++ .../b_jsonutil/b_jsonutil_test.cpp | 93 +++++++++++++ utils/src/b_hiaudit/hi_audit.cpp | 4 +- 5 files changed, 335 insertions(+), 2 deletions(-) diff --git a/tests/unittests/backup_ext/ext_extension_sub_test.cpp b/tests/unittests/backup_ext/ext_extension_sub_test.cpp index 284cf4744..129fe4d6b 100644 --- a/tests/unittests/backup_ext/ext_extension_sub_test.cpp +++ b/tests/unittests/backup_ext/ext_extension_sub_test.cpp @@ -26,6 +26,7 @@ #include "b_error/b_error.h" #include "b_error/b_excep_utils.h" +#include "b_json/b_json_entity_extension_config.h" #include "ext_backup_mock.h" #include "ext_extension_mock.h" #include "tar_file.h" @@ -1311,4 +1312,44 @@ HWTEST_F(ExtExtensionSubTest, Ext_Extension_Sub_IncOnBackupExCallback_Test_0100, } GTEST_LOG_(INFO) << "ExtExtensionSubTest-end Ext_Extension_Sub_IncOnBackupExCallback_Test_0100"; } + +/** + * @tc.number: Ext_Extension_Sub_GetScanDirList_Test_0100 + * @tc.name: Ext_Extension_Sub_GetScanDirList_Test_0100 + * @tc.desc: 测试GetScanDirList + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 1 + * @tc.require: I9P3Y3 + */ +HWTEST_F(ExtExtensionSubTest, Ext_Extension_Sub_GetScanDirList_Test_0100, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "ExtExtensionSubTest-begin Ext_Extension_Sub_GetScanDirList_Test_0100"; + try { + ASSERT_TRUE(extExtension != nullptr); + extExtension->backupScene_ = "test1"; + vector includes = {}; + vector excludes = {}; + string usrConfig = "{\"allowToBackupRestore\":false}"; + + BJsonCachedEntity cachedEntity(usrConfig); + + extExtension->extension_ = nullptr; + extExtension->GetScanDirList(includes, excludes, usrConfig); + extExtension->extension_ = extension; + EXPECT_TRUE(includes.empty()); + + usrConfig = "{\"includes\":[\"test/\"]}"; + extExtension->GetScanDirList(includes, excludes, usrConfig); + EXPECT_TRUE(!includes.empty()); + usrConfig = "{\"optionDir\":[{\"includes\":[\"test/\"], \"sceneId\":\"test\"}"; + + extExtension->backupScene_ = "test"; + extExtension->GetScanDirList(includes, excludes, usrConfig); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "ExtExtensionSubTest-an exception occurred by construction."; + } + GTEST_LOG_(INFO) << "ExtExtensionSubTest-end Ext_Extension_Sub_GetScanDirList_Test_0100"; +} } \ No newline at end of file diff --git a/tests/unittests/backup_sa/module_ipc/svc_session_manager_test.cpp b/tests/unittests/backup_sa/module_ipc/svc_session_manager_test.cpp index 2802450cf..f6f47d301 100644 --- a/tests/unittests/backup_sa/module_ipc/svc_session_manager_test.cpp +++ b/tests/unittests/backup_sa/module_ipc/svc_session_manager_test.cpp @@ -2201,5 +2201,76 @@ HWTEST_F(SvcSessionManagerTest, SUB_backup_sa_session_GetSessionActiveTime_0100, } GTEST_LOG_(INFO) << "SvcSessionManagerTest-end SUB_backup_sa_session_GetSessionActiveTime_0100"; } + +/** + * @tc.number: SUB_backup_sa_session_SetBackupScene_0100 + * @tc.name: SUB_backup_sa_session_SetBackupScene_0100 + * @tc.desc: 测试 SetSessionUserId + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 1 + * @tc.require: I8ZIMJ + */ +HWTEST_F(SvcSessionManagerTest, SUB_backup_sa_session_SetBackupScene_0100, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "ServiceTest-begin SUB_backup_sa_session_SetBackupScene_0100"; + try { + std::string backupScene = ""; + EXPECT_TRUE(sessionManagerPtr_ != nullptr); + sessionManagerPtr_->impl_.clientToken = 0; + sessionManagerPtr_->SetBackupScene(BUNDLE_NAME, backupScene); + EXPECT_EQ(backupScene == ""); + + sessionManagerPtr_->impl_.clientToken = CLIENT_TOKEN_ID; + sessionManagerPtr_->SetBackupScene(BUNDLE_NAME, backupScene); + EXPECT_EQ(backupScene == ""); + + BackupExtInfo info; + info.backupScene = "backupScene"; + sessionManagerPtr_->impl_.backupExtNameMap[BUNDLE_NAME] = info; + sessionManagerPtr_->SetBackupScene(BUNDLE_NAME, backupScene); + EXPECT_EQ(backupScene == info.backupScene); + sessionManagerPtr_->impl_.backupExtNameMap.clear(); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "ServiceTest-an exception occurred by SetBackupScene."; + } + GTEST_LOG_(INFO) << "ServiceTest-end SUB_backup_sa_session_SetBackupScene_0100"; +} + +/** + * @tc.number: SUB_backup_sa_session_GetBackupScene_0200 + * @tc.name: SUB_backup_sa_session_GetBackupScene_0200 + * @tc.desc: 测试 SetSessionUserId + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 1 + * @tc.require: I8ZIMJ + */ +HWTEST_F(SvcSessionManagerTest, SUB_backup_sa_session_GetBackupScene_0200, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "ServiceTest-begin SUB_backup_sa_session_GetBackupScene_0200"; + try { + std::string backupScene = ""; + EXPECT_TRUE(sessionManagerPtr_ != nullptr); + sessionManagerPtr_->impl_.clientToken = 0; + sessionManagerPtr_->GetBackupScene(BUNDLE_NAME); + EXPECT_EQ(backupScene == ""); + + sessionManagerPtr_->impl_.clientToken = CLIENT_TOKEN_ID; + sessionManagerPtr_->GetBackupScene(BUNDLE_NAME); + EXPECT_EQ(backupScene == ""); + + BackupExtInfo info; + info.backupScene = "backupScene"; + sessionManagerPtr_->impl_.backupExtNameMap[BUNDLE_NAME] = info; + sessionManagerPtr_->GetBackupScene(BUNDLE_NAME); + EXPECT_EQ(backupScene == info.backupScene); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "ServiceTest-an exception occurred by GetBackupScene."; + } + GTEST_LOG_(INFO) << "ServiceTest-end SUB_backup_sa_session_GetBackupScene_0200"; +} #include "svc_session_manager_ex_test.cpp" } // namespace OHOS::FileManagement::Backup \ No newline at end of file diff --git a/tests/unittests/backup_utils/b_json/b_json_entity_extension_config_test.cpp b/tests/unittests/backup_utils/b_json/b_json_entity_extension_config_test.cpp index e91e5663f..bdb23949a 100644 --- a/tests/unittests/backup_utils/b_json/b_json_entity_extension_config_test.cpp +++ b/tests/unittests/backup_utils/b_json/b_json_entity_extension_config_test.cpp @@ -1080,4 +1080,132 @@ HWTEST_F(BJsonEntityExtensionConfigTest, backup_b_json_entity_extension_config_3 } GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-end backup_b_json_entity_extension_config_3800"; } + +/** + * @tc.number: SUB_backup_b_json_entity_extension_config_3900 + * @tc.name: backup_b_json_entity_extension_config_3900 + * @tc.desc: 测试GetBackupScene接口能否返回正确参数 + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 2 + * @tc.require: NA + */ +HWTEST_F(BJsonEntityExtensionConfigTest, backup_b_json_entity_extension_config_3900, testing::ext::TestSize.Level2) +{ + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-begin backup_b_json_entity_extension_config_3900"; + try { + string_view sv1 = R"({"":true})"; + BJsonCachedEntity cachedEntity1(sv1); + auto cache1 = cachedEntity1.Structuralize(); + EXPECT_TRUE(cache1.GetBackupScene() == ""); + + string_view sv2 = R"({"backupScene":true})"; + BJsonCachedEntity cachedEntity2(sv2); + auto cache2 = cachedEntity2.Structuralize(); + EXPECT_TRUE(cache2.GetBackupScene() == ""); + + string_view sv3 = R"({"backupScene":"123"})"; + BJsonCachedEntity cachedEntity3(sv3); + auto cache3 = cachedEntity3.Structuralize(); + EXPECT_TRUE(cache3.GetBackupScene() == "123"); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-an exception occurred by GetBackupScene."; + } + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-end backup_b_json_entity_extension_config_3900"; +} + +/** + * @tc.number: SUB_backup_b_json_entity_extension_config_4000 + * @tc.name: backup_b_json_entity_extension_config_4000 + * @tc.desc: 测试HasOptionDir接口能否返回正确参数 + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 2 + * @tc.require: NA + */ +HWTEST_F(BJsonEntityExtensionConfigTest, backup_b_json_entity_extension_config_4000, testing::ext::TestSize.Level2) +{ + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-begin backup_b_json_entity_extension_config_4000"; + try { + string_view sv1 = R"({"":true})"; + BJsonCachedEntity cachedEntity1(sv1); + auto cache1 = cachedEntity1.Structuralize(); + EXPECT_FALSE(cache1.HasOptionDir()); + + string_view sv2 = R"({"optionDir":true})"; + BJsonCachedEntity cachedEntity2(sv2); + auto cache2 = cachedEntity2.Structuralize(); + EXPECT_FALSE(cache2.HasOptionDir()); + + string_view sv3 = R"({"optionDir":["test"]})"; + BJsonCachedEntity cachedEntity3(sv3); + auto cache3 = cachedEntity3.Structuralize(); + EXPECT_TRUE(cache3.HasOptionDir()); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-an exception occurred by HasOptionDir."; + } + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-end backup_b_json_entity_extension_config_4000"; +} + +/** + * @tc.number: SUB_backup_b_json_entity_extension_config_4100 + * @tc.name: backup_b_json_entity_extension_config_4100 + * @tc.desc: 测试GetOptionDir接口能否返回正确参数 + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 2 + * @tc.require: NA + */ +HWTEST_F(BJsonEntityExtensionConfigTest, backup_b_json_entity_extension_config_4100, testing::ext::TestSize.Level2) +{ + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-begin backup_b_json_entity_extension_config_4100"; + try { + string_view sv1 = R"({"":true})"; + BJsonCachedEntity cachedEntity1(sv1); + auto cache1 = cachedEntity1.Structuralize(); + EXPECT_FALSE(cache1.GetOptionDir()); + + string_view sv2 = R"({"optionDir":true})"; + BJsonCachedEntity cachedEntity2(sv2); + auto cache2 = cachedEntity2.Structuralize(); + EXPECT_FALSE(cache2.GetOptionDir()); + + string_view sv3 = R"({"optionDir":["test"]})"; + BJsonCachedEntity cachedEntity3(sv3); + auto cache3 = cachedEntity3.Structuralize(); + EXPECT_TRUE(cache3.GetOptionDir()); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-an exception occurred by GetOptionDir."; + } + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-end backup_b_json_entity_extension_config_4100"; +} + +/** + * @tc.number: SUB_backup_b_json_entity_extension_config_4200 + * @tc.name: backup_b_json_entity_extension_config_4200 + * @tc.desc: 测试GetDirList接口能否返回正确参数 + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 2 + * @tc.require: NA + */ +HWTEST_F(BJsonEntityExtensionConfigTest, backup_b_json_entity_extension_config_4200, testing::ext::TestSize.Level2) +{ + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-begin backup_b_json_entity_extension_config_4200"; + try { + Json::Value jv(Json::nullValue); + vector dir; + EXPECT_TRUE(GetDirList(jv).empty()); + + jv["test"] = "test"; + EXPECT_TRUE(GetDirList(jv)[0] == ""); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-an exception occurred by GetDirList."; + } + GTEST_LOG_(INFO) << "BJsonEntityExtensionConfigTest-end backup_b_json_entity_extension_config_4200"; +} } // namespace OHOS::FileManagement::Backup \ No newline at end of file diff --git a/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_test.cpp b/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_test.cpp index 44a5f6da5..34e91d8b3 100644 --- a/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_test.cpp +++ b/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_test.cpp @@ -627,4 +627,97 @@ HWTEST_F(BJsonUtilTest, b_jsonutil_BuildExtensionErrInfo_0200, testing::ext::Tes } GTEST_LOG_(INFO) << "BJsonUtilTest-end BuildExtensionErrInfo_0200"; } + +/** + * @tc.number: b_jsonutil_FindBackupSceneByName_0100 + * @tc.name: b_jsonutil_FindBackupSceneByName_0100 + * @tc.desc: Test function of FindBackupSceneByName interface for SUCCESS. + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 0 + * @tc.require: I6F3GV + */ +HWTEST_F(BJsonUtilTest, b_jsonutil_FindBackupSceneByName_0100, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "BJsonUtilTest-begin FindBackupSceneByName_0100"; + try { + std::map> bundleNameDetailsMap; + std::string bundleName = "bundle1"; + std::string jobType = "type"; + BJsonUtil::BundleDetailInfo bundleDetail; + + bool result = BJsonUtil::FindBackupSceneByName(bundleNameDetailsMap, bundleName, jobType, bundleDetail); + EXPECT_EQ(false, result); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "BJsonUtilTest-an exception occurred."; + } + GTEST_LOG_(INFO) << "BJsonUtilTest-end FindBackupSceneByName_0100"; +} + +/** + * @tc.number: b_jsonutil_FindBackupSceneByName_0200 + * @tc.name: b_jsonutil_FindBackupSceneByName_0200 + * @tc.desc: Test function of FindBackupSceneByName interface for SUCCESS. + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 0 + * @tc.require: I6F3GV + */ +HWTEST_F(BJsonUtilTest, b_jsonutil_FindBackupSceneByName_0200, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "BJsonUtilTest-begin FindBackupSceneByName_0200"; + try { + std::map> bundleNameDetailsMap; + std::string bundleName = "bundle1"; + std::string jobType = "type"; + std::string backupScene = "backupScene"; + BJsonUtil::BundleDetailInfo detailInfo; + detailInfo.bundleName = bundleName; + detailInfo.type = jobType; + detailInfo.backupScene = backupScene; + bundleNameDetailsMap[bundleName] = {detailInfo}; + BJsonUtil::BundleDetailInfo bundleDetail; + + bool result = BJsonUtil::FindBackupSceneByName(bundleNameDetailsMap, bundleName, jobType, bundleDetail); + EXPECT_EQ(true, result); + EXPECT_EQ(detailInfo.backupScene, bundleDetail.backupScene); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "BJsonUtilTest-an exception occurred."; + } + GTEST_LOG_(INFO) << "BJsonUtilTest-end FindBackupSceneByName_0200"; +} + +/** + * @tc.number: b_jsonutil_FindBackupSceneByName_0300 + * @tc.name: b_jsonutil_FindBackupSceneByName_0300 + * @tc.desc: Test function of FindBackupSceneByName interface for SUCCESS. + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 0 + * @tc.require: I6F3GV + */ +HWTEST_F(BJsonUtilTest, b_jsonutil_FindBackupSceneByName_0300, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "BJsonUtilTest-begin FindBackupSceneByName_0300"; + try { + std::map> bundleNameDetailsMap; + std::string bundleName = "bundle1"; + std::string jobType = "type"; + std::string jobType1 = "type1"; + BJsonUtil::BundleDetailInfo detailInfo; + detailInfo.bundleName = bundleName; + detailInfo.type = jobType; + bundleNameDetailsMap[bundleName] = {detailInfo}; + BJsonUtil::BundleDetailInfo bundleDetail; + + bool result = BJsonUtil::FindBackupSceneByName(bundleNameDetailsMap, bundleName, jobType1, bundleDetail); + EXPECT_EQ(false, result); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "BJsonUtilTest-an exception occurred."; + } + GTEST_LOG_(INFO) << "BJsonUtilTest-end FindBackupSceneByName_0300"; +} } // namespace OHOS::FileManagement::Backup \ No newline at end of file diff --git a/utils/src/b_hiaudit/hi_audit.cpp b/utils/src/b_hiaudit/hi_audit.cpp index 8367eab47..993468555 100644 --- a/utils/src/b_hiaudit/hi_audit.cpp +++ b/utils/src/b_hiaudit/hi_audit.cpp @@ -74,7 +74,7 @@ void HiAudit::Init() } std::string logFilePath = hiAuditConfig_.logPath + hiAuditConfig_.logName + "_audit.csv"; writeFd_ = - open(logFilePath.c_str(), O_CREAT | O_APPEND | O_RDWR, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH); + open(logFilePath.c_str(), O_CREAT | O_APPEND | O_RDWR, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); if (writeFd_ < 0) { HILOGE("Init, open error, logFilePath is:%{public}s, errno:%{public}d", logFilePath.c_str(), errno); } @@ -143,7 +143,7 @@ void HiAudit::GetWriteFilePath() } std::string logFilePath = hiAuditConfig_.logPath + hiAuditConfig_.logName + "_audit.csv"; writeFd_ = - open(logFilePath.c_str(), O_CREAT | O_TRUNC | O_RDWR, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH); + open(logFilePath.c_str(), O_CREAT | O_TRUNC | O_RDWR, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); if (writeFd_ < 0) { HILOGE("GetWriteFilePath, Open fd error, errno:%{public}d", errno); } -- Gitee