Chromium Code Reviews| Index: ash/wm/window_util_unittest.cc |
| diff --git a/ash/wm/window_util_unittest.cc b/ash/wm/window_util_unittest.cc |
| index 719bb26c8fc945f2d72aca012ea574b7c5d079e9..58118186cb6365cdfc5a0820544e04a6ecbd396f 100644 |
| --- a/ash/wm/window_util_unittest.cc |
| +++ b/ash/wm/window_util_unittest.cc |
| @@ -14,15 +14,17 @@ |
| #include "ui/display/screen.h" |
| namespace ash { |
| +namespace wm { |
| namespace { |
| std::string GetAdjustedBounds(const gfx::Rect& visible, |
| gfx::Rect to_be_adjusted) { |
| - wm::AdjustBoundsToEnsureMinimumWindowVisibility(visible, &to_be_adjusted); |
| + AdjustBoundsToEnsureMinimumWindowVisibility(visible, &to_be_adjusted); |
| return to_be_adjusted.ToString(); |
| } |
| -} |
| + |
| +} // namespace |
| typedef test::AshTestBase WindowUtilTest; |
| @@ -31,17 +33,17 @@ TEST_F(WindowUtilTest, CenterWindow) { |
| std::unique_ptr<aura::Window> window( |
| CreateTestWindowInShellWithBounds(gfx::Rect(12, 20, 100, 100))); |
| - wm::WindowState* window_state = wm::GetWindowState(window.get()); |
| + WindowState* window_state = GetWindowState(window.get()); |
| EXPECT_FALSE(window_state->bounds_changed_by_user()); |
| - wm::CenterWindow(WmWindow::Get(window.get())); |
| + CenterWindow(WmWindow::Get(window.get())); |
| // Centring window is considered as a user's action. |
| EXPECT_TRUE(window_state->bounds_changed_by_user()); |
| EXPECT_EQ("200,126 100x100", window->bounds().ToString()); |
| EXPECT_EQ("200,126 100x100", window->GetBoundsInScreen().ToString()); |
| window->SetBoundsInScreen(gfx::Rect(600, 0, 100, 100), |
| display_manager()->GetSecondaryDisplay()); |
| - wm::CenterWindow(WmWindow::Get(window.get())); |
| + CenterWindow(WmWindow::Get(window.get())); |
| EXPECT_EQ("250,126 100x100", window->bounds().ToString()); |
| EXPECT_EQ("750,126 100x100", window->GetBoundsInScreen().ToString()); |
| } |
| @@ -60,7 +62,7 @@ TEST_F(WindowUtilTest, AdjustBoundsToEnsureMinimumVisibility) { |
| EXPECT_EQ("75,75 100x100", |
| GetAdjustedBounds(visible_bounds, gfx::Rect(100, 100, 150, 150))); |
| - // For windows that have smaller dimensions than wm::kMinimumOnScreenArea, |
| + // For windows that have smaller dimensions than kMinimumOnScreenArea, |
| // we should adjust bounds accordingly, leaving no white space. |
| EXPECT_EQ("50,80 20x20", |
| GetAdjustedBounds(visible_bounds, gfx::Rect(50, 80, 20, 20))); |
| @@ -109,4 +111,39 @@ TEST_F(WindowUtilTest, AdjustBoundsToEnsureMinimumVisibility) { |
| GetAdjustedBounds(visible_bounds_left, gfx::Rect(0, 0, 150, 150))); |
| } |
| +TEST_F(WindowUtilTest, MoveWindowToDisplay) { |
| + UpdateDisplay("500x400, 600x400"); |
| + std::unique_ptr<aura::Window> window( |
| + CreateTestWindowInShellWithBounds(gfx::Rect(12, 20, 100, 100))); |
| + display::Screen* screen = display::Screen::GetScreen(); |
| + const int64_t original_display_id = |
| + screen->GetDisplayNearestWindow(window.get()).id(); |
| + EXPECT_EQ(screen->GetPrimaryDisplay().id(), original_display_id); |
| + const int original_container_id = window->parent()->id(); |
| + const aura::Window* original_root = window->GetRootWindow(); |
| + |
| + EXPECT_FALSE(MoveWindowToDisplay(window.get(), display::kInvalidDisplayId)); |
| + EXPECT_EQ(original_display_id, |
| + screen->GetDisplayNearestWindow(window.get()).id()); |
| + EXPECT_FALSE(MoveWindowToDisplay(window.get(), original_display_id)); |
| + EXPECT_EQ(original_display_id, |
| + screen->GetDisplayNearestWindow(window.get()).id()); |
| + |
| + ASSERT_EQ(2, screen->GetNumDisplays()); |
| + const int64_t secondary_display_id = screen->GetAllDisplays()[1].id(); |
| + EXPECT_NE(original_display_id, secondary_display_id); |
| + EXPECT_TRUE(MoveWindowToDisplay(window.get(), secondary_display_id)); |
| + EXPECT_EQ(secondary_display_id, |
| + screen->GetDisplayNearestWindow(window.get()).id()); |
| + EXPECT_EQ(original_container_id, window->parent()->id()); |
| + EXPECT_NE(original_root, window->GetRootWindow()); |
| + |
| + EXPECT_TRUE(MoveWindowToDisplay(window.get(), original_display_id)); |
| + EXPECT_EQ(original_display_id, |
| + screen->GetDisplayNearestWindow(window.get()).id()); |
| + EXPECT_EQ(original_container_id, window->parent()->id()); |
| + EXPECT_EQ(original_root, window->GetRootWindow()); |
| +} |
|
James Cook
2017/02/15 23:06:12
Thanks for adding test coverage.
msw
2017/02/16 00:12:20
Acknowledged.
|
| + |
| +} // namespace wm |
| } // namespace ash |