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

Unified Diff: chrome/browser/task_management/task_manager_browsertest.cc

Issue 2178733002: Task manager should support Idle Wakeups on Windows (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed build error on win_clang Created 4 years, 4 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_management/task_manager_browsertest.cc
diff --git a/chrome/browser/task_management/task_manager_browsertest.cc b/chrome/browser/task_management/task_manager_browsertest.cc
index 00c731862c38a1b7949569854080b7fb3b19eea2..45bf23af016667dd2bea4774e37ce4a7aad15547 100644
--- a/chrome/browser/task_management/task_manager_browsertest.cc
+++ b/chrome/browser/task_management/task_manager_browsertest.cc
@@ -861,6 +861,34 @@ IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest, JSHeapMemory) {
ASSERT_NO_FATAL_FAILURE(WaitForTaskManagerRows(1, MatchTab("title1.html")));
}
+// Checks that task manager counts idle wakeups.
+IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest,
+ IdleWakeups) {
+ ShowTaskManager();
+ model()->ToggleColumnVisibility(ColumnSpecifier::IDLE_WAKEUPS);
+
+ ui_test_utils::NavigateToURL(browser(), GetTestURL());
+
+ std::string test_js =
+ "function myWait() {\n"
+ " setTimeout(function() { myWait(); }, 1)\n"
+ "}\n"
+ "myWait();\n"
+ "window.domAutomationController.send(\"okay\");\n";
+
+ std::string ok;
+ ASSERT_TRUE(content::ExecuteScriptAndExtractString(
+ browser()->tab_strip_model()->GetActiveWebContents(), test_js, &ok));
+ ASSERT_EQ("okay", ok);
+
+ // The script above should trigger a lot of idle wakeups - up to 1000 per
+ // second. Let's make sure we get at least 100 (in case the test runs slow).
+ ASSERT_NO_FATAL_FAILURE(WaitForTaskManagerStatToExceed(
+ MatchTab("title1.html"), ColumnSpecifier::IDLE_WAKEUPS, 100));
+ ASSERT_NO_FATAL_FAILURE(WaitForTaskManagerRows(1, MatchAnyTab()));
+ ASSERT_NO_FATAL_FAILURE(WaitForTaskManagerRows(1, MatchTab("title1.html")));
+}
+
// Checks that task manager counts utility process JS heap size.
IN_PROC_BROWSER_TEST_F(TaskManagerUtilityProcessBrowserTest,
UtilityJSHeapMemory) {

Powered by Google App Engine
This is Rietveld 408576698