# 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. import("//build/config/ui.gni") import("//testing/test.gni") import("//ui/display/display.gni") component("display") { sources = [ "display.cc", "display.h", "display_change_notifier.cc", "display_change_notifier.h", "display_export.h", "display_finder.cc", "display_finder.h", "display_layout.cc", "display_layout.h", "display_layout_builder.cc", "display_layout_builder.h", "display_list.cc", "display_list.h", "display_observer.cc", "display_observer.h", "display_switches.cc", "display_switches.h", "ios/screen_ios.mm", "mac/screen_mac.mm", "screen.cc", "screen.h", "screen_android.cc", "screen_aura.cc", "screen_base.cc", "screen_base.h", "unified_desktop_utils.cc", "unified_desktop_utils.h", "win/color_profile_reader.cc", "win/color_profile_reader.h", "win/display_info.cc", "win/display_info.h", "win/dpi.cc", "win/dpi.h", "win/scaling_util.cc", "win/scaling_util.h", "win/screen_win.cc", "win/screen_win.h", "win/screen_win_display.cc", "win/screen_win_display.h", ] defines = [ "DISPLAY_IMPLEMENTATION" ] public_deps = [ "//ui/display/types", "//ui/gfx:gfx", ] deps = [ "//base", "//mojo/public/cpp/bindings:struct_traits", "//ui/display/util", "//ui/gfx", "//ui/gfx/geometry", ] if (!use_aura) { sources -= [ "screen_aura.cc" ] } if (is_mac) { libs = [ "AppKit.framework", "CoreGraphics.framework", ] } } component("display_manager_test_api") { testonly = true sources = [ "test/display_manager_test_api.cc", "test/display_manager_test_api.h", ] defines = [ "DISPLAY_IMPLEMENTATION" ] public_deps = [ "//ui/display/manager", ] deps = [ "//base", "//ui/display", "//ui/display/types", ] } static_library("test_support") { testonly = true sources = [ "test/display_matchers.cc", "test/display_matchers.h", "test/display_test_util.h", "test/scoped_screen_override.cc", "test/scoped_screen_override.h", "test/test_screen.cc", "test/test_screen.h", "win/test/screen_util_win.cc", "win/test/screen_util_win.h", ] if (build_display_configuration) { sources += [ "manager/test/action_logger.cc", "manager/test/action_logger.h", "manager/test/action_logger_util.cc", "manager/test/action_logger_util.h", "manager/test/test_display_layout_manager.cc", "manager/test/test_display_layout_manager.h", "manager/test/test_native_display_delegate.cc", "manager/test/test_native_display_delegate.h", "manager/test/touch_device_manager_test_api.cc", "manager/test/touch_device_manager_test_api.h", "manager/test/touch_transform_controller_test_api.cc", "manager/test/touch_transform_controller_test_api.h", ] } public_deps = [ ":display", "//ui/display/manager", ] deps = [ "//base", "//testing/gmock", "//ui/display/types", "//ui/events/devices", "//ui/gfx", "//ui/gfx:test_support", "//ui/gfx/geometry", ] } # This test covers all testable components in display. test("display_unittests") { sources = [ "display_change_notifier_unittest.cc", "display_layout_builder_unittest.cc", "display_layout_unittest.cc", "display_list_unittest.cc", "display_unittest.cc", "manager/display_manager_utilities_unittest.cc", "manager/fake_display_snapshot_unittest.cc", "manager/json_converter_unittest.cc", "manager/managed_display_info_unittest.cc", "mojo/display_struct_traits_unittest.cc", "screen_unittest.cc", "unified_desktop_utils_unittests.cc", "util/display_util_unittest.cc", "util/edid_parser_unittest.cc", "win/scaling_util_unittest.cc", "win/screen_win_unittest.cc", ] if (build_display_configuration) { sources += [ "manager/apply_content_protection_task_unittest.cc", "manager/configure_displays_task_unittest.cc", "manager/display_change_observer_unittest.cc", "manager/display_configurator_unittest.cc", "manager/display_utils_unittest.cc", "manager/query_content_protection_task_unittest.cc", "manager/touch_device_manager_unittest.cc", "manager/touch_transform_controller_unittest.cc", "manager/update_display_configuration_task_unittest.cc", ] } deps = [ ":display", ":display_manager_test_api", ":test_support", "//base", "//base/test:test_support", "//cc/base", "//mojo/edk/test:run_all_unittests", "//testing/gmock", "//testing/gtest", "//ui/display/manager", "//ui/display/mojo:interfaces", "//ui/display/types", "//ui/display/util", "//ui/events:test_support", "//ui/events/devices", "//ui/gfx:test_support", "//ui/gfx/geometry", ] if (is_android) { # Do not run display_change_notifier_unittest.cc on Android because it # does not compile display_observer.cc sources -= [ "display_change_notifier_unittest.cc" ] } if (is_chromeos) { deps += [ "//chromeos" ] } }