OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ash/display/display_change_observer_chromeos.h" | 5 #include "ash/display/display_change_observer_chromeos.h" |
6 | 6 |
7 #include "ash/common/display/display_info.h" | |
8 #include "base/memory/ptr_util.h" | 7 #include "base/memory/ptr_util.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 8 #include "testing/gtest/include/gtest/gtest.h" |
10 #include "ui/display/chromeos/display_configurator.h" | 9 #include "ui/display/chromeos/display_configurator.h" |
11 #include "ui/display/chromeos/test/test_display_snapshot.h" | 10 #include "ui/display/chromeos/test/test_display_snapshot.h" |
| 11 #include "ui/display/manager/managed_display_info.h" |
12 #include "ui/display/types/display_mode.h" | 12 #include "ui/display/types/display_mode.h" |
13 | 13 |
14 using ui::DisplayConfigurator; | 14 using ui::DisplayConfigurator; |
15 | 15 |
16 typedef testing::Test DisplayChangeObserverTest; | 16 typedef testing::Test DisplayChangeObserverTest; |
17 | 17 |
18 namespace ash { | 18 namespace ash { |
19 | 19 |
20 TEST_F(DisplayChangeObserverTest, GetExternalManagedDisplayModeList) { | 20 TEST_F(DisplayChangeObserverTest, GetExternalManagedDisplayModeList) { |
21 std::vector<std::unique_ptr<const ui::DisplayMode>> modes; | 21 std::vector<std::unique_ptr<const ui::DisplayMode>> modes; |
(...skipping 28 matching lines...) Expand all Loading... |
50 modes.push_back( | 50 modes.push_back( |
51 base::MakeUnique<ui::DisplayMode>(gfx::Size(1024, 600), false, 60)); | 51 base::MakeUnique<ui::DisplayMode>(gfx::Size(1024, 600), false, 60)); |
52 | 52 |
53 // Just one interlaced mode. | 53 // Just one interlaced mode. |
54 modes.push_back( | 54 modes.push_back( |
55 base::MakeUnique<ui::DisplayMode>(gfx::Size(640, 480), true, 60)); | 55 base::MakeUnique<ui::DisplayMode>(gfx::Size(640, 480), true, 60)); |
56 | 56 |
57 ui::TestDisplaySnapshot display_snapshot; | 57 ui::TestDisplaySnapshot display_snapshot; |
58 display_snapshot.set_modes(std::move(modes)); | 58 display_snapshot.set_modes(std::move(modes)); |
59 | 59 |
60 DisplayInfo::ManagedDisplayModeList display_modes = | 60 display::ManagedDisplayInfo::ManagedDisplayModeList display_modes = |
61 DisplayChangeObserver::GetExternalManagedDisplayModeList( | 61 DisplayChangeObserver::GetExternalManagedDisplayModeList( |
62 display_snapshot); | 62 display_snapshot); |
63 ASSERT_EQ(6u, display_modes.size()); | 63 ASSERT_EQ(6u, display_modes.size()); |
64 EXPECT_EQ("640x480", display_modes[0]->size().ToString()); | 64 EXPECT_EQ("640x480", display_modes[0]->size().ToString()); |
65 EXPECT_TRUE(display_modes[0]->is_interlaced()); | 65 EXPECT_TRUE(display_modes[0]->is_interlaced()); |
66 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); | 66 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); |
67 | 67 |
68 EXPECT_EQ("1024x600", display_modes[1]->size().ToString()); | 68 EXPECT_EQ("1024x600", display_modes[1]->size().ToString()); |
69 EXPECT_FALSE(display_modes[1]->is_interlaced()); | 69 EXPECT_FALSE(display_modes[1]->is_interlaced()); |
70 EXPECT_EQ(display_modes[1]->refresh_rate(), 70); | 70 EXPECT_EQ(display_modes[1]->refresh_rate(), 70); |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
105 base::MakeUnique<ui::DisplayMode>(gfx::Size(800, 600), false, 60)); | 105 base::MakeUnique<ui::DisplayMode>(gfx::Size(800, 600), false, 60)); |
106 modes.push_back( | 106 modes.push_back( |
107 base::MakeUnique<ui::DisplayMode>(gfx::Size(600, 600), false, 56.2)); | 107 base::MakeUnique<ui::DisplayMode>(gfx::Size(600, 600), false, 56.2)); |
108 modes.push_back( | 108 modes.push_back( |
109 base::MakeUnique<ui::DisplayMode>(gfx::Size(640, 480), false, 59.9)); | 109 base::MakeUnique<ui::DisplayMode>(gfx::Size(640, 480), false, 59.9)); |
110 | 110 |
111 ui::TestDisplaySnapshot display_snapshot; | 111 ui::TestDisplaySnapshot display_snapshot; |
112 display_snapshot.set_native_mode(modes[0].get()); | 112 display_snapshot.set_native_mode(modes[0].get()); |
113 display_snapshot.set_modes(std::move(modes)); | 113 display_snapshot.set_modes(std::move(modes)); |
114 | 114 |
115 DisplayInfo info(1, "", false); | 115 display::ManagedDisplayInfo info(1, "", false); |
116 info.SetBounds(gfx::Rect(0, 0, 1366, 768)); | 116 info.SetBounds(gfx::Rect(0, 0, 1366, 768)); |
117 | 117 |
118 DisplayInfo::ManagedDisplayModeList display_modes = | 118 display::ManagedDisplayInfo::ManagedDisplayModeList display_modes = |
119 DisplayChangeObserver::GetInternalManagedDisplayModeList( | 119 DisplayChangeObserver::GetInternalManagedDisplayModeList( |
120 info, display_snapshot); | 120 info, display_snapshot); |
121 ASSERT_EQ(5u, display_modes.size()); | 121 ASSERT_EQ(5u, display_modes.size()); |
122 EXPECT_EQ("1366x768", display_modes[0]->size().ToString()); | 122 EXPECT_EQ("1366x768", display_modes[0]->size().ToString()); |
123 EXPECT_FALSE(display_modes[0]->native()); | 123 EXPECT_FALSE(display_modes[0]->native()); |
124 EXPECT_NEAR(display_modes[0]->ui_scale(), 0.5, 0.01); | 124 EXPECT_NEAR(display_modes[0]->ui_scale(), 0.5, 0.01); |
125 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); | 125 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); |
126 | 126 |
127 EXPECT_EQ("1366x768", display_modes[1]->size().ToString()); | 127 EXPECT_EQ("1366x768", display_modes[1]->size().ToString()); |
128 EXPECT_FALSE(display_modes[1]->native()); | 128 EXPECT_FALSE(display_modes[1]->native()); |
(...skipping 23 matching lines...) Expand all Loading... |
152 base::MakeUnique<ui::DisplayMode>(gfx::Size(2560, 1700), false, 60)); | 152 base::MakeUnique<ui::DisplayMode>(gfx::Size(2560, 1700), false, 60)); |
153 modes.push_back( | 153 modes.push_back( |
154 base::MakeUnique<ui::DisplayMode>(gfx::Size(2048, 1536), false, 60)); | 154 base::MakeUnique<ui::DisplayMode>(gfx::Size(2048, 1536), false, 60)); |
155 modes.push_back( | 155 modes.push_back( |
156 base::MakeUnique<ui::DisplayMode>(gfx::Size(1920, 1440), false, 60)); | 156 base::MakeUnique<ui::DisplayMode>(gfx::Size(1920, 1440), false, 60)); |
157 | 157 |
158 ui::TestDisplaySnapshot display_snapshot; | 158 ui::TestDisplaySnapshot display_snapshot; |
159 display_snapshot.set_native_mode(modes[0].get()); | 159 display_snapshot.set_native_mode(modes[0].get()); |
160 display_snapshot.set_modes(std::move(modes)); | 160 display_snapshot.set_modes(std::move(modes)); |
161 | 161 |
162 DisplayInfo info(1, "", false); | 162 display::ManagedDisplayInfo info(1, "", false); |
163 info.SetBounds(gfx::Rect(0, 0, 2560, 1700)); | 163 info.SetBounds(gfx::Rect(0, 0, 2560, 1700)); |
164 info.set_device_scale_factor(2.0f); | 164 info.set_device_scale_factor(2.0f); |
165 | 165 |
166 DisplayInfo::ManagedDisplayModeList display_modes = | 166 display::ManagedDisplayInfo::ManagedDisplayModeList display_modes = |
167 DisplayChangeObserver::GetInternalManagedDisplayModeList( | 167 DisplayChangeObserver::GetInternalManagedDisplayModeList( |
168 info, display_snapshot); | 168 info, display_snapshot); |
169 ASSERT_EQ(8u, display_modes.size()); | 169 ASSERT_EQ(8u, display_modes.size()); |
170 EXPECT_EQ("2560x1700", display_modes[0]->size().ToString()); | 170 EXPECT_EQ("2560x1700", display_modes[0]->size().ToString()); |
171 EXPECT_FALSE(display_modes[0]->native()); | 171 EXPECT_FALSE(display_modes[0]->native()); |
172 EXPECT_NEAR(display_modes[0]->ui_scale(), 0.5, 0.01); | 172 EXPECT_NEAR(display_modes[0]->ui_scale(), 0.5, 0.01); |
173 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); | 173 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); |
174 | 174 |
175 EXPECT_EQ("2560x1700", display_modes[1]->size().ToString()); | 175 EXPECT_EQ("2560x1700", display_modes[1]->size().ToString()); |
176 EXPECT_FALSE(display_modes[1]->native()); | 176 EXPECT_FALSE(display_modes[1]->native()); |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
211 TEST_F(DisplayChangeObserverTest, GetInternalManagedDisplayModeList1_25) { | 211 TEST_F(DisplayChangeObserverTest, GetInternalManagedDisplayModeList1_25) { |
212 std::vector<std::unique_ptr<const ui::DisplayMode>> modes; | 212 std::vector<std::unique_ptr<const ui::DisplayMode>> modes; |
213 // Data picked from peppy. | 213 // Data picked from peppy. |
214 modes.push_back( | 214 modes.push_back( |
215 base::MakeUnique<ui::DisplayMode>(gfx::Size(1920, 1080), false, 60)); | 215 base::MakeUnique<ui::DisplayMode>(gfx::Size(1920, 1080), false, 60)); |
216 | 216 |
217 ui::TestDisplaySnapshot display_snapshot; | 217 ui::TestDisplaySnapshot display_snapshot; |
218 display_snapshot.set_native_mode(modes[0].get()); | 218 display_snapshot.set_native_mode(modes[0].get()); |
219 display_snapshot.set_modes(std::move(modes)); | 219 display_snapshot.set_modes(std::move(modes)); |
220 | 220 |
221 DisplayInfo info(1, "", false); | 221 display::ManagedDisplayInfo info(1, "", false); |
222 info.SetBounds(gfx::Rect(0, 0, 1920, 1080)); | 222 info.SetBounds(gfx::Rect(0, 0, 1920, 1080)); |
223 info.set_device_scale_factor(1.25); | 223 info.set_device_scale_factor(1.25); |
224 | 224 |
225 DisplayInfo::ManagedDisplayModeList display_modes = | 225 display::ManagedDisplayInfo::ManagedDisplayModeList display_modes = |
226 DisplayChangeObserver::GetInternalManagedDisplayModeList( | 226 DisplayChangeObserver::GetInternalManagedDisplayModeList( |
227 info, display_snapshot); | 227 info, display_snapshot); |
228 ASSERT_EQ(5u, display_modes.size()); | 228 ASSERT_EQ(5u, display_modes.size()); |
229 EXPECT_EQ("1920x1080", display_modes[0]->size().ToString()); | 229 EXPECT_EQ("1920x1080", display_modes[0]->size().ToString()); |
230 EXPECT_FALSE(display_modes[0]->native()); | 230 EXPECT_FALSE(display_modes[0]->native()); |
231 EXPECT_NEAR(display_modes[0]->ui_scale(), 0.5, 0.01); | 231 EXPECT_NEAR(display_modes[0]->ui_scale(), 0.5, 0.01); |
232 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); | 232 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); |
233 | 233 |
234 EXPECT_EQ("1920x1080", display_modes[1]->size().ToString()); | 234 EXPECT_EQ("1920x1080", display_modes[1]->size().ToString()); |
235 EXPECT_FALSE(display_modes[1]->native()); | 235 EXPECT_FALSE(display_modes[1]->native()); |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
288 base::MakeUnique<ui::DisplayMode>(gfx::Size(1024, 600), false, 60)); | 288 base::MakeUnique<ui::DisplayMode>(gfx::Size(1024, 600), false, 60)); |
289 | 289 |
290 // Just one interlaced mode. | 290 // Just one interlaced mode. |
291 modes.push_back( | 291 modes.push_back( |
292 base::MakeUnique<ui::DisplayMode>(gfx::Size(640, 480), true, 60)); | 292 base::MakeUnique<ui::DisplayMode>(gfx::Size(640, 480), true, 60)); |
293 | 293 |
294 ui::TestDisplaySnapshot display_snapshot; | 294 ui::TestDisplaySnapshot display_snapshot; |
295 display_snapshot.set_native_mode(modes[0].get()); | 295 display_snapshot.set_native_mode(modes[0].get()); |
296 display_snapshot.set_modes(std::move(modes)); | 296 display_snapshot.set_modes(std::move(modes)); |
297 | 297 |
298 DisplayInfo::ManagedDisplayModeList display_modes = | 298 display::ManagedDisplayInfo::ManagedDisplayModeList display_modes = |
299 DisplayChangeObserver::GetExternalManagedDisplayModeList( | 299 DisplayChangeObserver::GetExternalManagedDisplayModeList( |
300 display_snapshot); | 300 display_snapshot); |
301 DisplayInfo info(1, "", false); | 301 display::ManagedDisplayInfo info(1, "", false); |
302 info.SetManagedDisplayModes(display_modes); // Sort as external display. | 302 info.SetManagedDisplayModes(display_modes); // Sort as external display. |
303 display_modes = info.display_modes(); | 303 display_modes = info.display_modes(); |
304 | 304 |
305 ASSERT_EQ(9u, display_modes.size()); | 305 ASSERT_EQ(9u, display_modes.size()); |
306 EXPECT_EQ("640x480", display_modes[0]->size().ToString()); | 306 EXPECT_EQ("640x480", display_modes[0]->size().ToString()); |
307 EXPECT_TRUE(display_modes[0]->is_interlaced()); | 307 EXPECT_TRUE(display_modes[0]->is_interlaced()); |
308 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); | 308 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); |
309 | 309 |
310 EXPECT_EQ("1024x600", display_modes[1]->size().ToString()); | 310 EXPECT_EQ("1024x600", display_modes[1]->size().ToString()); |
311 EXPECT_FALSE(display_modes[1]->is_interlaced()); | 311 EXPECT_FALSE(display_modes[1]->is_interlaced()); |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
399 std::vector<std::unique_ptr<const ui::DisplayMode>> modes; | 399 std::vector<std::unique_ptr<const ui::DisplayMode>> modes; |
400 modes.push_back( | 400 modes.push_back( |
401 base::MakeUnique<ui::DisplayMode>(gfx::Size(1920, 1080), true, 60)); | 401 base::MakeUnique<ui::DisplayMode>(gfx::Size(1920, 1080), true, 60)); |
402 modes.push_back( | 402 modes.push_back( |
403 base::MakeUnique<ui::DisplayMode>(gfx::Size(1920, 1080), false, 60)); | 403 base::MakeUnique<ui::DisplayMode>(gfx::Size(1920, 1080), false, 60)); |
404 | 404 |
405 ui::TestDisplaySnapshot display_snapshot; | 405 ui::TestDisplaySnapshot display_snapshot; |
406 display_snapshot.set_native_mode(modes[0].get()); | 406 display_snapshot.set_native_mode(modes[0].get()); |
407 display_snapshot.set_modes(std::move(modes)); | 407 display_snapshot.set_modes(std::move(modes)); |
408 | 408 |
409 DisplayInfo::ManagedDisplayModeList display_modes = | 409 display::ManagedDisplayInfo::ManagedDisplayModeList display_modes = |
410 DisplayChangeObserver::GetExternalManagedDisplayModeList( | 410 DisplayChangeObserver::GetExternalManagedDisplayModeList( |
411 display_snapshot); | 411 display_snapshot); |
412 ASSERT_EQ(2u, display_modes.size()); | 412 ASSERT_EQ(2u, display_modes.size()); |
413 EXPECT_EQ("1920x1080", display_modes[0]->size().ToString()); | 413 EXPECT_EQ("1920x1080", display_modes[0]->size().ToString()); |
414 EXPECT_FALSE(display_modes[0]->is_interlaced()); | 414 EXPECT_FALSE(display_modes[0]->is_interlaced()); |
415 EXPECT_FALSE(display_modes[0]->native()); | 415 EXPECT_FALSE(display_modes[0]->native()); |
416 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); | 416 EXPECT_EQ(display_modes[0]->refresh_rate(), 60); |
417 | 417 |
418 EXPECT_EQ("1920x1080", display_modes[1]->size().ToString()); | 418 EXPECT_EQ("1920x1080", display_modes[1]->size().ToString()); |
419 EXPECT_TRUE(display_modes[1]->is_interlaced()); | 419 EXPECT_TRUE(display_modes[1]->is_interlaced()); |
420 EXPECT_TRUE(display_modes[1]->native()); | 420 EXPECT_TRUE(display_modes[1]->native()); |
421 EXPECT_EQ(display_modes[1]->refresh_rate(), 60); | 421 EXPECT_EQ(display_modes[1]->refresh_rate(), 60); |
422 } | 422 } |
423 | 423 |
424 } // namespace ash | 424 } // namespace ash |
OLD | NEW |