Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Side by Side Diff: ui/display/fake_display_snapshot_unittests.cc

Issue 2395873002: Add more options to --screen-config flag. (Closed)
Patch Set: Small fixes after once over. Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "base/macros.h"
6 #include "testing/gtest/include/gtest/gtest.h"
7 #include "ui/display/fake_display_snapshot.h"
8 #include "ui/display/types/display_snapshot.h"
9
10 namespace display {
11
12 using DisplayModeList = ui::DisplaySnapshot::DisplayModeList;
13 using DisplaySnapshotPtr = std::unique_ptr<ui::DisplaySnapshot>;
14
15 TEST(FakeDisplaySnapshotTest, InvalidString) {
16 // Bad spec string should return null.
17 DisplaySnapshotPtr display =
18 FakeDisplaySnapshot::CreateFromSpec(1, "1024,768");
19
20 EXPECT_EQ(nullptr, display);
21 }
22
23 TEST(FakeDisplaySnapshotTest, SizeOnly) {
24 DisplaySnapshotPtr display =
25 FakeDisplaySnapshot::CreateFromSpec(1, "1024x768");
26
27 ASSERT_EQ(1u, display->modes().size());
28 EXPECT_EQ(1024, display->native_mode()->size().width());
29 EXPECT_EQ(768, display->native_mode()->size().height());
30 }
31
32 TEST(FakeDisplaySnapshotTest, DefaultTypeIsUnknown) {
33 DisplaySnapshotPtr display =
34 FakeDisplaySnapshot::CreateFromSpec(1, "1024x768");
35
36 ASSERT_EQ(1u, display->modes().size());
37 EXPECT_EQ(ui::DISPLAY_CONNECTION_TYPE_UNKNOWN, display->type());
38 }
39
40 TEST(FakeDisplaySnapshotTest, FullNativeMode) {
41 DisplaySnapshotPtr display =
42 FakeDisplaySnapshot::CreateFromSpec(1, "1024x768%120");
43
44 ASSERT_EQ(1u, display->modes().size());
45 EXPECT_EQ(1024, display->native_mode()->size().width());
46 EXPECT_EQ(768, display->native_mode()->size().height());
47 EXPECT_EQ(120.0f, display->native_mode()->refresh_rate());
48 }
49
50 TEST(FakeDisplaySnapshotTest, FullNativeModeWithDPI) {
51 DisplaySnapshotPtr display =
52 FakeDisplaySnapshot::CreateFromSpec(1, "1000x1000%120^300");
53
54 ASSERT_EQ(1u, display->modes().size());
55 EXPECT_EQ(1000, display->native_mode()->size().width());
56 EXPECT_EQ(1000, display->native_mode()->size().height());
57 EXPECT_EQ(120.0f, display->native_mode()->refresh_rate());
58 EXPECT_EQ(85, display->physical_size().width());
59 EXPECT_EQ(85, display->physical_size().height());
60 }
61
62 TEST(FakeDisplaySnapshotTest, InternalDisplayWithSize) {
63 DisplaySnapshotPtr display =
64 FakeDisplaySnapshot::CreateFromSpec(1, "1600x900/i");
65
66 ASSERT_EQ(1u, display->modes().size());
67 EXPECT_EQ(1600, display->native_mode()->size().width());
68 EXPECT_EQ(900, display->native_mode()->size().height());
69 EXPECT_EQ(ui::DISPLAY_CONNECTION_TYPE_INTERNAL, display->type());
70 }
71
72 TEST(FakeDisplaySnapshotTest, MultipleOptions) {
73 DisplaySnapshotPtr display =
74 FakeDisplaySnapshot::CreateFromSpec(1, "1600x900/aci");
75
76 EXPECT_EQ(ui::DISPLAY_CONNECTION_TYPE_INTERNAL, display->type());
77 EXPECT_TRUE(display->has_color_correction_matrix());
78 EXPECT_TRUE(display->is_aspect_preserving_scaling());
79 }
80
81 TEST(FakeDisplaySnapshotTest, AlternateResolutions) {
82 DisplaySnapshotPtr display =
83 FakeDisplaySnapshot::CreateFromSpec(1, "1920x1080#1600x900:1280x720/i");
84 const DisplayModeList& modes = display->modes();
85
86 ASSERT_EQ(3u, modes.size());
87 EXPECT_EQ(1920, modes[0]->size().width());
88 EXPECT_EQ(1080, modes[0]->size().height());
89 EXPECT_EQ(1600, modes[1]->size().width());
90 EXPECT_EQ(900, modes[1]->size().height());
91 EXPECT_EQ(1280, modes[2]->size().width());
92 EXPECT_EQ(720, modes[2]->size().height());
93 EXPECT_EQ(ui::DISPLAY_CONNECTION_TYPE_INTERNAL, display->type());
94 }
95
96 TEST(FakeDisplaySnapshotTest, AlternateResolutionsWithRefreshRates) {
97 DisplaySnapshotPtr display = FakeDisplaySnapshot::CreateFromSpec(
98 1, "1920x1080%59.99#1600x900%90:1280x720%120/i");
99 const DisplayModeList& modes = display->modes();
100
101 ASSERT_EQ(3u, display->modes().size());
102 EXPECT_EQ(1920, modes[0]->size().width());
103 EXPECT_EQ(1080, modes[0]->size().height());
104 EXPECT_EQ(59.99f, modes[0]->refresh_rate());
105 EXPECT_EQ(1600, modes[1]->size().width());
106 EXPECT_EQ(900, modes[1]->size().height());
107 EXPECT_EQ(90.0f, modes[1]->refresh_rate());
108 EXPECT_EQ(1280, modes[2]->size().width());
109 EXPECT_EQ(720, modes[2]->size().height());
110 EXPECT_EQ(120.0f, modes[2]->refresh_rate());
111 EXPECT_EQ(ui::DISPLAY_CONNECTION_TYPE_INTERNAL, display->type());
112 }
113
Daniel Erat 2016/10/05 21:09:46 maybe also test that you return null if things are
kylechar 2016/10/07 16:14:43 Hmm, that's actually brings up a good point and th
114 } // namespace display
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698