xref: /aosp_15_r20/external/cronet/base/test/power_monitor_test_utils.cc (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1 // Copyright 2022 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "base/test/power_monitor_test_utils.h"
6 
7 namespace base::test {
8 
9 TestSamplingEventSource::TestSamplingEventSource() = default;
10 TestSamplingEventSource::~TestSamplingEventSource() = default;
11 
Start(SamplingEventCallback callback)12 bool TestSamplingEventSource::Start(SamplingEventCallback callback) {
13   sampling_event_callback_ = std::move(callback);
14   return true;
15 }
16 
SimulateEvent()17 void TestSamplingEventSource::SimulateEvent() {
18   sampling_event_callback_.Run();
19 }
20 
21 TestBatteryLevelProvider::TestBatteryLevelProvider() = default;
22 
GetBatteryState(base::OnceCallback<void (const std::optional<base::BatteryLevelProvider::BatteryState> &)> callback)23 void TestBatteryLevelProvider::GetBatteryState(
24     base::OnceCallback<
25         void(const std::optional<base::BatteryLevelProvider::BatteryState>&)>
26         callback) {
27   std::move(callback).Run(battery_state_);
28 }
29 
SetBatteryState(std::optional<base::BatteryLevelProvider::BatteryState> battery_state)30 void TestBatteryLevelProvider::SetBatteryState(
31     std::optional<base::BatteryLevelProvider::BatteryState> battery_state) {
32   battery_state_ = battery_state;
33 }
34 
35 // static
36 base::BatteryLevelProvider::BatteryState
CreateBatteryState(int battery_count,bool is_external_power_connected,int charge_percent)37 TestBatteryLevelProvider::CreateBatteryState(int battery_count,
38                                              bool is_external_power_connected,
39                                              int charge_percent) {
40   return {
41       .battery_count = battery_count,
42       .is_external_power_connected = is_external_power_connected,
43       .current_capacity = charge_percent,
44       .full_charged_capacity = 100,
45       .charge_unit = base::BatteryLevelProvider::BatteryLevelUnit::kRelative,
46       .capture_time = base::TimeTicks::Now(),
47   };
48 }
49 
50 }  // namespace base::test
51