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/macros.h" | 5 #include "base/macros.h" |
6 #include "chrome/browser/task_manager/providers/browser_process_task_provider.h" | 6 #include "chrome/browser/task_manager/providers/browser_process_task_provider.h" |
7 #include "chrome/browser/task_manager/task_manager_observer.h" | 7 #include "chrome/browser/task_manager/task_manager_observer.h" |
8 #include "chrome/grit/generated_resources.h" | 8 #include "chrome/grit/generated_resources.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 #include "ui/base/l10n/l10n_util.h" | 10 #include "ui/base/l10n/l10n_util.h" |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
69 | 69 |
70 EXPECT_EQ(base::GetCurrentProcessHandle(), provided_task_->process_handle()); | 70 EXPECT_EQ(base::GetCurrentProcessHandle(), provided_task_->process_handle()); |
71 EXPECT_EQ(base::GetCurrentProcId(), provided_task_->process_id()); | 71 EXPECT_EQ(base::GetCurrentProcId(), provided_task_->process_id()); |
72 EXPECT_FALSE(provided_task_->ReportsWebCacheStats()); | 72 EXPECT_FALSE(provided_task_->ReportsWebCacheStats()); |
73 EXPECT_EQ(l10n_util::GetStringUTF16(IDS_TASK_MANAGER_WEB_BROWSER_CELL_TEXT), | 73 EXPECT_EQ(l10n_util::GetStringUTF16(IDS_TASK_MANAGER_WEB_BROWSER_CELL_TEXT), |
74 provided_task_->title()); | 74 provided_task_->title()); |
75 EXPECT_EQ(Task::BROWSER, provided_task_->GetType()); | 75 EXPECT_EQ(Task::BROWSER, provided_task_->GetType()); |
76 EXPECT_EQ(0, provided_task_->GetChildProcessUniqueID()); | 76 EXPECT_EQ(0, provided_task_->GetChildProcessUniqueID()); |
77 const int received_bytes = 1024; | 77 const int received_bytes = 1024; |
78 EXPECT_FALSE(provided_task_->ReportsNetworkUsage()); | 78 EXPECT_FALSE(provided_task_->ReportsNetworkUsage()); |
79 EXPECT_EQ(-1, provided_task_->network_usage()); | 79 EXPECT_EQ(-1, provided_task_->network_usage_rate()); |
80 provided_task_->OnNetworkBytesRead(received_bytes); | |
81 // Do a refresh with a 1-second update time. | |
82 provided_task_->Refresh(base::TimeDelta::FromSeconds(1), | |
83 REFRESH_TYPE_NETWORK_USAGE); | |
84 } | |
85 | |
86 // Test the provided browser process task itself. | |
87 TEST_F(BrowserProcessTaskProviderTest, NetworkBytesReceived) { | |
88 BrowserProcessTaskProvider provider; | |
89 EXPECT_EQ(nullptr, provided_task_); | |
90 provider.SetObserver(this); | |
91 ASSERT_NE(nullptr, provided_task_); | |
92 | |
93 EXPECT_EQ(base::GetCurrentProcessHandle(), provided_task_->process_handle()); | |
94 EXPECT_EQ(base::GetCurrentProcId(), provided_task_->process_id()); | |
95 EXPECT_FALSE(provided_task_->ReportsWebCacheStats()); | |
96 EXPECT_EQ(l10n_util::GetStringUTF16(IDS_TASK_MANAGER_WEB_BROWSER_CELL_TEXT), | |
97 provided_task_->title()); | |
98 EXPECT_EQ(Task::BROWSER, provided_task_->GetType()); | |
99 EXPECT_EQ(0, provided_task_->GetChildProcessUniqueID()); | |
100 const int received_bytes = 1024; | |
101 EXPECT_FALSE(provided_task_->ReportsNetworkUsage()); | |
102 EXPECT_EQ(-1, provided_task_->network_usage_rate()); | |
80 provided_task_->OnNetworkBytesRead(received_bytes); | 103 provided_task_->OnNetworkBytesRead(received_bytes); |
81 // Do a refresh with a 1-second update time. | 104 // Do a refresh with a 1-second update time. |
82 provided_task_->Refresh(base::TimeDelta::FromSeconds(1), | 105 provided_task_->Refresh(base::TimeDelta::FromSeconds(1), |
83 REFRESH_TYPE_NETWORK_USAGE); | 106 REFRESH_TYPE_NETWORK_USAGE); |
84 EXPECT_TRUE(provided_task_->ReportsNetworkUsage()); | 107 EXPECT_TRUE(provided_task_->ReportsNetworkUsage()); |
85 EXPECT_EQ(received_bytes, provided_task_->network_usage()); | 108 EXPECT_EQ(received_bytes, provided_task_->network_usage_rate()); |
109 } | |
110 | |
111 // Test the provided browser process task for sent bytes rate | |
112 TEST_F(BrowserProcessTaskProviderTest, NetworkBytesSent) { | |
113 BrowserProcessTaskProvider provider; | |
114 provider.SetObserver(this); | |
115 | |
116 const int sent_bytes = 1024; | |
117 EXPECT_FALSE(provided_task_->ReportsNetworkUsage()); | |
118 EXPECT_EQ(-1, provided_task_->network_usage_rate()); | |
119 provided_task_->OnNetworkBytesSent(sent_bytes); | |
120 // Do a refresh with a 1-second update time. | |
121 provided_task_->Refresh(base::TimeDelta::FromSeconds(1), | |
122 REFRESH_TYPE_NETWORK_USAGE); | |
123 EXPECT_TRUE(provided_task_->ReportsNetworkUsage()); | |
124 EXPECT_EQ(sent_bytes, provided_task_->network_usage_rate()); | |
125 } | |
126 | |
127 // Test the provided browser process task for received then sent bytes rate | |
128 TEST_F(BrowserProcessTaskProviderTest, NetworkBytesReceivedThenSent) { | |
129 BrowserProcessTaskProvider provider; | |
130 provider.SetObserver(this); | |
131 | |
132 const int received_bytes = 1024; | |
133 const int sent_bytes = 1024; | |
134 EXPECT_FALSE(provided_task_->ReportsNetworkUsage()); | |
135 EXPECT_EQ(-1, provided_task_->network_usage_rate()); | |
136 provided_task_->OnNetworkBytesRead(received_bytes); | |
137 provided_task_->OnNetworkBytesSent(sent_bytes); | |
138 // Do a refresh with a 1-second update time. | |
139 provided_task_->Refresh(base::TimeDelta::FromSeconds(1), | |
140 REFRESH_TYPE_NETWORK_USAGE); | |
141 EXPECT_TRUE(provided_task_->ReportsNetworkUsage()); | |
142 EXPECT_EQ(received_bytes + sent_bytes, provided_task_->network_usage_rate()); | |
143 } | |
144 | |
145 // Test the provided browser process task for sent then received rate. | |
146 TEST_F(BrowserProcessTaskProviderTest, NetworkBytesSentThenReceived) { | |
147 BrowserProcessTaskProvider provider; | |
148 provider.SetObserver(this); | |
149 | |
150 const int received_bytes = 1024; | |
151 const int sent_bytes = 1024; | |
152 EXPECT_FALSE(provided_task_->ReportsNetworkUsage()); | |
153 EXPECT_EQ(-1, provided_task_->network_usage_rate()); | |
154 provided_task_->OnNetworkBytesSent(sent_bytes); | |
155 provided_task_->OnNetworkBytesRead(received_bytes); | |
156 // Do a refresh with a 1-second update time. | |
157 provided_task_->Refresh(base::TimeDelta::FromSeconds(1), | |
158 REFRESH_TYPE_NETWORK_USAGE); | |
159 EXPECT_TRUE(provided_task_->ReportsNetworkUsage()); | |
160 EXPECT_EQ(sent_bytes + received_bytes, provided_task_->network_usage_rate()); | |
ncarter (slow)
2017/06/14 20:20:58
To really validate that cumulative is "since the b
cburn
2017/06/16 21:52:26
I've added some tests that cover this case.
| |
161 } | |
162 | |
163 TEST_F(BrowserProcessTaskProviderTest, TotalNetworkBytesReceived) { | |
164 BrowserProcessTaskProvider provider; | |
165 provider.SetObserver(this); | |
166 | |
167 const int refresh_secs = 2; | |
168 const int received_bytes = 1024 * refresh_secs; | |
169 EXPECT_FALSE(provided_task_->ReportsNetworkUsage()); | |
170 EXPECT_EQ(-1, provided_task_->network_usage_rate()); | |
171 provided_task_->OnNetworkBytesRead(received_bytes); | |
172 // Do a refresh with a 2-second update time so network_usage_rate() should be | |
173 // half of cumulative_network_usage(); | |
174 provided_task_->Refresh(base::TimeDelta::FromSeconds(2), | |
ncarter (slow)
2017/06/14 20:20:58
2 -> refresh_secs
cburn
2017/06/16 21:52:26
Done.
| |
175 REFRESH_TYPE_NETWORK_USAGE); | |
176 EXPECT_TRUE(provided_task_->ReportsNetworkUsage()); | |
177 EXPECT_EQ(received_bytes, provided_task_->cumulative_network_usage()); | |
ncarter (slow)
2017/06/14 20:20:58
EXPECT_EQ(received_bytes / refresh_secs, provided_
cburn
2017/06/16 21:52:26
Done.
| |
178 } | |
179 | |
180 TEST_F(BrowserProcessTaskProviderTest, TotalNetworkBytesSent) { | |
181 BrowserProcessTaskProvider provider; | |
182 provider.SetObserver(this); | |
183 | |
184 const int refresh_secs = 2; | |
185 const int sent_bytes = 1024 * refresh_secs; | |
186 EXPECT_FALSE(provided_task_->ReportsNetworkUsage()); | |
187 EXPECT_EQ(-1, provided_task_->network_usage_rate()); | |
188 provided_task_->OnNetworkBytesRead(sent_bytes); | |
189 // Do a refresh with a 2-second update time so network_usage_rate() should be | |
190 // half of cumulative_network_usage(); | |
191 provided_task_->Refresh(base::TimeDelta::FromSeconds(2), | |
ncarter (slow)
2017/06/14 20:20:58
2 -> refresh_secs
cburn
2017/06/16 21:52:26
Done.
| |
192 REFRESH_TYPE_NETWORK_USAGE); | |
193 EXPECT_TRUE(provided_task_->ReportsNetworkUsage()); | |
194 EXPECT_EQ(sent_bytes, provided_task_->cumulative_network_usage()); | |
ncarter (slow)
2017/06/14 20:20:58
EXPECT_EQ(sent_bytes / refresh_secs, provided_task
cburn
2017/06/16 21:52:26
Done.
| |
86 } | 195 } |
87 | 196 |
88 } // namespace task_manager | 197 } // namespace task_manager |
OLD | NEW |