From af6f25397f7ea95f7bb018c7f6469039a8c7f2a6 Mon Sep 17 00:00:00 2001 From: Fancy code <258828110.@qq.com> Date: Thu, 13 Jun 2024 20:53:11 +0800 Subject: [PATCH] Fixed:App protocol bug. --- application/MissionManager/src/AppMonitor.cpp | 12 ++++++++---- application/MissionManager/src/AppMonitor.h | 5 ++++- .../src/Protocol/SixFrame/SixFrameHandle.cpp | 12 +++--------- .../HuntingCamera/src_mock/AppMonitor_Mock_Test.cpp | 4 +++- test/hal/tool/src/HalTestTool.cpp | 2 ++ test/hal/tool/src/WifiHalMock.h | 2 ++ test/middleware/AppManager/src/AppManager_Test.cpp | 2 +- .../AppManager/tool/include/AppManagerTestTool.h | 2 +- .../AppManager/tool/src/AppManagerTestTool.cpp | 4 ++-- test/middleware/AppManager/tool/src/ServersMock.cpp | 4 ++-- test/middleware/AppManager/tool/src/ServersMock.h | 2 +- 11 files changed, 29 insertions(+), 22 deletions(-) diff --git a/application/MissionManager/src/AppMonitor.cpp b/application/MissionManager/src/AppMonitor.cpp index 1ec2001..331a244 100644 --- a/application/MissionManager/src/AppMonitor.cpp +++ b/application/MissionManager/src/AppMonitor.cpp @@ -15,6 +15,9 @@ #include "AppMonitor.h" #include "ILog.h" #include +AppMonitor::AppMonitor() : mMicStatus(SwitchStatus::END) +{ +} StatusCode AppMonitor::GetProductInfo(AppGetProductInfo ¶m) { LogInfo("AppMonitor::GetProductInfo.\n"); @@ -65,7 +68,7 @@ StatusCode AppMonitor::GetBatteryInfo(AppGetBatteryInfo ¶m) } StatusCode AppMonitor::GetParamValue(AppParamValue ¶m) { - param.mMicStatus = SwitchStatus::ON; + param.mMicStatus = mMicStatus; param.mRec = SwitchStatus::OFF; return CreateStatusCode(STATUS_CODE_OK); } @@ -114,16 +117,18 @@ StatusCode AppMonitor::GetStorageFileList(const AppGetFileInfo &fileInfo, std::v } StatusCode AppMonitor::SetDateTime(const AppSetDateTime ¶m) { - // return CreateStatusCode(STATUS_CODE_OK); } StatusCode AppMonitor::SetTimeZone(const unsigned int &zone) { - // return CreateStatusCode(STATUS_CODE_OK); } StatusCode AppMonitor::SetParamValue(const AppSetParamValue ¶m) { + LogInfo("SetParamValue: param = %s.\n", param.mName.c_str()); + if (param.mName == "mic") { + mMicStatus = static_cast(param.mValue); + } return CreateStatusCode(STATUS_CODE_OK); } StatusCode AppMonitor::EnterRecorder(void) @@ -136,7 +141,6 @@ StatusCode AppMonitor::AppPlayback(const PlayBackEvent &event) } StatusCode AppMonitor::UploadFile(AppUploadFile ¶m) { - // return CreateStatusCode(STATUS_CODE_OK); } StatusCode AppMonitor::GetThumbnail(AppGetThumbnail ¶m) diff --git a/application/MissionManager/src/AppMonitor.h b/application/MissionManager/src/AppMonitor.h index adb1672..c4e48e9 100644 --- a/application/MissionManager/src/AppMonitor.h +++ b/application/MissionManager/src/AppMonitor.h @@ -19,7 +19,7 @@ class AppMonitor : public VAppMonitor { public: - AppMonitor() = default; + AppMonitor(); virtual ~AppMonitor() = default; StatusCode GetProductInfo(AppGetProductInfo ¶m) override; StatusCode GetDeviceAttr(AppGetDeviceAttr ¶m) override; @@ -41,5 +41,8 @@ public: private: SdCardStatus SdCardStatusConvert(const StorageEvent &event); + +private: + SwitchStatus mMicStatus; // TODO: improve delete. }; #endif \ No newline at end of file diff --git a/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp b/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp index 5d84c10..a3db775 100644 --- a/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp +++ b/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp @@ -714,16 +714,10 @@ AppSetParamValue inline SixFrameHandle::RequestSetParamValueParse(const std::str auto parseFunc = [](const std::string &key, const std::string &value, std::shared_ptr &parse) { std::shared_ptr> parseImpl = std::dynamic_pointer_cast>(parse); - if ("switchcam" == key) { - parseImpl->mData.mName = "switchcam"; - parseImpl->mData.mValue = std::stoi(value); + if ("param" == key) { + parseImpl->mData.mName = value; } - if ("rec" == key) { - parseImpl->mData.mName = "rec"; - parseImpl->mData.mValue = std::stoi(value); - } - if ("mic" == key) { - parseImpl->mData.mName = "mic"; + if ("value" == key) { parseImpl->mData.mValue = std::stoi(value); } }; diff --git a/test/application/HuntingCamera/src_mock/AppMonitor_Mock_Test.cpp b/test/application/HuntingCamera/src_mock/AppMonitor_Mock_Test.cpp index 8d0ad3c..8ff68d9 100644 --- a/test/application/HuntingCamera/src_mock/AppMonitor_Mock_Test.cpp +++ b/test/application/HuntingCamera/src_mock/AppMonitor_Mock_Test.cpp @@ -178,7 +178,9 @@ TEST_F(HuntingCameraTest, INTEGRATION_HunttingCamera_AUTO_SetParamValue) MainThread::GetInstance()->Init(); TestManager::ResetTimeOut(1000 * 3); std::this_thread::sleep_for(std::chrono::milliseconds(100)); - MockSetParamValue(); + MockSetParamValue("mic", "1"); + std::this_thread::sleep_for(std::chrono::milliseconds(100)); + MockGetParamValue("mic"); MainThread::GetInstance()->Runing(); } // ../output_files/test/bin/HuntingCameraTest diff --git a/test/hal/tool/src/HalTestTool.cpp b/test/hal/tool/src/HalTestTool.cpp index 305a174..0db7f51 100644 --- a/test/hal/tool/src/HalTestTool.cpp +++ b/test/hal/tool/src/HalTestTool.cpp @@ -186,6 +186,8 @@ void HalTestTool::HalMockInit(std::shared_ptr &vMock) std::shared_ptr wifiHal = std::make_shared(); std::shared_ptr wifiHalMock = std::dynamic_pointer_cast(wifiHal); EXPECT_CALL(*wifiHalMock.get(), OpenApMode()).WillRepeatedly(DoAll(Return(CreateStatusCode(STATUS_CODE_OK)))); + EXPECT_CALL(*wifiHalMock.get(), PowerOn()).WillRepeatedly(DoAll(Return(CreateStatusCode(STATUS_CODE_OK)))); + EXPECT_CALL(*wifiHalMock.get(), PowerOff()).WillRepeatedly(DoAll(Return(CreateStatusCode(STATUS_CODE_OK)))); EXPECT_CALL(*mock.get(), GetWifiHalTrace(_)) .WillRepeatedly(DoAll(SetArgReferee<0>(wifiHal), Return(CreateStatusCode(STATUS_CODE_OK)))); EXPECT_CALL(*mock.get(), GetCameraHalTrace(_)) diff --git a/test/hal/tool/src/WifiHalMock.h b/test/hal/tool/src/WifiHalMock.h index 4781491..f5860e3 100644 --- a/test/hal/tool/src/WifiHalMock.h +++ b/test/hal/tool/src/WifiHalMock.h @@ -28,5 +28,7 @@ public: WifiHalMock() = default; virtual ~WifiHalMock() = default; MOCK_METHOD0(OpenApMode, StatusCode(void)); + MOCK_METHOD0(PowerOn, StatusCode(void)); + MOCK_METHOD0(PowerOff, StatusCode(void)); }; #endif \ No newline at end of file diff --git a/test/middleware/AppManager/src/AppManager_Test.cpp b/test/middleware/AppManager/src/AppManager_Test.cpp index f65bc77..64cddc8 100644 --- a/test/middleware/AppManager/src/AppManager_Test.cpp +++ b/test/middleware/AppManager/src/AppManager_Test.cpp @@ -269,7 +269,7 @@ TEST_F(AppManagerTest, INTEGRATION_AppManager_EXAMPLE_AUTO_SetParamValue) IAppManager::GetInstance()->Init(mAppParam); IAppManager::GetInstance()->SetAppMonitor(monitor); std::this_thread::sleep_for(std::chrono::milliseconds(100)); - MockSetParamValue(); + MockSetParamValue("mic", "1"); std::this_thread::sleep_for(std::chrono::milliseconds(1000)); IAppManager::GetInstance()->UnInit(); } diff --git a/test/middleware/AppManager/tool/include/AppManagerTestTool.h b/test/middleware/AppManager/tool/include/AppManagerTestTool.h index 7031bc0..5101ff3 100644 --- a/test/middleware/AppManager/tool/include/AppManagerTestTool.h +++ b/test/middleware/AppManager/tool/include/AppManagerTestTool.h @@ -40,7 +40,7 @@ protected: // About http void MockGetLockVideoStatus(void); void MockGetStorageInfo(void); void MockGetStorageFileList(void); - void MockSetParamValue(void); + void MockSetParamValue(const std::string &item, const std::string &value); void MockEnterRecorder(void); void MockAppPlayback(void); void MockMonitorSetFileList(std::vector &files); diff --git a/test/middleware/AppManager/tool/src/AppManagerTestTool.cpp b/test/middleware/AppManager/tool/src/AppManagerTestTool.cpp index fda61f5..6a3eb3b 100644 --- a/test/middleware/AppManager/tool/src/AppManagerTestTool.cpp +++ b/test/middleware/AppManager/tool/src/AppManagerTestTool.cpp @@ -182,7 +182,7 @@ void AppManagerTestTool::MockGetStorageFileList(void) } ServersMock::GetInstance()->MockGetStorageFileList(); } -void AppManagerTestTool::MockSetParamValue(void) +void AppManagerTestTool::MockSetParamValue(const std::string &item, const std::string &value) { std::shared_ptr mock = std::dynamic_pointer_cast(mAppMonitorMock); if (mock) { @@ -190,7 +190,7 @@ void AppManagerTestTool::MockSetParamValue(void) .Times(ONLY_BE_CALLED_ONCE) .WillOnce(DoAll(Return(CreateStatusCode(STATUS_CODE_VIRTUAL_FUNCTION)))); } - ServersMock::GetInstance()->MockSetParamValue(); + ServersMock::GetInstance()->MockSetParamValue(item, value); } void AppManagerTestTool::MockEnterRecorder(void) { diff --git a/test/middleware/AppManager/tool/src/ServersMock.cpp b/test/middleware/AppManager/tool/src/ServersMock.cpp index d703e15..e9308e3 100644 --- a/test/middleware/AppManager/tool/src/ServersMock.cpp +++ b/test/middleware/AppManager/tool/src/ServersMock.cpp @@ -140,10 +140,10 @@ void ServersMock::MockSetTimeZone(void) std::string mockRequest = mServerUrl + APP_SET_TIME_ZONE + "?timezone=8"; MockHttpGet(mockRequest); } -void ServersMock::MockSetParamValue(void) +void ServersMock::MockSetParamValue(const std::string &item, const std::string &value) { LogInfo("APP_SET_PARAM_VALUE test start.\n"); - std::string mockRequest = mServerUrl + APP_SET_PARAM_VALUE + "?param=switchcam&value=1"; + std::string mockRequest = mServerUrl + APP_SET_PARAM_VALUE + "?param=" + item + "&value=" + value; MockHttpGet(mockRequest); } void ServersMock::MockEnterRecorder(void) diff --git a/test/middleware/AppManager/tool/src/ServersMock.h b/test/middleware/AppManager/tool/src/ServersMock.h index 112a3fa..39748b3 100644 --- a/test/middleware/AppManager/tool/src/ServersMock.h +++ b/test/middleware/AppManager/tool/src/ServersMock.h @@ -37,7 +37,7 @@ public: virtual void MockGetStorageFileList(void); virtual void MockSetDateTime(void); virtual void MockSetTimeZone(void); - virtual void MockSetParamValue(void); + virtual void MockSetParamValue(const std::string &item, const std::string &value); virtual void MockEnterRecorder(void); virtual void MockAppPlayback(void); virtual void MockUploadFiles(void);