/* * Copyright (c) 2023 Fancy Code. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #include "GtestUsing.h" #include "HalTestTool.h" #include "ILog.h" #include "IMediaManager.h" #include "MediaManagerTestTool.h" #include #include #include namespace MediaManagerTest { class MediaManagerTest : public testing::Test, public MediaManagerTestTool, public HalTestTool { public: MediaManagerTest() { } virtual ~MediaManagerTest() { } static void SetUpTestCase() { CreateLogModule(); ILogInit(LOG_INSTANCE_TYPE_END); } static void TearDownTestCase() { ILogUnInit(); } virtual void SetUp() { CreateAllCamerasMcok(); HalTestTool::Init(); MediaManagerTestTool::Init(); CreateHalCppModule(); CreateMediaManagerModule(); } virtual void TearDown() { MediaManagerTestTool::UnInit(); HalTestTool::UnInit(); DestroyMediaManagerModule(); DestroyHalCppModule(); DestroyAllCamerasMock(); } private: void CreateAllCamerasMcok(void) { std::shared_ptr camera = HalTestTool::MakeCameraHalTest(CameraType::MAIN_CAMERA); mAllCamerasMock[CameraType::MAIN_CAMERA] = camera; } void DestroyAllCamerasMock(void) { mAllCamerasMock.clear(); } protected: // const AppParam mAppParam; std::map> mAllCamerasMock; }; // ../output_files/test/bin/MediaManagerTest --gtest_filter=MediaManagerTest.INTEGRATION_MediaManager_EXAMPLE_Demo0 TEST_F(MediaManagerTest, INTEGRATION_MediaManager_EXAMPLE_Demo0) { SetAllCamerasResult(mAllCamerasMock); std::shared_ptr monitor = MediaManagerTestTool::MakeMonitorMock(); IMediaManager::GetInstance()->Init(); IMediaManager::GetInstance()->SetMediaMonitor(monitor); std::this_thread::sleep_for(std::chrono::milliseconds(100)); MockReportCameraEvent("test name", "test path", CameraEvent::PICTIRUE, CameraType::MAIN_CAMERA); // MockAppClientConnect(); // std::this_thread::sleep_for(std::chrono::milliseconds(100)); // MockSetRecordingStatus(RecordingStatus::RECORDING_START); // std::this_thread::sleep_for(std::chrono::milliseconds(2000)); // IAppManager::GetInstance()->UnInit(); IMediaManager::GetInstance()->UnInit(); } } // namespace MediaManagerTest