From 58f8bbe367f508145fd382d03445370ea91375f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=99=9F=E9=92=B0?= Date: Tue, 22 Oct 2024 16:45:34 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=97=A5=E5=BF=97=E5=8A=A0=E5=AF=86?= =?UTF-8?q?=EF=BC=8C=E4=B8=8B=E5=8F=91userid=E6=A0=BC=E5=BC=8F=E5=90=8C?= =?UTF-8?q?=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 张晟钰 --- .../native/backup_ext/src/ext_backup_js.cpp | 5 +- .../src/module_ipc/service_incremental.cpp | 2 +- .../b_jsonutil/b_jsonutil_other_test.cpp | 82 ++----------------- utils/src/b_jsonutil/b_jsonutil.cpp | 37 +++------ 4 files changed, 20 insertions(+), 106 deletions(-) diff --git a/frameworks/native/backup_ext/src/ext_backup_js.cpp b/frameworks/native/backup_ext/src/ext_backup_js.cpp index 940961200..fee000ebf 100644 --- a/frameworks/native/backup_ext/src/ext_backup_js.cpp +++ b/frameworks/native/backup_ext/src/ext_backup_js.cpp @@ -35,6 +35,7 @@ #include "napi_remote_object.h" #include "unique_fd.h" +#include "b_anony/b_anony.h" #include "b_error/b_error.h" #include "b_error/b_excep_utils.h" #include "b_json/b_json_cached_entity.h" @@ -839,7 +840,7 @@ std::function &argv)> ExtBackupJs::Pa auto onBackupExFun = [backupExtInfo(backupExtInfo_)](napi_env env, vector &argv) -> bool { napi_value backupExtInfoVal = nullptr; napi_create_object(env, &backupExtInfoVal); - HILOGI("backupExtInfo is:%{public}s", backupExtInfo.c_str()); + HILOGI("backupExtInfo is:%{public}s", GetAnonyString(backupExtInfo).c_str()); napi_create_string_utf8(env, backupExtInfo.c_str(), backupExtInfo.size(), &backupExtInfoVal); argv.push_back(backupExtInfoVal); return true; @@ -851,7 +852,7 @@ std::function &argv)> ExtBackupJs::Pa { auto onRestoreExFun = [appVersionCode(appVersionCode_), appVersionStr(appVersionStr_), restoreExtInfo(restoreExtInfo_)](napi_env env, vector &argv) -> bool { - HILOGI("restoreExtInfo is:%{public}s", restoreExtInfo.c_str()); + HILOGI("restoreExtInfo is:%{public}s", GetAnonyString(restoreExtInfo).c_str()); napi_value objValue = nullptr; napi_value restoreRetValue = nullptr; napi_create_object(env, &objValue); diff --git a/services/backup_sa/src/module_ipc/service_incremental.cpp b/services/backup_sa/src/module_ipc/service_incremental.cpp index 8ce248bc3..628ff6185 100644 --- a/services/backup_sa/src/module_ipc/service_incremental.cpp +++ b/services/backup_sa/src/module_ipc/service_incremental.cpp @@ -657,7 +657,7 @@ void Service::SendUserIdToApp(string &bundleName, int32_t userId) HILOGI("BuildBundleInfoJson failed, bundleName : %{public}s", bundleName.c_str()); return; } - HILOGI("current bundle, unicast info: %{public}s", detailInfo.c_str()); + HILOGI("current bundle, unicast info: %{public}s", GetAnonyString(detailInfo).c_str()); session_->SetBackupExtInfo(bundleName, detailInfo); } 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 d4a18214c..b0bdd2e1b 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 @@ -191,34 +191,23 @@ HWTEST_F(BJsonUtilTest, b_jsonutil_BuildBundleInfoJson_0401, testing::ext::TestS std::string detailInfo; int cjson = 0; - EXPECT_CALL(*cJsonMock, cJSON_CreateObject()).WillOnce(Return(nullptr)); - bool result = BJsonUtil::BuildBundleInfoJson(userId, detailInfo); - EXPECT_FALSE(result); - - EXPECT_CALL(*cJsonMock, cJSON_CreateObject()).WillOnce(Return(reinterpret_cast(&cjson))); EXPECT_CALL(*cJsonMock, cJSON_CreateArray()).WillOnce(nullptr); - EXPECT_CALL(*cJsonMock, cJSON_Delete(_)).WillOnce(Return()); - result = BJsonUtil::BuildBundleInfoJson(userId, detailInfo); + bool result = BJsonUtil::BuildBundleInfoJson(userId, detailInfo); EXPECT_FALSE(result); - EXPECT_CALL(*cJsonMock, cJSON_CreateObject()) - .WillOnce(Return(reinterpret_cast(&cjson))) - .WillOnce(Return(nullptr)); EXPECT_CALL(*cJsonMock, cJSON_CreateArray()).WillOnce(Return(reinterpret_cast(&cjson))); - EXPECT_CALL(*cJsonMock, cJSON_AddItemToObject(_, _, _)).WillOnce(Return(true)); + EXPECT_CALL(*cJsonMock, cJSON_CreateObject()).WillOnce(Return(nullptr)); EXPECT_CALL(*cJsonMock, cJSON_Delete(_)).WillOnce(Return()); result = BJsonUtil::BuildBundleInfoJson(userId, detailInfo); EXPECT_FALSE(result); - EXPECT_CALL(*cJsonMock, cJSON_CreateObject()) + EXPECT_CALL(*cJsonMock, cJSON_CreateArray()).WillOnce(Return(reinterpret_cast(&cjson))); + EXPECT_CALL(*cJsonMock, cJSON_CreateObject()).WillOnce(Return(reinterpret_cast(&cjson))); + EXPECT_CALL(*cJsonMock, cJSON_AddStringToObject(_, _, _)) .WillOnce(Return(reinterpret_cast(&cjson))) .WillOnce(Return(reinterpret_cast(&cjson))); - EXPECT_CALL(*cJsonMock, cJSON_CreateArray()) - .WillOnce(Return(reinterpret_cast(&cjson))) - .WillOnce(Return(nullptr)); - EXPECT_CALL(*cJsonMock, cJSON_AddItemToObject(_, _, _)).WillOnce(Return(true)); - EXPECT_CALL(*cJsonMock, cJSON_AddStringToObject(_, _, _)).WillOnce(Return(reinterpret_cast(&cjson))); EXPECT_CALL(*cJsonMock, cJSON_AddItemToArray(_, _)).WillOnce(Return(true)); + EXPECT_CALL(*cJsonMock, cJSON_Print(_)).WillOnce(Return(nullptr)); EXPECT_CALL(*cJsonMock, cJSON_Delete(_)).WillOnce(Return()); result = BJsonUtil::BuildBundleInfoJson(userId, detailInfo); EXPECT_FALSE(result); @@ -229,65 +218,6 @@ HWTEST_F(BJsonUtilTest, b_jsonutil_BuildBundleInfoJson_0401, testing::ext::TestS GTEST_LOG_(INFO) << "BJsonUtilTest-end BuildBundleInfoJson_0401"; } -/** - * @tc.number: b_jsonutil_BuildBundleInfoJson_0402 - * @tc.name: b_jsonutil_BuildBundleInfoJson_0402 - * @tc.desc: Test function of BuildBundleInfoJson interface. - * @tc.size: MEDIUM - * @tc.type: FUNC - * @tc.level Level 0 - * @tc.require: I6F3GV - */ -HWTEST_F(BJsonUtilTest, b_jsonutil_BuildBundleInfoJson_0402, testing::ext::TestSize.Level0) -{ - GTEST_LOG_(INFO) << "BJsonUtilTest-begin BuildBundleInfoJson_0402"; - try { - int32_t userId = 100; - std::string detailInfo; - int cjson = 0; - - EXPECT_CALL(*cJsonMock, cJSON_CreateObject()) - .WillOnce(Return(reinterpret_cast(&cjson))) - .WillOnce(Return(reinterpret_cast(&cjson))) - .WillOnce(Return(nullptr)); - EXPECT_CALL(*cJsonMock, cJSON_CreateArray()) - .WillOnce(Return(reinterpret_cast(&cjson))) - .WillOnce(Return(reinterpret_cast(&cjson))); - EXPECT_CALL(*cJsonMock, cJSON_AddItemToObject(_, _, _)) - .WillOnce(Return(true)) - .WillOnce(Return(true)); - EXPECT_CALL(*cJsonMock, cJSON_AddStringToObject(_, _, _)).WillOnce(Return(reinterpret_cast(&cjson))); - EXPECT_CALL(*cJsonMock, cJSON_AddItemToArray(_, _)).WillOnce(Return(true)); - EXPECT_CALL(*cJsonMock, cJSON_Delete(_)).WillOnce(Return()); - bool result = BJsonUtil::BuildBundleInfoJson(userId, detailInfo); - EXPECT_FALSE(result); - - EXPECT_CALL(*cJsonMock, cJSON_CreateObject()) - .WillOnce(Return(reinterpret_cast(&cjson))) - .WillOnce(Return(reinterpret_cast(&cjson))) - .WillOnce(Return(reinterpret_cast(&cjson))); - EXPECT_CALL(*cJsonMock, cJSON_CreateArray()) - .WillOnce(Return(reinterpret_cast(&cjson))) - .WillOnce(Return(reinterpret_cast(&cjson))); - EXPECT_CALL(*cJsonMock, cJSON_AddItemToObject(_, _, _)) - .WillOnce(Return(true)) - .WillOnce(Return(true)); - EXPECT_CALL(*cJsonMock, cJSON_AddStringToObject(_, _, _)) - .WillOnce(Return(reinterpret_cast(&cjson))) - .WillOnce(Return(reinterpret_cast(&cjson))) - .WillOnce(Return(reinterpret_cast(&cjson))); - EXPECT_CALL(*cJsonMock, cJSON_AddItemToArray(_, _)).WillOnce(Return(true)).WillOnce(Return(true)); - EXPECT_CALL(*cJsonMock, cJSON_Delete(_)).WillOnce(Return()); - EXPECT_CALL(*cJsonMock, cJSON_Print(_)).WillOnce(Return(nullptr)); - result = BJsonUtil::BuildBundleInfoJson(userId, detailInfo); - EXPECT_FALSE(result); - } catch (...) { - EXPECT_TRUE(false); - GTEST_LOG_(INFO) << "BJsonUtilTest-an exception occurred."; - } - GTEST_LOG_(INFO) << "BJsonUtilTest-end BuildBundleInfoJson_0402"; -} - /** * @tc.number: b_jsonutil_BuildOnProcessErrInfo_0501 * @tc.name: b_jsonutil_BuildOnProcessErrInfo_0501 diff --git a/utils/src/b_jsonutil/b_jsonutil.cpp b/utils/src/b_jsonutil/b_jsonutil.cpp index c3cde0b61..57dfbeb03 100644 --- a/utils/src/b_jsonutil/b_jsonutil.cpp +++ b/utils/src/b_jsonutil/b_jsonutil.cpp @@ -209,7 +209,8 @@ static void InsertBundleDetailInfo(cJSON *infos, int infosCount, HILOGE("creat json error"); return; } - const char *const zeroUserId = static_cast(to_string(userId).c_str()); + string userIdstr = to_string(userId); + const char *const zeroUserId = userIdstr.c_str(); cJSON_AddStringToObject(detail, "type", "userId"); cJSON_AddStringToObject(detail, "detail", zeroUserId); cJSON_AddItemToArray(details, detail); @@ -412,45 +413,27 @@ bool BJsonUtil::BuildOnProcessErrInfo(std::string &reportInfo, std::string path, bool BJsonUtil::BuildBundleInfoJson(int32_t userId, string &detailInfo) { - cJSON *root = cJSON_CreateObject(); - if (root == nullptr) { - return false; - } cJSON *infos = cJSON_CreateArray(); if (infos == nullptr) { - cJSON_Delete(root); return false; } - cJSON_AddItemToObject(root, "infos", infos); cJSON *info = cJSON_CreateObject(); if (info == nullptr) { - cJSON_Delete(root); + cJSON_Delete(infos); return false; } - cJSON_AddStringToObject(info, "type", "unicast"); + string userIdstr = to_string(userId); + const char *const zeroUserId = userIdstr.c_str(); + cJSON_AddStringToObject(info, "type", "userId"); + cJSON_AddStringToObject(info, "detail", zeroUserId); cJSON_AddItemToArray(infos, info); - cJSON *details = cJSON_CreateArray(); - if (details == nullptr) { - cJSON_Delete(root); - return false; - } - cJSON_AddItemToObject(info, "details", details); - cJSON *detail = cJSON_CreateObject(); - if (detail == nullptr) { - cJSON_Delete(root); - return false; - } - const char *const zeroUserId = static_cast(to_string(userId).c_str()); - cJSON_AddStringToObject(detail, "type", "userId"); - cJSON_AddStringToObject(detail, "detail", zeroUserId); - cJSON_AddItemToArray(details, detail); - char *jsonStr = cJSON_Print(root); + char *jsonStr = cJSON_Print(infos); if (jsonStr == nullptr) { - cJSON_Delete(root); + cJSON_Delete(infos); return false; } detailInfo = string(jsonStr); - cJSON_Delete(root); + cJSON_Delete(infos); free(jsonStr); return true; } -- Gitee From 5e69ec47f33edebd20915e2a2da955ff54fdb0d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=99=9F=E9=92=B0?= Date: Wed, 23 Oct 2024 07:42:32 +0000 Subject: [PATCH 2/2] update tests/unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 张晟钰 --- .../unittests/backup_utils/b_jsonutil/b_jsonutil_other_test.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 b0bdd2e1b..b33ae44cf 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 @@ -191,7 +191,7 @@ HWTEST_F(BJsonUtilTest, b_jsonutil_BuildBundleInfoJson_0401, testing::ext::TestS std::string detailInfo; int cjson = 0; - EXPECT_CALL(*cJsonMock, cJSON_CreateArray()).WillOnce(nullptr); + EXPECT_CALL(*cJsonMock, cJSON_CreateArray()).WillOnce(Return(nullptr)); bool result = BJsonUtil::BuildBundleInfoJson(userId, detailInfo); EXPECT_FALSE(result); -- Gitee