Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(92)

Side by Side Diff: chrome/browser/task_management/task_manager_observer_unittest.cc

Issue 1374283003: Reporting top cpu and memory consumers via rappor on chromeos (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: browser/gpu stats by UMA histograms, buckets for cpu cores. Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/timer/mock_timer.h" 5 #include "chrome/browser/task_management/task_manager_test_util.h"
6 #include "chrome/browser/task_management/task_manager_interface.h"
7 #include "testing/gtest/include/gtest/gtest.h" 6 #include "testing/gtest/include/gtest/gtest.h"
8 7
9 namespace task_management { 8 namespace task_management {
10 9
11 namespace { 10 namespace {
12 11
13 // This is a partial stub implementation to test the behavior of the base class
14 // TaskManagerInterface in response to adding and removing observers.
15 class TestTaskManager : public TaskManagerInterface {
16 public:
17 TestTaskManager()
18 : TaskManagerInterface(),
19 handle_(),
20 id_(),
21 title_(),
22 icon_(),
23 ids_() {
24 set_timer_for_testing(scoped_ptr<base::Timer>(new base::MockTimer(true,
25 true)));
26 }
27 ~TestTaskManager() override {}
28
29 // task_management::TaskManagerInterface:
30 void ActivateTask(TaskId task_id) override {}
31 double GetCpuUsage(TaskId task_id) const override { return 0.0; }
32 int64 GetPhysicalMemoryUsage(TaskId task_id) const override { return -1; }
33 int64 GetPrivateMemoryUsage(TaskId task_id) const override { return -1; }
34 int64 GetSharedMemoryUsage(TaskId task_id) const override { return -1; }
35 int64 GetGpuMemoryUsage(TaskId task_id, bool* has_duplicates) const override {
36 return -1;
37 }
38 int GetIdleWakeupsPerSecond(TaskId task_id) const override { return -1; }
39 int GetNaClDebugStubPort(TaskId task_id) const override { return -1; }
40 void GetGDIHandles(TaskId task_id,
41 int64* current,
42 int64* peak) const override {}
43 void GetUSERHandles(TaskId task_id,
44 int64* current,
45 int64* peak) const override {}
46 const base::string16& GetTitle(TaskId task_id) const override {
47 return title_;
48 }
49 base::string16 GetProfileName(TaskId task_id) const override {
50 return base::string16();
51 }
52 const gfx::ImageSkia& GetIcon(TaskId task_id) const override { return icon_; }
53 const base::ProcessHandle& GetProcessHandle(TaskId task_id) const override {
54 return handle_;
55 }
56 const base::ProcessId& GetProcessId(TaskId task_id) const override {
57 return id_;
58 }
59 Task::Type GetType(TaskId task_id) const override { return Task::UNKNOWN; }
60 int64 GetNetworkUsage(TaskId task_id) const override { return -1; }
61 int64 GetSqliteMemoryUsed(TaskId task_id) const override { return -1; }
62 bool GetV8Memory(TaskId task_id,
63 int64* allocated,
64 int64* used) const override { return false; }
65 bool GetWebCacheStats(
66 TaskId task_id,
67 blink::WebCache::ResourceTypeStats* stats) const override {
68 return false;
69 }
70 const TaskIdList& GetTaskIdsList() const override {
71 return ids_;
72 }
73 size_t GetNumberOfTasksOnSameProcess(TaskId task_id) const override {
74 return 1;
75 }
76
77 base::TimeDelta GetRefreshTime() {
78 return GetCurrentRefreshTime();
79 }
80
81 int64 GetEnabledFlags() {
82 return enabled_resources_flags();
83 }
84
85 protected:
86 // task_management::TaskManager:
87 void Refresh() override {}
88 void StartUpdating() override {}
89 void StopUpdating() override {}
90
91 private:
92 base::ProcessHandle handle_;
93 base::ProcessId id_;
94 base::string16 title_;
95 gfx::ImageSkia icon_;
96 TaskIdList ids_;
97
98 DISALLOW_COPY_AND_ASSIGN(TestTaskManager);
99 };
100
101 // Defines a concrete observer that will be used for testing. 12 // Defines a concrete observer that will be used for testing.
102 class TestObserver : public TaskManagerObserver { 13 class TestObserver : public TaskManagerObserver {
103 public: 14 public:
104 TestObserver(base::TimeDelta refresh_time, int64 resources_flags) 15 TestObserver(base::TimeDelta refresh_time, int64 resources_flags)
105 : TaskManagerObserver(refresh_time, resources_flags) { 16 : TaskManagerObserver(refresh_time, resources_flags) {
106 } 17 }
107 18
108 ~TestObserver() override {} 19 ~TestObserver() override {}
109 20
110 // task_management::TaskManagerObserver: 21 // task_management::TaskManagerObserver:
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
197 EXPECT_EQ(flags1 | flags2, task_manager().GetEnabledFlags()); 108 EXPECT_EQ(flags1 | flags2, task_manager().GetEnabledFlags());
198 task_manager().RemoveObserver(&observer2); 109 task_manager().RemoveObserver(&observer2);
199 EXPECT_EQ(refresh_time1, task_manager().GetRefreshTime()); 110 EXPECT_EQ(refresh_time1, task_manager().GetRefreshTime());
200 EXPECT_EQ(flags1, task_manager().GetEnabledFlags()); 111 EXPECT_EQ(flags1, task_manager().GetEnabledFlags());
201 task_manager().RemoveObserver(&observer1); 112 task_manager().RemoveObserver(&observer1);
202 EXPECT_EQ(base::TimeDelta::Max(), task_manager().GetRefreshTime()); 113 EXPECT_EQ(base::TimeDelta::Max(), task_manager().GetRefreshTime());
203 EXPECT_EQ(0, task_manager().GetEnabledFlags()); 114 EXPECT_EQ(0, task_manager().GetEnabledFlags());
204 } 115 }
205 116
206 } // namespace task_management 117 } // namespace task_management
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698