| Index: chrome/browser/task_manager/task_manager_browsertest.cc
|
| diff --git a/chrome/browser/task_manager/task_manager_browsertest.cc b/chrome/browser/task_manager/task_manager_browsertest.cc
|
| index 9a50042a9a30ad842adeaa858bb83a343fc77304..8b5fc64f683cdd9a89a1619bbf873f4a9b83d859 100644
|
| --- a/chrome/browser/task_manager/task_manager_browsertest.cc
|
| +++ b/chrome/browser/task_manager/task_manager_browsertest.cc
|
| @@ -23,9 +23,13 @@
|
| #include "chrome/browser/ui/browser_navigator.h"
|
| #include "chrome/browser/ui/browser_tabstrip.h"
|
| #include "chrome/browser/ui/browser_window.h"
|
| +#include "chrome/browser/ui/panels/panel.h"
|
| +#include "chrome/browser/ui/panels/panel_manager.h"
|
| #include "chrome/browser/ui/tab_contents/tab_contents.h"
|
| #include "chrome/browser/ui/tabs/tab_strip_model.h"
|
| +#include "chrome/browser/web_applications/web_app.h"
|
| #include "chrome/common/chrome_notification_types.h"
|
| +#include "chrome/common/chrome_switches.h"
|
| #include "chrome/common/extensions/extension.h"
|
| #include "chrome/test/base/in_process_browser_test.h"
|
| #include "chrome/test/base/ui_test_utils.h"
|
| @@ -66,6 +70,10 @@ class TaskManagerBrowserTest : public ExtensionBrowserTest {
|
| // up in task manager but whether it appears before or after the new tab
|
| // renderer process is not well defined.
|
| command_line->AppendSwitch(switches::kDisableGpuProcessPrelaunch);
|
| +#if !defined(USE_AURA) && (defined(OS_MACOSX) || defined(OS_WIN))
|
| + // Browserless panels refactor not completed for Linux yet.
|
| + command_line->AppendSwitch(switches::kBrowserlessPanels);
|
| +#endif
|
| }
|
| };
|
|
|
| @@ -98,7 +106,7 @@ IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest, NoticeTabContentsChanges) {
|
|
|
| // Check that the third entry is a tab contents resource whose title starts
|
| // starts with "Tab:".
|
| - ASSERT_TRUE(model()->GetResourceTabContents(2) != NULL);
|
| + ASSERT_TRUE(model()->GetResourceWebContents(2) != NULL);
|
| string16 prefix = l10n_util::GetStringFUTF16(
|
| IDS_TASK_MANAGER_TAB_PREFIX, string16());
|
| ASSERT_TRUE(StartsWith(model()->GetResourceTitle(2), prefix, true));
|
| @@ -111,6 +119,55 @@ IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest, NoticeTabContentsChanges) {
|
| TaskManagerBrowserTestUtil::WaitForResourceChange(2);
|
| }
|
|
|
| +IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest, NoticePanelChanges) {
|
| + if (!CommandLine::ForCurrentProcess()->HasSwitch(
|
| + switches::kBrowserlessPanels))
|
| + return;
|
| +
|
| + EXPECT_EQ(0, model()->ResourceCount());
|
| +
|
| + // Show the task manager. This populates the model, and helps with debugging
|
| + // (you see the task manager).
|
| + browser()->window()->ShowTaskManager();
|
| +
|
| + // Browser and the New Tab Page.
|
| + TaskManagerBrowserTestUtil::WaitForResourceChange(2);
|
| +
|
| + ASSERT_TRUE(LoadExtension(
|
| + test_data_dir_.AppendASCII("good").AppendASCII("Extensions")
|
| + .AppendASCII("behllobkkfkfnphdnhnkndlbkcpglgmj")
|
| + .AppendASCII("1.0.0.0")));
|
| +
|
| + // Browser, the New Tab Page and Extension background page.
|
| + TaskManagerBrowserTestUtil::WaitForResourceChange(3);
|
| +
|
| + // Open a new panel to an extension url and make sure we notice that.
|
| + GURL url(
|
| + "chrome-extension://behllobkkfkfnphdnhnkndlbkcpglgmj/french_sentence.html");
|
| + Panel* panel = PanelManager::GetInstance()->CreatePanel(
|
| + web_app::GenerateApplicationNameFromExtensionId(
|
| + last_loaded_extension_id_),
|
| + browser()->profile(),
|
| + url,
|
| + gfx::Size(300, 400));
|
| + TaskManagerBrowserTestUtil::WaitForResourceChange(4);
|
| +
|
| + // Check that the fourth entry is a resource with the panel's web contents
|
| + // and whose title starts with "Extension:".
|
| + ASSERT_EQ(panel->GetWebContents(), model()->GetResourceWebContents(3));
|
| + string16 prefix = l10n_util::GetStringFUTF16(
|
| + IDS_TASK_MANAGER_EXTENSION_PREFIX, string16());
|
| + ASSERT_TRUE(StartsWith(model()->GetResourceTitle(3), prefix, true));
|
| +
|
| + // Close the panel and verify that we notice.
|
| + panel->Close();
|
| + TaskManagerBrowserTestUtil::WaitForResourceChange(3);
|
| +
|
| + // Unload extension to avoid crash on Windows.
|
| + UnloadExtension(last_loaded_extension_id_);
|
| + TaskManagerBrowserTestUtil::WaitForResourceChange(2);
|
| +}
|
| +
|
| IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest, NoticeBGContentsChanges) {
|
| EXPECT_EQ(0, model()->ResourceCount());
|
| EXPECT_EQ(0, TaskManager::GetBackgroundPageCount());
|
| @@ -237,7 +294,7 @@ IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest, NoticeExtensionTabs) {
|
| // Check that the third entry (background) is an extension resource whose
|
| // title starts with "Extension:".
|
| ASSERT_EQ(TaskManager::Resource::EXTENSION, model()->GetResourceType(2));
|
| - ASSERT_TRUE(model()->GetResourceTabContents(2) == NULL);
|
| + ASSERT_TRUE(model()->GetResourceWebContents(2) == NULL);
|
| ASSERT_TRUE(model()->GetResourceExtension(2) != NULL);
|
| string16 prefix = l10n_util::GetStringFUTF16(
|
| IDS_TASK_MANAGER_EXTENSION_PREFIX, string16());
|
| @@ -246,7 +303,7 @@ IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest, NoticeExtensionTabs) {
|
| // Check that the fourth entry (page.html) is of type extension and has both
|
| // a tab contents and an extension. The title should start with "Extension:".
|
| ASSERT_EQ(TaskManager::Resource::EXTENSION, model()->GetResourceType(3));
|
| - ASSERT_TRUE(model()->GetResourceTabContents(3) != NULL);
|
| + ASSERT_TRUE(model()->GetResourceWebContents(3) != NULL);
|
| ASSERT_TRUE(model()->GetResourceExtension(3) != NULL);
|
| ASSERT_TRUE(StartsWith(model()->GetResourceTitle(3), prefix, true));
|
|
|
| @@ -279,7 +336,7 @@ IN_PROC_BROWSER_TEST_F(TaskManagerBrowserTest, NoticeAppTabs) {
|
| // Check that the third entry (main.html) is of type extension and has both
|
| // a tab contents and an extension. The title should start with "App:".
|
| ASSERT_EQ(TaskManager::Resource::EXTENSION, model()->GetResourceType(2));
|
| - ASSERT_TRUE(model()->GetResourceTabContents(2) != NULL);
|
| + ASSERT_TRUE(model()->GetResourceWebContents(2) != NULL);
|
| ASSERT_TRUE(model()->GetResourceExtension(2) == extension);
|
| string16 prefix = l10n_util::GetStringFUTF16(
|
| IDS_TASK_MANAGER_APP_PREFIX, string16());
|
|
|