summaryrefslogtreecommitdiffstats
path: root/ash/display/display_manager_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'ash/display/display_manager_unittest.cc')
-rw-r--r--ash/display/display_manager_unittest.cc36
1 files changed, 36 insertions, 0 deletions
diff --git a/ash/display/display_manager_unittest.cc b/ash/display/display_manager_unittest.cc
index 33ca06e..a188f9b 100644
--- a/ash/display/display_manager_unittest.cc
+++ b/ash/display/display_manager_unittest.cc
@@ -717,6 +717,42 @@ TEST_F(DisplayManagerTest, NativeDisplaysChangedAfterPrimaryChange) {
EXPECT_EQ("0,0 100x100", GetDisplayForId(10).bounds().ToString());
}
+TEST_F(DisplayManagerTest, DontRememberBestResolution) {
+ int display_id = 1000;
+ DisplayInfo native_display_info =
+ CreateDisplayInfo(display_id, gfx::Rect(0, 0, 1000, 500));
+ std::vector<Resolution> resolutions;
+ resolutions.push_back(Resolution(gfx::Size(1000, 500), false));
+ resolutions.push_back(Resolution(gfx::Size(800, 300), false));
+ resolutions.push_back(Resolution(gfx::Size(400, 500), false));
+
+ native_display_info.set_resolutions(resolutions);
+
+ std::vector<DisplayInfo> display_info_list;
+ display_info_list.push_back(native_display_info);
+ display_manager()->OnNativeDisplaysChanged(display_info_list);
+
+ gfx::Size selected;
+ EXPECT_FALSE(display_manager()->GetSelectedResolutionForDisplayId(
+ display_id, &selected));
+
+ // Unsupported resolution.
+ display_manager()->SetDisplayResolution(display_id, gfx::Size(800, 4000));
+ EXPECT_FALSE(display_manager()->GetSelectedResolutionForDisplayId(
+ display_id, &selected));
+
+ // Supported resolution.
+ display_manager()->SetDisplayResolution(display_id, gfx::Size(800, 300));
+ EXPECT_TRUE(display_manager()->GetSelectedResolutionForDisplayId(
+ display_id, &selected));
+ EXPECT_EQ("800x300", selected.ToString());
+
+ // Best resolution.
+ display_manager()->SetDisplayResolution(display_id, gfx::Size(1000, 500));
+ EXPECT_FALSE(display_manager()->GetSelectedResolutionForDisplayId(
+ display_id, &selected));
+}
+
TEST_F(DisplayManagerTest, Rotate) {
if (!SupportsMultipleDisplays())
return;