158 lines
9.0 KiB
C++
158 lines
9.0 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 "IpcConfigTest.h"
|
|
#include "IIpcConfig.h"
|
|
#include "ILog.h"
|
|
#include "IpcConfigImpl.h"
|
|
extern const char *CONFIG_WIFI_SSID_DEFAULT;
|
|
extern const char *CONFIG_WIFI_PASSWORD_DEFAULT;
|
|
// ../output_files/test/bin/IpcConfigTest --gtest_filter=IpcConfigTest.HS_RH_UNIT_IpcConfig_AUTO_WifiSsid
|
|
TEST_F(IpcConfigTest, HS_RH_UNIT_IpcConfig_AUTO_WifiSsid)
|
|
{
|
|
const char *MODIFIED_STRING = "modified_string";
|
|
const char *MODIFIED_STRING_SHORTER = "modified";
|
|
const char *LONG_STRING =
|
|
"LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL"
|
|
"LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL";
|
|
std::string config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_SSID);
|
|
LogInfo("Get wifi ssid = %s\n", config.c_str());
|
|
EXPECT_STREQ(config.c_str(), CONFIG_WIFI_SSID_DEFAULT);
|
|
IIpcConfig::GetInstance()->SetString(IpcConfigKey::WIFI_SSID, MODIFIED_STRING);
|
|
config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_SSID);
|
|
LogInfo("Get wifiSsid = %s\n", config.c_str());
|
|
EXPECT_STREQ(config.c_str(), MODIFIED_STRING);
|
|
IIpcConfig::GetInstance()->SetString(IpcConfigKey::WIFI_SSID, LONG_STRING);
|
|
config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_SSID);
|
|
EXPECT_STREQ(config.c_str(), MODIFIED_STRING);
|
|
IIpcConfig::GetInstance()->SetString(IpcConfigKey::WIFI_SSID, "");
|
|
config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_SSID);
|
|
EXPECT_STREQ(config.c_str(), "");
|
|
IIpcConfig::GetInstance()->SetString(IpcConfigKey::WIFI_SSID, MODIFIED_STRING_SHORTER);
|
|
config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_SSID);
|
|
EXPECT_STREQ(config.c_str(), MODIFIED_STRING_SHORTER);
|
|
IIpcConfig::GetInstance()->SetString(IpcConfigKey::WIFI_SSID, MODIFIED_STRING);
|
|
config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_SSID);
|
|
EXPECT_STREQ(config.c_str(), MODIFIED_STRING);
|
|
}
|
|
// ../output_files/test/bin/IpcConfigTest --gtest_filter=IpcConfigTest.HS_RH_UNIT_IpcConfig_AUTO_WifiPassword
|
|
TEST_F(IpcConfigTest, HS_RH_UNIT_IpcConfig_AUTO_WifiPassword)
|
|
{
|
|
const char *MODIFIED_STRING = "99999999";
|
|
const char *MODIFIED_STRING_SHORTER = "999";
|
|
const char *LONG_STRING =
|
|
"LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL"
|
|
"LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL";
|
|
std::string config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_PASSWORD);
|
|
LogInfo("Get wifi password = %s\n", config.c_str());
|
|
EXPECT_STREQ(config.c_str(), CONFIG_WIFI_PASSWORD_DEFAULT);
|
|
IIpcConfig::GetInstance()->SetString(IpcConfigKey::WIFI_PASSWORD, MODIFIED_STRING);
|
|
config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_PASSWORD);
|
|
LogInfo("Get wifi password = %s\n", config.c_str());
|
|
EXPECT_STREQ(config.c_str(), MODIFIED_STRING);
|
|
IIpcConfig::GetInstance()->SetString(IpcConfigKey::WIFI_PASSWORD, LONG_STRING);
|
|
config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_PASSWORD);
|
|
EXPECT_STREQ(config.c_str(), MODIFIED_STRING);
|
|
IIpcConfig::GetInstance()->SetString(IpcConfigKey::WIFI_PASSWORD, "");
|
|
config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_PASSWORD);
|
|
EXPECT_STREQ(config.c_str(), "");
|
|
IIpcConfig::GetInstance()->SetString(IpcConfigKey::WIFI_PASSWORD, MODIFIED_STRING_SHORTER);
|
|
config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_PASSWORD);
|
|
EXPECT_STREQ(config.c_str(), MODIFIED_STRING_SHORTER);
|
|
IIpcConfig::GetInstance()->SetString(IpcConfigKey::WIFI_PASSWORD, MODIFIED_STRING);
|
|
config = IIpcConfig::GetInstance()->GetString(IpcConfigKey::WIFI_PASSWORD);
|
|
EXPECT_STREQ(config.c_str(), MODIFIED_STRING);
|
|
}
|
|
// ../output_files/test/bin/IpcConfigTest --gtest_filter=IpcConfigTest.HS_RH_UNIT_IpcConfig_AUTO_WorkMode
|
|
TEST_F(IpcConfigTest, HS_RH_UNIT_IpcConfig_AUTO_WorkMode)
|
|
{
|
|
WorkMode config = IIpcConfig::GetInstance()->GetWorkMode();
|
|
EXPECT_EQ(static_cast<int>(config), static_cast<int>(CONFIG_WORK_MODE_DEFAULT));
|
|
IIpcConfig::GetInstance()->SetWorkMode(WorkMode::MODE_PIC_VIDEO);
|
|
config = IIpcConfig::GetInstance()->GetWorkMode();
|
|
EXPECT_EQ(static_cast<int>(config), static_cast<int>(WorkMode::MODE_PIC_VIDEO));
|
|
}
|
|
// ../output_files/test/bin/IpcConfigTest --gtest_filter=IpcConfigTest.HS_RH_UNIT_IpcConfig_AUTO_ContinueShot
|
|
TEST_F(IpcConfigTest, HS_RH_UNIT_IpcConfig_AUTO_ContinueShot)
|
|
{
|
|
int config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::CONTINUOUS_SHOT);
|
|
EXPECT_EQ(config, CONFIG_CONTINUE_SHOT_DEFAULT);
|
|
IIpcConfig::GetInstance()->SetInt(IpcConfigKey::CONTINUOUS_SHOT, 2);
|
|
config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::CONTINUOUS_SHOT);
|
|
EXPECT_EQ(config, 2);
|
|
}
|
|
// ../output_files/test/bin/IpcConfigTest --gtest_filter=IpcConfigTest.HS_RH_UNIT_IpcConfig_AUTO_BurstPhotoInterval
|
|
TEST_F(IpcConfigTest, HS_RH_UNIT_IpcConfig_AUTO_BurstPhotoInterval)
|
|
{
|
|
int config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::BURST_PHOTO_INTERVAL);
|
|
EXPECT_EQ(config, CONFIG_BURST_PHOTO_INTERVAL_DEFAULT);
|
|
IIpcConfig::GetInstance()->SetInt(IpcConfigKey::BURST_PHOTO_INTERVAL, 10);
|
|
config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::BURST_PHOTO_INTERVAL);
|
|
EXPECT_EQ(config, 10);
|
|
}
|
|
// ../output_files/test/bin/IpcConfigTest --gtest_filter=IpcConfigTest.HS_RH_UNIT_IpcConfig_AUTO_ImageSize
|
|
TEST_F(IpcConfigTest, HS_RH_UNIT_IpcConfig_AUTO_ImageSize)
|
|
{
|
|
int config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::IMGAE_SIZE);
|
|
EXPECT_EQ(config, CONFIG_IMAGE_SIZE_DEFAULT);
|
|
IIpcConfig::GetInstance()->SetInt(IpcConfigKey::IMGAE_SIZE, 16);
|
|
config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::IMGAE_SIZE);
|
|
EXPECT_EQ(config, 16);
|
|
}
|
|
// ../output_files/test/bin/IpcConfigTest --gtest_filter=IpcConfigTest.HS_RH_UNIT_IpcConfig_AUTO_VideoLength
|
|
TEST_F(IpcConfigTest, HS_RH_UNIT_IpcConfig_AUTO_VideoLength)
|
|
{
|
|
int config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::VIDEO_LENGTH);
|
|
EXPECT_EQ(config, CONFIG_VIDEO_SIZE_DEFAULT);
|
|
IIpcConfig::GetInstance()->SetInt(IpcConfigKey::VIDEO_LENGTH, 15);
|
|
config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::VIDEO_LENGTH);
|
|
EXPECT_EQ(config, 15);
|
|
}
|
|
// ../output_files/test/bin/IpcConfigTest --gtest_filter=IpcConfigTest.HS_RH_UNIT_IpcConfig_AUTO_PirDelayed
|
|
TEST_F(IpcConfigTest, HS_RH_UNIT_IpcConfig_AUTO_PirDelayed)
|
|
{
|
|
int config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::PIR_DELAYED);
|
|
EXPECT_EQ(config, CONFIG_PIR_DELAYED_DEFAULT);
|
|
IIpcConfig::GetInstance()->SetInt(IpcConfigKey::PIR_DELAYED, 15);
|
|
config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::PIR_DELAYED);
|
|
EXPECT_EQ(config, 15);
|
|
}
|
|
// ../output_files/test/bin/IpcConfigTest --gtest_filter=IpcConfigTest.HS_RH_UNIT_IpcConfig_AUTO_StorageLoop
|
|
TEST_F(IpcConfigTest, HS_RH_UNIT_IpcConfig_AUTO_StorageLoop)
|
|
{
|
|
ConfigSwitch config = IIpcConfig::GetInstance()->GetSwitch(IpcConfigKey::STORAGE_LOOP_SWITCH);
|
|
EXPECT_EQ(static_cast<int>(config),
|
|
static_cast<int>(CONFIG_STORAGE_LOOP_DEFAULT == true ? ConfigSwitch::ON : ConfigSwitch::OFF));
|
|
IIpcConfig::GetInstance()->SetSwitch(IpcConfigKey::STORAGE_LOOP_SWITCH, ConfigSwitch::OFF);
|
|
config = IIpcConfig::GetInstance()->GetSwitch(IpcConfigKey::STORAGE_LOOP_SWITCH);
|
|
EXPECT_EQ(static_cast<int>(config), static_cast<int>(ConfigSwitch::OFF));
|
|
}
|
|
// ../output_files/test/bin/IpcConfigTest --gtest_filter=IpcConfigTest.HS_RH_UNIT_IpcConfig_AUTO_InfraredPower
|
|
TEST_F(IpcConfigTest, HS_RH_UNIT_IpcConfig_AUTO_InfraredPower)
|
|
{
|
|
ConfigLevel config = IIpcConfig::GetInstance()->GetLevel(IpcConfigKey::INFRARED_POWER);
|
|
EXPECT_EQ(static_cast<int>(config), static_cast<int>(CONFIG_INFRARED_POWER_DEFAULT));
|
|
IIpcConfig::GetInstance()->SetLevel(IpcConfigKey::INFRARED_POWER, ConfigLevel::HIGHT);
|
|
config = IIpcConfig::GetInstance()->GetLevel(IpcConfigKey::INFRARED_POWER);
|
|
EXPECT_EQ(static_cast<int>(config), static_cast<int>(ConfigSwitch::OFF));
|
|
}
|
|
// ../output_files/test/bin/IpcConfigTest --gtest_filter=IpcConfigTest.HS_RH_UNIT_IpcConfig_AUTO_PirSensitivity
|
|
TEST_F(IpcConfigTest, HS_RH_UNIT_IpcConfig_AUTO_PirSensitivity)
|
|
{
|
|
int config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::PIR_SENSITIVITY);
|
|
EXPECT_EQ(config, CONFIG_PIR_SENSITIVITY_DEFAULT);
|
|
IIpcConfig::GetInstance()->SetInt(IpcConfigKey::PIR_SENSITIVITY, 0);
|
|
config = IIpcConfig::GetInstance()->GetInt(IpcConfigKey::PIR_SENSITIVITY);
|
|
EXPECT_EQ(config, 0);
|
|
} |