Skip to content

Commit 36d8a85

Browse files
committed
Increase Coverage
1 parent c5630d3 commit 36d8a85

File tree

1 file changed

+55
-47
lines changed

1 file changed

+55
-47
lines changed

Tests/L2Tests/tests/HdmiCecSink_L2Test.cpp

Lines changed: 55 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
#include <gmock/gmock.h>
2424
#include <gtest/gtest.h>
2525
#include <interfaces/IHdmiCecSink.h>
26-
//Used to change the power state for onpowermodechanged event
26+
// Used to change the power state for onpowermodechanged event
2727
#include <interfaces/IPowerManager.h>
2828

2929
#define EVNT_TIMEOUT (5000)
@@ -48,9 +48,7 @@ namespace {
4848
static void removeFile(const char* fileName)
4949
{
5050
// Use sudo for protected files
51-
if (strcmp(fileName, "/etc/device.properties") == 0 ||
52-
strcmp(fileName, "/opt/persistent/ds/cecData_2.json") == 0 ||
53-
strcmp(fileName, "/opt/uimgr_settings.bin") == 0) {
51+
if (strcmp(fileName, "/etc/device.properties") == 0 || strcmp(fileName, "/opt/persistent/ds/cecData_2.json") == 0 || strcmp(fileName, "/opt/uimgr_settings.bin") == 0) {
5452
char cmd[256];
5553
snprintf(cmd, sizeof(cmd), "sudo rm -f %s", fileName);
5654
int ret = system(cmd);
@@ -1839,6 +1837,29 @@ TEST_F(HdmiCecSink_L2Test, GetDeviceList_COMRPC)
18391837
}
18401838
}
18411839

1840+
TEST_F(HdmiCecSink_L2Test, Hdmihotplug_COMRPC)
1841+
{
1842+
if (CreateHdmiCecSinkInterfaceObject() != Core::ERROR_NONE) {
1843+
TEST_LOG("Invalid HdmiCecSink_Client");
1844+
} else {
1845+
EXPECT_TRUE(m_controller_cecSink != nullptr);
1846+
if (m_controller_cecSink) {
1847+
EXPECT_TRUE(m_cecSinkPlugin != nullptr);
1848+
if (m_cecSinkPlugin) {
1849+
1850+
IARM_Bus_DSMgr_EventData_t eventData;
1851+
eventData.data.hdmi_in_connect.port = dsHDMI_IN_PORT_1;
1852+
eventData.data.hdmi_in_connect.isPortConnected = true;
1853+
1854+
dsHdmiEventHandler(IARM_BUS_DSMGR_NAME, IARM_BUS_DSMGR_EVENT_HDMI_IN_HOTPLUG, &eventData, 0);
1855+
1856+
m_cecSinkPlugin->Release();
1857+
}
1858+
m_controller_cecSink->Release();
1859+
}
1860+
}
1861+
}
1862+
18421863
// JSONRPC test fixtures
18431864
TEST_F(HdmiCecSink_L2Test, Set_And_Get_OSDName_JSONRPC)
18441865
{
@@ -2727,7 +2748,7 @@ TEST_F(HdmiCecSink_L2Test, InjectInactiveSourceFramesAndVerifyEvents)
27272748
jsonrpc.Unsubscribe(EVNT_TIMEOUT, _T("onInActiveSource"));
27282749
}
27292750

2730-
//InActiveSource
2751+
// InActiveSource
27312752
TEST_F(HdmiCecSink_L2Test, InjectInactiveSourceBroadcastIgnoreCase)
27322753
{
27332754
// Inject <Inactive Source>
@@ -2976,7 +2997,7 @@ TEST_F(HdmiCecSink_L2Test, InjectFeatureAbortAndVerifyEvent)
29762997
jsonrpc.Unsubscribe(EVNT_TIMEOUT, _T("reportFeatureAbortEvent"));
29772998
}
29782999

2979-
//Feature Abort
3000+
// Feature Abort
29803001
TEST_F(HdmiCecSink_L2Test, InjectFeatureAbortFrameBroadcastIgnoreTest)
29813002
{
29823003
ASSERT_FALSE(listeners.empty()) << "No FrameListener was captured.";
@@ -3163,11 +3184,11 @@ TEST_F(HdmiCecSink_L2Test, InjectGivePhysicalAddressFrame)
31633184
TEST_F(HdmiCecSink_L2Test, InjectGivePhysicalAddressFrameException)
31643185
{
31653186
EXPECT_CALL(*p_connectionMock, sendTo(::testing::_, ::testing::_, ::testing::_))
3166-
.WillOnce(::testing::Invoke(
3167-
[&](const LogicalAddress&, const CECFrame&, int) {
3168-
throw std::runtime_error("Simulated sendTo failure");
3169-
}))
3170-
.WillRepeatedly(::testing::Return());
3187+
.WillOnce(::testing::Invoke(
3188+
[&](const LogicalAddress&, const CECFrame&, int) {
3189+
throw std::runtime_error("Simulated sendTo failure");
3190+
}))
3191+
.WillRepeatedly(::testing::Return());
31713192

31723193
uint8_t buffer[] = { 0x40, 0x83 }; // From device 4 to TV (0)
31733194
CECFrame frame(buffer, sizeof(buffer));
@@ -3177,7 +3198,6 @@ TEST_F(HdmiCecSink_L2Test, InjectGivePhysicalAddressFrameException)
31773198
}
31783199
}
31793200

3180-
31813201
// GiveDeviceVendorID (0x8C)
31823202
TEST_F(HdmiCecSink_L2Test, InjectGiveDeviceVendorIDFrame)
31833203
{
@@ -3478,6 +3498,13 @@ TEST_F(HdmiCecSink_L2Test, InjectDeviceRemovedAndVerifyEvent)
34783498
EXPECT_CALL(async_handler, onDeviceRemoved(::testing::_))
34793499
.WillOnce(Invoke(this, &HdmiCecSink_L2Test::onDeviceRemoved));
34803500

3501+
uint8_t addBuffer[] = { 0x4F, 0x84, 0x10, 0x00, 0x04 };
3502+
CECFrame addFrame(addBuffer, sizeof(addBuffer));
3503+
for (auto* listener : listeners) {
3504+
if (listener)
3505+
listener->notify(addFrame);
3506+
}
3507+
34813508
// Now simulate hotplug disconnect for port 1
34823509
IARM_Bus_DSMgr_EventData_t eventData;
34833510
eventData.data.hdmi_in_connect.port = dsHDMI_IN_PORT_1;
@@ -3749,12 +3776,11 @@ TEST_F(HdmiCecSink_L2Test_STANDBY, InjectWakeupFromStandbyFrameAndVerifyEvent)
37493776
jsonrpc.Unsubscribe(EVNT_TIMEOUT, _T("onWakeupFromStandby"));
37503777
}
37513778

3752-
37533779
TEST_F(HdmiCecSink_L2Test_STANDBY, TriggerOnPowerModeChangeEvent_ON)
37543780
{
37553781
Core::ProxyType<RPC::InvokeServerType<1, 0, 4>> mEngine_PowerManager;
37563782
Core::ProxyType<RPC::CommunicatorClient> mClient_PowerManager;
3757-
PluginHost::IShell *mController_PowerManager;
3783+
PluginHost::IShell* mController_PowerManager;
37583784

37593785
TEST_LOG("Creating mEngine_PowerManager");
37603786
mEngine_PowerManager = Core::ProxyType<RPC::InvokeServerType<1, 0, 4>>::Create();
@@ -3765,23 +3791,18 @@ TEST_F(HdmiCecSink_L2Test_STANDBY, TriggerOnPowerModeChangeEvent_ON)
37653791
mEngine_PowerManager->Announcements(mClient_PowerManager->Announcement());
37663792
#endif
37673793

3768-
if (!mClient_PowerManager.IsValid())
3769-
{
3794+
if (!mClient_PowerManager.IsValid()) {
37703795
TEST_LOG("Invalid mClient_PowerManager");
3771-
}
3772-
else
3773-
{
3796+
} else {
37743797
mController_PowerManager = mClient_PowerManager->Open<PluginHost::IShell>(_T("org.rdk.PowerManager"), ~0, 3000);
3775-
if (mController_PowerManager)
3776-
{
3798+
if (mController_PowerManager) {
37773799
auto PowerManagerPlugin = mController_PowerManager->QueryInterface<Exchange::IPowerManager>();
37783800

3779-
if (PowerManagerPlugin)
3780-
{
3801+
if (PowerManagerPlugin) {
37813802
int keyCode = 0;
37823803

37833804
uint32_t clientId = 0;
3784-
uint32_t status = PowerManagerPlugin->AddPowerModePreChangeClient("l2-test-client", clientId);
3805+
uint32_t status = PowerManagerPlugin->AddPowerModePreChangeClient("l2-test-client", clientId);
37853806
EXPECT_EQ(status, Core::ERROR_NONE);
37863807

37873808
EXPECT_CALL(*p_powerManagerHalMock, PLAT_API_SetPowerState(::testing::_))
@@ -3798,15 +3819,11 @@ TEST_F(HdmiCecSink_L2Test_STANDBY, TriggerOnPowerModeChangeEvent_ON)
37983819
std::this_thread::sleep_for(std::chrono::milliseconds(1500));
37993820

38003821
PowerManagerPlugin->Release();
3801-
}
3802-
else
3803-
{
3822+
} else {
38043823
TEST_LOG("PowerManagerPlugin is NULL");
38053824
}
38063825
mController_PowerManager->Release();
3807-
}
3808-
else
3809-
{
3826+
} else {
38103827
TEST_LOG("mController_PowerManager is NULL");
38113828
}
38123829
}
@@ -3816,7 +3833,7 @@ TEST_F(HdmiCecSink_L2Test, RaisePowerModeChangedEvent_OFF)
38163833
{
38173834
Core::ProxyType<RPC::InvokeServerType<1, 0, 4>> mEngine_PowerManager;
38183835
Core::ProxyType<RPC::CommunicatorClient> mClient_PowerManager;
3819-
PluginHost::IShell *mController_PowerManager;
3836+
PluginHost::IShell* mController_PowerManager;
38203837

38213838
TEST_LOG("Creating mEngine_PowerManager");
38223839
mEngine_PowerManager = Core::ProxyType<RPC::InvokeServerType<1, 0, 4>>::Create();
@@ -3827,23 +3844,18 @@ TEST_F(HdmiCecSink_L2Test, RaisePowerModeChangedEvent_OFF)
38273844
mEngine_PowerManager->Announcements(mClient_PowerManager->Announcement());
38283845
#endif
38293846

3830-
if (!mClient_PowerManager.IsValid())
3831-
{
3847+
if (!mClient_PowerManager.IsValid()) {
38323848
TEST_LOG("Invalid mClient_PowerManager");
3833-
}
3834-
else
3835-
{
3849+
} else {
38363850
mController_PowerManager = mClient_PowerManager->Open<PluginHost::IShell>(_T("org.rdk.PowerManager"), ~0, 3000);
3837-
if (mController_PowerManager)
3838-
{
3851+
if (mController_PowerManager) {
38393852
auto PowerManagerPlugin = mController_PowerManager->QueryInterface<Exchange::IPowerManager>();
38403853

3841-
if (PowerManagerPlugin)
3842-
{
3854+
if (PowerManagerPlugin) {
38433855
int keyCode = 0;
38443856

38453857
uint32_t clientId = 0;
3846-
uint32_t status = PowerManagerPlugin->AddPowerModePreChangeClient("l2-test-client", clientId);
3858+
uint32_t status = PowerManagerPlugin->AddPowerModePreChangeClient("l2-test-client", clientId);
38473859
EXPECT_EQ(status, Core::ERROR_NONE);
38483860

38493861
EXPECT_CALL(*p_powerManagerHalMock, PLAT_API_SetPowerState(::testing::_))
@@ -3860,15 +3872,11 @@ TEST_F(HdmiCecSink_L2Test, RaisePowerModeChangedEvent_OFF)
38603872
std::this_thread::sleep_for(std::chrono::milliseconds(1500));
38613873

38623874
PowerManagerPlugin->Release();
3863-
}
3864-
else
3865-
{
3875+
} else {
38663876
TEST_LOG("PowerManagerPlugin is NULL");
38673877
}
38683878
mController_PowerManager->Release();
3869-
}
3870-
else
3871-
{
3879+
} else {
38723880
TEST_LOG("mController_PowerManager is NULL");
38733881
}
38743882
}

0 commit comments

Comments
 (0)