• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2022 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include "battery_srv_proxy_mock_test.h"
17 #include "battery_srv_proxy.h"
18 #include "ipc_object_stub.h"
19 #include "mock_remote_object.h"
20 #include "battery_log.h"
21 #include <hisysevent.h>
22 
23 using namespace testing::ext;
24 using namespace OHOS::HiviewDFX;
25 using namespace OHOS::PowerMgr;
26 using namespace OHOS;
27 using namespace std;
28 
29 namespace {
30 std::shared_ptr<BatterySrvProxy> g_proxy;
31 sptr<IRemoteObject> remoteObj;
32 }
33 
SetUpTestCase()34 void BatteryProxyMockTest::SetUpTestCase()
35 {
36 #ifdef ENABLE_REMOTE_INTERFACE
37     remoteObj = new MockRemoteObject();
38 #else
39     remoteObj = new IPCObjectStub();
40 #endif
41     g_proxy = std::make_shared<BatterySrvProxy>(remoteObj);
42 }
43 
TearDownTestCase()44 void BatteryProxyMockTest::TearDownTestCase()
45 {
46     remoteObj = nullptr;
47     g_proxy = nullptr;
48 }
49 
SetUp()50 void BatteryProxyMockTest::SetUp() {}
51 
TearDown()52 void BatteryProxyMockTest::TearDown() {}
53 
54 namespace {
55 /**
56  * @tc.name: BatteryProxyMockTest_001
57  * @tc.desc: test BatterySrvProxy::GetCapacity() when an exception is raised
58  * @tc.type: FUNC
59  * @tc.require: issueI5X13X
60  */
61 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_001, TestSize.Level0)
62 {
63     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_001 start.");
64     int32_t capacity = g_proxy->GetCapacity();
65     EXPECT_TRUE(capacity == INVALID_BATT_INT_VALUE);
66     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_001 end.");
67 }
68 
69 /**
70  * @tc.name: BatteryProxyMockTest_002
71  * @tc.desc: test BatterySrvProxy::GetChargingStatus() when an exception is raised
72  * @tc.type: FUNC
73  * @tc.require: issueI5X13X
74  */
75 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_002, TestSize.Level0)
76 {
77     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_002 start.");
78     BatteryChargeState chargeState = g_proxy->GetChargingStatus();
79     EXPECT_TRUE(chargeState >= BatteryChargeState::CHARGE_STATE_NONE &&
80         chargeState <= BatteryChargeState::CHARGE_STATE_BUTT); // the enum value range of BatteryChargeState
81     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_002 end.");
82 }
83 
84 /**
85  * @tc.name: BatteryProxyMockTest_003
86  * @tc.desc: test BatterySrvProxy::GetHealthStatus() when an exception is raised
87  * @tc.type: FUNC
88  * @tc.require: issueI5X13X
89  */
90 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_003, TestSize.Level0)
91 {
92     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_003 start.");
93     BatteryHealthState healthState = g_proxy->GetHealthStatus();
94     EXPECT_TRUE(healthState >= BatteryHealthState::HEALTH_STATE_UNKNOWN &&
95         healthState <= BatteryHealthState::HEALTH_STATE_BUTT); // the enum value range of BatteryHealthState
96     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_003 end.");
97 }
98 
99 /**
100  * @tc.name: BatteryProxyMockTest_004
101  * @tc.desc: test BatterySrvProxy::GetPluggedType() when an exception is raised
102  * @tc.type: FUNC
103  * @tc.require: issueI5X13X
104  */
105 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_004, TestSize.Level0)
106 {
107     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_004 start.");
108     BatteryPluggedType pluggedType = g_proxy->GetPluggedType();
109     EXPECT_TRUE(pluggedType >= BatteryPluggedType::PLUGGED_TYPE_NONE &&
110         pluggedType <= BatteryPluggedType::PLUGGED_TYPE_BUTT); // the enum value range of BatteryPluggedType
111     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_004 end.");
112 }
113 
114 /**
115  * @tc.name: BatteryProxyMockTest_005
116  * @tc.desc: test BatterySrvProxy::GetPresent() when an exception is raised
117  * @tc.type: FUNC
118  * @tc.require: issueI5X13X
119  */
120 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_005, TestSize.Level0)
121 {
122     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_005 start.");
123     bool isPresent = g_proxy->GetPresent();
124     EXPECT_TRUE(isPresent == INVALID_BATT_BOOL_VALUE);
125     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_005 end.");
126 }
127 
128 /**
129  * @tc.name: BatteryProxyMockTest_006
130  * @tc.desc: test BatterySrvProxy::GetTchnology() when an exception is raised
131  * @tc.type: FUNC
132  * @tc.require: issueI5X13X
133  */
134 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_006, TestSize.Level0)
135 {
136     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_006 start.");
137     std::string technology = g_proxy->GetTechnology();
138     EXPECT_TRUE(technology == INVALID_STRING_VALUE);
139     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_006 end.");
140 }
141 
142 /**
143  * @tc.name: BatteryProxyMockTest_007
144  * @tc.desc: test BatterySrvProxy::GetTotalEnergy() when an exception is raised
145  * @tc.type: FUNC
146  * @tc.require: issueI5X13X
147  */
148 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_007, TestSize.Level0)
149 {
150     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_007 start.");
151     int32_t totalEnergy = g_proxy->GetTotalEnergy();
152     EXPECT_TRUE(totalEnergy == INVALID_BATT_INT_VALUE);
153     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_007 end.");
154 }
155 
156 /**
157  * @tc.name: BatteryProxyMockTest_008
158  * @tc.desc: test BatterySrvProxy::GetCurrentAverage() when an exception is raised
159  * @tc.type: FUNC
160  * @tc.require: issueI5X13X
161  */
162 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_008, TestSize.Level0)
163 {
164     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_008 start.");
165     int32_t currentAverage = g_proxy->GetCurrentAverage();
166     EXPECT_TRUE(currentAverage == INVALID_BATT_INT_VALUE);
167     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_008 end.");
168 }
169 
170 /**
171  * @tc.name: BatteryProxyMockTest_009
172  * @tc.desc: test BatterySrvProxy::GetNowCurrent() when an exception is raised
173  * @tc.type: FUNC
174  * @tc.require: issueI5X13X
175  */
176 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_009, TestSize.Level0)
177 {
178     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_009 start.");
179     int32_t nowCurrent = g_proxy->GetNowCurrent();
180     EXPECT_TRUE(nowCurrent == INVALID_BATT_INT_VALUE);
181     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_009 end.");
182 }
183 
184 /**
185  * @tc.name: BatteryProxyMockTest_010
186  * @tc.desc: test BatterySrvProxy::GetRemainEnergy() when an exception is raised
187  * @tc.type: FUNC
188  * @tc.require: issueI5X13X
189  */
190 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_010, TestSize.Level0)
191 {
192     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_010 start.");
193     int32_t remainEnergy = g_proxy->GetRemainEnergy();
194     EXPECT_TRUE(remainEnergy == INVALID_BATT_INT_VALUE);
195     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_010 end.");
196 }
197 
198 /**
199  * @tc.name: BatteryProxyMockTest_011
200  * @tc.desc: test BatterySrvProxy::GetBatteryTemperature() when an exception is raised
201  * @tc.type: FUNC
202  * @tc.require: issueI5X13X
203  */
204 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_011, TestSize.Level0)
205 {
206     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_011 start.");
207     int32_t temperature = g_proxy->GetBatteryTemperature();
208     EXPECT_TRUE(temperature == INVALID_BATT_TEMP_VALUE);
209     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_011 end.");
210 }
211 
212 /**
213  * @tc.name: BatteryProxyMockTest_012
214  * @tc.desc: test BatterySrvProxy::GetCapacityLevel() when an exception is raised
215  * @tc.type: FUNC
216  * @tc.require: issueI5X13X
217  */
218 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_012, TestSize.Level0)
219 {
220     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_012 start.");
221     BatteryCapacityLevel batteryLevel = g_proxy->GetCapacityLevel();
222     EXPECT_TRUE(batteryLevel >= BatteryCapacityLevel::LEVEL_NONE &&
223         batteryLevel <= BatteryCapacityLevel::LEVEL_RESERVED); // the enum value range of BatteryCapacityLevel
224     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_012 end.");
225 }
226 
227 /**
228  * @tc.name: BatteryProxyMockTest_013
229  * @tc.desc: test BatterySrvProxy::GetRemainingChargeTime() when an exception is raised
230  * @tc.type: FUNC
231  * @tc.require: issueI5X13X
232  */
233 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_013, TestSize.Level0)
234 {
235     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_013 start.");
236     int64_t remainChargeTime = g_proxy->GetRemainingChargeTime();
237     EXPECT_TRUE(remainChargeTime == INVALID_REMAINING_CHARGE_TIME_VALUE);
238     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_013 end.");
239 }
240 
241 /**
242  * @tc.name: BatteryProxyMockTest_014
243  * @tc.desc: test BatterySrvProxy::GetVoltage() when an exception is raised
244  * @tc.type: FUNC
245  * @tc.require: issueI5X13X
246  */
247 HWTEST_F(BatteryProxyMockTest, BatteryProxyMockTest_014, TestSize.Level0)
248 {
249     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_014 start.");
250     int32_t voltage = g_proxy->GetVoltage();
251     EXPECT_TRUE(voltage == INVALID_BATT_INT_VALUE);
252     BATTERY_HILOGI(LABEL_TEST, "BatteryProxyMockTest_014 end.");
253 }
254 } // namespace
255