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

Side by Side Diff: chrome/browser/ui/panels/old_panel_browsertest.cc

Issue 10689082: Fix flaky linux panel tests related to active state checks (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: remove log msg Created 8 years, 5 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 "base/bind.h" 5 #include "base/bind.h"
6 #include "base/utf_string_conversions.h" 6 #include "base/utf_string_conversions.h"
7 #include "chrome/browser/download/download_service.h" 7 #include "chrome/browser/download/download_service.h"
8 #include "chrome/browser/download/download_service_factory.h" 8 #include "chrome/browser/download/download_service_factory.h"
9 #include "chrome/browser/net/url_request_mock_util.h" 9 #include "chrome/browser/net/url_request_mock_util.h"
10 #include "chrome/browser/prefs/browser_prefs.h" 10 #include "chrome/browser/prefs/browser_prefs.h"
(...skipping 23 matching lines...) Expand all
34 #include "chrome/test/base/ui_test_utils.h" 34 #include "chrome/test/base/ui_test_utils.h"
35 #include "content/public/browser/download_manager.h" 35 #include "content/public/browser/download_manager.h"
36 #include "content/public/browser/notification_service.h" 36 #include "content/public/browser/notification_service.h"
37 #include "content/public/browser/web_contents.h" 37 #include "content/public/browser/web_contents.h"
38 #include "content/public/common/url_constants.h" 38 #include "content/public/common/url_constants.h"
39 #include "content/test/net/url_request_mock_http_job.h" 39 #include "content/test/net/url_request_mock_http_job.h"
40 #include "net/base/net_util.h" 40 #include "net/base/net_util.h"
41 #include "testing/gtest/include/gtest/gtest.h" 41 #include "testing/gtest/include/gtest/gtest.h"
42 #include "ui/gfx/screen.h" 42 #include "ui/gfx/screen.h"
43 43
44 // Panel tests are flaking on linux CQ. http://crbug.com/135377
45 #if !defined(OS_LINUX)
46
47 using content::BrowserContext; 44 using content::BrowserContext;
48 using content::BrowserThread; 45 using content::BrowserThread;
49 using content::DownloadItem; 46 using content::DownloadItem;
50 using content::DownloadManager; 47 using content::DownloadManager;
51 using content::WebContents; 48 using content::WebContents;
52 using extensions::Extension; 49 using extensions::Extension;
53 50
54 class OldPanelBrowserTest : public OldBasePanelBrowserTest { 51 class OldPanelBrowserTest : public OldBasePanelBrowserTest {
55 public: 52 public:
56 OldPanelBrowserTest() : OldBasePanelBrowserTest() { 53 OldPanelBrowserTest() : OldBasePanelBrowserTest() {
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after
252 249
253 // The below could be separate tests, just adding a TODO here for tracking. 250 // The below could be separate tests, just adding a TODO here for tracking.
254 // TODO(prasadt): Add test for dragging when in titlebar exposed state. 251 // TODO(prasadt): Add test for dragging when in titlebar exposed state.
255 // TODO(prasadt): Add test in presence of auto hiding task bar. 252 // TODO(prasadt): Add test in presence of auto hiding task bar.
256 253
257 for (size_t i = 0; i < panels.size(); ++i) 254 for (size_t i = 0; i < panels.size(); ++i)
258 delete native_panels_testing[i]; 255 delete native_panels_testing[i];
259 } 256 }
260 }; 257 };
261 258
262 // http://crbug.com/135377 259 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, CheckDockedPanelProperties) {
263 #if defined(OS_LINUX)
264 #define MAYBE_CheckDockedPanelProperties DISABLED_CheckDockedPanelProperties
265 #else
266 #define MAYBE_CheckDockedPanelProperties CheckDockedPanelProperties
267 #endif
268
269 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, MAYBE_CheckDockedPanelProperties) {
270 PanelManager* panel_manager = PanelManager::GetInstance(); 260 PanelManager* panel_manager = PanelManager::GetInstance();
271 DockedPanelStrip* docked_strip = panel_manager->docked_strip(); 261 DockedPanelStrip* docked_strip = panel_manager->docked_strip();
272 262
273 // Create 3 docked panels that are in expanded, title-only or minimized states 263 // Create 3 docked panels that are in expanded, title-only or minimized states
274 // respectively. 264 // respectively.
275 Panel* panel1 = CreatePanelWithBounds("1", gfx::Rect(0, 0, 100, 100)); 265 Panel* panel1 = CreatePanelWithBounds("1", gfx::Rect(0, 0, 100, 100));
276 Panel* panel2 = CreatePanelWithBounds("2", gfx::Rect(0, 0, 100, 100)); 266 Panel* panel2 = CreatePanelWithBounds("2", gfx::Rect(0, 0, 100, 100));
277 panel2->SetExpansionState(Panel::TITLE_ONLY); 267 panel2->SetExpansionState(Panel::TITLE_ONLY);
278 WaitForExpansionStateChanged(panel2, Panel::TITLE_ONLY); 268 WaitForExpansionStateChanged(panel2, Panel::TITLE_ONLY);
279 Panel* panel3 = CreatePanelWithBounds("3", gfx::Rect(0, 0, 100, 100)); 269 Panel* panel3 = CreatePanelWithBounds("3", gfx::Rect(0, 0, 100, 100));
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
320 EXPECT_EQ(panel::NOT_RESIZABLE, panel2->CanResizeByMouse()); 310 EXPECT_EQ(panel::NOT_RESIZABLE, panel2->CanResizeByMouse());
321 EXPECT_EQ(panel::NOT_RESIZABLE, panel3->CanResizeByMouse()); 311 EXPECT_EQ(panel::NOT_RESIZABLE, panel3->CanResizeByMouse());
322 312
323 EXPECT_EQ(Panel::USE_PANEL_ATTENTION, panel1->attention_mode()); 313 EXPECT_EQ(Panel::USE_PANEL_ATTENTION, panel1->attention_mode());
324 EXPECT_EQ(Panel::USE_PANEL_ATTENTION, panel2->attention_mode()); 314 EXPECT_EQ(Panel::USE_PANEL_ATTENTION, panel2->attention_mode());
325 EXPECT_EQ(Panel::USE_PANEL_ATTENTION, panel3->attention_mode()); 315 EXPECT_EQ(Panel::USE_PANEL_ATTENTION, panel3->attention_mode());
326 316
327 panel_manager->CloseAll(); 317 panel_manager->CloseAll();
328 } 318 }
329 319
330 // http://crbug.com/135377 320 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, CreatePanel) {
331 #if defined(OS_LINUX)
332 #define MAYBE_CreatePanel DISABLED_CreatePanel
333 #else
334 #define MAYBE_CreatePanel CreatePanel
335 #endif
336
337 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, MAYBE_CreatePanel) {
338 PanelManager* panel_manager = PanelManager::GetInstance(); 321 PanelManager* panel_manager = PanelManager::GetInstance();
339 EXPECT_EQ(0, panel_manager->num_panels()); // No panels initially. 322 EXPECT_EQ(0, panel_manager->num_panels()); // No panels initially.
340 323
341 Panel* panel = CreatePanel("PanelTest"); 324 Panel* panel = CreatePanel("PanelTest");
342 EXPECT_EQ(1, panel_manager->num_panels()); 325 EXPECT_EQ(1, panel_manager->num_panels());
343 326
344 gfx::Rect bounds = panel->GetBounds(); 327 gfx::Rect bounds = panel->GetBounds();
345 EXPECT_GT(bounds.x(), 0); 328 EXPECT_GT(bounds.x(), 0);
346 EXPECT_GT(bounds.y(), 0); 329 EXPECT_GT(bounds.y(), 0);
347 EXPECT_GT(bounds.width(), 0); 330 EXPECT_GT(bounds.width(), 0);
348 EXPECT_GT(bounds.height(), 0); 331 EXPECT_GT(bounds.height(), 0);
349 332
350 EXPECT_EQ(bounds.right(), 333 EXPECT_EQ(bounds.right(),
351 panel_manager->docked_strip()->StartingRightPosition()); 334 panel_manager->docked_strip()->StartingRightPosition());
352 335
353 CloseWindowAndWait(panel); 336 CloseWindowAndWait(panel);
354 337
355 EXPECT_EQ(0, panel_manager->num_panels()); 338 EXPECT_EQ(0, panel_manager->num_panels());
356 } 339 }
357 340
358 // http://crbug.com/135377 341 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, CreateBigPanel) {
359 #if defined(OS_LINUX)
360 #define MAYBE_CreateBigPanel DISABLED_CreateBigPanel
361 #else
362 #define MAYBE_CreateBigPanel CreateBigPanel
363 #endif
364
365 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, MAYBE_CreateBigPanel) {
366 gfx::Rect work_area = PanelManager::GetInstance()-> 342 gfx::Rect work_area = PanelManager::GetInstance()->
367 display_settings_provider()->GetDisplayArea(); 343 display_settings_provider()->GetDisplayArea();
368 Panel* panel = CreatePanelWithBounds("BigPanel", work_area); 344 Panel* panel = CreatePanelWithBounds("BigPanel", work_area);
369 gfx::Rect bounds = panel->GetBounds(); 345 gfx::Rect bounds = panel->GetBounds();
370 EXPECT_EQ(panel->max_size().width(), bounds.width()); 346 EXPECT_EQ(panel->max_size().width(), bounds.width());
371 EXPECT_LT(bounds.width(), work_area.width()); 347 EXPECT_LT(bounds.width(), work_area.width());
372 EXPECT_EQ(panel->max_size().height(), bounds.height()); 348 EXPECT_EQ(panel->max_size().height(), bounds.height());
373 EXPECT_LT(bounds.height(), work_area.height()); 349 EXPECT_LT(bounds.height(), work_area.height());
374 panel->Close(); 350 panel->Close();
375 } 351 }
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
468 new_size.Enlarge(5, 5); 444 new_size.Enlarge(5, 5);
469 new_bounds.set_size(new_size); 445 new_bounds.set_size(new_size);
470 panel->SetBounds(new_bounds); 446 panel->SetBounds(new_bounds);
471 EXPECT_EQ(new_bounds.size().width(), panel->GetBounds().width()); 447 EXPECT_EQ(new_bounds.size().width(), panel->GetBounds().width());
472 EXPECT_EQ(original_height, panel->GetBounds().height()); 448 EXPECT_EQ(original_height, panel->GetBounds().height());
473 EXPECT_EQ(new_bounds.size(), panel->GetRestoredBounds().size()); 449 EXPECT_EQ(new_bounds.size(), panel->GetRestoredBounds().size());
474 450
475 panel->Close(); 451 panel->Close();
476 } 452 }
477 453
478 // http://crbug.com/135377 454 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, AnimateBounds) {
479 #if defined(OS_LINUX)
480 #define MAYBE_AnimateBounds DISABLED_AnimateBounds
481 #else
482 #define MAYBE_AnimateBounds AnimateBounds
483 #endif
484
485 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, MAYBE_AnimateBounds) {
486 Panel* panel = CreatePanelWithBounds("PanelTest", gfx::Rect(0, 0, 100, 100)); 455 Panel* panel = CreatePanelWithBounds("PanelTest", gfx::Rect(0, 0, 100, 100));
487 scoped_ptr<NativePanelTesting> panel_testing( 456 scoped_ptr<NativePanelTesting> panel_testing(
488 CreateNativePanelTesting(panel)); 457 CreateNativePanelTesting(panel));
489 458
490 // Set bounds with animation. 459 // Set bounds with animation.
491 gfx::Rect bounds = gfx::Rect(10, 20, 150, 160); 460 gfx::Rect bounds = gfx::Rect(10, 20, 150, 160);
492 panel->SetPanelBounds(bounds); 461 panel->SetPanelBounds(bounds);
493 EXPECT_TRUE(panel_testing->IsAnimatingBounds()); 462 EXPECT_TRUE(panel_testing->IsAnimatingBounds());
494 WaitForBoundsAnimationFinished(panel); 463 WaitForBoundsAnimationFinished(panel);
495 EXPECT_FALSE(panel_testing->IsAnimatingBounds()); 464 EXPECT_FALSE(panel_testing->IsAnimatingBounds());
(...skipping 493 matching lines...) Expand 10 before | Expand all | Expand 10 after
989 EXPECT_EQ(Panel::MINIMIZED, panel->expansion_state()); 958 EXPECT_EQ(Panel::MINIMIZED, panel->expansion_state());
990 959
991 panel->Close(); 960 panel->Close();
992 } 961 }
993 962
994 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, DrawAttentionWhileMinimized) { 963 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, DrawAttentionWhileMinimized) {
995 // We'll simulate mouse movements for test. 964 // We'll simulate mouse movements for test.
996 PanelMouseWatcher* mouse_watcher = new TestPanelMouseWatcher(); 965 PanelMouseWatcher* mouse_watcher = new TestPanelMouseWatcher();
997 PanelManager::GetInstance()->SetMouseWatcherForTesting(mouse_watcher); 966 PanelManager::GetInstance()->SetMouseWatcherForTesting(mouse_watcher);
998 967
999 // Create 2 panels so we end up with an inactive panel that can 968 // Create 3 panels so we end up with an inactive panel that can
1000 // be made to draw attention. 969 // be made to draw attention.
1001 Panel* panel = CreatePanel("test panel1"); 970 Panel* panel = CreatePanel("test panel1");
1002 Panel* panel2 = CreatePanel("test panel2"); 971 Panel* panel2 = CreatePanel("test panel2");
1003 Panel* panel3 = CreatePanel("test panel2"); 972 Panel* panel3 = CreatePanel("test panel3");
1004 973
1005 scoped_ptr<NativePanelTesting> native_panel_testing( 974 scoped_ptr<NativePanelTesting> native_panel_testing(
1006 CreateNativePanelTesting(panel)); 975 CreateNativePanelTesting(panel));
1007 976
1008 // Test that the attention is drawn and the title-bar is brought up when the 977 // Test that the attention is drawn and the title-bar is brought up when the
1009 // minimized panel is drawing attention. 978 // minimized panel is drawing attention.
1010 panel->Minimize(); 979 panel->Minimize();
1011 WaitForExpansionStateChanged(panel, Panel::MINIMIZED); 980 WaitForExpansionStateChanged(panel, Panel::MINIMIZED);
1012 panel->FlashFrame(true); 981 panel->FlashFrame(true);
1013 EXPECT_TRUE(panel->IsDrawingAttention()); 982 EXPECT_TRUE(panel->IsDrawingAttention());
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
1104 1073
1105 // Move mouse away and panel should go back to fully minimized state. 1074 // Move mouse away and panel should go back to fully minimized state.
1106 MoveMouseAndWaitForExpansionStateChange(panel1, hover_point); 1075 MoveMouseAndWaitForExpansionStateChange(panel1, hover_point);
1107 EXPECT_EQ(Panel::MINIMIZED, panel1->expansion_state()); 1076 EXPECT_EQ(Panel::MINIMIZED, panel1->expansion_state());
1108 EXPECT_EQ(Panel::MINIMIZED, panel2->expansion_state()); 1077 EXPECT_EQ(Panel::MINIMIZED, panel2->expansion_state());
1109 1078
1110 panel1->Close(); 1079 panel1->Close();
1111 panel2->Close(); 1080 panel2->Close();
1112 } 1081 }
1113 1082
1114 // http://crbug.com/135377 1083 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, DrawAttentionWhenActive) {
1115 #if defined(OS_LINUX)
1116 #define MAYBE_DrawAttentionWhenActive DISABLED_DrawAttentionWhenActive
1117 #else
1118 #define MAYBE_DrawAttentionWhenActive DrawAttentionWhenActive
1119 #endif
1120
1121 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, MAYBE_DrawAttentionWhenActive) {
1122 CreatePanelParams params("Initially Active", gfx::Rect(), SHOW_AS_ACTIVE); 1084 CreatePanelParams params("Initially Active", gfx::Rect(), SHOW_AS_ACTIVE);
1123 Panel* panel = CreatePanelWithParams(params); 1085 Panel* panel = CreatePanelWithParams(params);
1124 scoped_ptr<NativePanelTesting> native_panel_testing( 1086 scoped_ptr<NativePanelTesting> native_panel_testing(
1125 CreateNativePanelTesting(panel)); 1087 CreateNativePanelTesting(panel));
1126 1088
1127 // Test that the attention should not be drawn if the expanded panel is in 1089 // Test that the attention should not be drawn if the expanded panel is in
1128 // focus. 1090 // focus.
1129 EXPECT_EQ(Panel::EXPANDED, panel->expansion_state()); 1091 EXPECT_EQ(Panel::EXPANDED, panel->expansion_state());
1130 EXPECT_TRUE(panel->IsActive()); 1092 EXPECT_TRUE(panel->IsActive());
1131 EXPECT_FALSE(panel->IsDrawingAttention()); 1093 EXPECT_FALSE(panel->IsDrawingAttention());
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
1217 1179
1218 MessageLoop::current()->RunAllPending(); 1180 MessageLoop::current()->RunAllPending();
1219 WaitForPanelActiveState(panel, SHOW_AS_ACTIVE); 1181 WaitForPanelActiveState(panel, SHOW_AS_ACTIVE);
1220 EXPECT_FALSE(panel->IsDrawingAttention()); 1182 EXPECT_FALSE(panel->IsDrawingAttention());
1221 EXPECT_FALSE(native_panel_testing->VerifyDrawingAttention()); 1183 EXPECT_FALSE(native_panel_testing->VerifyDrawingAttention());
1222 1184
1223 panel->Close(); 1185 panel->Close();
1224 } 1186 }
1225 1187
1226 1188
1227 // http://crbug.com/135377
1228 #if defined(OS_LINUX)
1229 #define MAYBE_MinimizeImmediatelyAfterRestore \
1230 DISABLED_MinimizeImmediatelyAfterRestore
1231 #else
1232 #define MAYBE_MinimizeImmediatelyAfterRestore MinimizeImmediatelyAfterRestore
1233 #endif
1234
1235 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest, 1189 IN_PROC_BROWSER_TEST_F(OldPanelBrowserTest,
1236 MAYBE_MinimizeImmediatelyAfterRestore) { 1190 MinimizeImmediatelyAfterRestore) {
1237 CreatePanelParams params("Panel Test", gfx::Rect(), SHOW_AS_ACTIVE); 1191 CreatePanelParams params("Panel Test", gfx::Rect(), SHOW_AS_ACTIVE);
1238 Panel* panel = CreatePanelWithParams(params); 1192 Panel* panel = CreatePanelWithParams(params);
1239 scoped_ptr<NativePanelTesting> native_panel_testing( 1193 scoped_ptr<NativePanelTesting> native_panel_testing(
1240 CreateNativePanelTesting(panel)); 1194 CreateNativePanelTesting(panel));
1241 1195
1242 panel->Minimize(); // this should deactivate. 1196 panel->Minimize(); // this should deactivate.
1243 MessageLoop::current()->RunAllPending(); 1197 MessageLoop::current()->RunAllPending();
1244 WaitForPanelActiveState(panel, SHOW_AS_INACTIVE); 1198 WaitForPanelActiveState(panel, SHOW_AS_INACTIVE);
1245 EXPECT_EQ(Panel::MINIMIZED, panel->expansion_state()); 1199 EXPECT_EQ(Panel::MINIMIZED, panel->expansion_state());
1246 1200
(...skipping 551 matching lines...) Expand 10 before | Expand all | Expand 10 after
1798 Browser* tabbed_browser = browser::FindTabbedBrowser(profile, false); 1752 Browser* tabbed_browser = browser::FindTabbedBrowser(profile, false);
1799 EXPECT_EQ(1, tabbed_browser->tab_count()); 1753 EXPECT_EQ(1, tabbed_browser->tab_count());
1800 ASSERT_TRUE(tabbed_browser->window()->IsDownloadShelfVisible()); 1754 ASSERT_TRUE(tabbed_browser->window()->IsDownloadShelfVisible());
1801 chrome::CloseWindow(tabbed_browser); 1755 chrome::CloseWindow(tabbed_browser);
1802 1756
1803 EXPECT_EQ(1, panel_browser->tab_count()); 1757 EXPECT_EQ(1, panel_browser->tab_count());
1804 ASSERT_FALSE(panel_browser->window()->IsDownloadShelfVisible()); 1758 ASSERT_FALSE(panel_browser->window()->IsDownloadShelfVisible());
1805 1759
1806 chrome::CloseWindow(panel_browser); 1760 chrome::CloseWindow(panel_browser);
1807 } 1761 }
1808
1809 #endif // !OS_LINUX
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698