OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "base/message_loop/message_loop.h" | 5 #include "base/message_loop/message_loop.h" |
6 #include "base/run_loop.h" | 6 #include "base/run_loop.h" |
7 #include "content/browser/browser_thread_impl.h" | 7 #include "content/browser/browser_thread_impl.h" |
8 #include "content/browser/power_profiler/power_profiler_service.h" | 8 #include "content/browser/power_profiler/power_profiler_service.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 | 10 |
11 namespace content { | 11 namespace content { |
12 | 12 |
13 namespace { | 13 namespace { |
14 | 14 |
15 const int kNumEvents = 3; | 15 const int kNumEvents = 3; |
| 16 const int kDefaultSamplePeriodMs = 50; |
16 | 17 |
17 // Provide a set number of power events. | 18 // Provide a set number of power events. |
18 class TestPowerDataProvider : public PowerDataProvider { | 19 class TestPowerDataProvider : public PowerDataProvider { |
19 public: | 20 public: |
20 TestPowerDataProvider(int count) : num_events_to_send_(count) {} | 21 TestPowerDataProvider(int count) : num_events_to_send_(count) {} |
21 virtual ~TestPowerDataProvider() {} | 22 virtual ~TestPowerDataProvider() {} |
22 | 23 |
23 virtual PowerEventVector GetData() OVERRIDE { | 24 virtual PowerEventVector GetData() OVERRIDE { |
24 PowerEventVector events; | 25 PowerEventVector events; |
25 if (num_events_to_send_ == 0) | 26 if (num_events_to_send_ == 0) |
26 return events; | 27 return events; |
27 | 28 |
28 PowerEvent event; | 29 PowerEvent event; |
29 event.type = PowerEvent::SOC_PACKAGE; | 30 event.type = PowerEvent::SOC_PACKAGE; |
30 event.time = base::TimeTicks::Now(); | 31 event.time = base::TimeTicks::Now(); |
31 event.value = 1.0; | 32 event.value = 1.0; |
32 events.push_back(event); | 33 events.push_back(event); |
33 | 34 |
34 num_events_to_send_--; | 35 num_events_to_send_--; |
35 return events; | 36 return events; |
36 } | 37 } |
37 | 38 |
| 39 virtual base::TimeDelta GetSamplingRate() OVERRIDE { |
| 40 return base::TimeDelta::FromMilliseconds(kDefaultSamplePeriodMs); |
| 41 } |
| 42 |
38 private: | 43 private: |
39 int num_events_to_send_; | 44 int num_events_to_send_; |
40 DISALLOW_COPY_AND_ASSIGN(TestPowerDataProvider); | 45 DISALLOW_COPY_AND_ASSIGN(TestPowerDataProvider); |
41 }; | 46 }; |
42 | 47 |
43 class TestPowerProfilerObserver : public PowerProfilerObserver { | 48 class TestPowerProfilerObserver : public PowerProfilerObserver { |
44 public: | 49 public: |
45 TestPowerProfilerObserver() | 50 TestPowerProfilerObserver() |
46 : valid_event_count_(0), | 51 : valid_event_count_(0), |
47 total_num_events_received_(0) {} | 52 total_num_events_received_(0) {} |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
129 | 134 |
130 ServiceStartTest(); | 135 ServiceStartTest(); |
131 AddObserverTest(); | 136 AddObserverTest(); |
132 | 137 |
133 run_loop.Run(); | 138 run_loop.Run(); |
134 | 139 |
135 RemoveObserverTest(); | 140 RemoveObserverTest(); |
136 } | 141 } |
137 | 142 |
138 } // namespace content | 143 } // namespace content |
OLD | NEW |