From fb9be6093ddeddb5ceeb01f2df72e41768caa18b Mon Sep 17 00:00:00 2001 From: sunxuhui7 Date: Wed, 20 Nov 2024 11:38:55 +0800 Subject: [PATCH 1/2] update ret value Signed-off-by: sunxuhui7 Change-Id: Ib82e37643a85ed31d8e4d8a62ae187908a4e1ea0 --- .../frameworks/src/shell_command.cpp | 4 +-- packing_tool/frameworks/include/packager.h | 2 +- .../frameworks/include/shell_command.h | 2 +- packing_tool/frameworks/src/main.cpp | 5 ++-- packing_tool/frameworks/src/packager.cpp | 26 +++++++++++-------- packing_tool/frameworks/src/shell_command.cpp | 11 +++++--- 6 files changed, 29 insertions(+), 21 deletions(-) diff --git a/ohos_packing_tool/frameworks/src/shell_command.cpp b/ohos_packing_tool/frameworks/src/shell_command.cpp index f2ddea80..d82478e5 100644 --- a/ohos_packing_tool/frameworks/src/shell_command.cpp +++ b/ohos_packing_tool/frameworks/src/shell_command.cpp @@ -121,12 +121,12 @@ int ShellCommand::RunAsHelpCommand() return ERR_OK; } -int ShellCommand::RunAsPackCommand() +int32_t ShellCommand::RunAsPackCommand() { std::cout << "RunAsPackCommand " << std::endl; std::unique_ptr packager = getPackager(); if (packager != nullptr) { - packager->MakePackage(); + return packager->MakePackage(); } return ERR_OK; } diff --git a/packing_tool/frameworks/include/packager.h b/packing_tool/frameworks/include/packager.h index 79128858..97aee4d4 100644 --- a/packing_tool/frameworks/include/packager.h +++ b/packing_tool/frameworks/include/packager.h @@ -51,7 +51,7 @@ public: Packager(const std::map ¶meterMap, std::string &resultReceiver); virtual ~Packager(); - std::string MakePackage(); + int32_t MakePackage(); virtual int32_t InitAllowedParam() = 0; virtual int32_t PreProcess() = 0; diff --git a/packing_tool/frameworks/include/shell_command.h b/packing_tool/frameworks/include/shell_command.h index 49802f66..5178f36c 100644 --- a/packing_tool/frameworks/include/shell_command.h +++ b/packing_tool/frameworks/include/shell_command.h @@ -45,7 +45,7 @@ public: int32_t ParseParam(); int32_t OnCommand(); - std::string ExecCommand(); + std::string ExecCommand(int32_t& ret); int32_t CreateCommandMap(); protected: diff --git a/packing_tool/frameworks/src/main.cpp b/packing_tool/frameworks/src/main.cpp index e04fc26d..071fb2c3 100644 --- a/packing_tool/frameworks/src/main.cpp +++ b/packing_tool/frameworks/src/main.cpp @@ -20,6 +20,7 @@ int main(int argc, char *argv[]) { OHOS::AppPackingTool::ShellCommand cmd(argc, argv, OHOS::AppPackingTool::TOOL_NAME); - std::cout << cmd.ExecCommand(); - quick_exit(0); + int32_t ret = 0; + std::cout << cmd.ExecCommand(ret); + quick_exit(ret); } \ No newline at end of file diff --git a/packing_tool/frameworks/src/packager.cpp b/packing_tool/frameworks/src/packager.cpp index 0aa77e8c..a55d72d2 100644 --- a/packing_tool/frameworks/src/packager.cpp +++ b/packing_tool/frameworks/src/packager.cpp @@ -40,28 +40,32 @@ Packager::Packager(const std::map ¶meterMap, std:: Packager::~Packager() {} -std::string Packager::MakePackage() +int32_t Packager::MakePackage() { - if (InitAllowedParam() != ERR_OK) { + int32_t ret = ERR_OK; + ret = InitAllowedParam(); + if (ret != ERR_OK) { LOGE("InitAllowedParam err"); - return ""; + return ret; } - if (PreProcess() != ERR_OK) { + ret = PreProcess(); + if (ret != ERR_OK) { LOGE("PreProcess err"); - return ""; + return ret; } - - if (Process() != ERR_OK) { + ret = Process(); + if (ret != ERR_OK) { LOGE("Process err"); - return ""; + return ret; } - if (PostProcess() != ERR_OK) { + ret = PostProcess(); + if (ret != ERR_OK) { LOGE("PostProcess err"); - return ""; + return ret; } - return "OHOS::ERR_OK"; + return ret; } int32_t Packager::PreProcess() diff --git a/packing_tool/frameworks/src/shell_command.cpp b/packing_tool/frameworks/src/shell_command.cpp index bcc03795..edbba2c6 100644 --- a/packing_tool/frameworks/src/shell_command.cpp +++ b/packing_tool/frameworks/src/shell_command.cpp @@ -95,28 +95,31 @@ int32_t ShellCommand::OnCommand() resultReceiver_.append("not support command: ").append(cmd_).append("\n"); respond = commandMap_[Constants::CMD_HELP]; } - respond(); - return ERR_OK; + return respond(); } -std::string ShellCommand::ExecCommand() +std::string ShellCommand::ExecCommand(int32_t& ret) { int32_t result = CreateCommandMap(); if (result != ERR_OK) { resultReceiver_.append("failed to create command map.\n"); + ret = ERR_INVALID_VALUE; return resultReceiver_; } result = ParseParam(); if (result != ERR_OK) { resultReceiver_.append("failed to init parameter map.\n"); + ret = ERR_INVALID_VALUE; return resultReceiver_; } result = OnCommand(); if (result != ERR_OK) { resultReceiver_.append("failed to execute your command.\n"); + ret = ERR_INVALID_VALUE; return resultReceiver_; } + ret = ERR_OK; return resultReceiver_; } @@ -131,7 +134,7 @@ int32_t ShellCommand::RunAsPackCommand() LOGI("RunAsPackCommand "); std::unique_ptr packager = getPackager(); if (packager != nullptr) { - packager->MakePackage(); + return packager->MakePackage(); } return ERR_OK; } -- Gitee From c82ce74e3ec60c3d357be8e0651a257909b875cd Mon Sep 17 00:00:00 2001 From: sunxuhui7 Date: Wed, 20 Nov 2024 18:20:36 +0800 Subject: [PATCH 2/2] tdd Signed-off-by: sunxuhui7 Change-Id: I26c7600918c2dc77dabc7a32f279ae6157636443 --- packing_tool/frameworks/src/shell_command.cpp | 4 +++- .../frameworks/test/unittest/packager_test/packager_test.cpp | 2 +- .../test/unittest/shell_command_test/shell_command_test.cpp | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/packing_tool/frameworks/src/shell_command.cpp b/packing_tool/frameworks/src/shell_command.cpp index edbba2c6..3ffdb920 100644 --- a/packing_tool/frameworks/src/shell_command.cpp +++ b/packing_tool/frameworks/src/shell_command.cpp @@ -94,6 +94,8 @@ int32_t ShellCommand::OnCommand() if (respond == nullptr) { resultReceiver_.append("not support command: ").append(cmd_).append("\n"); respond = commandMap_[Constants::CMD_HELP]; + respond(); + return ERR_INVALID_VALUE; } return respond(); } @@ -136,7 +138,7 @@ int32_t ShellCommand::RunAsPackCommand() if (packager != nullptr) { return packager->MakePackage(); } - return ERR_OK; + return ERR_INVALID_VALUE; } int32_t ShellCommand::RunAsUnpackCommand() diff --git a/packing_tool/frameworks/test/unittest/packager_test/packager_test.cpp b/packing_tool/frameworks/test/unittest/packager_test/packager_test.cpp index cf0babb8..fd97fcd0 100644 --- a/packing_tool/frameworks/test/unittest/packager_test/packager_test.cpp +++ b/packing_tool/frameworks/test/unittest/packager_test/packager_test.cpp @@ -314,7 +314,7 @@ HWTEST_F(PackagerTest, MakePackage_1300, Function | MediumTest | Level1) std::map parameterMap; OHOS::AppPackingTool::HapPackager packager(parameterMap, resultReceiver); - EXPECT_EQ(packager.MakePackage(), ""); + EXPECT_EQ(packager.MakePackage(), AppPackingTool::ERR_INVALID_VALUE); } /* diff --git a/packing_tool/frameworks/test/unittest/shell_command_test/shell_command_test.cpp b/packing_tool/frameworks/test/unittest/shell_command_test/shell_command_test.cpp index be54810f..2665ed6f 100644 --- a/packing_tool/frameworks/test/unittest/shell_command_test/shell_command_test.cpp +++ b/packing_tool/frameworks/test/unittest/shell_command_test/shell_command_test.cpp @@ -162,7 +162,8 @@ HWTEST_F(ShellCommandTest, ExecCommand_0400, Function | MediumTest | Level1) }; OHOS::AppPackingTool::ShellCommand shellcmd(argc, const_cast(argv), OHOS::AppPackingTool::TOOL_NAME); - std::string resultReceiver = shellcmd.ExecCommand(); + int32_t ret = AppPackingTool::ERR_OK; + std::string resultReceiver = shellcmd.ExecCommand(ret); EXPECT_FALSE(resultReceiver.empty()); } -- Gitee