diff options
author | mazda@chromium.org <mazda@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-09-20 00:53:43 +0000 |
---|---|---|
committer | mazda@chromium.org <mazda@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-09-20 00:53:43 +0000 |
commit | ae3dfe9c43613d5257c818316e8a0cca35118afa (patch) | |
tree | 43d3e1a2966c254bc8881e4ada180151e8cc3137 /ash/display | |
parent | 315c43e2a44b0242acc8c8c976c3a6f774b21546 (diff) | |
download | chromium_src-ae3dfe9c43613d5257c818316e8a0cca35118afa.zip chromium_src-ae3dfe9c43613d5257c818316e8a0cca35118afa.tar.gz chromium_src-ae3dfe9c43613d5257c818316e8a0cca35118afa.tar.bz2 |
Enable UpdateDisplay to specify host origins.
This is needed for testing coordinate conversions by way of native screen
coordinates.
BUG=148686
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=157597
Review URL: https://chromiumcodereview.appspot.com/10914308
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157676 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/display')
-rw-r--r-- | ash/display/display_controller_unittest.cc | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/ash/display/display_controller_unittest.cc b/ash/display/display_controller_unittest.cc index a6a8a47..6934cdd 100644 --- a/ash/display/display_controller_unittest.cc +++ b/ash/display/display_controller_unittest.cc @@ -73,9 +73,11 @@ typedef test::AshTestBase DisplayControllerTest; // Fix this and enable tests. #define MAYBE_SecondaryDisplayLayout DISABLED_SecondaryDisplayLayout #define MAYBE_BoundsUpdated DISABLED_BoundsUpdated +#define MAYBE_UpdateDisplayWithHostOrigin DISABLED_UpdateDisplayWithHostOrigin #else #define MAYBE_SecondaryDisplayLayout SecondaryDisplayLayout #define MAYBE_BoundsUpdated BoundsUpdated +#define MAYBE_UpdateDisplayWithHostOrigin UpdateDisplayWithHostOrigin #endif TEST_F(DisplayControllerTest, MAYBE_SecondaryDisplayLayout) { @@ -240,5 +242,39 @@ TEST_F(DisplayControllerTest, SwapPrimary) { EXPECT_TRUE(primary_root->Contains(launcher_window)); } +TEST_F(DisplayControllerTest, MAYBE_UpdateDisplayWithHostOrigin) { + UpdateDisplay("100x200,300x400"); + ASSERT_EQ(2, gfx::Screen::GetNumDisplays()); + Shell::RootWindowList root_windows = + Shell::GetInstance()->GetAllRootWindows(); + ASSERT_EQ(2U, root_windows.size()); + EXPECT_EQ("0,0", root_windows[0]->GetHostOrigin().ToString()); + EXPECT_EQ("100x200", root_windows[0]->GetHostSize().ToString()); + // UpdateDisplay set the origin if it's not set. + EXPECT_NE("0,0", root_windows[1]->GetHostOrigin().ToString()); + EXPECT_EQ("300x400", root_windows[1]->GetHostSize().ToString()); + + UpdateDisplay("100x200,200+300-300x400"); + ASSERT_EQ(2, gfx::Screen::GetNumDisplays()); + EXPECT_EQ("0,0", root_windows[0]->GetHostOrigin().ToString()); + EXPECT_EQ("100x200", root_windows[0]->GetHostSize().ToString()); + EXPECT_EQ("200,300", root_windows[1]->GetHostOrigin().ToString()); + EXPECT_EQ("300x400", root_windows[1]->GetHostSize().ToString()); + + UpdateDisplay("400+500-200x300,300x400"); + ASSERT_EQ(2, gfx::Screen::GetNumDisplays()); + EXPECT_EQ("400,500", root_windows[0]->GetHostOrigin().ToString()); + EXPECT_EQ("200x300", root_windows[0]->GetHostSize().ToString()); + EXPECT_EQ("0,0", root_windows[1]->GetHostOrigin().ToString()); + EXPECT_EQ("300x400", root_windows[1]->GetHostSize().ToString()); + + UpdateDisplay("100+200-100x200,300+500-200x300"); + ASSERT_EQ(2, gfx::Screen::GetNumDisplays()); + EXPECT_EQ("100,200", root_windows[0]->GetHostOrigin().ToString()); + EXPECT_EQ("100x200", root_windows[0]->GetHostSize().ToString()); + EXPECT_EQ("300,500", root_windows[1]->GetHostOrigin().ToString()); + EXPECT_EQ("200x300", root_windows[1]->GetHostSize().ToString()); +} + } // namespace test } // namespace ash |