OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "chrome/browser/task_manager/task_manager.h" | 5 #include "chrome/browser/task_manager/task_manager.h" |
6 | 6 |
7 #include "base/file_path.h" | 7 #include "base/file_path.h" |
8 #include "base/stringprintf.h" | 8 #include "base/stringprintf.h" |
9 #include "base/utf_string_conversions.h" | 9 #include "base/utf_string_conversions.h" |
10 #include "chrome/browser/api/infobars/confirm_infobar_delegate.h" | 10 #include "chrome/browser/api/infobars/confirm_infobar_delegate.h" |
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
246 TaskManager::GetInstance()->KillProcess(i); | 246 TaskManager::GetInstance()->KillProcess(i); |
247 found = true; | 247 found = true; |
248 break; | 248 break; |
249 } | 249 } |
250 } | 250 } |
251 ASSERT_TRUE(found); | 251 ASSERT_TRUE(found); |
252 TaskManagerBrowserTestUtil::WaitForWebResourceChange(1); | 252 TaskManagerBrowserTestUtil::WaitForWebResourceChange(1); |
253 EXPECT_EQ(0, TaskManager::GetBackgroundPageCount()); | 253 EXPECT_EQ(0, TaskManager::GetBackgroundPageCount()); |
254 } | 254 } |
255 | 255 |
| 256 #if defined(USE_ASH) |
| 257 // This test fails on Ash because task manager treats view type |
| 258 // Panels differently for Ash. |
| 259 #define MAYBE_KillPanelExtension FAILS_KillPanelExtension |
| 260 #else |
| 261 #define MAYBE_KillPanelExtension KillPanelExtension |
| 262 #endif |
| 263 IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest, MAYBE_KillPanelExtension) { |
| 264 EXPECT_EQ(0, model()->ResourceCount()); |
| 265 |
| 266 // Show the task manager. This populates the model, and helps with debugging |
| 267 // (you see the task manager). |
| 268 browser()->window()->ShowTaskManager(); |
| 269 |
| 270 // New Tab Page. |
| 271 TaskManagerBrowserTestUtil::WaitForWebResourceChange(1); |
| 272 int resource_count = TaskManager::GetInstance()->model()->ResourceCount(); |
| 273 |
| 274 ASSERT_TRUE(LoadExtension( |
| 275 test_data_dir_.AppendASCII("good").AppendASCII("Extensions") |
| 276 .AppendASCII("behllobkkfkfnphdnhnkndlbkcpglgmj") |
| 277 .AppendASCII("1.0.0.0"))); |
| 278 |
| 279 // Browser, the New Tab Page and Extension background page. |
| 280 TaskManagerBrowserTestUtil::WaitForWebResourceChange(2); |
| 281 |
| 282 // Open a new panel to an extension url and make sure we notice that. |
| 283 GURL url( |
| 284 "chrome-extension://behllobkkfkfnphdnhnkndlbkcpglgmj/french_sentence.html"); |
| 285 PanelManager::GetInstance()->CreatePanel( |
| 286 web_app::GenerateApplicationNameFromExtensionId( |
| 287 last_loaded_extension_id_), |
| 288 browser()->profile(), |
| 289 url, |
| 290 gfx::Rect(300, 400), |
| 291 PanelManager::CREATE_AS_DOCKED); |
| 292 TaskManagerBrowserTestUtil::WaitForWebResourceChange(3); |
| 293 |
| 294 // Kill the panel extension process and verify that it disappears from the |
| 295 // model along with its panel. |
| 296 ASSERT_TRUE(model()->IsBackgroundResource(resource_count)); |
| 297 TaskManager::GetInstance()->KillProcess(resource_count); |
| 298 TaskManagerBrowserTestUtil::WaitForWebResourceChange(1); |
| 299 } |
| 300 |
256 IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest, NoticeExtensionChanges) { | 301 IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest, NoticeExtensionChanges) { |
257 EXPECT_EQ(0, model()->ResourceCount()); | 302 EXPECT_EQ(0, model()->ResourceCount()); |
258 EXPECT_EQ(0, TaskManager::GetBackgroundPageCount()); | 303 EXPECT_EQ(0, TaskManager::GetBackgroundPageCount()); |
259 | 304 |
260 // Show the task manager. This populates the model, and helps with debugging | 305 // Show the task manager. This populates the model, and helps with debugging |
261 // (you see the task manager). | 306 // (you see the task manager). |
262 browser()->window()->ShowTaskManager(); | 307 browser()->window()->ShowTaskManager(); |
263 | 308 |
264 // New Tab Page. | 309 // New Tab Page. |
265 TaskManagerBrowserTestUtil::WaitForWebResourceChange(1); | 310 TaskManagerBrowserTestUtil::WaitForWebResourceChange(1); |
(...skipping 289 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
555 TaskManagerBrowserTestUtil::WaitForWebResourceChange(2); | 600 TaskManagerBrowserTestUtil::WaitForWebResourceChange(2); |
556 | 601 |
557 // Check that we get some value for the cache columns. | 602 // Check that we get some value for the cache columns. |
558 DCHECK_NE(model()->GetResourceWebCoreImageCacheSize(resource_count), | 603 DCHECK_NE(model()->GetResourceWebCoreImageCacheSize(resource_count), |
559 l10n_util::GetStringUTF16(IDS_TASK_MANAGER_NA_CELL_TEXT)); | 604 l10n_util::GetStringUTF16(IDS_TASK_MANAGER_NA_CELL_TEXT)); |
560 DCHECK_NE(model()->GetResourceWebCoreScriptsCacheSize(resource_count), | 605 DCHECK_NE(model()->GetResourceWebCoreScriptsCacheSize(resource_count), |
561 l10n_util::GetStringUTF16(IDS_TASK_MANAGER_NA_CELL_TEXT)); | 606 l10n_util::GetStringUTF16(IDS_TASK_MANAGER_NA_CELL_TEXT)); |
562 DCHECK_NE(model()->GetResourceWebCoreCSSCacheSize(resource_count), | 607 DCHECK_NE(model()->GetResourceWebCoreCSSCacheSize(resource_count), |
563 l10n_util::GetStringUTF16(IDS_TASK_MANAGER_NA_CELL_TEXT)); | 608 l10n_util::GetStringUTF16(IDS_TASK_MANAGER_NA_CELL_TEXT)); |
564 } | 609 } |
OLD | NEW |