| OLD | NEW |
| 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/test_task_manager.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 Loading... |
| 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 |
| OLD | NEW |