Index: chrome/browser/ui/panels/panel_app_browsertest.cc |
diff --git a/chrome/browser/ui/panels/panel_app_browsertest.cc b/chrome/browser/ui/panels/panel_app_browsertest.cc |
deleted file mode 100644 |
index f8cb966bfaa46bef16fa11c1485708d525858e7a..0000000000000000000000000000000000000000 |
--- a/chrome/browser/ui/panels/panel_app_browsertest.cc |
+++ /dev/null |
@@ -1,105 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "base/command_line.h" |
-#include "base/file_path.h" |
-#include "chrome/browser/extensions/extension_browsertest.h" |
-#include "chrome/browser/extensions/extension_service.h" |
-#include "chrome/browser/profiles/profile.h" |
-#include "chrome/browser/ui/browser.h" |
-#include "chrome/browser/ui/browser_list.h" |
-#include "chrome/browser/ui/extensions/application_launch.h" |
-#include "chrome/browser/ui/panels/panel_manager.h" |
-#include "chrome/common/chrome_notification_types.h" |
-#include "chrome/common/chrome_switches.h" |
-#include "chrome/test/base/in_process_browser_test.h" |
-#include "chrome/test/base/ui_test_utils.h" |
-#include "testing/gtest/include/gtest/gtest.h" |
- |
-#if defined(OS_MACOSX) |
-#include "base/mac/scoped_nsautorelease_pool.h" |
-#endif |
- |
-// Refactor has only been done for Mac panels so far. |
-#if defined(OS_MACOSX) |
- |
-class PanelAppBrowserTest : public ExtensionBrowserTest { |
- public: |
- virtual void SetUpCommandLine(CommandLine* command_line) { |
- ExtensionBrowserTest::SetUpCommandLine(command_line); |
- command_line->AppendSwitch(switches::kBrowserlessPanels); |
- } |
- |
- void LoadAndLaunchExtension(const char* name) { |
-#if defined(OS_MACOSX) |
- // Opening panels on a Mac causes NSWindowController of the Panel window |
- // to be autoreleased. We need a pool drained after it's done so the test |
- // can close correctly. The NSWindowController of the Panel window controls |
- // lifetime of the Panel object so we want to release it as soon as |
- // possible. In real Chrome, this is done by message pump. |
- // On non-Mac platform, this is an empty class. |
- base::mac::ScopedNSAutoreleasePool autorelease_pool; |
-#endif |
- |
- EXPECT_TRUE(LoadExtension(test_data_dir_.AppendASCII(name))); |
- |
- ExtensionService* service = browser()->profile()->GetExtensionService(); |
- const extensions::Extension* extension = service->GetExtensionById( |
- last_loaded_extension_id_, false); |
- EXPECT_TRUE(extension); |
- |
- PanelManager* manager = PanelManager::GetInstance(); |
- int panel_count = manager->num_panels(); |
- |
- application_launch::OpenApplication( |
- browser()->profile(), |
- extension, |
- // Overriding manifest to open in a panel. |
- extension_misc::LAUNCH_PANEL, |
- GURL(), |
- NEW_WINDOW, |
- NULL); |
- |
- // Now we have a new browser instance. |
- EXPECT_EQ(panel_count + 1, manager->num_panels()); |
- } |
- |
- void ClosePanelAndWait(Panel* panel) { |
- // Closing a panel window may involve several async tasks. Need to use |
- // message pump and wait for the notification. |
- int panel_count = PanelManager::GetInstance()->num_panels(); |
- ui_test_utils::WindowedNotificationObserver signal( |
- chrome::NOTIFICATION_PANEL_CLOSED, |
- content::Source<Panel>(panel)); |
- panel->Close(); |
- signal.Wait(); |
- // Now we have one less panel instance. |
- EXPECT_EQ(panel_count - 1, PanelManager::GetInstance()->num_panels()); |
- } |
-}; |
- |
-IN_PROC_BROWSER_TEST_F(PanelAppBrowserTest, OpenAppInPanel) { |
- // Start with one browser, new Panel will NOT create another. |
- ASSERT_EQ(1u, BrowserList::size()); |
- |
- // No Panels initially. |
- PanelManager* panel_manager = PanelManager::GetInstance(); |
- ASSERT_EQ(0, panel_manager->num_panels()); // No panels initially. |
- |
- LoadAndLaunchExtension("app_with_panel_container"); |
- |
- // The launch should have created no new browsers. |
- ASSERT_EQ(1u, BrowserList::size()); |
- |
- // Now also check that PanelManager has one new Panel under management. |
- EXPECT_EQ(1, panel_manager->num_panels()); |
- |
- Panel* panel = panel_manager->panels()[0]; |
- ClosePanelAndWait(panel); |
- |
- EXPECT_EQ(0, panel_manager->num_panels()); |
- EXPECT_EQ(1u, BrowserList::size()); |
-} |
- |
-#endif // OS_MACOSX |