Chromium Code Reviews| Index: chrome/browser/ui/panels/panel_overflow_browsertest.cc |
| diff --git a/chrome/browser/ui/panels/panel_overflow_browsertest.cc b/chrome/browser/ui/panels/panel_overflow_browsertest.cc |
| index 0ef6e136297f1498f4653b0172276c3c28e0ce85..6b5bf0b64b2e18a493542a39699d0e8218f94ed7 100644 |
| --- a/chrome/browser/ui/panels/panel_overflow_browsertest.cc |
| +++ b/chrome/browser/ui/panels/panel_overflow_browsertest.cc |
| @@ -354,6 +354,57 @@ IN_PROC_BROWSER_TEST_F(PanelOverflowBrowserTest, |
| PanelManager::GetInstance()->CloseAll(); |
| } |
| +IN_PROC_BROWSER_TEST_F(PanelOverflowBrowserTest, AddMinimizedTillOverflow) { |
| + PanelManager* panel_manager = PanelManager::GetInstance(); |
| + DockedPanelStrip* docked_strip = panel_manager->docked_strip(); |
| + OverflowPanelStrip* overflow_strip = panel_manager->overflow_strip(); |
| + |
| + EXPECT_EQ(0, panel_manager->num_panels()); |
| + EXPECT_EQ(0, docked_strip->num_panels()); |
| + EXPECT_EQ(0, overflow_strip->num_panels()); |
| + |
| + CreatePanelParams params("Test", gfx::Rect(0, 0, 100, 100), SHOW_AS_INACTIVE); |
| + |
| + // TEST FAILS WHEN THIS LINE IS UNCOMMENTED |
| + // params.wait_for_fully_created = false; |
|
jianli
2012/03/14 22:41:37
Normally we should use the default true value for
|
| + |
| + unsigned int num_panels_to_add = 10; |
| + unsigned int num_panels = 0; |
| + Panel* panel7 = NULL; |
|
jianli
2012/03/14 22:41:37
Why do we need to check 7th panel specially?
Can
|
| + for (; num_panels < num_panels_to_add; ++num_panels) { |
| + Panel* panel = CreatePanelWithParams(params); |
| + if (num_panels == 7) panel7 = panel; |
|
jianli
2012/03/14 22:41:37
nit: split into 2 lines.
|
| + panel->SetExpansionState(Panel::MINIMIZED); |
| + |
| + panel->panel_strip()->RemovePanel(panel); |
| + EXPECT_EQ(NULL, panel->panel_strip()); |
| + |
| + docked_strip->AddPanel(panel, PanelStrip::DEFAULT_POSITION); |
| + EXPECT_EQ(Panel::MINIMIZED, panel->expansion_state()); |
| + } |
| + |
| + EXPECT_EQ(num_panels, num_panels_to_add); |
| + LOG(INFO) << "Panel counts: docked strip: " << docked_strip->num_panels() << |
| + " (minimized: " << docked_strip->minimized_panel_count() << |
| + "), temp. layout: " << |
| + docked_strip->num_temporary_layout_panels() << |
| + ", overflow: " << overflow_strip->num_panels(); |
| + EXPECT_EQ(num_panels, static_cast<unsigned int> |
| + (docked_strip->minimized_panel_count() + |
| + docked_strip->num_temporary_layout_panels() + |
| + overflow_strip->num_panels())); |
| + |
| + WaitForLayoutModeChanged(panel7, PanelStrip::IN_OVERFLOW); |
| + |
| + EXPECT_EQ(num_panels, static_cast<unsigned int> |
| + (docked_strip->minimized_panel_count() + |
| + docked_strip->num_temporary_layout_panels() + |
| + overflow_strip->num_panels())); |
| + EXPECT_EQ(0, docked_strip->num_temporary_layout_panels()); |
| + |
| + PanelManager::GetInstance()->CloseAll(); |
| +} |
| + |
| IN_PROC_BROWSER_TEST_F(PanelOverflowBrowserTest, |
| CreatePanelOnDelayedOverflow) { |
| // Create 2 big panels. |