From 97820b654e111b7b4aa59866a4de08103a619b77 Mon Sep 17 00:00:00 2001 From: yanzhiqi1 Date: Wed, 14 Aug 2024 10:45:27 +0800 Subject: [PATCH] Clear security warnings Issue: https://gitee.com/openharmony/arkcompiler_toolchain/issues/IAMV52 Signed-off-by: yanzhiqi1 --- tooling/base/pt_types.cpp | 7 ++++-- tooling/test/pt_types_test.cpp | 42 +++++++++++++++++++++++----------- 2 files changed, 34 insertions(+), 15 deletions(-) diff --git a/tooling/base/pt_types.cpp b/tooling/base/pt_types.cpp index b138d947..c000ff3f 100644 --- a/tooling/base/pt_types.cpp +++ b/tooling/base/pt_types.cpp @@ -3086,7 +3086,7 @@ std::unique_ptr ScriptTypeProfile::Create(const PtJson ¶m std::string error; auto scriptTypeProfile = std::make_unique(); Result ret; - + std::string scriptId; ret = params.GetString("scriptId", &scriptId); if (ret == Result::SUCCESS) { @@ -3193,6 +3193,7 @@ std::unique_ptr TraceConfig::Create(const PtJson ¶ms) ret = params.GetArray("includedCategories", &includedCategories); if (ret == Result::SUCCESS) { int32_t includedCategoriesLen = includedCategories->GetSize(); + traceConfig->includedCategories_= std::vector(); for (int32_t i = 0; i < includedCategoriesLen; ++i) { std::string pIncludedCategories = includedCategories->Get(i)->GetString(); traceConfig->includedCategories_.value().emplace_back(pIncludedCategories); @@ -3205,6 +3206,7 @@ std::unique_ptr TraceConfig::Create(const PtJson ¶ms) ret = params.GetArray("excludedCategories", &excludedCategories); if (ret == Result::SUCCESS) { int32_t excludedCategoriesLen = excludedCategories->GetSize(); + traceConfig->excludedCategories_ = std::vector(); for (int32_t i = 0; i < excludedCategoriesLen; ++i) { std::string pExcludedCategories = excludedCategories->Get(i)->GetString(); traceConfig->excludedCategories_.value().emplace_back(pExcludedCategories); @@ -3216,7 +3218,8 @@ std::unique_ptr TraceConfig::Create(const PtJson ¶ms) std::unique_ptr syntheticDelays; ret = params.GetArray("syntheticDelays", &syntheticDelays); if (ret == Result::SUCCESS) { - int32_t syntheticDelaysLen = includedCategories->GetSize(); + int32_t syntheticDelaysLen = syntheticDelays->GetSize(); + traceConfig->syntheticDelays_ = std::vector(); for (int32_t i = 0; i < syntheticDelaysLen; ++i) { std::string pSyntheticDelays = syntheticDelays->Get(i)->GetString(); traceConfig->syntheticDelays_.value().emplace_back(pSyntheticDelays); diff --git a/tooling/test/pt_types_test.cpp b/tooling/test/pt_types_test.cpp index 02c2e543..0421c447 100644 --- a/tooling/test/pt_types_test.cpp +++ b/tooling/test/pt_types_test.cpp @@ -309,12 +309,9 @@ HWTEST_F_L0(PtTypesTest, TraceConfigToJsonTest) std::unique_ptr result = treceConfig.ToJson(); ASSERT_TRUE(result); } + HWTEST_F_L0(PtTypesTest, TraceConfigCreateTest) { - std::unique_ptr includedCategoriesArray = PtJson::CreateArray(); - std::unique_ptr excludedCategoriesArray = PtJson::CreateArray(); - std::unique_ptr syntheticDelaysArray = PtJson::CreateArray(); - std::unique_ptr object = PtJson::CreateObject(); std::string attribute = "test"; std::unique_ptr ptJson = PtJson::CreateObject(); ptJson->Add("recordMode", 0); @@ -327,23 +324,42 @@ HWTEST_F_L0(PtTypesTest, TraceConfigCreateTest) ptJson->Add("memoryDumpConfig", attribute.c_str()); std::unique_ptr traceConfig = TraceConfig::Create(*ptJson); ASSERT_TRUE(!traceConfig); - object->Add("test", 0); + std::unique_ptr ptJson1 = PtJson::CreateObject(); - ptJson1->Add("includedCategories", includedCategoriesArray); - ptJson1->Add("recordMode", attribute.c_str()); - ptJson1->Add("excludedCategories", excludedCategoriesArray); - ptJson1->Add("syntheticDelays", syntheticDelaysArray); - ptJson1->Add("memoryDumpConfig", object); + ptJson1->Add("recordMode", "test"); std::unique_ptr traceConfig1 = TraceConfig::Create(*ptJson1); ASSERT_TRUE(!traceConfig1); + std::unique_ptr ptJson2 = PtJson::CreateObject(); std::unique_ptr traceConfig2 = TraceConfig::Create(*ptJson2); ASSERT_TRUE(traceConfig2); + + std::unique_ptr includedCategoriesArray = PtJson::CreateArray(); + includedCategoriesArray->Push("includedCategory"); + std::unique_ptr excludedCategoriesArray = PtJson::CreateArray(); + excludedCategoriesArray->Push("excludedCategory1"); + excludedCategoriesArray->Push("excludedCategory2"); + std::unique_ptr syntheticDelaysArray = PtJson::CreateArray(); + syntheticDelaysArray->Push("syntheticDelay1"); + syntheticDelaysArray->Push("syntheticDelay2"); + syntheticDelaysArray->Push("syntheticDelay3"); std::unique_ptr ptJson3 = PtJson::CreateObject(); - std::unique_ptr memoryDumpConfig = PtJson::CreateArray(); - ptJson3->Add("memoryDumpConfig", std::move(memoryDumpConfig)); + ptJson3->Add("recordMode", "recordUntilFull"); + ptJson3->Add("enableSampling", true); + ptJson3->Add("enableSystrace", true); + ptJson3->Add("enableArgumentFilter", true); + ptJson3->Add("includedCategories", includedCategoriesArray); + ptJson3->Add("excludedCategories", excludedCategoriesArray); + ptJson3->Add("syntheticDelays", syntheticDelaysArray); + ptJson3->Add("memoryDumpConfig", PtJson::CreateObject()); std::unique_ptr traceConfig3 = TraceConfig::Create(*ptJson3); - ASSERT_TRUE(!traceConfig3); + ASSERT_TRUE(traceConfig3); + ASSERT_TRUE(traceConfig3->GetEnableSampling()); + ASSERT_TRUE(traceConfig3->GetEnableSystrace()); + ASSERT_TRUE(traceConfig3->GetEnableArgumentFilter()); + ASSERT_EQ(traceConfig3->GetIncludedCategories()->size(), 1); + ASSERT_EQ(traceConfig3->GetExcludedCategories()->size(), 2); + ASSERT_EQ(traceConfig3->GetSyntheticDelays()->size(), 3); } HWTEST_F_L0(PtTypesTest, ScriptTypeProfileCreateTest) -- Gitee