1 /*
2 * Copyright (c) 2021-2024 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_client_test.h"
17
18 #ifdef GTEST
19 #define private public
20 #define protected public
21 #endif
22
23 #include <iostream>
24 #include <string>
25 #include <gtest/gtest.h>
26
27 #include "if_system_ability_manager.h"
28 #include "iremote_broker.h"
29 #include "iservice_registry.h"
30 #include "system_ability_definition.h"
31
32 #include "battery_log.h"
33 #include "battery_srv_client.h"
34 #include "test_utils.h"
35
36 #include "mock_battery_srv_proxy.h"
37 #include "mock_remote_object.h"
38
39 using namespace testing::ext;
40 using namespace OHOS::PowerMgr;
41 using namespace OHOS;
42 using namespace std;
43
44 namespace {
45 bool g_isMock = false;
46 constexpr int32_t BATTERY_EMERGENCY_THRESHOLD = 5;
47 constexpr int32_t BATTERY_DEFAULT_THRESHOLD = 10;
48 constexpr int32_t BATTERY_LOW_THRESHOLD = 20;
49 constexpr int32_t BATTERY_NORMAL_THRESHOLD = 90;
50 constexpr int32_t BATTERY_HIGH_THRESHOLD = 99;
51 constexpr int32_t BATTERY_HIGH_FULL = 100;
52 const std::string MOCK_BATTERY_PATH = "/data/service/el0/battery/";
53 BatteryInfo g_info;
54 sptr<IRemoteObject> g_testRemoteObj;
55 sptr<MockBatterySrvProxy> g_mockProxy;
56 }
57
SetUpTestCase(void)58 void BatteryClientTest::SetUpTestCase(void)
59 {
60 g_isMock = TestUtils::IsMock();
61 GTEST_LOG_(INFO) << " g_isMock: " << g_isMock;
62 g_testRemoteObj = sptr<MockRemoteObject>::MakeSptr(u"BatteryTest");
63 g_mockProxy = sptr<MockBatterySrvProxy>::MakeSptr(g_testRemoteObj);
64 }
65
TearDownTestCase(void)66 void BatteryClientTest::TearDownTestCase(void)
67 {
68 g_isMock = false;
69 TestUtils::ResetOnline();
70 g_testRemoteObj = nullptr;
71 g_mockProxy = nullptr;
72 }
73
SetUp(void)74 void BatteryClientTest::SetUp(void)
75 {
76 g_info.SetCapacity(BATTERY_HIGH_FULL);
77 g_info.SetPresent(false);
78 g_info.SetVoltage(BATTERY_DEFAULT_THRESHOLD);
79 g_info.SetTemperature(BATTERY_DEFAULT_THRESHOLD);
80 g_info.SetHealthState(BatteryHealthState::HEALTH_STATE_GOOD);
81 g_info.SetPluggedType(BatteryPluggedType::PLUGGED_TYPE_USB);
82 g_info.SetPluggedMaxCurrent(BATTERY_DEFAULT_THRESHOLD);
83 g_info.SetPluggedMaxVoltage(BATTERY_DEFAULT_THRESHOLD);
84 g_info.SetChargeState(BatteryChargeState::CHARGE_STATE_DISABLE);
85 g_info.SetChargeCounter(BATTERY_DEFAULT_THRESHOLD);
86 g_info.SetTotalEnergy(BATTERY_DEFAULT_THRESHOLD);
87 g_info.SetCurAverage(BATTERY_DEFAULT_THRESHOLD);
88 g_info.SetNowCurrent(BATTERY_DEFAULT_THRESHOLD);
89 g_info.SetRemainEnergy(BATTERY_DEFAULT_THRESHOLD);
90 g_info.SetTechnology("test");
91 }
92
TearDown(void)93 void BatteryClientTest::TearDown(void)
94 {
95 }
96
97 namespace {
98 /**
99 * @tc.name: BatteryClient001
100 * @tc.desc: Test IBatterySrv interface GetCapacity
101 * @tc.type: FUNC
102 */
103 HWTEST_F (BatteryClientTest, BatteryClient001, TestSize.Level1)
104 {
105 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient001 function start!");
106
107 auto& BatterySrvClient = BatterySrvClient::GetInstance();
108 if (g_isMock) {
109 auto tempCapacity = BatterySrvClient.GetCapacity();
110 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", "22");
111 auto capacity = BatterySrvClient.GetCapacity();
112 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::capacity=%{public}d", capacity);
113 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient001 executing, capacity=" << capacity;
114 ASSERT_TRUE(capacity == 22);
115 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", std::to_string(tempCapacity));
116 } else {
117 auto capacity = BatterySrvClient.GetCapacity();
118 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::capacity=%{public}d", capacity);
119 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient001 executing, capacity=" << capacity;
120 ASSERT_TRUE(capacity <= 100 && capacity >= 0);
121 }
122
123 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient001 function end!");
124 }
125
126 /**
127 * @tc.name: BatteryClient002
128 * @tc.desc: Test IBatterySrv interface GetChargingStatus
129 * @tc.type: FUNC
130 */
131
132 HWTEST_F (BatteryClientTest, BatteryClient002, TestSize.Level1)
133 {
134 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient002 function start!");
135 auto& BatterySrvClient = BatterySrvClient::GetInstance();
136 if (g_isMock) {
137 auto tempChargeState = BatterySrvClient.GetChargingStatus();
138 std::string chargeStateArr[] = {"Discharging", "Charging", "Not charging", "Full", "Unknown"};
139
140 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/status", "Not charging");
141 auto chargeState = BatterySrvClient.GetChargingStatus();
142 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::chargeState=%{public}d",
143 static_cast<int32_t>(chargeState));
144 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient002 executing, chargeState="
145 << static_cast<int32_t>(chargeState);
146 ASSERT_TRUE(chargeState == OHOS::PowerMgr::BatteryChargeState::CHARGE_STATE_DISABLE);
147
148 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/status",
149 chargeStateArr[static_cast<int32_t>(tempChargeState)]);
150 } else {
151 auto chargeState = BatterySrvClient.GetChargingStatus();
152 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::chargeState=%{public}d",
153 static_cast<int32_t>(chargeState));
154 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient002 executing, chargeState="
155 << static_cast<int32_t>(chargeState);
156 ASSERT_TRUE(chargeState == OHOS::PowerMgr::BatteryChargeState::CHARGE_STATE_ENABLE ||
157 chargeState == OHOS::PowerMgr::BatteryChargeState::CHARGE_STATE_FULL);
158 }
159 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient002 function end!");
160 }
161
162 /**
163 * @tc.name: BatteryClient003
164 * @tc.desc: Test IBatterySrv interface GetHealthStatus
165 * @tc.type: FUNC
166 */
167 HWTEST_F (BatteryClientTest, BatteryClient003, TestSize.Level1)
168 {
169 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient003 function start!");
170 auto& BatterySrvClient = BatterySrvClient::GetInstance();
171 if (g_isMock) {
172 auto tempHealthState = BatterySrvClient.GetHealthStatus();
173 std::string healthStateArr[] = {"Unknown", "Good", "Hot", "Over voltage", "Cold", "Dead"};
174
175 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/health", "Cold");
176 auto healthState = BatterySrvClient.GetHealthStatus();
177 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::healthState=%{public}d",
178 static_cast<int32_t>(healthState));
179 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient003 executing, healthState="
180 << static_cast<int32_t>(healthState);
181 ASSERT_TRUE(healthState == OHOS::PowerMgr::BatteryHealthState::HEALTH_STATE_COLD);
182
183 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/health",
184 healthStateArr[static_cast<int32_t>(tempHealthState)]);
185 } else {
186 auto healthState = BatterySrvClient.GetHealthStatus();
187 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::healthState=%{public}d",
188 static_cast<int32_t>(healthState));
189 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient003 executing, healthState="
190 << static_cast<int32_t>(healthState);
191 ASSERT_TRUE(healthState == OHOS::PowerMgr::BatteryHealthState::HEALTH_STATE_GOOD);
192 }
193 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient003 function end!");
194 }
195
196 /**
197 * @tc.name: BatteryClient004
198 * @tc.desc: Test IBatterySrv interface GetPresent
199 * @tc.type: FUNC
200 */
201 HWTEST_F (BatteryClientTest, BatteryClient004, TestSize.Level1)
202 {
203 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient004 function start!");
204 auto& BatterySrvClient = BatterySrvClient::GetInstance();
205 if (g_isMock) {
206 auto tempPresent = BatterySrvClient.GetPresent();
207 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/present", "0");
208 auto present = BatterySrvClient.GetPresent();
209 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::present=%{public}d", present);
210 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient004 executing, present=" << present;
211 ASSERT_FALSE(present);
212
213 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/present", std::to_string(tempPresent));
214 } else {
215 auto present = BatterySrvClient.GetPresent();
216 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::present=%{public}d", present);
217 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient004 executing, present=" << present;
218 ASSERT_TRUE(present);
219 }
220 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient004 function end!");
221 }
222
223 /**
224 * @tc.name: BatteryClient005
225 * @tc.desc: Test IBatterySrv interface GetVoltage
226 * @tc.type: FUNC
227 */
228 HWTEST_F (BatteryClientTest, BatteryClient005, TestSize.Level1)
229 {
230 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient005 function start!");
231 auto& BatterySrvClient = BatterySrvClient::GetInstance();
232 if (g_isMock) {
233 auto tempVoltage = BatterySrvClient.GetVoltage();
234 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/voltage_now", "4654321");
235 auto voltage = BatterySrvClient.GetVoltage();
236 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::voltage=%{public}d", voltage);
237 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient005 executing, voltage=" << voltage;
238 ASSERT_TRUE(voltage == 4654321);
239
240 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/voltage_now", std::to_string(tempVoltage));
241 } else {
242 auto voltage = BatterySrvClient.GetVoltage();
243 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::voltage=%{public}d", voltage);
244 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient005 executing, voltage=" << voltage;
245 ASSERT_TRUE(voltage >= 0);
246 }
247 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient005 function end!");
248 }
249
250 /**
251 * @tc.name: BatteryClient006
252 * @tc.desc: Test IBatterySrv interface GetTemperature
253 * @tc.type: FUNC
254 */
255 HWTEST_F (BatteryClientTest, BatteryClient006, TestSize.Level1)
256 {
257 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient006 function start!");
258 auto& BatterySrvClient = BatterySrvClient::GetInstance();
259 if (g_isMock) {
260 auto tempTempPresent = BatterySrvClient.GetBatteryTemperature();
261 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/temp", "222");
262 auto temperature = BatterySrvClient.GetBatteryTemperature();
263 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::temperature=%{public}d", temperature);
264 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient006 executing, temperature=" << temperature;
265 ASSERT_TRUE(temperature == 222);
266
267 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/temp", std::to_string(tempTempPresent));
268 } else {
269 auto temperature = BatterySrvClient.GetBatteryTemperature();
270 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::temperature=%{public}d", temperature);
271 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient006 executing, temperature=" << temperature;
272 ASSERT_TRUE(temperature >= 0 && temperature <= 600);
273 }
274 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient006 function end!");
275 }
276
277 /**
278 * @tc.name: BatteryClient007
279 * @tc.desc: Test IBatterySrv interface GetTechnology
280 * @tc.type: FUNC
281 */
282 HWTEST_F (BatteryClientTest, BatteryClient007, TestSize.Level1)
283 {
284 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient007 function start!");
285 auto& BatterySrvClient = BatterySrvClient::GetInstance();
286 if (g_isMock) {
287 std::string tempTechnology = BatterySrvClient.GetTechnology();
288 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/ohos-fgu/technology", "H2");
289 auto technology = BatterySrvClient.GetTechnology();
290 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::technology=%{public}s", technology.c_str());
291 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient007 executing, technology=" << technology;
292 ASSERT_TRUE(technology == "H2");
293
294 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/ohos-fgu/technology", tempTechnology);
295 } else {
296 auto technology = BatterySrvClient.GetTechnology();
297 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::technology=%{public}s", technology.c_str());
298 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient007 executing, technology=" << technology;
299 #ifdef PC_TEST
300 ASSERT_TRUE(technology == "Li-ion");
301 #else
302 ASSERT_TRUE(technology == "Li-poly");
303 #endif
304 }
305 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient007 function end!");
306 }
307
308 /**
309 * @tc.name: BatteryClient008
310 * @tc.desc: Test IBatterySrv interface GetPluggedType
311 * @tc.type: FUNC
312 */
313 HWTEST_F (BatteryClientTest, BatteryClient008, TestSize.Level1)
314 {
315 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient008 function start!");
316 auto& BatterySrvClient = BatterySrvClient::GetInstance();
317 if (g_isMock) {
318 TestUtils::ResetOnline();
319 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/ohos_charger/online", "1");
320 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/ohos_charger/type", "USB");
321 auto pluggedType = BatterySrvClient.GetPluggedType();
322
323 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::pluggedType=%{public}d",
324 static_cast<int32_t>(pluggedType));
325 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient008 executing, pluggedType="
326 << static_cast<int32_t>(pluggedType);
327
328 ASSERT_TRUE(pluggedType == OHOS::PowerMgr::BatteryPluggedType::PLUGGED_TYPE_USB);
329 } else {
330 auto pluggedType = BatterySrvClient.GetPluggedType();
331 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::pluggedType=%{public}d",
332 static_cast<int32_t>(pluggedType));
333 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient008 executing, pluggedType="
334 << static_cast<int32_t>(pluggedType);
335 #ifdef PC_TEST
336 ASSERT_TRUE(pluggedType == OHOS::PowerMgr::BatteryPluggedType::PLUGGED_TYPE_AC);
337 #else
338 EXPECT_FALSE(pluggedType == OHOS::PowerMgr::BatteryPluggedType::PLUGGED_TYPE_BUTT);
339 #endif
340 }
341 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient008 function end!");
342 }
343
344 /**
345 * @tc.name: BatteryClient009
346 * @tc.desc: Test IBatterySrv interface GetCurrentNow
347 * @tc.type: FUNC
348 */
349 HWTEST_F (BatteryClientTest, BatteryClient009, TestSize.Level1)
350 {
351 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient009 function start!");
352 auto& BatterySrvClient = BatterySrvClient::GetInstance();
353 if (g_isMock) {
354 auto tempCurrnow = BatterySrvClient.GetNowCurrent();
355 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/current_now", "4654321");
356 auto currnow = BatterySrvClient.GetNowCurrent();
357 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::current=%{public}d", currnow);
358 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient009 executing, currnow=" << currnow;
359 ASSERT_EQ(currnow, 4654321);
360
361 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/current_now", std::to_string(tempCurrnow));
362 } else {
363 auto currnow = BatterySrvClient.GetNowCurrent();
364 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::currnow=%{public}d", currnow);
365 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient009 executing, currnow=" << currnow;
366 ASSERT_TRUE(currnow >= -20000 && currnow <= 20000);
367 }
368 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient009 function end!");
369 }
370
371 /**
372 * @tc.name: BatteryClient010
373 * @tc.desc: Test IBatterySrv interface GetRemainEnergy
374 * @tc.type: FUNC
375 */
376 HWTEST_F (BatteryClientTest, BatteryClient010, TestSize.Level1)
377 {
378 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient010 function start!");
379 auto& BatterySrvClient = BatterySrvClient::GetInstance();
380 if (g_isMock) {
381 auto tempChargenow = BatterySrvClient.GetRemainEnergy();
382 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/charge_now", "4654321");
383 auto chargenow = BatterySrvClient.GetRemainEnergy();
384 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::chargenow=%{public}d", chargenow);
385 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient010 executing, chargenow=" << chargenow;
386 ASSERT_EQ(chargenow, 4654321);
387
388 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/charge_now", std::to_string(tempChargenow));
389 } else {
390 auto chargenow = BatterySrvClient.GetRemainEnergy();
391 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::chargenow=%{public}d", chargenow);
392 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient010 executing, chargenow=" << chargenow;
393 ASSERT_TRUE(chargenow >= 0);
394 }
395 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient010 function end!");
396 }
397
398 /**
399 * @tc.name: BatteryClient011
400 * @tc.desc: Test IBatterySrv interface GetTotalEnergy
401 * @tc.type: FUNC
402 */
403 HWTEST_F (BatteryClientTest, BatteryClient011, TestSize.Level1)
404 {
405 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient011 function start!");
406 auto& BatterySrvClient = BatterySrvClient::GetInstance();
407 if (g_isMock) {
408 auto tempTotalenergy = BatterySrvClient.GetTotalEnergy();
409 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/charge_full", "4654321");
410 auto totalenergy = BatterySrvClient.GetTotalEnergy();
411 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::totalenergy=%{public}d", totalenergy);
412 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient011 executing, totalenergy=" << totalenergy;
413 ASSERT_EQ(totalenergy, 4654321);
414
415 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/charge_full", std::to_string(tempTotalenergy));
416 } else {
417 auto totalenergy = BatterySrvClient.GetTotalEnergy();
418 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::totalenergy=%{public}d", totalenergy);
419 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient011 executing, totalenergy=" << totalenergy;
420 ASSERT_TRUE(totalenergy >= 0);
421 }
422 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient011 function end!");
423 }
424
425 /**
426 * @tc.name: BatteryClient012
427 * @tc.desc: Test IBatterySrv interface GetCapacityLevel
428 * @tc.type: FUNC
429 */
430 HWTEST_F (BatteryClientTest, BatteryClient012, TestSize.Level1)
431 {
432 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient012 function start!");
433 auto& BatterySrvClient = BatterySrvClient::GetInstance();
434 if (g_isMock) {
435 auto tempCapacity = BatterySrvClient.GetCapacity();
436 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", "3");
437 auto batterylevel = BatterySrvClient.GetCapacityLevel();
438 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::batterylevel=%{public}d",
439 static_cast<int32_t>(batterylevel));
440 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient012 executing, batterylevel="
441 << static_cast<int32_t>(batterylevel);
442 ASSERT_TRUE(batterylevel == OHOS::PowerMgr::BatteryCapacityLevel::LEVEL_CRITICAL);
443
444 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", std::to_string(tempCapacity));
445 } else {
446 auto batterylevel = BatterySrvClient.GetCapacityLevel();
447 auto capacity = BatterySrvClient.GetCapacity();
448 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::batterylevel=%{public}d",
449 static_cast<int32_t>(batterylevel));
450 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient012 executing, batterylevel="
451 << static_cast<int32_t>(batterylevel);
452 if (capacity < BATTERY_EMERGENCY_THRESHOLD) {
453 ASSERT_TRUE(batterylevel == OHOS::PowerMgr::BatteryCapacityLevel::LEVEL_CRITICAL);
454 }
455 }
456 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient012 function end!");
457 }
458
459 /**
460 * @tc.name: BatteryClient013
461 * @tc.desc: Test IBatterySrv interface GetCapacityLevel
462 * @tc.type: FUNC
463 */
464 HWTEST_F (BatteryClientTest, BatteryClient013, TestSize.Level1)
465 {
466 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient013 function start!");
467 auto& BatterySrvClient = BatterySrvClient::GetInstance();
468 if (g_isMock) {
469 auto tempCapacity = BatterySrvClient.GetCapacity();
470 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", "11");
471 auto batterylevel = BatterySrvClient.GetCapacityLevel();
472 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::batterylevel=%{public}d",
473 static_cast<int32_t>(batterylevel));
474 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient013 executing, batterylevel="
475 << static_cast<int32_t>(batterylevel);
476 ASSERT_TRUE(batterylevel == OHOS::PowerMgr::BatteryCapacityLevel::LEVEL_LOW);
477
478 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", std::to_string(tempCapacity));
479 } else {
480 auto batterylevel = BatterySrvClient.GetCapacityLevel();
481 auto capacity = BatterySrvClient.GetCapacity();
482 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::batterylevel=%{public}d",
483 static_cast<int32_t>(batterylevel));
484 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient013 executing, batterylevel="
485 << static_cast<int32_t>(batterylevel);
486 if (capacity >= BATTERY_EMERGENCY_THRESHOLD && capacity <= BATTERY_LOW_THRESHOLD) {
487 ASSERT_TRUE(batterylevel == OHOS::PowerMgr::BatteryCapacityLevel::LEVEL_LOW);
488 }
489 }
490 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient013 function end!");
491 }
492
493 /**
494 * @tc.name: BatteryClient014
495 * @tc.desc: Test IBatterySrv interface GetCapacityLevel
496 * @tc.type: FUNC
497 */
498 HWTEST_F (BatteryClientTest, BatteryClient014, TestSize.Level1)
499 {
500 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient014 function start!");
501 auto& BatterySrvClient = BatterySrvClient::GetInstance();
502 if (g_isMock) {
503 auto tempCapacity = BatterySrvClient.GetCapacity();
504 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", "80");
505 auto batterylevel = BatterySrvClient.GetCapacityLevel();
506 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::batterylevel=%{public}d",
507 static_cast<int32_t>(batterylevel));
508 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient014 executing, batterylevel="
509 << static_cast<int32_t>(batterylevel);
510 ASSERT_TRUE(batterylevel == OHOS::PowerMgr::BatteryCapacityLevel::LEVEL_NORMAL);
511
512 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", std::to_string(tempCapacity));
513 } else {
514 auto batterylevel = BatterySrvClient.GetCapacityLevel();
515 auto capacity = BatterySrvClient.GetCapacity();
516 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::batterylevel=%{public}d",
517 static_cast<int32_t>(batterylevel));
518 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient014 executing, batterylevel="
519 << static_cast<int32_t>(batterylevel);
520 if (capacity > BATTERY_LOW_THRESHOLD && capacity <= BATTERY_NORMAL_THRESHOLD) {
521 ASSERT_TRUE(batterylevel == OHOS::PowerMgr::BatteryCapacityLevel::LEVEL_NORMAL);
522 }
523 }
524 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient014 function end!");
525 }
526
527 /**
528 * @tc.name: BatteryClient015
529 * @tc.desc: Test IBatterySrv interface GetCapacityLevel
530 * @tc.type: FUNC
531 */
532 HWTEST_F (BatteryClientTest, BatteryClient015, TestSize.Level1)
533 {
534 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient015 function start!");
535 auto& BatterySrvClient = BatterySrvClient::GetInstance();
536 if (g_isMock) {
537 auto tempCapacity = BatterySrvClient.GetCapacity();
538 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", "94");
539 auto batterylevel = BatterySrvClient.GetCapacityLevel();
540 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::batterylevel=%{public}d",
541 static_cast<int32_t>(batterylevel));
542 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient015 executing, batterylevel="
543 << static_cast<int32_t>(batterylevel);
544 ASSERT_TRUE(batterylevel == OHOS::PowerMgr::BatteryCapacityLevel::LEVEL_HIGH);
545
546 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", std::to_string(tempCapacity));
547 } else {
548 auto batterylevel = BatterySrvClient.GetCapacityLevel();
549 auto capacity = BatterySrvClient.GetCapacity();
550 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::batterylevel=%{public}d",
551 static_cast<int32_t>(batterylevel));
552 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient015 executing, batterylevel="
553 << static_cast<int32_t>(batterylevel);
554 if (capacity > BATTERY_NORMAL_THRESHOLD && capacity <= BATTERY_HIGH_THRESHOLD) {
555 ASSERT_TRUE(batterylevel == OHOS::PowerMgr::BatteryCapacityLevel::LEVEL_HIGH);
556 }
557 }
558 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient015 function end!");
559 }
560
561 /**
562 * @tc.name: BatteryClient016
563 * @tc.desc: Test IBatterySrv interface GetCapacityLevel
564 * @tc.type: FUNC
565 */
566 HWTEST_F (BatteryClientTest, BatteryClient016, TestSize.Level1)
567 {
568 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient016 function start!");
569 auto& BatterySrvClient = BatterySrvClient::GetInstance();
570 if (g_isMock) {
571 auto tempCapacity = BatterySrvClient.GetCapacity();
572 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", "100");
573 auto batterylevel = BatterySrvClient.GetCapacityLevel();
574 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::batterylevel=%{public}d",
575 static_cast<int32_t>(batterylevel));
576 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient016 executing, batterylevel="
577 << static_cast<int32_t>(batterylevel);
578 ASSERT_TRUE(batterylevel == OHOS::PowerMgr::BatteryCapacityLevel::LEVEL_FULL);
579
580 TestUtils::WriteMock(MOCK_BATTERY_PATH + "/battery/capacity", std::to_string(tempCapacity));
581 } else {
582 auto batterylevel = BatterySrvClient.GetCapacityLevel();
583 auto capacity = BatterySrvClient.GetCapacity();
584 BATTERY_HILOGI(LABEL_TEST, "BatteryClientTest::batterylevel=%{public}d",
585 static_cast<int32_t>(batterylevel));
586 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient016 executing, batterylevel="
587 << static_cast<int32_t>(batterylevel);
588 if (capacity == BATTERY_HIGH_FULL) {
589 ASSERT_TRUE(batterylevel == OHOS::PowerMgr::BatteryCapacityLevel::LEVEL_FULL);
590 }
591 }
592 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient016 function end!");
593 }
594
595
596 /**
597 * @tc.name: BatteryClient017
598 * @tc.desc: Test IBatterySrv interface GetRemainingChargeTime
599 * @tc.type: FUNC
600 */
601 HWTEST_F (BatteryClientTest, BatteryClient017, TestSize.Level1)
602 {
603 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient017 function start!");
604 auto& BatterySrvClient = BatterySrvClient::GetInstance();
605 if (g_isMock) {
606 auto remainingChargeTime = BatterySrvClient.GetRemainingChargeTime();
607 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient017 executing, remainingChargeTime=" << remainingChargeTime;
608 ASSERT_TRUE(remainingChargeTime >= 0);
609 } else {
610 auto remainingChargeTime = BatterySrvClient.GetRemainingChargeTime();
611 GTEST_LOG_(INFO) << "BatteryClient::BatteryClient017 executing, remainingChargeTime=" << remainingChargeTime;
612 ASSERT_TRUE(remainingChargeTime >= 0);
613 }
614 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient017 function end!");
615 }
616
617 /**
618 * @tc.name: BatteryClient018
619 * @tc.desc: Test BatteryInfo operator== and operator!=
620 * @tc.type: FUNC
621 */
622 HWTEST_F(BatteryClientTest, BatteryClient018, TestSize.Level1)
623 {
624 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient018 function start!");
625 {
626 BatteryInfo info1;
627 info1.SetCapacity(100);
628 info1.SetPresent(false);
629 info1.SetVoltage(10);
630 info1.SetTemperature(10);
631 info1.SetHealthState(BatteryHealthState::HEALTH_STATE_GOOD);
632 info1.SetPluggedType(BatteryPluggedType::PLUGGED_TYPE_USB);
633 info1.SetPluggedMaxCurrent(10);
634 info1.SetPluggedMaxVoltage(10);
635 info1.SetChargeState(BatteryChargeState::CHARGE_STATE_DISABLE);
636 info1.SetChargeCounter(10);
637 info1.SetTotalEnergy(10);
638 info1.SetCurAverage(10);
639 info1.SetNowCurrent(10);
640 info1.SetRemainEnergy(10);
641 info1.SetTechnology("BatteryClient018");
642 BatteryInfo info2;
643 info2.SetCapacity(100);
644 info2.SetPresent(false);
645 info2.SetVoltage(10);
646 info2.SetTemperature(10);
647 info2.SetHealthState(BatteryHealthState::HEALTH_STATE_GOOD);
648 info2.SetPluggedType(BatteryPluggedType::PLUGGED_TYPE_USB);
649 info2.SetPluggedMaxCurrent(10);
650 info2.SetPluggedMaxVoltage(10);
651 info2.SetChargeState(BatteryChargeState::CHARGE_STATE_DISABLE);
652 info2.SetChargeCounter(10);
653 info2.SetTotalEnergy(10);
654 info2.SetCurAverage(10);
655 info2.SetNowCurrent(10);
656 info2.SetRemainEnergy(10);
657 info2.SetTechnology("BatteryClient018");
658 ASSERT_TRUE(info1 == info2);
659 ASSERT_FALSE(info1 != info2);
660 info1.SetTechnology("BatteryClient018_false");
661 ASSERT_FALSE(info1 == info2);
662 ASSERT_TRUE(info1 != info2);
663 }
664 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient018 function end!");
665 }
666
667 /**
668 * @tc.name: BatteryClient019
669 * @tc.desc: Test BatteryInfo operator==
670 * @tc.type: FUNC
671 */
672 HWTEST_F(BatteryClientTest, BatteryClient019, TestSize.Level1)
673 {
674 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient019 function start!");
675 BatteryInfo info1 = g_info;
676 info1.SetPresent(false);
677 BatteryInfo info2 = g_info;
678 info2.SetPresent(true);
679 ASSERT_FALSE(info1 == info2);
680
681 info1 = info2 = g_info;
682 info1.SetCapacity(100);
683 info2.SetCapacity(50);
684 ASSERT_FALSE(info1 == info2);
685
686 info1 = info2 = g_info;
687 info2.SetVoltage(10);
688 info1.SetVoltage(5);
689 ASSERT_FALSE(info1 == info2);
690
691 info1 = info2 = g_info;
692 info2.SetTemperature(5);
693 info1.SetTemperature(10);
694 ASSERT_FALSE(info1 == info2);
695
696 info1 = info2 = g_info;
697 info2.SetHealthState(BatteryHealthState::HEALTH_STATE_GOOD);
698 info1.SetHealthState(BatteryHealthState::HEALTH_STATE_DEAD);
699 ASSERT_FALSE(info1 == info2);
700
701 info1 = info2 = g_info;
702 info2.SetPluggedType(BatteryPluggedType::PLUGGED_TYPE_USB);
703 info1.SetPluggedType(BatteryPluggedType::PLUGGED_TYPE_NONE);
704 ASSERT_FALSE(info1 == info2);
705
706 info1 = info2 = g_info;
707 info2.SetPluggedMaxCurrent(10);
708 info1.SetPluggedMaxCurrent(20);
709 ASSERT_FALSE(info1 == info2);
710 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient019 function end!");
711 }
712
713 /**
714 * @tc.name: BatteryClient020
715 * @tc.desc: Test ResetProxy
716 * @tc.type: FUNC
717 */
718 HWTEST_F(BatteryClientTest, BatteryClient020, TestSize.Level1)
719 {
720 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient020 function start!");
721 auto& BatterySrvClient = BatterySrvClient::GetInstance();
722 BatterySrvClient.proxy_ = nullptr;
723 BatterySrvClient.ResetProxy(nullptr);
724
725 sptr<ISystemAbilityManager> sysMgr = SystemAbilityManagerClient::GetInstance().GetSystemAbilityManager();
726 ASSERT_NE(sysMgr, nullptr);
727 wptr<IRemoteObject> remoteObj = sysMgr->CheckSystemAbility(POWER_MANAGER_SERVICE_ID);
728 ASSERT_NE(remoteObj, nullptr);
729 EXPECT_NE(BatterySrvClient.Connect(), nullptr);
730 BatterySrvClient.ResetProxy(remoteObj);
731 EXPECT_NE(BatterySrvClient.proxy_, nullptr);
732
733 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient020 function end!");
734 }
735
736 /**
737 * @tc.name: BatteryClient021
738 * @tc.desc: Test IBatterySrv interface SetBatteryConfig
739 * @tc.type: FUNC
740 */
741 HWTEST_F (BatteryClientTest, BatteryClient021, TestSize.Level1)
742 {
743 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient021 function start!");
744 auto& BatterySrvClient = BatterySrvClient::GetInstance();
745
746 string sceneName = "testScene";
747 string value = "";
748 int ret = (int)BatterySrvClient.SetBatteryConfig(sceneName, value);
749 EXPECT_NE(ret, 0);
750
751 sceneName = "wireless";
752 ret = (int)BatterySrvClient.GetBatteryConfig(sceneName, value);
753 if (!value.empty()) {
754 ret = (int)BatterySrvClient.SetBatteryConfig(sceneName, value);
755 EXPECT_EQ(ret, 0);
756 }
757 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient021 function end!");
758 }
759
760 /**
761 * @tc.name: BatteryClient022
762 * @tc.desc: Test IBatterySrv interface GetBatteryConfig
763 * @tc.type: FUNC
764 */
765 HWTEST_F (BatteryClientTest, BatteryClient022, TestSize.Level1)
766 {
767 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient022 function start!");
768 auto& BatterySrvClient = BatterySrvClient::GetInstance();
769
770 string sceneName = "testScene";
771 string result = "";
772 BatteryError ret = BatterySrvClient.GetBatteryConfig(sceneName, result);
773 EXPECT_NE(ret, BatteryError::ERR_OK);
774 EXPECT_EQ(result, "");
775 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient022 function end!");
776 }
777
778 /**
779 * @tc.name: BatteryClient023
780 * @tc.desc: Test IBatterySrv interface IsBatteryConfigSupported
781 * @tc.type: FUNC
782 */
783 HWTEST_F (BatteryClientTest, BatteryClient023, TestSize.Level1)
784 {
785 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient023 function start!");
786 auto& BatterySrvClient = BatterySrvClient::GetInstance();
787
788 string sceneName = "testScene1";
789 bool result = false;
790 BatteryError ret = BatterySrvClient.IsBatteryConfigSupported(sceneName, result);
791 EXPECT_NE(ret, BatteryError::ERR_OK);
792 EXPECT_FALSE(result);
793 BATTERY_HILOGI(LABEL_TEST, "BatteryClient::BatteryClient023 function end!");
794 }
795
796 /**
797 * @tc.name: BatteryClient024
798 * @tc.desc: test GetCapacity() when proxy return fail
799 * @tc.type: FUNC
800 * @tc.require
801 */
802 HWTEST_F(BatteryClientTest, BatteryClient024, TestSize.Level0)
803 {
804 BATTERY_HILOGI(LABEL_TEST, "BatteryClient024 function start!");
805 auto& BatterySrvClient = BatterySrvClient::GetInstance();
806 auto proxy = BatterySrvClient.proxy_;
807 BatterySrvClient.proxy_ = g_mockProxy;
808 auto capacity = BatterySrvClient.GetCapacity();
809 BatterySrvClient.proxy_ = proxy;
810 EXPECT_TRUE(capacity == INVALID_BATT_INT_VALUE);
811 BATTERY_HILOGI(LABEL_TEST, "BatteryClient024 function end!");
812 }
813
814 /**
815 * @tc.name: BatteryClient025
816 * @tc.desc: test GetChargingStatus() when proxy return fail
817 * @tc.type: FUNC
818 * @tc.require
819 */
820 HWTEST_F(BatteryClientTest, BatteryClient025, TestSize.Level0)
821 {
822 BATTERY_HILOGI(LABEL_TEST, "BatteryClient024 function start!");
823 auto& BatterySrvClient = BatterySrvClient::GetInstance();
824 auto proxy = BatterySrvClient.proxy_;
825 BatterySrvClient.proxy_ = g_mockProxy;
826 auto chargingStatus = BatterySrvClient.GetChargingStatus();
827 BatterySrvClient.proxy_ = proxy;
828 EXPECT_TRUE(chargingStatus == BatteryChargeState::CHARGE_STATE_BUTT);
829 BATTERY_HILOGI(LABEL_TEST, "BatteryClient025 function end!");
830 }
831
832 /**
833 * @tc.name: BatteryClient026
834 * @tc.desc: test GetHealthStatus() when proxy return fail
835 * @tc.type: FUNC
836 * @tc.require
837 */
838 HWTEST_F(BatteryClientTest, BatteryClient026, TestSize.Level0)
839 {
840 BATTERY_HILOGI(LABEL_TEST, "BatteryClient026 function start!");
841 auto& BatterySrvClient = BatterySrvClient::GetInstance();
842 auto proxy = BatterySrvClient.proxy_;
843 BatterySrvClient.proxy_ = g_mockProxy;
844 auto healthStatus = BatterySrvClient.GetHealthStatus();
845 BatterySrvClient.proxy_ = proxy;
846 EXPECT_TRUE(healthStatus == BatteryHealthState::HEALTH_STATE_BUTT);
847 BATTERY_HILOGI(LABEL_TEST, "BatteryClient026 function end!");
848 }
849
850 /**
851 * @tc.name: BatteryClient027
852 * @tc.desc: test GetPluggedType() when proxy return fail
853 * @tc.type: FUNC
854 * @tc.require
855 */
856 HWTEST_F(BatteryClientTest, BatteryClient027, TestSize.Level0)
857 {
858 BATTERY_HILOGI(LABEL_TEST, "BatteryClient027 function start!");
859 auto& BatterySrvClient = BatterySrvClient::GetInstance();
860 auto proxy = BatterySrvClient.proxy_;
861 BatterySrvClient.proxy_ = g_mockProxy;
862 auto pluggedType = BatterySrvClient.GetPluggedType();
863 BatterySrvClient.proxy_ = proxy;
864 EXPECT_TRUE(pluggedType == BatteryPluggedType::PLUGGED_TYPE_BUTT);
865 BATTERY_HILOGI(LABEL_TEST, "BatteryClient027 function end!");
866 }
867
868 /**
869 * @tc.name: BatteryClient028
870 * @tc.desc: test GetVoltage() when proxy return fail
871 * @tc.type: FUNC
872 * @tc.require
873 */
874 HWTEST_F(BatteryClientTest, BatteryClient028, TestSize.Level0)
875 {
876 BATTERY_HILOGI(LABEL_TEST, "BatteryClient028 function start!");
877 auto& BatterySrvClient = BatterySrvClient::GetInstance();
878 auto proxy = BatterySrvClient.proxy_;
879 BatterySrvClient.proxy_ = g_mockProxy;
880 auto voltage = BatterySrvClient.GetVoltage();
881 BatterySrvClient.proxy_ = proxy;
882 EXPECT_TRUE(voltage == INVALID_BATT_INT_VALUE);
883 BATTERY_HILOGI(LABEL_TEST, "BatteryClient028 function end!");
884 }
885
886 /**
887 * @tc.name: BatteryClient029
888 * @tc.desc: test GetPresent() when proxy return fail
889 * @tc.type: FUNC
890 * @tc.require
891 */
892 HWTEST_F(BatteryClientTest, BatteryClient029, TestSize.Level0)
893 {
894 BATTERY_HILOGI(LABEL_TEST, "BatteryClient029 function start!");
895 auto& BatterySrvClient = BatterySrvClient::GetInstance();
896 auto proxy = BatterySrvClient.proxy_;
897 BatterySrvClient.proxy_ = g_mockProxy;
898 auto present = BatterySrvClient.GetPresent();
899 BatterySrvClient.proxy_ = proxy;
900 EXPECT_TRUE(present == INVALID_BATT_BOOL_VALUE);
901 BATTERY_HILOGI(LABEL_TEST, "BatteryClient029 function end!");
902 }
903
904 /**
905 * @tc.name: BatteryClient030
906 * @tc.desc: test GetTechnology() when proxy return fail
907 * @tc.type: FUNC
908 * @tc.require
909 */
910 HWTEST_F(BatteryClientTest, BatteryClient030, TestSize.Level0)
911 {
912 BATTERY_HILOGI(LABEL_TEST, "BatteryClient030 function start!");
913 auto& BatterySrvClient = BatterySrvClient::GetInstance();
914 auto proxy = BatterySrvClient.proxy_;
915 BatterySrvClient.proxy_ = g_mockProxy;
916 auto technology = BatterySrvClient.GetTechnology();
917 BatterySrvClient.proxy_ = proxy;
918 EXPECT_TRUE(technology == INVALID_STRING_VALUE);
919 BATTERY_HILOGI(LABEL_TEST, "BatteryClient030 function end!");
920 }
921
922 /**
923 * @tc.name: BatteryClient031
924 * @tc.desc: test GetTotalEnergy() when proxy return fail
925 * @tc.type: FUNC
926 * @tc.require
927 */
928 HWTEST_F(BatteryClientTest, BatteryClient031, TestSize.Level0)
929 {
930 BATTERY_HILOGI(LABEL_TEST, "BatteryClient031 function start!");
931 auto& BatterySrvClient = BatterySrvClient::GetInstance();
932 auto proxy = BatterySrvClient.proxy_;
933 BatterySrvClient.proxy_ = g_mockProxy;
934 auto totalEnergy = BatterySrvClient.GetTotalEnergy();
935 BatterySrvClient.proxy_ = proxy;
936 EXPECT_TRUE(totalEnergy == INVALID_BATT_INT_VALUE);
937 BATTERY_HILOGI(LABEL_TEST, "BatteryClient031 function end!");
938 }
939
940 /**
941 * @tc.name: BatteryClient032
942 * @tc.desc: test GetNowCurrent() when proxy return fail
943 * @tc.type: FUNC
944 * @tc.require
945 */
946 HWTEST_F(BatteryClientTest, BatteryClient032, TestSize.Level0)
947 {
948 BATTERY_HILOGI(LABEL_TEST, "BatteryClient032 function start!");
949 auto& BatterySrvClient = BatterySrvClient::GetInstance();
950 auto proxy = BatterySrvClient.proxy_;
951 BatterySrvClient.proxy_ = g_mockProxy;
952 auto nowCurr = BatterySrvClient.GetNowCurrent();
953 BatterySrvClient.proxy_ = proxy;
954 EXPECT_TRUE(nowCurr == INVALID_BATT_INT_VALUE);
955 BATTERY_HILOGI(LABEL_TEST, "BatteryClient032 function end!");
956 }
957
958 /**
959 * @tc.name: BatteryClient033
960 * @tc.desc: test GetRemainEnergy() when proxy return fail
961 * @tc.type: FUNC
962 * @tc.require
963 */
964 HWTEST_F(BatteryClientTest, BatteryClient033, TestSize.Level0)
965 {
966 BATTERY_HILOGI(LABEL_TEST, "BatteryClient033 function start!");
967 auto& BatterySrvClient = BatterySrvClient::GetInstance();
968 auto proxy = BatterySrvClient.proxy_;
969 BatterySrvClient.proxy_ = g_mockProxy;
970 auto remainEnergy = BatterySrvClient.GetRemainEnergy();
971 BatterySrvClient.proxy_ = proxy;
972 EXPECT_TRUE(remainEnergy == INVALID_BATT_INT_VALUE);
973 BATTERY_HILOGI(LABEL_TEST, "BatteryClient033 function end!");
974 }
975
976 /**
977 * @tc.name: BatteryClient034
978 * @tc.desc: test GetBatteryTemperature() when proxy return fail
979 * @tc.type: FUNC
980 * @tc.require
981 */
982 HWTEST_F(BatteryClientTest, BatteryClient034, TestSize.Level0)
983 {
984 BATTERY_HILOGI(LABEL_TEST, "BatteryClient034 function start!");
985 auto& BatterySrvClient = BatterySrvClient::GetInstance();
986 auto proxy = BatterySrvClient.proxy_;
987 BatterySrvClient.proxy_ = g_mockProxy;
988 auto temperature = BatterySrvClient.GetBatteryTemperature();
989 BatterySrvClient.proxy_ = proxy;
990 EXPECT_TRUE(temperature == INVALID_BATT_TEMP_VALUE);
991 BATTERY_HILOGI(LABEL_TEST, "BatteryClient034 function end!");
992 }
993
994 /**
995 * @tc.name: BatteryClient035
996 * @tc.desc: test GetCapacityLevel() when proxy return fail
997 * @tc.type: FUNC
998 * @tc.require
999 */
1000 HWTEST_F(BatteryClientTest, BatteryClient035, TestSize.Level0)
1001 {
1002 BATTERY_HILOGI(LABEL_TEST, "BatteryClient035 function start!");
1003 auto& BatterySrvClient = BatterySrvClient::GetInstance();
1004 auto proxy = BatterySrvClient.proxy_;
1005 BatterySrvClient.proxy_ = g_mockProxy;
1006 auto batteryCapacityLevel = BatterySrvClient.GetCapacityLevel();
1007 BatterySrvClient.proxy_ = proxy;
1008 EXPECT_TRUE(batteryCapacityLevel == BatteryCapacityLevel::LEVEL_NONE);
1009 BATTERY_HILOGI(LABEL_TEST, "BatteryClient035 function end!");
1010 }
1011
1012 /**
1013 * @tc.name: BatteryClient036
1014 * @tc.desc: test GetRemainingChargeTime() when proxy return fail
1015 * @tc.type: FUNC
1016 * @tc.require
1017 */
1018 HWTEST_F(BatteryClientTest, BatteryClient036, TestSize.Level0)
1019 {
1020 BATTERY_HILOGI(LABEL_TEST, "BatteryClient036 function start!");
1021 auto& BatterySrvClient = BatterySrvClient::GetInstance();
1022 auto proxy = BatterySrvClient.proxy_;
1023 BatterySrvClient.proxy_ = g_mockProxy;
1024 auto remainTime = BatterySrvClient.GetRemainingChargeTime();
1025 BatterySrvClient.proxy_ = proxy;
1026 EXPECT_TRUE(remainTime == INVALID_REMAINING_CHARGE_TIME_VALUE);
1027 BATTERY_HILOGI(LABEL_TEST, "BatteryClient036 function end!");
1028 }
1029
1030 /**
1031 * @tc.name: BatteryClient037
1032 * @tc.desc: test SetBatteryConfig() when proxy return fail
1033 * @tc.type: FUNC
1034 * @tc.require
1035 */
1036 HWTEST_F(BatteryClientTest, BatteryClient037, TestSize.Level0)
1037 {
1038 BATTERY_HILOGI(LABEL_TEST, "BatteryClient037 function start!");
1039 auto& BatterySrvClient = BatterySrvClient::GetInstance();
1040 auto proxy = BatterySrvClient.proxy_;
1041 BatterySrvClient.proxy_ = g_mockProxy;
1042 std::string sceneName = "test";
1043 std::string value = "test";
1044 auto batteryErr = BatterySrvClient.SetBatteryConfig(sceneName, value);
1045 BatterySrvClient.proxy_ = proxy;
1046 EXPECT_NE(batteryErr, BatteryError::ERR_OK);
1047 BATTERY_HILOGI(LABEL_TEST, "BatteryClient037 function end!");
1048 }
1049
1050 /**
1051 * @tc.name: BatteryClient038
1052 * @tc.desc: test GetBatteryConfig() when proxy return fail
1053 * @tc.type: FUNC
1054 * @tc.require
1055 */
1056 HWTEST_F(BatteryClientTest, BatteryClient038, TestSize.Level0)
1057 {
1058 BATTERY_HILOGI(LABEL_TEST, "BatteryClient038 function start!");
1059 auto& BatterySrvClient = BatterySrvClient::GetInstance();
1060 auto proxy = BatterySrvClient.proxy_;
1061 BatterySrvClient.proxy_ = g_mockProxy;
1062 std::string sceneName = "test";
1063 std::string getResult;
1064 auto batteryErr = BatterySrvClient.GetBatteryConfig(sceneName, getResult);
1065 BatterySrvClient.proxy_ = proxy;
1066 EXPECT_NE(batteryErr, BatteryError::ERR_OK);
1067 BATTERY_HILOGI(LABEL_TEST, "BatteryClient038 function end!");
1068 }
1069
1070 /**
1071 * @tc.name: BatteryClient039
1072 * @tc.desc: test IsBatteryConfigSupported() when proxy return fail
1073 * @tc.type: FUNC
1074 * @tc.require
1075 */
1076 HWTEST_F(BatteryClientTest, BatteryClient039, TestSize.Level0)
1077 {
1078 BATTERY_HILOGI(LABEL_TEST, "BatteryClient039 function start!");
1079 auto& BatterySrvClient = BatterySrvClient::GetInstance();
1080 auto proxy = BatterySrvClient.proxy_;
1081 BatterySrvClient.proxy_ = g_mockProxy;
1082 std::string featureName = "test";
1083 bool isResult = false;
1084 auto batteryErr = BatterySrvClient.IsBatteryConfigSupported(featureName, isResult);
1085 BatterySrvClient.proxy_ = proxy;
1086 EXPECT_NE(batteryErr, BatteryError::ERR_OK);
1087 BATTERY_HILOGI(LABEL_TEST, "BatteryClient039 function end!");
1088 }
1089 } // namespace
1090