OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chromeos/power/power_data_collector.h" | 5 #include "chromeos/power/power_data_collector.h" |
6 #include "chromeos/dbus/dbus_thread_manager.h" | 6 #include "chromeos/dbus/dbus_thread_manager.h" |
7 #include "chromeos/dbus/fake_dbus_thread_manager.h" | 7 #include "chromeos/dbus/fake_dbus_thread_manager.h" |
8 #include "chromeos/dbus/power_manager/power_supply_properties.pb.h" | 8 #include "chromeos/dbus/power_manager/power_supply_properties.pb.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 | 10 |
(...skipping 20 matching lines...) Expand all Loading... |
31 | 31 |
32 protected: | 32 protected: |
33 PowerDataCollector* power_data_collector_; | 33 PowerDataCollector* power_data_collector_; |
34 }; | 34 }; |
35 | 35 |
36 TEST_F(PowerDataCollectorTest, PowerChanged) { | 36 TEST_F(PowerDataCollectorTest, PowerChanged) { |
37 power_manager::PowerSupplyProperties prop1, prop2; | 37 power_manager::PowerSupplyProperties prop1, prop2; |
38 | 38 |
39 prop1.set_external_power(power_manager::PowerSupplyProperties::DISCONNECTED); | 39 prop1.set_external_power(power_manager::PowerSupplyProperties::DISCONNECTED); |
40 prop1.set_battery_percent(20.00); | 40 prop1.set_battery_percent(20.00); |
41 | |
42 power_data_collector_->PowerChanged(prop1); | 41 power_data_collector_->PowerChanged(prop1); |
43 const std::vector<PowerDataCollector::PowerSupplySnapshot>& data1 = | 42 const std::deque<PowerDataCollector::PowerSupplySnapshot>& data1 = |
44 power_data_collector_->power_supply_data(); | 43 power_data_collector_->power_supply_data(); |
45 ASSERT_EQ(static_cast<size_t>(1), data1.size()); | 44 ASSERT_EQ(static_cast<size_t>(1), data1.size()); |
46 EXPECT_DOUBLE_EQ(prop1.battery_percent(), data1[0].battery_percent); | 45 EXPECT_DOUBLE_EQ(prop1.battery_percent(), data1[0].battery_percent); |
47 EXPECT_FALSE(data1[0].external_power); | 46 EXPECT_FALSE(data1[0].external_power); |
48 | 47 |
49 prop2.set_external_power(power_manager::PowerSupplyProperties::AC); | 48 prop2.set_external_power(power_manager::PowerSupplyProperties::AC); |
50 prop2.set_battery_percent(100.00); | 49 prop2.set_battery_percent(100.00); |
51 | |
52 power_data_collector_->PowerChanged(prop2); | 50 power_data_collector_->PowerChanged(prop2); |
53 const std::vector<PowerDataCollector::PowerSupplySnapshot>& data2 = | 51 const std::deque<PowerDataCollector::PowerSupplySnapshot>& data2 = |
54 power_data_collector_->power_supply_data(); | 52 power_data_collector_->power_supply_data(); |
55 ASSERT_EQ(static_cast<size_t>(2), data2.size()); | 53 ASSERT_EQ(static_cast<size_t>(2), data2.size()); |
56 EXPECT_DOUBLE_EQ(prop2.battery_percent(), data1[1].battery_percent); | 54 EXPECT_DOUBLE_EQ(prop2.battery_percent(), data2[1].battery_percent); |
57 EXPECT_TRUE(data2[1].external_power); | 55 EXPECT_TRUE(data2[1].external_power); |
58 } | 56 } |
59 | 57 |
| 58 TEST_F(PowerDataCollectorTest, AddSnapshot) { |
| 59 PowerDataCollector::PowerSupplySnapshot snapshot1, snapshot2; |
| 60 |
| 61 snapshot1.time = base::TimeTicks::FromInternalValue(1000); |
| 62 snapshot2.time = snapshot1.time + |
| 63 base::TimeDelta::FromSeconds(PowerDataCollector::kSampleTimeLimitSec + 1); |
| 64 |
| 65 power_data_collector_->AddSnapshot(snapshot1); |
| 66 const std::deque<PowerDataCollector::PowerSupplySnapshot>& data1 = |
| 67 power_data_collector_->power_supply_data(); |
| 68 ASSERT_EQ(static_cast<size_t>(1), data1.size()); |
| 69 |
| 70 power_data_collector_->AddSnapshot(snapshot2); |
| 71 const std::deque<PowerDataCollector::PowerSupplySnapshot>& data2 = |
| 72 power_data_collector_->power_supply_data(); |
| 73 ASSERT_EQ(static_cast<size_t>(1), data2.size()); |
| 74 EXPECT_EQ(snapshot2.time.ToInternalValue(), data2[0].time.ToInternalValue()); |
| 75 } |
| 76 |
60 } // namespace chromeos | 77 } // namespace chromeos |
OLD | NEW |