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

Side by Side Diff: chrome/browser/task_manager/providers/browser_process_task_unittest.cc

Issue 2905403002: plumb network upload into the task manager (Closed)
Patch Set: fixed spelling/parellelism issues Created 3 years, 6 months 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/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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698