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

Unified Diff: chrome/browser/ui/panels/panel_browsertest.cc

Issue 10914242: Improve panel tests by properly waiting for expected conditions. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: undo changes to ActivateDeactivateBasic test Created 8 years, 3 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/ui/panels/panel_browsertest.cc
diff --git a/chrome/browser/ui/panels/panel_browsertest.cc b/chrome/browser/ui/panels/panel_browsertest.cc
index 22bbb09eae11b4773e318cc10b643021e69e3300..d261919a69c480ed611d8c7697f4a1ceb0a9edba 100644
--- a/chrome/browser/ui/panels/panel_browsertest.cc
+++ b/chrome/browser/ui/panels/panel_browsertest.cc
@@ -246,8 +246,7 @@ class PanelBrowserTest : public BasePanelBrowserTest {
}
};
-// Flaky (sometimes timeout): http://crbug.com/140971
-IN_PROC_BROWSER_TEST_F(PanelBrowserTest, DISABLED_CheckDockedPanelProperties) {
+IN_PROC_BROWSER_TEST_F(PanelBrowserTest, CheckDockedPanelProperties) {
PanelManager* panel_manager = PanelManager::GetInstance();
DockedPanelStrip* docked_strip = panel_manager->docked_strip();
@@ -341,13 +340,7 @@ IN_PROC_BROWSER_TEST_F(PanelBrowserTest, CreateBigPanel) {
panel->Close();
}
-#if defined(OS_LINUX)
-// http://crbug.com/145740
-#define MAYBE_AutoResize FLAKY_AutoResize
-#else
-#define MAYBE_AutoResize AutoResize
-#endif
-IN_PROC_BROWSER_TEST_F(PanelBrowserTest, MAYBE_AutoResize) {
+IN_PROC_BROWSER_TEST_F(PanelBrowserTest, AutoResize) {
PanelManager* panel_manager = PanelManager::GetInstance();
panel_manager->enable_auto_sizing(true);
// Bigger space is needed by this test.
@@ -896,23 +889,10 @@ IN_PROC_BROWSER_TEST_F(PanelBrowserTest, ChangeAutoHideTaskBarThickness) {
panel->Close();
}
-#if defined(OS_MACOSX)
-// This test doesn't pass on Snow Leopard (10.6), although it works just
-// fine on Lion (10.7). The problem is not having a real run loop around
-// the window close is at fault, given how window controllers in Chrome
-// autorelease themselves on a -performSelector:withObject:afterDelay:
-#define MAYBE_ActivatePanelOrTabbedWindow DISABLED_ActivatePanelOrTabbedWindow
-#else
-#define MAYBE_ActivatePanelOrTabbedWindow DISABLED_ActivatePanelOrTabbedWindow
-#endif
-IN_PROC_BROWSER_TEST_F(PanelBrowserTest, MAYBE_ActivatePanelOrTabbedWindow) {
- CreatePanelParams params1("Panel1", gfx::Rect(), SHOW_AS_ACTIVE);
- Panel* panel1 = CreatePanelWithParams(params1);
- CreatePanelParams params2("Panel2", gfx::Rect(), SHOW_AS_ACTIVE);
- Panel* panel2 = CreatePanelWithParams(params2);
+IN_PROC_BROWSER_TEST_F(PanelBrowserTest, ActivatePanelOrTabbedWindow) {
+ Panel* panel1 = CreatePanel("Panel1");
Dmitry Titov 2012/09/13 18:19:00 I wonder why do we need panel1 here?
+ Panel* panel2 = CreatePanel("Panel2");
- ASSERT_FALSE(panel1->IsActive());
- ASSERT_TRUE(panel2->IsActive());
// Activate main tabbed window.
browser()->window()->Activate();
WaitForPanelActiveState(panel2, SHOW_AS_INACTIVE);
@@ -924,9 +904,6 @@ IN_PROC_BROWSER_TEST_F(PanelBrowserTest, MAYBE_ActivatePanelOrTabbedWindow) {
// Activate the main tabbed window back.
browser()->window()->Activate();
WaitForPanelActiveState(panel2, SHOW_AS_INACTIVE);
- // Close the main tabbed window. That should move focus back to panel.
- chrome::CloseWindow(browser());
- WaitForPanelActiveState(panel2, SHOW_AS_ACTIVE);
// Activate another panel.
panel1->Activate();
@@ -938,10 +915,7 @@ IN_PROC_BROWSER_TEST_F(PanelBrowserTest, MAYBE_ActivatePanelOrTabbedWindow) {
WaitForPanelActiveState(panel2, SHOW_AS_ACTIVE);
WaitForPanelActiveState(panel1, SHOW_AS_INACTIVE);
- // Close active panel, focus should move to the remaining one.
- CloseWindowAndWait(panel2);
- WaitForPanelActiveState(panel1, SHOW_AS_ACTIVE);
- panel1->Close();
+ PanelManager::GetInstance()->CloseAll();
}
// TODO(jianli): To be enabled for other platforms.
@@ -955,13 +929,13 @@ IN_PROC_BROWSER_TEST_F(PanelBrowserTest, MAYBE_ActivateDeactivateBasic) {
Panel* panel = CreatePanel("PanelTest");
scoped_ptr<NativePanelTesting> native_panel_testing(
CreateNativePanelTesting(panel));
- EXPECT_TRUE(panel->IsActive());
+
+ WaitForPanelActiveState(panel, SHOW_AS_ACTIVE); // doublecheck active state
EXPECT_TRUE(native_panel_testing->VerifyActiveState(true));
// Deactivate the panel.
panel->Deactivate();
WaitForPanelActiveState(panel, SHOW_AS_INACTIVE);
- EXPECT_FALSE(panel->IsActive());
EXPECT_TRUE(native_panel_testing->VerifyActiveState(false));
// This test does not reactivate the panel because the panel might not be

Powered by Google App Engine
This is Rietveld 408576698