Disable flaky MultiScreenFullscreen bounds checks on Mac
Keep/add display correctness coverage, but skip flaky bounds checks.
(cherry picked from commit 18f8a7e5433cd970d07134b5305aa4bc260a76fc)
Bug: 1469288
Include-Ci-Only-Tests: true
Change-Id: I49a753fc63e465192afb8d1a8c97f934bdda567f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4811061
Reviewed-by: Brad Triebwasser <[email protected]>
Auto-Submit: Mike Wasserman <[email protected]>
Commit-Queue: Mike Wasserman <[email protected]>
Cr-Original-Commit-Position: refs/heads/main@{#1188072}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4851239
Owners-Override: Joseph Park <[email protected]>
Commit-Queue: Joseph Park <[email protected]>
Reviewed-by: Mike Wasserman <[email protected]>
Bot-Commit: Rubber Stamper <[email protected]>
Auto-Submit: Joseph Park <[email protected]>
Cr-Commit-Position: refs/branch-heads/5938@{#1118}
Cr-Branched-From: 2b50cb4bcc2318034581a816714d9535dc38966d-refs/heads/main@{#1181205}
diff --git a/chrome/browser/ui/exclusive_access/fullscreen_controller_interactive_browsertest.cc b/chrome/browser/ui/exclusive_access/fullscreen_controller_interactive_browsertest.cc
index b5fd6315..055fa8c6 100644
--- a/chrome/browser/ui/exclusive_access/fullscreen_controller_interactive_browsertest.cc
+++ b/chrome/browser/ui/exclusive_access/fullscreen_controller_interactive_browsertest.cc
@@ -996,7 +996,9 @@
IN_PROC_BROWSER_TEST_F(MAYBE_MultiScreenFullscreenControllerInteractiveTest,
MAYBE_SeparateDisplay) {
SetUpWindowManagementTab();
+#if !BUILDFLAG(IS_MAC)
const gfx::Rect original_bounds = browser()->window()->GetBounds();
+#endif
const display::Display original_display = GetCurrentDisplay(browser());
// Execute JS to request fullscreen on a different screen.
@@ -1004,7 +1006,11 @@
EXPECT_NE(original_display.id(), GetCurrentDisplay(browser()).id());
ExitContentFullscreen();
+ EXPECT_EQ(original_display.id(), GetCurrentDisplay(browser()).id());
+ // TODO(https://crbug.com/1469288): Bounds are flaky on Mac.
+#if !BUILDFLAG(IS_MAC)
EXPECT_EQ(original_bounds, browser()->window()->GetBounds());
+#endif
}
// TODO(crbug.com/1034772): Disabled on Windows, where views::FullscreenHandler
@@ -1022,25 +1028,37 @@
IN_PROC_BROWSER_TEST_F(MAYBE_MultiScreenFullscreenControllerInteractiveTest,
MAYBE_SeparateDisplayMaximized) {
SetUpWindowManagementTab();
+#if !BUILDFLAG(IS_MAC)
const gfx::Rect original_bounds = browser()->window()->GetBounds();
+#endif
const display::Display original_display = GetCurrentDisplay(browser());
browser()->window()->Maximize();
EXPECT_TRUE(browser()->window()->IsMaximized());
+#if !BUILDFLAG(IS_MAC)
const gfx::Rect maximized_bounds = browser()->window()->GetBounds();
+#endif
// Execute JS to request fullscreen on a different screen.
RequestContentFullscreenOnAnotherScreen();
EXPECT_NE(original_display.id(), GetCurrentDisplay(browser()).id());
ExitContentFullscreen();
- EXPECT_EQ(maximized_bounds, browser()->window()->GetBounds());
EXPECT_TRUE(browser()->window()->IsMaximized());
+ EXPECT_EQ(original_display.id(), GetCurrentDisplay(browser()).id());
+ // TODO(https://crbug.com/1469288): Bounds are flaky on Mac.
+#if !BUILDFLAG(IS_MAC)
+ EXPECT_EQ(maximized_bounds, browser()->window()->GetBounds());
+#endif
// Unmaximize the window and check that the original bounds are restored.
browser()->window()->Restore();
EXPECT_FALSE(browser()->window()->IsMaximized());
+ EXPECT_EQ(original_display.id(), GetCurrentDisplay(browser()).id());
+ // TODO(https://crbug.com/1469288): Bounds are flaky on Mac.
+#if !BUILDFLAG(IS_MAC)
EXPECT_EQ(original_bounds, browser()->window()->GetBounds());
+#endif
}
// TODO(crbug.com/1034772): Disabled on Windows, where views::FullscreenHandler
@@ -1058,7 +1076,9 @@
IN_PROC_BROWSER_TEST_F(MAYBE_MultiScreenFullscreenControllerInteractiveTest,
MAYBE_SameDisplayAndSwap) {
SetUpWindowManagementTab();
+#if !BUILDFLAG(IS_MAC)
const gfx::Rect original_bounds = browser()->window()->GetBounds();
+#endif
const display::Display original_display = GetCurrentDisplay(browser());
// Execute JS to request fullscreen on the current screen.
@@ -1070,7 +1090,11 @@
EXPECT_NE(original_display.id(), GetCurrentDisplay(browser()).id());
ExitContentFullscreen();
+ EXPECT_EQ(original_display.id(), GetCurrentDisplay(browser()).id());
+ // TODO(https://crbug.com/1469288): Bounds are flaky on Mac.
+#if !BUILDFLAG(IS_MAC)
EXPECT_EQ(original_bounds, browser()->window()->GetBounds());
+#endif
}
// TODO(crbug.com/1034772): Disabled on Windows, where views::FullscreenHandler
@@ -1089,12 +1113,16 @@
IN_PROC_BROWSER_TEST_F(MAYBE_MultiScreenFullscreenControllerInteractiveTest,
MAYBE_SameDisplayAndSwapMaximized) {
SetUpWindowManagementTab();
+#if !BUILDFLAG(IS_MAC)
const gfx::Rect original_bounds = browser()->window()->GetBounds();
+#endif
const display::Display original_display = GetCurrentDisplay(browser());
browser()->window()->Maximize();
EXPECT_TRUE(browser()->window()->IsMaximized());
+#if !BUILDFLAG(IS_MAC)
const gfx::Rect maximized_bounds = browser()->window()->GetBounds();
+#endif
// Execute JS to request fullscreen on the current screen.
RequestContentFullscreen();
@@ -1105,13 +1133,20 @@
EXPECT_NE(original_display.id(), GetCurrentDisplay(browser()).id());
ExitContentFullscreen();
- EXPECT_EQ(maximized_bounds, browser()->window()->GetBounds());
EXPECT_TRUE(browser()->window()->IsMaximized());
+ // TODO(https://crbug.com/1469288): Bounds are flaky on Mac.
+#if !BUILDFLAG(IS_MAC)
+ EXPECT_EQ(maximized_bounds, browser()->window()->GetBounds());
+#endif
// Unmaximize the window and check that the original bounds are restored.
browser()->window()->Restore();
EXPECT_FALSE(browser()->window()->IsMaximized());
+ EXPECT_EQ(original_display.id(), GetCurrentDisplay(browser()).id());
+ // TODO(https://crbug.com/1469288): Bounds are flaky on Mac.
+#if !BUILDFLAG(IS_MAC)
EXPECT_EQ(original_bounds, browser()->window()->GetBounds());
+#endif
}
// TODO(crbug.com/1034772): Disabled on Windows, where views::FullscreenHandler
@@ -1170,8 +1205,11 @@
IN_PROC_BROWSER_TEST_F(MAYBE_MultiScreenFullscreenControllerInteractiveTest,
MAYBE_SeparateDisplayAndSwap) {
SetUpWindowManagementTab();
+#if !BUILDFLAG(IS_MAC)
const gfx::Rect original_bounds = browser()->window()->GetBounds();
- display::Display last_recorded_display = GetCurrentDisplay(browser());
+#endif
+ const display::Display original_display = GetCurrentDisplay(browser());
+ display::Display last_recorded_display = original_display;
// Execute JS to request fullscreen on a different screen a few times.
for (size_t i = 0; i < 4; ++i) {
@@ -1181,7 +1219,11 @@
}
ExitContentFullscreen();
+ EXPECT_EQ(original_display.id(), GetCurrentDisplay(browser()).id());
+ // TODO(https://crbug.com/1469288): Bounds are flaky on Mac.
+#if !BUILDFLAG(IS_MAC)
EXPECT_EQ(original_bounds, browser()->window()->GetBounds());
+#endif
}
// TODO(crbug.com/1034772): Disabled on Windows, where views::FullscreenHandler