Skip to content

Commit e3544b7

Browse files
committed
test(core): Mock tests part1
1 parent 37be44b commit e3544b7

File tree

8 files changed

+1157
-48
lines changed

8 files changed

+1157
-48
lines changed
Lines changed: 166 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,166 @@
1+
#include <gtest/gtest.h>
2+
#include <gmock/gmock.h>
3+
4+
#include "accessibility_impl.h"
5+
#include "../unit/unit.h"
6+
#include "Gateway/Gateway.h"
7+
#include "mockProperties.h"
8+
#include "mockGateway.h"
9+
10+
using namespace testing;
11+
12+
class AccessibilityMockTest : public ::testing::Test
13+
{
14+
protected:
15+
std::unique_ptr<GatewayMockTest> gm;
16+
std::unique_ptr<PropertiesMockTest> pm;
17+
18+
void SetUp() override
19+
{
20+
gm = std::make_unique<GatewayMockTest>();
21+
gm->SetUp();
22+
23+
pm = std::make_unique<PropertiesMockTest>();
24+
pm->SetUp();
25+
}
26+
27+
void TearDown() override
28+
{
29+
gm->TearDown();
30+
gm.reset(); // Cleanup
31+
32+
pm->TearDown();
33+
pm.reset(); // Cleanup
34+
}
35+
};
36+
37+
TEST_F(AccessibilityMockTest, AudioDescriptionSettings_Success) {
38+
Firebolt::Accessibility::JsonData_AudioDescriptionSettings mockResponse;
39+
mockResponse.Enabled = true;
40+
41+
EXPECT_CALL(*pm->mockProperties, Get("accessibility.audioDescriptionSettings", testing::Matcher<Firebolt::Accessibility::JsonData_AudioDescriptionSettings &>(_)))
42+
.WillOnce(DoAll(SetArgReferee<1>(mockResponse), Return(Firebolt::Error::None)));
43+
44+
Firebolt::Accessibility::AudioDescriptionSettings settings = Firebolt::IFireboltAccessor::Instance().AccessibilityInterface().audioDescriptionSettings(&pm->error);
45+
46+
EXPECT_EQ(pm->error, Firebolt::Error::None);
47+
EXPECT_TRUE(settings.enabled);
48+
}
49+
50+
TEST_F(AccessibilityMockTest, AudioDescriptionSettings_Failure) {
51+
EXPECT_CALL(*pm->mockProperties, Get("accessibility.audioDescriptionSettings", testing::Matcher<Firebolt::Accessibility::JsonData_AudioDescriptionSettings &>(_)))
52+
.WillOnce(Return(Firebolt::Error::NotConnected));
53+
54+
Firebolt::Accessibility::AudioDescriptionSettings settings = Firebolt::IFireboltAccessor::Instance().AccessibilityInterface().audioDescriptionSettings(&pm->error);
55+
56+
EXPECT_EQ(pm->error, Firebolt::Error::NotConnected);
57+
EXPECT_FALSE(settings.enabled);
58+
}
59+
60+
TEST_F(AccessibilityMockTest, ClosedCaptions_Success) {
61+
Firebolt::Accessibility::JsonData_ClosedCaptionsSettings mockResponse;
62+
mockResponse.Enabled = true;
63+
mockResponse.Styles.FontSize = 1.0f;
64+
65+
EXPECT_CALL(*gm->mockGateway, Request("accessibility.closedCaptions", _, testing::Matcher<Firebolt::Accessibility::JsonData_ClosedCaptionsSettings &>(_)))
66+
.WillOnce(DoAll(SetArgReferee<2>(mockResponse), Return(Firebolt::Error::None)));
67+
68+
Firebolt::Accessibility::ClosedCaptionsSettings settings = Firebolt::IFireboltAccessor::Instance().AccessibilityInterface().closedCaptions(&gm->error);
69+
70+
EXPECT_EQ(gm->error, Firebolt::Error::None);
71+
EXPECT_TRUE(settings.enabled);
72+
EXPECT_EQ(settings.styles->fontSize, 1.0f);
73+
}
74+
75+
TEST_F(AccessibilityMockTest, ClosedCaptions_Failure) {
76+
EXPECT_CALL(*gm->mockGateway, Request("accessibility.closedCaptions", _, testing::Matcher<Firebolt::Accessibility::JsonData_ClosedCaptionsSettings &>(_)))
77+
.WillOnce(Return(Firebolt::Error::Timedout));
78+
79+
Firebolt::Accessibility::ClosedCaptionsSettings settings = Firebolt::IFireboltAccessor::Instance().AccessibilityInterface().closedCaptions(&gm->error);
80+
81+
EXPECT_EQ(gm->error, Firebolt::Error::Timedout);
82+
EXPECT_FALSE(settings.enabled);
83+
}
84+
85+
TEST_F(AccessibilityMockTest, ClosedCaptionsSettings_Success) {
86+
Firebolt::Accessibility::JsonData_ClosedCaptionsSettings mockResponse;
87+
mockResponse.Enabled = true;
88+
mockResponse.Styles.FontFamily = Firebolt::Accessibility::FontFamily::MONOSPACED_SANSERIF;
89+
mockResponse.Styles.FontSize = 1.5f;
90+
mockResponse.Styles.FontColor = "#FFFFFF";
91+
92+
EXPECT_CALL(*pm->mockProperties, Get("accessibility.closedCaptionsSettings", testing::Matcher<Firebolt::Accessibility::JsonData_ClosedCaptionsSettings &>(_)))
93+
.WillOnce(DoAll(SetArgReferee<1>(mockResponse), Return(Firebolt::Error::None)));
94+
95+
Firebolt::Accessibility::ClosedCaptionsSettings settings = Firebolt::IFireboltAccessor::Instance().AccessibilityInterface().closedCaptionsSettings(&pm->error);
96+
97+
EXPECT_EQ(pm->error, Firebolt::Error::None);
98+
EXPECT_TRUE(settings.enabled);
99+
ASSERT_TRUE(settings.styles.has_value());
100+
EXPECT_EQ(settings.styles->fontFamily, Firebolt::Accessibility::FontFamily::MONOSPACED_SANSERIF);
101+
EXPECT_EQ(settings.styles->fontSize, 1.5f);
102+
EXPECT_EQ(settings.styles->fontColor, "#FFFFFF");
103+
}
104+
105+
TEST_F(AccessibilityMockTest, ClosedCaptionsSettings_Failure) {
106+
EXPECT_CALL(*pm->mockProperties, Get("accessibility.closedCaptionsSettings", testing::Matcher<Firebolt::Accessibility::JsonData_ClosedCaptionsSettings &>(_)))
107+
.WillOnce(Return(Firebolt::Error::General));
108+
109+
Firebolt::Accessibility::ClosedCaptionsSettings settings = Firebolt::IFireboltAccessor::Instance().AccessibilityInterface().closedCaptionsSettings(&pm->error);
110+
111+
EXPECT_EQ(pm->error, Firebolt::Error::General);
112+
EXPECT_FALSE(settings.enabled);
113+
EXPECT_FALSE(settings.styles.has_value());
114+
}
115+
116+
TEST_F(AccessibilityMockTest, VoiceGuidance_Success) {
117+
Firebolt::Accessibility::JsonData_VoiceGuidanceSettings mockResponse;
118+
mockResponse.Enabled = true;
119+
mockResponse.Speed = 2.0f;
120+
121+
EXPECT_CALL(*gm->mockGateway, Request("accessibility.voiceGuidance", _, testing::Matcher<Firebolt::Accessibility::JsonData_VoiceGuidanceSettings &>(_)))
122+
.WillOnce(DoAll(SetArgReferee<2>(mockResponse), Return(Firebolt::Error::None)));
123+
124+
Firebolt::Accessibility::VoiceGuidanceSettings settings = Firebolt::IFireboltAccessor::Instance().AccessibilityInterface().voiceGuidance(&gm->error);
125+
126+
EXPECT_EQ(gm->error, Firebolt::Error::None);
127+
EXPECT_TRUE(settings.enabled);
128+
EXPECT_EQ(settings.speed, 2.0f);
129+
}
130+
131+
// TEST_F(AccessibilityMockTest, VoiceGuidance_Failure) {
132+
// EXPECT_CALL(*gm->mockGateway, Request("accessibility.voiceGuidance", _, testing::Matcher<Firebolt::Accessibility::JsonData_VoiceGuidanceSettings &>(_)))
133+
// .WillOnce(Return(Firebolt::Error::NotConnected));
134+
135+
// Firebolt::Accessibility::VoiceGuidanceSettings settings = Firebolt::IFireboltAccessor::Instance().AccessibilityInterface().voiceGuidance(&gm->error);
136+
137+
// EXPECT_EQ(gm->error, Firebolt::Error::NotConnected);
138+
// EXPECT_FALSE(settings.enabled);
139+
// EXPECT_EQ(settings.speed, 0);
140+
// }
141+
142+
TEST_F(AccessibilityMockTest, VoiceGuidanceSettings_Success) {
143+
Firebolt::Accessibility::JsonData_VoiceGuidanceSettings mockResponse;
144+
mockResponse.Enabled = true;
145+
mockResponse.Speed = 1.5f;
146+
147+
EXPECT_CALL(*pm->mockProperties, Get("accessibility.voiceGuidanceSettings", testing::Matcher<Firebolt::Accessibility::JsonData_VoiceGuidanceSettings &>(_)))
148+
.WillOnce(DoAll(SetArgReferee<1>(mockResponse), Return(Firebolt::Error::None)));
149+
150+
Firebolt::Accessibility::VoiceGuidanceSettings settings = Firebolt::IFireboltAccessor::Instance().AccessibilityInterface().voiceGuidanceSettings(&pm->error);
151+
152+
EXPECT_EQ(pm->error, Firebolt::Error::None);
153+
EXPECT_TRUE(settings.enabled);
154+
EXPECT_EQ(settings.speed, 1.5f);
155+
}
156+
157+
// TEST_F(AccessibilityMockTest, VoiceGuidanceSettings_Failure) {
158+
// EXPECT_CALL(*pm->mockProperties, Get("accessibility.voiceGuidanceSettings", testing::Matcher<Firebolt::Accessibility::JsonData_VoiceGuidanceSettings &>(_)))
159+
// .WillOnce(Return(Firebolt::Error::General));
160+
161+
// Firebolt::Accessibility::VoiceGuidanceSettings settings = Firebolt::IFireboltAccessor::Instance().AccessibilityInterface().voiceGuidanceSettings(&pm->error);
162+
163+
// EXPECT_EQ(pm->error, Firebolt::Error::General);
164+
// EXPECT_FALSE(settings.enabled);
165+
// EXPECT_FALSE(settings.speed.has_vlaue());
166+
// }
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
#include "../unit/unit.h"
2+
#include <gtest/gtest.h>
3+
#include <gmock/gmock.h>
4+
#include "IProperties.h"
5+
#include "account_impl.h"
6+
#include "mockProperties.h"
7+
8+
using namespace testing;
9+
10+
class AccountImplMockTest : public ::testing::Test
11+
{
12+
protected:
13+
std::unique_ptr<PropertiesMockTest> pm;
14+
15+
void SetUp() override
16+
{
17+
pm = std::make_unique<PropertiesMockTest>();
18+
pm->SetUp();
19+
}
20+
21+
void TearDown() override
22+
{
23+
pm->TearDown();
24+
pm.reset(); // Cleanup
25+
}
26+
};
27+
28+
TEST_F(AccountImplMockTest, Id_Success) {
29+
FireboltSDK::JSON::String mockResponse = "valid_account_id";
30+
EXPECT_CALL(*pm->mockProperties, Get("account.id", testing::Matcher<FireboltSDK::JSON::String &>(_)))
31+
.WillOnce(DoAll(SetArgReferee<1>(mockResponse), Return(Firebolt::Error::None)));
32+
33+
std::string result = Firebolt::IFireboltAccessor::Instance().AccountInterface().id(&pm->error);
34+
35+
EXPECT_EQ(pm->error, Firebolt::Error::None);
36+
EXPECT_EQ(result, "valid_account_id");
37+
}
38+
39+
TEST_F(AccountImplMockTest, Id_Failure) {
40+
EXPECT_CALL(*pm->mockProperties, Get("account.id", testing::Matcher<FireboltSDK::JSON::String &>(_)))
41+
.WillOnce(Return(Firebolt::Error::General));
42+
43+
std::string result = Firebolt::IFireboltAccessor::Instance().AccountInterface().id(&pm->error);
44+
45+
EXPECT_EQ(pm->error, Firebolt::Error::General);
46+
EXPECT_EQ(result, "");
47+
}
48+
49+
TEST_F(AccountImplMockTest, Uid_Success) {
50+
FireboltSDK::JSON::String mockResponse = "valid_unique_id";
51+
EXPECT_CALL(*pm->mockProperties, Get("account.uid", testing::Matcher<FireboltSDK::JSON::String &>(_)))
52+
.WillOnce(DoAll(SetArgReferee<1>(mockResponse), Return(Firebolt::Error::None)));
53+
54+
std::string result = Firebolt::IFireboltAccessor::Instance().AccountInterface().uid(&pm->error);
55+
56+
EXPECT_EQ(pm->error, Firebolt::Error::None);
57+
EXPECT_EQ(result, "valid_unique_id");
58+
}
59+
60+
TEST_F(AccountImplMockTest, Uid_Failure) {
61+
EXPECT_CALL(*pm->mockProperties, Get("account.uid", testing::Matcher<FireboltSDK::JSON::String &>(_)))
62+
.WillOnce(Return(Firebolt::Error::Timedout));
63+
64+
std::string result = Firebolt::IFireboltAccessor::Instance().AccountInterface().uid(&pm->error);
65+
66+
EXPECT_EQ(pm->error, Firebolt::Error::Timedout);
67+
EXPECT_EQ(result, "");
68+
}

0 commit comments

Comments
 (0)