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

Unified 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/task_manager/providers/browser_process_task_unittest.cc
diff --git a/chrome/browser/task_manager/providers/browser_process_task_unittest.cc b/chrome/browser/task_manager/providers/browser_process_task_unittest.cc
index 15fbc672b1a190b0e708b64b4869eb804a9380f2..83b00ac64a3446f141ee6fb2be1f458380182798 100644
--- a/chrome/browser/task_manager/providers/browser_process_task_unittest.cc
+++ b/chrome/browser/task_manager/providers/browser_process_task_unittest.cc
@@ -76,13 +76,122 @@ TEST_F(BrowserProcessTaskProviderTest, TestProvidedTask) {
EXPECT_EQ(0, provided_task_->GetChildProcessUniqueID());
const int received_bytes = 1024;
EXPECT_FALSE(provided_task_->ReportsNetworkUsage());
- EXPECT_EQ(-1, provided_task_->network_usage());
+ EXPECT_EQ(-1, provided_task_->network_usage_rate());
provided_task_->OnNetworkBytesRead(received_bytes);
// Do a refresh with a 1-second update time.
provided_task_->Refresh(base::TimeDelta::FromSeconds(1),
REFRESH_TYPE_NETWORK_USAGE);
+}
+
+// Test the provided browser process task itself.
+TEST_F(BrowserProcessTaskProviderTest, NetworkBytesReceived) {
+ BrowserProcessTaskProvider provider;
+ EXPECT_EQ(nullptr, provided_task_);
+ provider.SetObserver(this);
+ ASSERT_NE(nullptr, provided_task_);
+
+ EXPECT_EQ(base::GetCurrentProcessHandle(), provided_task_->process_handle());
+ EXPECT_EQ(base::GetCurrentProcId(), provided_task_->process_id());
+ EXPECT_FALSE(provided_task_->ReportsWebCacheStats());
+ EXPECT_EQ(l10n_util::GetStringUTF16(IDS_TASK_MANAGER_WEB_BROWSER_CELL_TEXT),
+ provided_task_->title());
+ EXPECT_EQ(Task::BROWSER, provided_task_->GetType());
+ EXPECT_EQ(0, provided_task_->GetChildProcessUniqueID());
+ const int received_bytes = 1024;
+ EXPECT_FALSE(provided_task_->ReportsNetworkUsage());
+ EXPECT_EQ(-1, provided_task_->network_usage_rate());
+ provided_task_->OnNetworkBytesRead(received_bytes);
+ // Do a refresh with a 1-second update time.
+ provided_task_->Refresh(base::TimeDelta::FromSeconds(1),
+ REFRESH_TYPE_NETWORK_USAGE);
+ EXPECT_TRUE(provided_task_->ReportsNetworkUsage());
+ EXPECT_EQ(received_bytes, provided_task_->network_usage_rate());
+}
+
+// Test the provided browser process task for sent bytes rate
+TEST_F(BrowserProcessTaskProviderTest, NetworkBytesSent) {
+ BrowserProcessTaskProvider provider;
+ provider.SetObserver(this);
+
+ const int sent_bytes = 1024;
+ EXPECT_FALSE(provided_task_->ReportsNetworkUsage());
+ EXPECT_EQ(-1, provided_task_->network_usage_rate());
+ provided_task_->OnNetworkBytesSent(sent_bytes);
+ // Do a refresh with a 1-second update time.
+ provided_task_->Refresh(base::TimeDelta::FromSeconds(1),
+ REFRESH_TYPE_NETWORK_USAGE);
+ EXPECT_TRUE(provided_task_->ReportsNetworkUsage());
+ EXPECT_EQ(sent_bytes, provided_task_->network_usage_rate());
+}
+
+// Test the provided browser process task for received then sent bytes rate
+TEST_F(BrowserProcessTaskProviderTest, NetworkBytesReceivedThenSent) {
+ BrowserProcessTaskProvider provider;
+ provider.SetObserver(this);
+
+ const int received_bytes = 1024;
+ const int sent_bytes = 1024;
+ EXPECT_FALSE(provided_task_->ReportsNetworkUsage());
+ EXPECT_EQ(-1, provided_task_->network_usage_rate());
+ provided_task_->OnNetworkBytesRead(received_bytes);
+ provided_task_->OnNetworkBytesSent(sent_bytes);
+ // Do a refresh with a 1-second update time.
+ provided_task_->Refresh(base::TimeDelta::FromSeconds(1),
+ REFRESH_TYPE_NETWORK_USAGE);
+ EXPECT_TRUE(provided_task_->ReportsNetworkUsage());
+ EXPECT_EQ(received_bytes + sent_bytes, provided_task_->network_usage_rate());
+}
+
+// Test the provided browser process task for sent then received rate.
+TEST_F(BrowserProcessTaskProviderTest, NetworkBytesSentThenReceived) {
+ BrowserProcessTaskProvider provider;
+ provider.SetObserver(this);
+
+ const int received_bytes = 1024;
+ const int sent_bytes = 1024;
+ EXPECT_FALSE(provided_task_->ReportsNetworkUsage());
+ EXPECT_EQ(-1, provided_task_->network_usage_rate());
+ provided_task_->OnNetworkBytesSent(sent_bytes);
+ provided_task_->OnNetworkBytesRead(received_bytes);
+ // Do a refresh with a 1-second update time.
+ provided_task_->Refresh(base::TimeDelta::FromSeconds(1),
+ REFRESH_TYPE_NETWORK_USAGE);
+ EXPECT_TRUE(provided_task_->ReportsNetworkUsage());
+ 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.
+}
+
+TEST_F(BrowserProcessTaskProviderTest, TotalNetworkBytesReceived) {
+ BrowserProcessTaskProvider provider;
+ provider.SetObserver(this);
+
+ const int refresh_secs = 2;
+ const int received_bytes = 1024 * refresh_secs;
+ EXPECT_FALSE(provided_task_->ReportsNetworkUsage());
+ EXPECT_EQ(-1, provided_task_->network_usage_rate());
+ provided_task_->OnNetworkBytesRead(received_bytes);
+ // Do a refresh with a 2-second update time so network_usage_rate() should be
+ // half of cumulative_network_usage();
+ 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.
+ REFRESH_TYPE_NETWORK_USAGE);
+ EXPECT_TRUE(provided_task_->ReportsNetworkUsage());
+ 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.
+}
+
+TEST_F(BrowserProcessTaskProviderTest, TotalNetworkBytesSent) {
+ BrowserProcessTaskProvider provider;
+ provider.SetObserver(this);
+
+ const int refresh_secs = 2;
+ const int sent_bytes = 1024 * refresh_secs;
+ EXPECT_FALSE(provided_task_->ReportsNetworkUsage());
+ EXPECT_EQ(-1, provided_task_->network_usage_rate());
+ provided_task_->OnNetworkBytesRead(sent_bytes);
+ // Do a refresh with a 2-second update time so network_usage_rate() should be
+ // half of cumulative_network_usage();
+ 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.
+ REFRESH_TYPE_NETWORK_USAGE);
EXPECT_TRUE(provided_task_->ReportsNetworkUsage());
- EXPECT_EQ(received_bytes, provided_task_->network_usage());
+ 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.
}
} // namespace task_manager

Powered by Google App Engine
This is Rietveld 408576698