From e85e3143e2aa96745444121fa62ff14a069d8369 Mon Sep 17 00:00:00 2001 From: chensihan Date: Wed, 23 Apr 2025 10:36:57 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=A2=9E=E5=8A=A0ut=20Signed-off-by:=20che?= =?UTF-8?q?nsihan=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../backup_sa/module_ipc/service_test.cpp | 78 ++++++++++++++++ .../backup_sa/module_ipc/sub_service_test.cpp | 43 +++++++++ .../b_jsonutil/b_jsonutil_other_test.cpp | 89 +++++++++++++++++++ .../b_jsonutil/b_jsonutil_test.cpp | 33 +++++++ 4 files changed, 243 insertions(+) diff --git a/tests/unittests/backup_sa/module_ipc/service_test.cpp b/tests/unittests/backup_sa/module_ipc/service_test.cpp index 1617f219b..fa05ae82d 100644 --- a/tests/unittests/backup_sa/module_ipc/service_test.cpp +++ b/tests/unittests/backup_sa/module_ipc/service_test.cpp @@ -1975,6 +1975,84 @@ HWTEST_F(ServiceTest, SUB_Service_HandleNotSupportBundleNames_0100, testing::ext GTEST_LOG_(INFO) << "ServiceTest-end SUB_Service_HandleNotSupportBundleNames_0100"; } +/** + * @tc.number: SUB_Service_HandleCurAppDone_0100 + * @tc.name: SUB_Service_HandleCurAppDone_0100 + * @tc.desc: 测试 HandleCurAppDone 接口 + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 1 + * @tc.require: I6F3GV + */ +HWTEST_F(ServiceTest, SUB_Service_HandleCurAppDone_0100, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "ServiceTest-begin SUB_Service_HandleCurAppDone_0100"; + try { + EXPECT_TRUE(servicePtr_ != nullptr); + ErrCode err = BError(BError::Codes::OK); + const std::string bundleName = "test0"; + bool isIncBackup = false; + auto ret = servicePtr_->HandleCurAppDone(err, bundleName, isIncBackup); + EXPECT_NE(ret, BError(BError::Codes::OK)); + + isIncBackup = true; + ret = servicePtr_->HandleCurAppDone(err, bundleName, isIncBackup); + EXPECT_NE(ret, BError(BError::Codes::OK)); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "ServiceTest-an exception occurred by HandleCurAppDone."; + } + GTEST_LOG_(INFO) << "ServiceTest-end SUB_Service_HandleCurAppDone_0100"; +} + +/** + * @tc.number: SUB_Service_SendStartAppGalleryNotify_0102 + * @tc.name: SUB_Service_SendStartAppGalleryNotify_0102 + * @tc.desc: 测试 SendStartAppGalleryNotify 接口 + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 1 + * @tc.require: I6F3GV + */ +HWTEST_F(ServiceTest, SUB_Service_SendStartAppGalleryNotify_0102, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "ServiceTest-begin SUB_Service_SendStartAppGalleryNotify_0100"; + try { + EXPECT_TRUE(servicePtr_ != nullptr); + const std::string bundleName = "3201"; + servicePtr_->SendStartAppGalleryNotify(bundleName); + EXPECT_TRUE(true); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "ServiceTest-an exception occurred by SendStartAppGalleryNotify."; + } + GTEST_LOG_(INFO) << "ServiceTest-end SUB_Service_SendStartAppGalleryNotify_0102"; +} + +/** + * @tc.number: SUB_Service_SendEndAppGalleryNotify_0102 + * @tc.name: SUB_Service_SendEndAppGalleryNotify_0102 + * @tc.desc: 测试 SendEndAppGalleryNotify 接口 + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 1 + * @tc.require: I6F3GV + */ +HWTEST_F(ServiceTest, SUB_Service_SendEndAppGalleryNotify_0102, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "ServiceTest-begin SUB_Service_SendEndAppGalleryNotify_0100"; + try { + EXPECT_TRUE(servicePtr_ != nullptr); + const std::string bundleName = "3201"; + servicePtr_->SendEndAppGalleryNotify(bundleName); + EXPECT_TRUE(true); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "ServiceTest-an exception occurred by SendEndAppGalleryNotify."; + } + GTEST_LOG_(INFO) << "ServiceTest-end SUB_Service_SendEndAppGalleryNotify_0102"; +} + /** * @tc.number: SUB_Service_RefreshDataSize_0100 * @tc.name: SUB_Service_RefreshDataSize_0100 diff --git a/tests/unittests/backup_sa/module_ipc/sub_service_test.cpp b/tests/unittests/backup_sa/module_ipc/sub_service_test.cpp index bb02a82c8..edeaca47b 100644 --- a/tests/unittests/backup_sa/module_ipc/sub_service_test.cpp +++ b/tests/unittests/backup_sa/module_ipc/sub_service_test.cpp @@ -328,6 +328,49 @@ HWTEST_F(ServiceTest, SUB_Service_GetFileHandle_0100, TestSize.Level1) GTEST_LOG_(INFO) << "ServiceTest-end SUB_Service_GetFileHandle_0100"; } +/** + * @tc.number: SUB_Service_GetFileHandle_0200 + * @tc.name: SUB_Service_GetFileHandle_0200 + * @tc.desc: 测试 GetFileHandle 的正常/异常分支 + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 1 + * @tc.require: issueIAKC3I + */ +HWTEST_F(ServiceTest, SUB_Service_GetFileHandle_0200, TestSize.Level1) +{ + GTEST_LOG_(INFO) << "ServiceTest-begin SUB_Service_GetFileHandle_0200"; + try { + string bundleName; + string fileName = "../"; + + auto session_ = service->session_; + service->session_ = nullptr; + auto ret = service->GetFileHandle(bundleName, fileName); + EXPECT_EQ(ret, BError(BError::Codes::SA_INVAL_ARG).GetCode()); + service->session_ = session_; + + EXPECT_CALL(*skeleton, GetCallingTokenID()).WillOnce(Return(0)).WillOnce(Return(0)); + EXPECT_CALL(*token, GetTokenType(_)).WillOnce(Return(Security::AccessToken::ATokenTypeEnum::TOKEN_SHELL)); + EXPECT_CALL(*skeleton, GetCallingUid()).WillOnce(Return(BConstants::SYSTEM_UID)); + ret = service->GetFileHandle(bundleName, fileName); + EXPECT_EQ(ret, BError(BError::Codes::SA_INVAL_ARG).GetCode()); + + fileName = "test.txt"; + EXPECT_CALL(*skeleton, GetCallingTokenID()).WillOnce(Return(0)).WillOnce(Return(0)); + EXPECT_CALL(*token, GetTokenType(_)).WillOnce(Return(Security::AccessToken::ATokenTypeEnum::TOKEN_SHELL)); + EXPECT_CALL(*skeleton, GetCallingUid()).WillOnce(Return(BConstants::SYSTEM_UID)); + EXPECT_CALL(*depManager, UpdateToRestoreBundleMap(_, _)).WillOnce(Return(false)); + EXPECT_CALL(*session, GetServiceSchedAction(_)).WillOnce(Return(BConstants::ServiceSchedAction::UNKNOWN)); + ret = service->GetFileHandle(bundleName, fileName); + EXPECT_EQ(ret, BError(BError::Codes::SA_INVAL_ARG).GetCode()); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "ServiceTest-an exception occurred by GetFileHandle."; + } + GTEST_LOG_(INFO) << "ServiceTest-end SUB_Service_GetFileHandle_0200"; +} + /** * @tc.number: SUB_Service_OnBackupExtensionDied_0000 * @tc.name: SUB_Service_OnBackupExtensionDied_0000 diff --git a/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp b/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp index 7cac718a4..a6426393c 100644 --- a/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp +++ b/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp @@ -392,4 +392,93 @@ HWTEST_F(BJsonUtilTest, b_jsonutil_WriteToStr_0801, testing::ext::TestSize.Level } GTEST_LOG_(INFO) << "BJsonUtilTest-end WriteToStr_0801"; } + +/** + * @tc.number: b_jsonutil_ParseBackupVersion_0901 + * @tc.name: b_jsonutil_ParseBackupVersion_0901 + * @tc.desc: Test function of ParseBackupVersion interface. + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 0 + * @tc.require: I6F3GV + */ +HWTEST_F(BJsonUtilTest, b_jsonutil_ParseBackupVersion_0901, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "BJsonUtilTest-begin ParseBackupVersion_0901"; + try { + int cjson = 0; + EXPECT_CALL(*cJsonMock, cJSON_Parse(_)).WillOnce(Return(nullptr)); + auto result = BJsonUtil::ParseBackupVersion(); + EXPECT_EQ(result, ""); + + EXPECT_CALL(*cJsonMock, cJSON_Parse(_)).WillOnce(Return(reinterpret_cast(&cjson))); + EXPECT_CALL(*cJsonMock, cJSON_GetObjectItem(_, _)).WillOnce(Return(nullptr)); + EXPECT_CALL(*cJsonMock, cJSON_Delete(_)).WillOnce(Return()); + result = BJsonUtil::ParseBackupVersion(); + EXPECT_EQ(result, ""); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "BJsonUtilTest-an exception occurred."; + } + GTEST_LOG_(INFO) << "BJsonUtilTest-end ParseBackupVersion_0901"; +} + +/** + * @tc.number: b_jsonutil_HasUnicastInfo_1001 + * @tc.name: b_jsonutil_HasUnicastInfo_1001 + * @tc.desc: Test function of HasUnicastInfo interface. + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 0 + * @tc.require: I6F3GV + */ +HWTEST_F(BJsonUtilTest, b_jsonutil_HasUnicastInfo_1001, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "BJsonUtilTest-begin HasUnicastInfo_1001"; + try { + std::string bundleInfo; + EXPECT_CALL(*cJsonMock, cJSON_Parse(_)).WillOnce(Return(nullptr)); + auto result = BJsonUtil::HasUnicastInfo(bundleInfo); + EXPECT_FALSE(result); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "BJsonUtilTest-an exception occurred."; + } + GTEST_LOG_(INFO) << "BJsonUtilTest-end HasUnicastInfo_1001"; +} + +/** + * @tc.number: b_jsonutil_BuildExtensionErrInfo_0301 + * @tc.name: b_jsonutil_BuildExtensionErrInfo_0301 + * @tc.desc: Test function of BuildExtensionErrInfo interface. + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 0 + * @tc.require: I6F3GV + */ +HWTEST_F(BJsonUtilTest, b_jsonutil_BuildExtensionErrInfo_0301, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "BJsonUtilTest-begin BuildExtensionErrInfo_0301"; + try { + std::string jsonStr; + int errCode = 1; + std::string errMsg = "error"; + int cjson = 0; + EXPECT_CALL(*cJsonMock, cJSON_CreateObject()) + .WillOnce(Return(reinterpret_cast(&cjson))) + .WillOnce(Return(reinterpret_cast(&cjson))); + EXPECT_CALL(*cJsonMock, cJSON_AddStringToObject(_, _, _)) + .WillOnce(Return(nullptr)) + .WillOnce(Return(nullptr)); + EXPECT_CALL(*cJsonMock, cJSON_AddItemToObject(_, _, _)).WillOnce(Return(true)); + EXPECT_CALL(*cJsonMock, cJSON_Print(_)).WillOnce(Return(nullptr)); + EXPECT_CALL(*cJsonMock, cJSON_Delete(_)).WillOnce(Return()); + bool result = BJsonUtil::BuildExtensionErrInfo(jsonStr, errCode, errMsg); + EXPECT_FALSE(result); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "BJsonUtilTest-an exception occurred."; + } + GTEST_LOG_(INFO) << "BJsonUtilTest-end BuildExtensionErrInfo_0301"; +} } \ 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..64ffb72e9 100644 --- a/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_test.cpp +++ b/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_test.cpp @@ -453,6 +453,39 @@ HWTEST_F(BJsonUtilTest, b_jsonutil_BuildBundleInfos_1000, testing::ext::TestSize GTEST_LOG_(INFO) << "BJsonUtilTest-end BuildBundleInfos_1000"; } +/** + * @tc.number: b_jsonutil_BuildBundleInfos_1100 + * @tc.name: b_jsonutil_BuildBundleInfos_1100 + * @tc.desc: Test function of BuildBundleInfos interface for SUCCESS. + * @tc.size: MEDIUM + * @tc.type: FUNC + * @tc.level Level 0 + * @tc.require: I6F3GV + */ +HWTEST_F(BJsonUtilTest, b_jsonutil_BuildBundleInfos_1100, testing::ext::TestSize.Level1) +{ + GTEST_LOG_(INFO) << "BJsonUtilTest-begin BuildBundleInfos_1100"; + try { + std::vector bundleNames; + std::string bundleName = ""; + bundleNames.push_back(bundleName); + std::vector bundleInfos; + std::string bundleInfo = {"{\"infos\":[\"infos\"]}"}; + bundleInfos.push_back(bundleInfo); + int32_t userId = TEST_USER_ID; + std::vector bundleNamesOnly; + std::map isClearDataFlags; + + auto result = BJsonUtil::BuildBundleInfos(bundleNames, bundleInfos, bundleNamesOnly, + userId, isClearDataFlags); + EXPECT_TRUE(result.empty()); + } catch (...) { + EXPECT_TRUE(false); + GTEST_LOG_(INFO) << "BJsonUtilTest-an exception occurred."; + } + GTEST_LOG_(INFO) << "BJsonUtilTest-end BuildBundleInfos_1100"; +} + /** * @tc.number: b_jsonutil_FindBundleInfoByName_0100 * @tc.name: b_jsonutil_FindBundleInfoByName_0100 -- Gitee From 4f2afea2eea462c502864a9c550d8ee5c6eac48b Mon Sep 17 00:00:00 2001 From: chensihan Date: Wed, 23 Apr 2025 06:23:00 +0000 Subject: [PATCH 2/2] update tests/unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp. Signed-off-by: chensihan --- .../b_jsonutil/b_jsonutil_other_test.cpp | 35 ------------------- 1 file changed, 35 deletions(-) diff --git a/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp b/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp index a6426393c..1ed0b3262 100644 --- a/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp +++ b/tests/unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp @@ -446,39 +446,4 @@ HWTEST_F(BJsonUtilTest, b_jsonutil_HasUnicastInfo_1001, testing::ext::TestSize.L } GTEST_LOG_(INFO) << "BJsonUtilTest-end HasUnicastInfo_1001"; } - -/** - * @tc.number: b_jsonutil_BuildExtensionErrInfo_0301 - * @tc.name: b_jsonutil_BuildExtensionErrInfo_0301 - * @tc.desc: Test function of BuildExtensionErrInfo interface. - * @tc.size: MEDIUM - * @tc.type: FUNC - * @tc.level Level 0 - * @tc.require: I6F3GV - */ -HWTEST_F(BJsonUtilTest, b_jsonutil_BuildExtensionErrInfo_0301, testing::ext::TestSize.Level1) -{ - GTEST_LOG_(INFO) << "BJsonUtilTest-begin BuildExtensionErrInfo_0301"; - try { - std::string jsonStr; - int errCode = 1; - std::string errMsg = "error"; - int cjson = 0; - EXPECT_CALL(*cJsonMock, cJSON_CreateObject()) - .WillOnce(Return(reinterpret_cast(&cjson))) - .WillOnce(Return(reinterpret_cast(&cjson))); - EXPECT_CALL(*cJsonMock, cJSON_AddStringToObject(_, _, _)) - .WillOnce(Return(nullptr)) - .WillOnce(Return(nullptr)); - EXPECT_CALL(*cJsonMock, cJSON_AddItemToObject(_, _, _)).WillOnce(Return(true)); - EXPECT_CALL(*cJsonMock, cJSON_Print(_)).WillOnce(Return(nullptr)); - EXPECT_CALL(*cJsonMock, cJSON_Delete(_)).WillOnce(Return()); - bool result = BJsonUtil::BuildExtensionErrInfo(jsonStr, errCode, errMsg); - EXPECT_FALSE(result); - } catch (...) { - EXPECT_TRUE(false); - GTEST_LOG_(INFO) << "BJsonUtilTest-an exception occurred."; - } - GTEST_LOG_(INFO) << "BJsonUtilTest-end BuildExtensionErrInfo_0301"; -} } \ No newline at end of file -- Gitee