112 lines
4.5 KiB
C++
112 lines
4.5 KiB
C++
/*
|
|
* 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 "AppManagerTestTool.h"
|
|
#include "IAppManager.h"
|
|
#include "ILog.h"
|
|
#include <gmock/gmock.h>
|
|
#include <gtest/gtest.h>
|
|
#include <thread>
|
|
namespace AppManagerTest
|
|
{
|
|
class AppManagerTest : public testing::Test, public AppManagerTestTool
|
|
{
|
|
public:
|
|
AppManagerTest() : mAppParam(APP_MANAGER_HTTP_SERVER_IP, APP_MANAGER_HTTP_SERVER_PORT) {}
|
|
virtual ~AppManagerTest() {}
|
|
static void SetUpTestCase()
|
|
{
|
|
CreateLogModule();
|
|
ILogInit(LOG_INSTANCE_TYPE_END);
|
|
}
|
|
static void TearDownTestCase() { ILogUnInit(); }
|
|
virtual void SetUp()
|
|
{
|
|
AppManagerTestTool::Init();
|
|
CreateAppManagerModule();
|
|
}
|
|
virtual void TearDown()
|
|
{
|
|
AppManagerTestTool::UnInit();
|
|
DestroyAppManagerModule();
|
|
}
|
|
|
|
protected:
|
|
const AppParam mAppParam;
|
|
};
|
|
// ../output_files/test/bin/AppManagerTest --gtest_filter=AppManagerTest.INTEGRATION_AppManager_EXAMPLE_Demo0
|
|
TEST_F(AppManagerTest, INTEGRATION_AppManager_EXAMPLE_Demo0)
|
|
{
|
|
IAppManager::GetInstance()->Init(mAppParam);
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(100));
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(2000));
|
|
IAppManager::GetInstance()->UnInit();
|
|
}
|
|
// ../output_files/test/bin/AppManagerTest --gtest_filter=AppManagerTest.INTEGRATION_AppManager_EXAMPLE_Demo
|
|
TEST_F(AppManagerTest, INTEGRATION_AppManager_EXAMPLE_Demo)
|
|
{
|
|
IAppManager::GetInstance()->Init(mAppParam);
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(100));
|
|
MockGetProductInfo();
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(1000));
|
|
IAppManager::GetInstance()->UnInit();
|
|
}
|
|
// ../output_files/test/bin/AppManagerTest --gtest_filter=AppManagerTest.INTEGRATION_AppManager_EXAMPLE_AUTO_Upload
|
|
TEST_F(AppManagerTest, INTEGRATION_AppManager_EXAMPLE_AUTO_Upload)
|
|
{
|
|
std::shared_ptr<VAppMonitor> monitor = AppManagerTestTool::MakeMonitorMock();
|
|
IAppManager::GetInstance()->Init(mAppParam);
|
|
IAppManager::GetInstance()->SetAppMonitor(monitor);
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(100));
|
|
MockUploadFiles();
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(1000));
|
|
IAppManager::GetInstance()->UnInit();
|
|
}
|
|
// ../output_files/test/bin/AppManagerTest
|
|
// --gtest_filter=AppManagerTest.INTEGRATION_AppManager_EXAMPLE_AUTO_GetDeviceAttr
|
|
TEST_F(AppManagerTest, INTEGRATION_AppManager_EXAMPLE_AUTO_GetDeviceAttr)
|
|
{
|
|
std::shared_ptr<VAppMonitor> monitor = AppManagerTestTool::MakeMonitorMock();
|
|
IAppManager::GetInstance()->Init(mAppParam);
|
|
IAppManager::GetInstance()->SetAppMonitor(monitor);
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(100));
|
|
MockGetDeviceAttr();
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(1000));
|
|
IAppManager::GetInstance()->UnInit();
|
|
}
|
|
// ../output_files/test/bin/AppManagerTest
|
|
// --gtest_filter=AppManagerTest.INTEGRATION_AppManager_EXAMPLE_AUTO_GetMediaInfo
|
|
TEST_F(AppManagerTest, INTEGRATION_AppManager_EXAMPLE_AUTO_GetMediaInfo)
|
|
{
|
|
std::shared_ptr<VAppMonitor> monitor = AppManagerTestTool::MakeMonitorMock();
|
|
IAppManager::GetInstance()->Init(mAppParam);
|
|
IAppManager::GetInstance()->SetAppMonitor(monitor);
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(100));
|
|
MockGetMediaInfo();
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(1000));
|
|
IAppManager::GetInstance()->UnInit();
|
|
}
|
|
// ../output_files/test/bin/AppManagerTest
|
|
// --gtest_filter=AppManagerTest.INTEGRATION_AppManager_EXAMPLE_AUTO_GetSdCardInfo
|
|
TEST_F(AppManagerTest, INTEGRATION_AppManager_EXAMPLE_AUTO_GetSdCardInfo)
|
|
{
|
|
std::shared_ptr<VAppMonitor> monitor = AppManagerTestTool::MakeMonitorMock();
|
|
IAppManager::GetInstance()->Init(mAppParam);
|
|
IAppManager::GetInstance()->SetAppMonitor(monitor);
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(100));
|
|
MockGetSdCardInfo();
|
|
std::this_thread::sleep_for(std::chrono::milliseconds(1000));
|
|
IAppManager::GetInstance()->UnInit();
|
|
}
|
|
} // namespace AppManagerTest
|