// Copyright 2014 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 "ui/display/util/display_util.h" #include "testing/gtest/include/gtest/gtest.h" namespace ui { TEST(DisplayUtilTest, TestBlackListedDisplay) { EXPECT_TRUE(IsDisplaySizeBlackListed(gfx::Size(10, 10))); EXPECT_TRUE(IsDisplaySizeBlackListed(gfx::Size(40, 30))); EXPECT_TRUE(IsDisplaySizeBlackListed(gfx::Size(50, 40))); EXPECT_TRUE(IsDisplaySizeBlackListed(gfx::Size(160, 90))); EXPECT_TRUE(IsDisplaySizeBlackListed(gfx::Size(160, 100))); EXPECT_FALSE(IsDisplaySizeBlackListed(gfx::Size(50, 60))); EXPECT_FALSE(IsDisplaySizeBlackListed(gfx::Size(100, 70))); EXPECT_FALSE(IsDisplaySizeBlackListed(gfx::Size(272, 181))); } TEST(DisplayUtilTest, GetScaleFactor) { // Normal chromebook spec. DPI ~= 130 EXPECT_EQ(1.0f, GetScaleFactor( gfx::Size(256, 144), gfx::Size(1366, 768))); // HiDPI like Pixel. DPI ~= 240 EXPECT_EQ(2.0f, GetScaleFactor( gfx::Size(272, 181), gfx::Size(2560, 1700))); // A large external display but normal pixel density. DPI ~= 100 EXPECT_EQ(1.0f, GetScaleFactor( gfx::Size(641, 400), gfx::Size(2560, 1600))); // A large external display with high pixel density. DPI ~= 157 EXPECT_EQ(2.0f, GetScaleFactor( gfx::Size(621, 341), gfx::Size(3840, 2160))); // 4K resolution but the display is physically even larger. DPI ~= 114 EXPECT_EQ(1.0f, GetScaleFactor( gfx::Size(854, 481), gfx::Size(3840, 2160))); // 21.5 inch, 1080p. DPI ~= 102 EXPECT_EQ(1.0f, GetScaleFactor( gfx::Size(476, 267), gfx::Size(1920, 1080))); // Corner case; slightly higher density but smaller screens. DPI ~= 165 EXPECT_EQ(1.0f, GetScaleFactor( gfx::Size(293, 165), gfx::Size(1920, 1080))); } } // namespace ui