Index: ash/display/multi_display_manager_unittest.cc |
diff --git a/ash/display/multi_display_manager_unittest.cc b/ash/display/multi_display_manager_unittest.cc |
deleted file mode 100644 |
index 1bf60a7d24b1a08ae9cf90a40be28daf3c08d593..0000000000000000000000000000000000000000 |
--- a/ash/display/multi_display_manager_unittest.cc |
+++ /dev/null |
@@ -1,510 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "ash/display/multi_display_manager.h" |
- |
-#include "ash/display/display_controller.h" |
-#include "ash/screen_ash.h" |
-#include "ash/shell.h" |
-#include "ash/test/ash_test_base.h" |
-#include "base/format_macros.h" |
-#include "base/stringprintf.h" |
-#include "ui/aura/display_observer.h" |
-#include "ui/aura/env.h" |
-#include "ui/aura/root_window.h" |
-#include "ui/aura/window_observer.h" |
-#include "ui/gfx/display.h" |
- |
-namespace ash { |
-namespace internal { |
- |
-using std::vector; |
-using std::string; |
- |
-class MultiDisplayManagerTest : public test::AshTestBase, |
- public aura::DisplayObserver, |
- public aura::WindowObserver { |
- public: |
- MultiDisplayManagerTest() |
- : removed_count_(0U), |
- root_window_destroyed_(false) { |
- } |
- virtual ~MultiDisplayManagerTest() {} |
- |
- virtual void SetUp() OVERRIDE { |
- AshTestBase::SetUp(); |
- display_manager()->AddObserver(this); |
- Shell::GetPrimaryRootWindow()->AddObserver(this); |
- } |
- virtual void TearDown() OVERRIDE { |
- Shell::GetPrimaryRootWindow()->RemoveObserver(this); |
- display_manager()->RemoveObserver(this); |
- AshTestBase::TearDown(); |
- } |
- |
- MultiDisplayManager* display_manager() { |
- return static_cast<MultiDisplayManager*>( |
- aura::Env::GetInstance()->display_manager()); |
- } |
- const vector<gfx::Display>& changed() const { return changed_; } |
- const vector<gfx::Display>& added() const { return added_; } |
- |
- string GetCountSummary() const { |
- return StringPrintf("%"PRIuS" %"PRIuS" %"PRIuS, |
- changed_.size(), added_.size(), removed_count_); |
- } |
- |
- void reset() { |
- changed_.clear(); |
- added_.clear(); |
- removed_count_ = 0U; |
- root_window_destroyed_ = false; |
- } |
- |
- bool root_window_destroyed() const { |
- return root_window_destroyed_; |
- } |
- |
- const gfx::Display& FindDisplayForId(int64 id) { |
- return display_manager()->FindDisplayForId(id); |
- } |
- |
- // aura::DisplayObserver overrides: |
- virtual void OnDisplayBoundsChanged(const gfx::Display& display) OVERRIDE { |
- changed_.push_back(display); |
- } |
- virtual void OnDisplayAdded(const gfx::Display& new_display) OVERRIDE { |
- added_.push_back(new_display); |
- } |
- virtual void OnDisplayRemoved(const gfx::Display& old_display) OVERRIDE { |
- ++removed_count_; |
- } |
- |
- // aura::WindowObserver overrides: |
- virtual void OnWindowDestroying(aura::Window* window) { |
- ASSERT_EQ(Shell::GetPrimaryRootWindow(), window); |
- root_window_destroyed_ = true; |
- } |
- |
- private: |
- vector<gfx::Display> changed_; |
- vector<gfx::Display> added_; |
- size_t removed_count_; |
- bool root_window_destroyed_; |
- |
- DISALLOW_COPY_AND_ASSIGN(MultiDisplayManagerTest); |
-}; |
- |
-#if defined(OS_CHROMEOS) |
-// TODO(oshima): This fails with non extended desktop on windows. |
-// Reenable when extended desktop is enabled by default. |
-#define MAYBE_NativeDisplayTest NativeDisplayTest |
-#define MAYBE_EmulatorTest EmulatorTest |
-#define MAYBE_OverscanInsetsTest OverscanInsetsTest |
-#define MAYBE_ZeroOverscanInsets ZeroOverscanInsets |
-#else |
-#define MAYBE_NativeDisplayTest DISABLED_NativeDisplayTest |
-#define MAYBE_EmulatorTest DISABLED_EmulatorTest |
-#define MAYBE_OverscanInsetsTest DISABLED_OverscanInsetsTest |
-#define MAYBE_ZeroOverscanInsets DISABLED_ZeroOverscanInsets |
-#endif |
- |
-TEST_F(MultiDisplayManagerTest, MAYBE_NativeDisplayTest) { |
- aura::DisplayManager::set_use_fullscreen_host_window(true); |
- |
- EXPECT_EQ(1U, display_manager()->GetNumDisplays()); |
- |
- // Update primary and add seconary. |
- UpdateDisplay("100+0-500x500,0+501-400x400"); |
- EXPECT_EQ(2U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0,0 500x500", |
- display_manager()->GetDisplayAt(0)->bounds().ToString()); |
- |
- EXPECT_EQ("1 1 0", GetCountSummary()); |
- EXPECT_EQ(display_manager()->GetDisplayAt(0)->id(), changed()[0].id()); |
- EXPECT_EQ(display_manager()->GetDisplayAt(1)->id(), added()[0].id()); |
- EXPECT_EQ("0,0 500x500", changed()[0].bounds().ToString()); |
- // Secondary display is on right. |
- EXPECT_EQ("500,0 400x400", added()[0].bounds().ToString()); |
- EXPECT_EQ("0,501 400x400", added()[0].bounds_in_pixel().ToString()); |
- reset(); |
- |
- // Delete secondary. |
- UpdateDisplay("100+0-500x500"); |
- EXPECT_EQ("0 0 1", GetCountSummary()); |
- reset(); |
- |
- // Change primary. |
- UpdateDisplay("0+0-1000x600"); |
- EXPECT_EQ("1 0 0", GetCountSummary()); |
- EXPECT_EQ(display_manager()->GetDisplayAt(0)->id(), changed()[0].id()); |
- EXPECT_EQ("0,0 1000x600", changed()[0].bounds().ToString()); |
- reset(); |
- |
- // Add secondary. |
- UpdateDisplay("0+0-1000x600,1001+0-600x400"); |
- EXPECT_EQ(2U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0 1 0", GetCountSummary()); |
- EXPECT_EQ(display_manager()->GetDisplayAt(1)->id(), added()[0].id()); |
- // Secondary display is on right. |
- EXPECT_EQ("1000,0 600x400", added()[0].bounds().ToString()); |
- EXPECT_EQ("1001,0 600x400", added()[0].bounds_in_pixel().ToString()); |
- reset(); |
- |
- // Secondary removed, primary changed. |
- UpdateDisplay("0+0-800x300"); |
- EXPECT_EQ(1U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("1 0 1", GetCountSummary()); |
- EXPECT_EQ(display_manager()->GetDisplayAt(0)->id(), changed()[0].id()); |
- EXPECT_EQ("0,0 800x300", changed()[0].bounds().ToString()); |
- reset(); |
- |
- // # of display can go to zero when screen is off. |
- const vector<gfx::Display> empty; |
- display_manager()->OnNativeDisplaysChanged(empty); |
- EXPECT_EQ(1U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0 0 0", GetCountSummary()); |
- EXPECT_FALSE(root_window_destroyed()); |
- // Display configuration stays the same |
- EXPECT_EQ("0,0 800x300", |
- display_manager()->GetDisplayAt(0)->bounds().ToString()); |
- reset(); |
- |
- // Connect to display again |
- UpdateDisplay("100+100-500x400"); |
- EXPECT_EQ(1U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("1 0 0", GetCountSummary()); |
- EXPECT_FALSE(root_window_destroyed()); |
- EXPECT_EQ("0,0 500x400", changed()[0].bounds().ToString()); |
- EXPECT_EQ("100,100 500x400", changed()[0].bounds_in_pixel().ToString()); |
- reset(); |
- |
- // Go back to zero and wake up with multiple displays. |
- display_manager()->OnNativeDisplaysChanged(empty); |
- EXPECT_EQ(1U, display_manager()->GetNumDisplays()); |
- EXPECT_FALSE(root_window_destroyed()); |
- reset(); |
- |
- // Add secondary. |
- UpdateDisplay("0+0-1000x600,1000+1000-600x400"); |
- EXPECT_EQ(2U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0,0 1000x600", |
- display_manager()->GetDisplayAt(0)->bounds().ToString()); |
- // Secondary display is on right. |
- EXPECT_EQ("1000,0 600x400", |
- display_manager()->GetDisplayAt(1)->bounds().ToString()); |
- EXPECT_EQ("1000,1000 600x400", |
- display_manager()->GetDisplayAt(1)->bounds_in_pixel().ToString()); |
- reset(); |
- |
- aura::DisplayManager::set_use_fullscreen_host_window(false); |
-} |
- |
-// Test in emulation mode (use_fullscreen_host_window=false) |
-TEST_F(MultiDisplayManagerTest, MAYBE_EmulatorTest) { |
- EXPECT_EQ(1U, display_manager()->GetNumDisplays()); |
- |
- MultiDisplayManager::CycleDisplay(); |
- // Update primary and add seconary. |
- EXPECT_EQ(2U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0 1 0", GetCountSummary()); |
- reset(); |
- |
- MultiDisplayManager::CycleDisplay(); |
- EXPECT_EQ(1U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0 0 1", GetCountSummary()); |
- reset(); |
- |
- MultiDisplayManager::CycleDisplay(); |
- EXPECT_EQ(2U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0 1 0", GetCountSummary()); |
- reset(); |
-} |
- |
-TEST_F(MultiDisplayManagerTest, MAYBE_OverscanInsetsTest) { |
- UpdateDisplay("0+0-500x500,0+501-400x400"); |
- reset(); |
- ASSERT_EQ(2u, display_manager()->GetNumDisplays()); |
- gfx::Display display1(*display_manager()->GetDisplayAt(0)); |
- gfx::Display display2(*display_manager()->GetDisplayAt(1)); |
- |
- display_manager()->SetOverscanInsets( |
- display2.id(), gfx::Insets(13, 12, 11, 10)); |
- std::vector<gfx::Display> changed_displays = changed(); |
- EXPECT_EQ(1u, changed_displays.size()); |
- EXPECT_EQ(display2.id(), changed_displays[0].id()); |
- EXPECT_EQ("0,0 500x500", |
- display_manager()->GetDisplayAt(0)->bounds_in_pixel().ToString()); |
- EXPECT_EQ("12,514 378x376", |
- display_manager()->GetDisplayAt(1)->bounds_in_pixel().ToString()); |
- |
- display_manager()->SetOverscanInsets( |
- display2.id(), gfx::Insets(10, 11, 12, 13)); |
- EXPECT_EQ("0,0 500x500", |
- display_manager()->GetDisplayAt(0)->bounds_in_pixel().ToString()); |
- EXPECT_EQ("11,511 376x378", |
- display_manager()->GetDisplayAt(1)->bounds_in_pixel().ToString()); |
- |
- // Recreate a new 2nd display. It won't apply the overscan inset because the |
- // new display has a different ID. |
- UpdateDisplay("0+0-500x500"); |
- UpdateDisplay("0+0-500x500,0+501-400x400"); |
- EXPECT_EQ("0,0 500x500", |
- display_manager()->GetDisplayAt(0)->bounds_in_pixel().ToString()); |
- EXPECT_EQ("0,501 400x400", |
- display_manager()->GetDisplayAt(1)->bounds_in_pixel().ToString()); |
- |
- // Recreate the displays with the same ID. It should apply the overscan |
- // inset. |
- UpdateDisplay("0+0-500x500"); |
- std::vector<gfx::Display> displays; |
- displays.push_back(display1); |
- displays.push_back(display2); |
- display_manager()->OnNativeDisplaysChanged(displays); |
- EXPECT_EQ("0,0 500x500", |
- display_manager()->GetDisplayAt(0)->bounds_in_pixel().ToString()); |
- EXPECT_EQ("11,511 376x378", |
- display_manager()->GetDisplayAt(1)->bounds_in_pixel().ToString()); |
- |
- // HiDPI but overscan display. The specified insets size should be doubled. |
- UpdateDisplay("0+0-500x500"); |
- UpdateDisplay("0+0-500x500,0+501-400x400*2"); |
- display_manager()->SetOverscanInsets( |
- display_manager()->GetDisplayAt(1)->id(), gfx::Insets(4, 5, 6, 7)); |
- EXPECT_EQ("0,0 500x500", |
- display_manager()->GetDisplayAt(0)->bounds_in_pixel().ToString()); |
- EXPECT_EQ("10,509 376x380", |
- display_manager()->GetDisplayAt(1)->bounds_in_pixel().ToString()); |
- EXPECT_EQ("188x190", display_manager()->GetDisplayAt(1)->size().ToString()); |
-} |
- |
-TEST_F(MultiDisplayManagerTest, MAYBE_ZeroOverscanInsets) { |
- // Make sure the display change events is emitted for overscan inset changes. |
- UpdateDisplay("0+0-500x500,0+501-400x400"); |
- ASSERT_EQ(2u, display_manager()->GetNumDisplays()); |
- int64 display2_id = display_manager()->GetDisplayAt(1)->id(); |
- |
- reset(); |
- display_manager()->SetOverscanInsets(display2_id, gfx::Insets(0, 0, 0, 0)); |
- EXPECT_EQ(0u, changed().size()); |
- |
- reset(); |
- display_manager()->SetOverscanInsets(display2_id, gfx::Insets(1, 0, 0, 0)); |
- EXPECT_EQ(1u, changed().size()); |
- EXPECT_EQ(display2_id, changed()[0].id()); |
- |
- reset(); |
- display_manager()->SetOverscanInsets(display2_id, gfx::Insets(0, 0, 0, 0)); |
- EXPECT_EQ(1u, changed().size()); |
- EXPECT_EQ(display2_id, changed()[0].id()); |
-} |
- |
-// TODO(oshima): Device scale factor is supported on chromeos only for now. |
-#if defined(OS_CHROMEOS) |
-#define MAYBE_TestDeviceScaleOnlyChange TestDeviceScaleOnlyChange |
-#define MAYBE_TestNativeDisplaysChanged TestNativeDisplaysChanged |
-#define MAYBE_NativeDisplaysChangedAfterPrimaryChange \ |
- NativeDisplaysChangedAfterPrimaryChange |
-#else |
-#define MAYBE_TestDeviceScaleOnlyChange DISABLED_TestDeviceScaleOnlyChange |
-#define MAYBE_TestNativeDisplaysChanged DISABLED_TestNativeDisplaysChanged |
-#define MAYBE_NativeDisplaysChangedAfterPrimaryChange \ |
- DISABLED_NativeDisplaysChangedAfterPrimaryChange |
-#endif |
- |
-TEST_F(MultiDisplayManagerTest, MAYBE_TestDeviceScaleOnlyChange) { |
- aura::DisplayManager::set_use_fullscreen_host_window(true); |
- UpdateDisplay("1000x600"); |
- EXPECT_EQ(1, |
- Shell::GetPrimaryRootWindow()->compositor()->device_scale_factor()); |
- EXPECT_EQ("1000x600", |
- Shell::GetPrimaryRootWindow()->bounds().size().ToString()); |
- UpdateDisplay("1000x600*2"); |
- EXPECT_EQ(2, |
- Shell::GetPrimaryRootWindow()->compositor()->device_scale_factor()); |
- EXPECT_EQ("500x300", |
- Shell::GetPrimaryRootWindow()->bounds().size().ToString()); |
- aura::DisplayManager::set_use_fullscreen_host_window(false); |
-} |
- |
-TEST_F(MultiDisplayManagerTest, MAYBE_TestNativeDisplaysChanged) { |
- const int64 internal_display_id = |
- display_manager()->SetFirstDisplayAsInternalDisplayForTest(); |
- const gfx::Display native_display(internal_display_id, |
- gfx::Rect(0, 0, 500, 500)); |
- |
- EXPECT_EQ(1U, display_manager()->GetNumDisplays()); |
- std::string default_bounds = |
- display_manager()->GetDisplayAt(0)->bounds().ToString(); |
- |
- std::vector<gfx::Display> displays; |
- // Primary disconnected. |
- display_manager()->OnNativeDisplaysChanged(displays); |
- EXPECT_EQ(1U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ(default_bounds, |
- display_manager()->GetDisplayAt(0)->bounds().ToString()); |
- |
- // External connected while primary was disconnected. |
- displays.push_back(gfx::Display(10, gfx::Rect(1, 1, 100, 100))); |
- display_manager()->OnNativeDisplaysChanged(displays); |
- EXPECT_EQ(2U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ(default_bounds, |
- FindDisplayForId(internal_display_id).bounds().ToString()); |
- EXPECT_EQ("1,1 100x100", |
- FindDisplayForId(10).bounds_in_pixel().ToString()); |
- |
- // Primary connected, with different bounds. |
- displays.clear(); |
- displays.push_back(native_display); |
- displays.push_back(gfx::Display(10, gfx::Rect(1, 1, 100, 100))); |
- display_manager()->OnNativeDisplaysChanged(displays); |
- EXPECT_EQ(2U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0,0 500x500", |
- FindDisplayForId(internal_display_id).bounds().ToString()); |
- EXPECT_EQ("1,1 100x100", |
- FindDisplayForId(10).bounds_in_pixel().ToString()); |
- |
- // Turn off primary. |
- displays.clear(); |
- displays.push_back(gfx::Display(10, gfx::Rect(1, 1, 100, 100))); |
- display_manager()->OnNativeDisplaysChanged(displays); |
- EXPECT_EQ(2U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0,0 500x500", |
- FindDisplayForId(internal_display_id).bounds().ToString()); |
- EXPECT_EQ("1,1 100x100", |
- FindDisplayForId(10).bounds_in_pixel().ToString()); |
- |
- // Emulate suspend. |
- displays.clear(); |
- display_manager()->OnNativeDisplaysChanged(displays); |
- EXPECT_EQ(2U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0,0 500x500", |
- FindDisplayForId(internal_display_id).bounds().ToString()); |
- EXPECT_EQ("1,1 100x100", |
- FindDisplayForId(10).bounds_in_pixel().ToString()); |
- |
- // External display has disconnected then resumed. |
- displays.push_back(native_display); |
- display_manager()->OnNativeDisplaysChanged(displays); |
- EXPECT_EQ(1U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0,0 500x500", |
- FindDisplayForId(internal_display_id).bounds().ToString()); |
-} |
- |
-#if defined(OS_CHROMEOS) |
-#define MAYBE_EnsurePointerInDisplays EnsurePointerInDisplays |
-#define MAYBE_EnsurePointerInDisplays_2ndOnLeft \ |
- EnsurePointerInDisplays_2ndOnLeft |
-#else |
-// TODO(oshima): Re-enable these tests on WinAura (http://crbug.com/158163). |
-#define MAYBE_EnsurePointerInDisplays DISABLED_EnsurePointerInDisplays |
-#define MAYBE_EnsurePointerInDisplays_2ndOnLeft \ |
- DISABLED_EnsurePointerInDisplays_2ndOnLeft |
-#endif |
- |
-TEST_F(MultiDisplayManagerTest, MAYBE_EnsurePointerInDisplays) { |
- UpdateDisplay("200x200,300x300"); |
- Shell::RootWindowList root_windows = Shell::GetAllRootWindows(); |
- |
- aura::Env* env = aura::Env::GetInstance(); |
- |
- // Set the initial position. |
- root_windows[0]->MoveCursorTo(gfx::Point(350, 150)); |
- EXPECT_EQ("350,150", env->last_mouse_location().ToString()); |
- |
- // A mouse pointer will be inside 2nd display. |
- UpdateDisplay("300x300,200x200"); |
- EXPECT_EQ("350,150", env->last_mouse_location().ToString()); |
- |
- // A mouse pointer will be outside of displays and move to the |
- // center of 2nd display. |
- UpdateDisplay("300x300,100x100"); |
- EXPECT_EQ("350,50", env->last_mouse_location().ToString()); |
- |
- // 2nd display was disconnected, but the mouse pointer says in the |
- // 1st display. |
- UpdateDisplay("400x400"); |
- EXPECT_EQ("350,50", env->last_mouse_location().ToString()); |
- |
- // 1st display's resolution has changed, and the mouse pointer is |
- // now outside. Move the mouse pointer to the center of 1st display. |
- UpdateDisplay("300x300"); |
- EXPECT_EQ("150,150", env->last_mouse_location().ToString()); |
- |
- // Move the mouse pointer to the bottom of 1st display. |
- root_windows[0]->MoveCursorTo(gfx::Point(150, 290)); |
- EXPECT_EQ("150,290", env->last_mouse_location().ToString()); |
- |
- // The mouse pointer is outside and closest display is 1st one. |
- UpdateDisplay("300x280,200x200"); |
- EXPECT_EQ("150,140", env->last_mouse_location().ToString()); |
-} |
- |
-TEST_F(MultiDisplayManagerTest, MAYBE_EnsurePointerInDisplays_2ndOnLeft) { |
- UpdateDisplay("200x200,300x300"); |
- Shell::RootWindowList root_windows = Shell::GetAllRootWindows(); |
- |
- // Set the 2nd display on the left. |
- DisplayController* display_controller = |
- Shell::GetInstance()->display_controller(); |
- DisplayLayout layout = display_controller->default_display_layout(); |
- layout.position = DisplayLayout::LEFT; |
- display_controller->SetDefaultDisplayLayout(layout); |
- |
- EXPECT_EQ("-300,0 300x300", |
- ScreenAsh::GetSecondaryDisplay().bounds().ToString()); |
- |
- aura::Env* env = aura::Env::GetInstance(); |
- |
- // Set the initial position. |
- root_windows[0]->MoveCursorTo(gfx::Point(-150, 150)); |
- EXPECT_EQ("-150,150", env->last_mouse_location().ToString()); |
- |
- // A mouse pointer will be in 2nd display. |
- UpdateDisplay("300x300,200x200"); |
- EXPECT_EQ("-150,150", env->last_mouse_location().ToString()); |
- |
- // A mouse pointer will be outside of displays and move to the |
- // center of 2nd display. |
- UpdateDisplay("300x300,200x100"); |
- EXPECT_EQ("-100,50", env->last_mouse_location().ToString()); |
- |
- // 2nd display was disconnected. Mouse pointer should move to |
- // 1st display. |
- UpdateDisplay("300x300"); |
- EXPECT_EQ("150,150", env->last_mouse_location().ToString()); |
-} |
- |
-TEST_F(MultiDisplayManagerTest, MAYBE_NativeDisplaysChangedAfterPrimaryChange) { |
- const int64 internal_display_id = |
- display_manager()->SetFirstDisplayAsInternalDisplayForTest(); |
- const gfx::Display native_display(internal_display_id, |
- gfx::Rect(0, 0, 500, 500)); |
- const gfx::Display secondary_display(10, gfx::Rect(1, 1, 100, 100)); |
- |
- std::vector<gfx::Display> displays; |
- displays.push_back(native_display); |
- displays.push_back(secondary_display); |
- display_manager()->OnNativeDisplaysChanged(displays); |
- EXPECT_EQ(2U, display_manager()->GetNumDisplays()); |
- EXPECT_EQ("0,0 500x500", |
- FindDisplayForId(internal_display_id).bounds().ToString()); |
- EXPECT_EQ("500,0 100x100", FindDisplayForId(10).bounds().ToString()); |
- |
- ash::Shell::GetInstance()->display_controller()->SetPrimaryDisplay( |
- secondary_display); |
- EXPECT_EQ("-500,0 500x500", |
- FindDisplayForId(internal_display_id).bounds().ToString()); |
- EXPECT_EQ("0,0 100x100", FindDisplayForId(10).bounds().ToString()); |
- |
- // OnNativeDisplaysChanged may change the display bounds. Here makes sure |
- // nothing changed if the exactly same displays are specified. |
- display_manager()->OnNativeDisplaysChanged(displays); |
- EXPECT_EQ("-500,0 500x500", |
- FindDisplayForId(internal_display_id).bounds().ToString()); |
- EXPECT_EQ("0,0 100x100", FindDisplayForId(10).bounds().ToString()); |
-} |
- |
-} // namespace internal |
-} // namespace ash |