# 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/chrome_build.gni")
import("//build/config/chromecast_build.gni")
import("//build/config/compiler/compiler.gni")
import("//build/config/crypto.gni")
import("//build/config/features.gni")
import("//build/config/jumbo.gni")
import("//build/config/ui.gni")
import("//build/nocompile.gni")
import("//media/media_options.gni")
import("//mojo/public/tools/bindings/mojom.gni")
import("//net/features.gni")
import("//ppapi/buildflags/buildflags.gni")
import("//services/catalog/public/tools/catalog.gni")
import("//services/service_manager/public/service_manifest.gni")
import("//testing/test.gni")
import("//third_party/blink/public/public_features.gni")
import("//tools/v8_context_snapshot/v8_context_snapshot.gni")
import("//v8/gni/v8.gni")

# Use a static library here because many test binaries depend on this but don't
# require many files from it. This makes linking more efficient.
jumbo_static_library("test_support") {
  testonly = true

  # See comment at the top of //content/BUILD.gn for why this is disabled in
  # component builds.
  if (is_component_build) {
    check_includes = false
  }

  sources = [
    "../browser/accessibility/accessibility_event_recorder.cc",
    "../browser/accessibility/accessibility_event_recorder.h",
    "../browser/accessibility/accessibility_event_recorder_mac.mm",
    "../browser/accessibility/accessibility_event_recorder_win.cc",
    "../browser/background_fetch/background_fetch_embedded_worker_test_helper.cc",
    "../browser/background_fetch/background_fetch_embedded_worker_test_helper.h",
    "../browser/background_fetch/background_fetch_test_base.cc",
    "../browser/background_fetch/background_fetch_test_base.h",
    "../browser/background_fetch/background_fetch_test_browser_context.cc",
    "../browser/background_fetch/background_fetch_test_browser_context.h",
    "../browser/background_fetch/background_fetch_test_data_manager.cc",
    "../browser/background_fetch/background_fetch_test_data_manager.h",
    "../browser/background_fetch/mock_background_fetch_delegate.cc",
    "../browser/background_fetch/mock_background_fetch_delegate.h",
    "../browser/fileapi/file_system_chooser_test_helpers.cc",
    "../browser/fileapi/file_system_chooser_test_helpers.h",
    "../browser/media/session/mock_media_session_observer.cc",
    "../browser/media/session/mock_media_session_observer.h",
    "../browser/media/session/mock_media_session_player_observer.cc",
    "../browser/media/session/mock_media_session_player_observer.h",
    "../browser/service_worker/embedded_worker_test_helper.cc",
    "../browser/service_worker/embedded_worker_test_helper.h",
    "../browser/service_worker/service_worker_test_utils.cc",
    "../browser/service_worker/service_worker_test_utils.h",
    "../browser/web_package/mock_signed_exchange_handler.cc",
    "../browser/web_package/mock_signed_exchange_handler.h",
    "../public/test/audio_service_test_helper.cc",
    "../public/test/audio_service_test_helper.h",
    "../public/test/background_sync_test_util.cc",
    "../public/test/background_sync_test_util.h",
    "../public/test/blink_test_environment.cc",
    "../public/test/blink_test_environment.h",
    "../public/test/browser_side_navigation_test_utils.cc",
    "../public/test/browser_side_navigation_test_utils.h",
    "../public/test/browser_test.h",
    "../public/test/browser_test_base.cc",
    "../public/test/browser_test_base.h",
    "../public/test/browser_test_utils.cc",
    "../public/test/browser_test_utils.h",
    "../public/test/browsing_data_remover_test_util.cc",
    "../public/test/browsing_data_remover_test_util.h",
    "../public/test/cache_test_util.cc",
    "../public/test/cache_test_util.h",
    "../public/test/content_mock_cert_verifier.cc",
    "../public/test/content_mock_cert_verifier.h",
    "../public/test/content_test_suite_base.cc",
    "../public/test/content_test_suite_base.h",
    "../public/test/download_test_observer.cc",
    "../public/test/download_test_observer.h",
    "../public/test/fake_download_item.cc",
    "../public/test/fake_download_item.h",
    "../public/test/fake_service_worker_context.cc",
    "../public/test/fake_service_worker_context.h",
    "../public/test/fake_speech_recognition_manager.cc",
    "../public/test/fake_speech_recognition_manager.h",
    "../public/test/find_test_utils.cc",
    "../public/test/find_test_utils.h",
    "../public/test/frame_load_waiter.cc",
    "../public/test/frame_load_waiter.h",
    "../public/test/hit_test_region_observer.cc",
    "../public/test/hit_test_region_observer.h",
    "../public/test/javascript_test_observer.cc",
    "../public/test/javascript_test_observer.h",
    "../public/test/mock_browsing_data_remover_delegate.cc",
    "../public/test/mock_browsing_data_remover_delegate.h",
    "../public/test/mock_download_manager.cc",
    "../public/test/mock_download_manager.h",
    "../public/test/mock_navigation_handle.cc",
    "../public/test/mock_navigation_handle.h",
    "../public/test/mock_notification_observer.cc",
    "../public/test/mock_notification_observer.h",
    "../public/test/mock_permission_manager.cc",
    "../public/test/mock_permission_manager.h",
    "../public/test/mock_render_process_host.cc",
    "../public/test/mock_render_process_host.h",
    "../public/test/mock_render_thread.cc",
    "../public/test/mock_render_thread.h",
    "../public/test/mock_resource_context.cc",
    "../public/test/mock_resource_context.h",
    "../public/test/navigation_handle_observer.cc",
    "../public/test/navigation_handle_observer.h",
    "../public/test/navigation_simulator.h",
    "../public/test/network_connection_change_simulator.cc",
    "../public/test/network_connection_change_simulator.h",
    "../public/test/network_service_test_helper.cc",
    "../public/test/network_service_test_helper.h",
    "../public/test/ppapi_test_utils.cc",
    "../public/test/ppapi_test_utils.h",
    "../public/test/render_view_test.cc",
    "../public/test/render_view_test.h",
    "../public/test/scoped_overscroll_modes.cc",
    "../public/test/scoped_overscroll_modes.h",
    "../public/test/service_worker_test_helpers.cc",
    "../public/test/service_worker_test_helpers.h",
    "../public/test/simple_url_loader_test_helper.cc",
    "../public/test/simple_url_loader_test_helper.h",
    "../public/test/slow_download_http_response.cc",
    "../public/test/slow_download_http_response.h",
    "../public/test/test_browser_context.cc",
    "../public/test/test_browser_context.h",
    "../public/test/test_browser_thread.cc",
    "../public/test/test_browser_thread.h",
    "../public/test/test_browser_thread_bundle.cc",
    "../public/test/test_browser_thread_bundle.h",
    "../public/test/test_content_client_initializer.cc",
    "../public/test/test_content_client_initializer.h",
    "../public/test/test_download_http_response.cc",
    "../public/test/test_download_http_response.h",
    "../public/test/test_file_error_injector.cc",
    "../public/test/test_file_error_injector.h",
    "../public/test/test_fileapi_operation_waiter.cc",
    "../public/test/test_fileapi_operation_waiter.h",
    "../public/test/test_frame_navigation_observer.cc",
    "../public/test/test_frame_navigation_observer.h",
    "../public/test/test_host_resolver.cc",
    "../public/test/test_host_resolver.h",
    "../public/test/test_launcher.cc",
    "../public/test/test_launcher.h",
    "../public/test/test_navigation_observer.cc",
    "../public/test/test_navigation_observer.h",
    "../public/test/test_navigation_throttle.cc",
    "../public/test/test_navigation_throttle.h",
    "../public/test/test_navigation_throttle_inserter.cc",
    "../public/test/test_navigation_throttle_inserter.h",
    "../public/test/test_navigation_ui_data.cc",
    "../public/test/test_navigation_ui_data.h",
    "../public/test/test_notification_tracker.cc",
    "../public/test/test_notification_tracker.h",
    "../public/test/test_renderer_host.cc",
    "../public/test/test_renderer_host.h",
    "../public/test/test_service.cc",
    "../public/test/test_service.h",
    "../public/test/test_service_manager_context.cc",
    "../public/test/test_service_manager_context.h",
    "../public/test/test_storage_partition.cc",
    "../public/test/test_storage_partition.h",
    "../public/test/test_synchronous_compositor_android.cc",
    "../public/test/test_synchronous_compositor_android.h",
    "../public/test/test_utils.cc",
    "../public/test/test_utils.h",
    "../public/test/test_web_contents_factory.h",
    "../public/test/test_web_ui.cc",
    "../public/test/test_web_ui.h",
    "../public/test/test_web_ui_data_source.cc",
    "../public/test/test_web_ui_data_source.h",
    "../public/test/text_input_test_utils.cc",
    "../public/test/text_input_test_utils.h",
    "../public/test/text_input_test_utils_mac.mm",
    "../public/test/throttling_url_loader_test_util.cc",
    "../public/test/throttling_url_loader_test_util.h",
    "../public/test/unittest_test_suite.cc",
    "../public/test/unittest_test_suite.h",
    "../public/test/url_loader_interceptor.cc",
    "../public/test/url_loader_interceptor.h",
    "../public/test/web_contents_binding_set_test_binder.h",
    "../public/test/web_contents_tester.cc",
    "../public/test/web_contents_tester.h",
    "../renderer/media/stream/mock_mojo_media_stream_dispatcher_host.cc",
    "../renderer/media/stream/mock_mojo_media_stream_dispatcher_host.h",
    "../renderer/media/webrtc/mock_data_channel_impl.cc",
    "../renderer/media/webrtc/mock_data_channel_impl.h",
    "../renderer/media/webrtc/mock_peer_connection_dependency_factory.cc",
    "../renderer/media/webrtc/mock_peer_connection_dependency_factory.h",
    "../renderer/media/webrtc/mock_peer_connection_impl.cc",
    "../renderer/media/webrtc/mock_peer_connection_impl.h",
    "../renderer/media/webrtc/mock_web_rtc_peer_connection_handler_client.cc",
    "../renderer/media/webrtc/mock_web_rtc_peer_connection_handler_client.h",
    "../renderer/media/webrtc/test/webrtc_stats_report_obtainer.cc",
    "../renderer/media/webrtc/test/webrtc_stats_report_obtainer.h",
    "accessibility_browser_test_utils.cc",
    "accessibility_browser_test_utils.h",
    "appcache_test_helper.cc",
    "appcache_test_helper.h",
    "barrier_builder.cc",
    "barrier_builder.h",
    "content_browser_sanity_checker.cc",
    "content_browser_sanity_checker.h",
    "content_test_suite.cc",
    "content_test_suite.h",
    "did_commit_provisional_load_interceptor.cc",
    "did_commit_provisional_load_interceptor.h",
    "dwrite_font_fake_sender_win.cc",
    "dwrite_font_fake_sender_win.h",
    "fake_compositor_dependencies.cc",
    "fake_compositor_dependencies.h",
    "fake_leveldb_database.cc",
    "fake_leveldb_database.h",
    "fake_plugin_service.cc",
    "fake_plugin_service.h",
    "fake_renderer_compositor_frame_sink.cc",
    "fake_renderer_compositor_frame_sink.h",
    "gmock_util.h",
    "gpu_browsertest_helpers.cc",
    "gpu_browsertest_helpers.h",
    "mock_background_sync_controller.cc",
    "mock_background_sync_controller.h",
    "mock_clipboard_host.cc",
    "mock_clipboard_host.h",
    "mock_keyboard.cc",
    "mock_keyboard.h",
    "mock_keyboard_driver_win.cc",
    "mock_keyboard_driver_win.h",
    "mock_overscroll_observer.h",
    "mock_platform_notification_service.cc",
    "mock_platform_notification_service.h",
    "mock_render_process.cc",
    "mock_render_process.h",
    "mock_render_widget_host_delegate.cc",
    "mock_render_widget_host_delegate.h",
    "mock_ssl_host_state_delegate.cc",
    "mock_ssl_host_state_delegate.h",
    "mock_webblob_registry_impl.cc",
    "mock_webblob_registry_impl.h",
    "mock_widget_impl.cc",
    "mock_widget_impl.h",
    "mock_widget_input_handler.cc",
    "mock_widget_input_handler.h",
    "navigation_simulator_impl.cc",
    "navigation_simulator_impl.h",
    "not_implemented_network_url_loader_factory.cc",
    "not_implemented_network_url_loader_factory.h",
    "ppapi_unittest.cc",
    "ppapi_unittest.h",
    "storage_partition_test_utils.cc",
    "storage_partition_test_utils.h",
    "stub_layer_tree_view_delegate.cc",
    "stub_layer_tree_view_delegate.h",
    "stub_render_widget_host_owner_delegate.cc",
    "stub_render_widget_host_owner_delegate.h",
    "test_background_sync_context.cc",
    "test_background_sync_context.h",
    "test_background_sync_manager.cc",
    "test_background_sync_manager.h",
    "test_blink_web_unit_test_support.cc",
    "test_blink_web_unit_test_support.h",
    "test_content_browser_client.cc",
    "test_content_browser_client.h",
    "test_content_client.cc",
    "test_content_client.h",
    "test_mojo_proxy_resolver_factory.cc",
    "test_mojo_proxy_resolver_factory.h",
    "test_navigation_url_loader.cc",
    "test_navigation_url_loader.h",
    "test_navigation_url_loader_delegate.cc",
    "test_navigation_url_loader_delegate.h",
    "test_navigation_url_loader_factory.cc",
    "test_navigation_url_loader_factory.h",
    "test_overscroll_delegate.cc",
    "test_overscroll_delegate.h",
    "test_render_frame.cc",
    "test_render_frame.h",
    "test_render_frame_host.cc",
    "test_render_frame_host.h",
    "test_render_frame_host_factory.cc",
    "test_render_frame_host_factory.h",
    "test_render_view_host.cc",
    "test_render_view_host.h",
    "test_render_view_host_factory.cc",
    "test_render_view_host_factory.h",
    "test_render_widget_host.cc",
    "test_render_widget_host.h",
    "test_render_widget_host_factory.cc",
    "test_render_widget_host_factory.h",
    "test_web_contents.cc",
    "test_web_contents.h",
    "test_web_contents_factory.cc",
    "web_contents_observer_sanity_checker.cc",
    "web_contents_observer_sanity_checker.h",
    "web_gesture_curve_mock.cc",
    "web_gesture_curve_mock.h",
  ]

  configs += [
    "//build/config:precompiled_headers",
    "//v8:external_startup_data",
    "//tools/v8_context_snapshot:use_v8_context_snapshot",
  ]

  public_deps = [
    "//components/download/public/common:test_support",
    "//components/variations:test_support",
    "//content/public/app:both",
    "//content/public/browser",
    "//content/public/common",
    "//ipc",
    "//media/mojo/clients",
    "//media/mojo/interfaces",
    "//services/media_session/public/cpp/test:test_support",
    "//services/media_session/public/mojom",
    "//third_party/blink/public:blink",
    "//third_party/blink/public:test_support",
  ]
  deps = [
    ":content_test_mojo_bindings",
    "//base/third_party/dynamic_annotations",
    "//cc:test_support",
    "//components/services/leveldb/public/interfaces",
    "//components/viz/host",
    "//components/viz/service",
    "//content/app:both_for_content_tests",
    "//content/browser:for_content_tests",
    "//content/browser/speech/proto",
    "//content/child:for_content_tests",
    "//content/gpu",
    "//content/public/browser",
    "//content/public/child",
    "//content/public/common",
    "//content/public/common:service_names",
    "//content/public/renderer",
    "//content/public/utility",
    "//content/renderer:for_content_tests",
    "//content/renderer/compositor",
    "//content/shell:pak",
    "//content/utility:for_content_tests",
    "//device/base/synchronization",
    "//gpu/ipc:gl_in_process_context",
    "//ipc:test_support",
    "//media",
    "//media/capture",
    "//media/capture/mojom:image_capture",
    "//mojo/core/embedder",
    "//net:test_support",
    "//services/audio/public/mojom",
    "//services/device/public/mojom",
    "//services/ws/public/cpp/gpu",

    # TODO(jam): remove this by adding a public header for the NetworkContext
    # public testing method.
    "//services/network:network_service",
    "//services/network:test_support",
    "//services/network/public/mojom",
    "//services/proxy_resolver:lib",
    "//services/service_manager/public/cpp",
    "//services/viz/public/interfaces",
    "//skia",
    "//storage/browser",
    "//storage/browser:test_support",
    "//storage/common",
    "//testing/gmock",
    "//testing/gtest",
    "//third_party/webrtc/api:libjingle_peerconnection_api",
    "//third_party/webrtc/api:rtc_stats_api",
    "//third_party/webrtc/media:rtc_media_base",
    "//third_party/webrtc/modules/video_capture",
    "//third_party/webrtc/pc:libjingle_peerconnection",
    "//third_party/webrtc/rtc_base:rtc_base_approved",
    "//third_party/webrtc/stats:rtc_stats",
    "//third_party/webrtc_overrides:init_webrtc",
    "//ui/accessibility:ax_enums_mojo",
    "//ui/base",
    "//ui/base:test_support",
    "//ui/base:ui_data_pack",
    "//ui/base/ime",
    "//ui/compositor:test_support",
    "//ui/display",
    "//ui/events:dom_keycode_converter",
    "//ui/events:events_base",
    "//ui/events:gesture_detection",
    "//ui/events:test_support",
    "//ui/events/blink",
    "//ui/gfx:test_support",
    "//ui/gl",
    "//ui/gl:test_support",
    "//ui/resources",
    "//ui/shell_dialogs:shell_dialogs",
    "//ui/surface",
    "//url",
    "//url/mojom:url_mojom_gurl",
    "//v8",
  ]

  data_deps = [
    "//content/shell:pak",
    "//tools/v8_context_snapshot:v8_context_snapshot",
  ]

  if (is_android) {
    deps += [
      "//content/shell:android_shell_descriptors",
      "//mojo/public/java/system:native_support",
    ]
  }

  if (enable_plugins) {
    deps += [
      "//content/ppapi_plugin",
      "//ppapi/host",
      "//ppapi/proxy",
      "//ppapi/proxy:test_support",
      "//ppapi/shared_impl",
      "//ppapi/shared_impl:test_support",
    ]
  } else {
    sources -= [
      "../public/test/ppapi_test_utils.cc",
      "ppapi_unittest.cc",
    ]
  }

  if (use_atk) {
    sources +=
        [ "../browser/accessibility/accessibility_event_recorder_auralinux.cc" ]
    configs += [
      "//build/config/linux/atk",
      "//build/config/linux/atspi2",
    ]
  }

  if (use_glib) {
    configs += [ "//build/config/linux:glib" ]
  }

  if (use_aura) {
    sources += [
      "mock_overscroll_controller_delegate_aura.cc",
      "mock_overscroll_controller_delegate_aura.h",
    ]

    deps += [
      "//ui/aura:test_support",
      "//ui/resources:ui_test_pak",
      "//ui/wm",
    ]
  }

  if (use_aura || is_mac) {
    deps += [
      "//components/viz/common",
      "//components/viz/host",
      "//components/viz/service",
      "//third_party/libvpx",
      "//ui/compositor",
    ]

    sources += [
      "../browser/compositor/test/test_image_transport_factory.cc",
      "../browser/compositor/test/test_image_transport_factory.h",
    ]
  }

  if (is_mac) {
    deps += [ "//ui/views:test_support" ]
  }

  if (use_ozone) {
    deps += [ "//ui/ozone" ]
  }

  if (is_win) {
    deps += [
      "//content:sandbox_helper_win",
      "//third_party/iaccessible2",
    ]
    libs = [ "oleacc.lib" ]
  }

  if (is_android) {
    sources += [
      "mock_overscroll_refresh_handler_android.cc",
      "mock_overscroll_refresh_handler_android.h",
    ]

    deps += [
      "//media/capture/video/android:android",
      "//ui/android",
      "//ui/android:test_support",
      "//ui/shell_dialogs",
    ]
  }

  if (is_win) {
    deps += [ "//sandbox" ]
  }

  if (v8_use_external_startup_data) {
    deps += [ "//gin:gin" ]
  }

  if (is_mac) {
    deps += [
      "//sandbox/mac:seatbelt",
      "//ui/accelerated_widget_mac",
    ]
  }
}

# browsertest_support can be used by targets that run content_shell based
# browser tests.
jumbo_static_library("browsertest_support") {
  testonly = true

  # See comment at the top of //content/BUILD.gn for why this is disabled in
  # component builds.
  if (is_component_build) {
    check_includes = false
  }

  sources = [
    "../public/test/content_browser_test.cc",
    "../public/test/content_browser_test.h",
    "../public/test/content_browser_test_utils.cc",
    "../public/test/content_browser_test_utils.h",
    "../public/test/content_browser_test_utils_mac.mm",
    "../public/test/content_cert_verifier_browser_test.cc",
    "../public/test/content_cert_verifier_browser_test.h",
    "content_browser_test_utils_internal.cc",
    "content_browser_test_utils_internal.h",
    "content_test_launcher.cc",
  ]

  deps = [
    ":test_support",
    ":web_test_support",
    "//base",
    "//base:i18n",
    "//base/test:test_config",
    "//base/test:test_support",
    "//components/viz/service",
    "//content/app:both_for_content_tests",
    "//content/browser:for_content_tests",
    "//content/shell:content_shell_lib",
    "//gin",
    "//media",
    "//net",
    "//skia",
    "//testing/gtest",
    "//ui/accessibility:ax_enums_mojo",
    "//ui/base",
    "//ui/base/ime",
  ]

  if (is_android) {
    deps += [ "//content/public/app:both" ]
  } else {
    deps += [ "//content/public/browser" ]
  }

  if (use_aura && toolkit_views) {
    deps += [ "//ui/views" ]
  }

  configs += [ "//v8:external_startup_data" ]
}

mojom("content_test_mojo_bindings") {
  sources = [
    "../public/test/test_service.mojom",
    "frame_host_test_interface.mojom",
    "test_browser_associated_interfaces.mojom",
  ]
  public_deps = [
    "//url/mojom:url_mojom_gurl",
  ]
}

mojom("web_ui_test_mojo_bindings") {
  sources = [
    "data/web_ui_test_mojo_bindings.mojom",
  ]
}

mojom("mojo_web_test_bindings") {
  testonly = true
  sources = [
    "data/lite_js_test.mojom",
    "data/mojo_web_test_helper_test.mojom",
  ]

  # This mojom interface is exposed publicly to web tests which use
  # prepackaged redistributable JS bindings. It is therefore not desirable to
  # scramble these messages.
  scramble_message_ids = false
}

mojom("test_interfaces") {
  testonly = true
  sources = [
    "echo.mojom",
  ]
}

static_library("web_test_support") {
  testonly = true

  # See comment at the top of //content/BUILD.gn for why this is disabled in
  # component builds.
  if (is_component_build) {
    check_includes = false
  }

  sources = [
    "../public/test/nested_message_pump_android.cc",
    "../public/test/nested_message_pump_android.h",
    "../public/test/web_test_support.h",
    "web_test_support.cc",
  ]

  deps = [
    ":test_support",
    "//cc",
    "//components/viz/test:test_support",
    "//content/browser:for_content_tests",
    "//content/child:for_content_tests",
    "//content/public/common",
    "//content/public/renderer",
    "//content/renderer:for_content_tests",
    "//content/renderer/compositor",
    "//content/shell:web_test_switches",
    "//content/shell/test_runner:test_runner",
    "//device/bluetooth",
    "//device/gamepad/public/cpp:shared_with_blink",
    "//gpu/ipc/service",
    "//services/device/public/cpp/generic_sensor",
    "//services/ws/public/cpp/gpu",
    "//skia",
    "//ui/accessibility:ax_enums_mojo",
    "//ui/events/blink",
    "//ui/gfx:test_support",
    "//v8",
  ]

  if (is_android) {
    deps += [ "//content/public/test/android:test_support_content_jni_headers" ]
  }
}

static_library("test_runner_support") {
  testonly = true

  # See comment at the top of //content/BUILD.gn for why this is disabled in
  # component builds.
  if (is_component_build) {
    check_includes = false
  }

  sources = [
    "../public/test/test_runner_support.h",
    "test_runner_support.cc",
  ]

  deps = [
    "//content/public/renderer",
    "//content/renderer:for_content_tests",
    "//third_party/blink/public:blink",
  ]
}

if (is_android) {
  import("//build/config/android/rules.gni")

  jinja_template("content_browsertests_manifest") {
    testonly = true
    input =
        "//content/shell/android/browsertests_apk/AndroidManifest.xml.jinja2"
    output =
        "${target_gen_dir}/content_browsertests_manifest/AndroidManifest.xml"
  }

  android_library("content_browsertests_java") {
    testonly = true
    java_files = [
      "../shell/android/browsertests_apk/src/org/chromium/content_browsertests_apk/ContentBrowserTestsActivity.java",
      "../shell/android/browsertests_apk/src/org/chromium/content_browsertests_apk/ContentBrowserTestsApplication.java",
    ]
    deps = [
      ":content_browsertests_resources",
      "//base:base_java",
      "//base:base_java_test_support",
      "//components/viz/service:service_java",
      "//content/public/android:content_java",
      "//content/public/test/android:content_java_test_support",
      "//content/shell/android:content_shell_browsertests_java",
      "//testing/android/native_test:native_test_java",
      "//ui/android:ui_java",
    ]
  }

  android_resources("content_browsertests_resources") {
    testonly = true
    resource_dirs = [ "//content/shell/android/browsertests_apk/res" ]
    custom_package = "org.chromium.content_browsertests_apk"
  }
}

test("content_browsertests") {
  # See comment at the top of //content/BUILD.gn for why this is disabled in
  # component builds.
  if (is_component_build) {
    check_includes = false
  }

  sources = [
    "../app/mojo/mojo_browsertest.cc",
    "../browser/accessibility/accessibility_action_browsertest.cc",
    "../browser/accessibility/accessibility_ipc_error_browsertest.cc",
    "../browser/accessibility/accessibility_mode_browsertest.cc",
    "../browser/accessibility/aom_browsertest.cc",
    "../browser/accessibility/cross_platform_accessibility_browsertest.cc",
    "../browser/accessibility/dump_accessibility_browsertest_base.cc",
    "../browser/accessibility/dump_accessibility_browsertest_base.h",
    "../browser/accessibility/dump_accessibility_events_browsertest.cc",
    "../browser/accessibility/dump_accessibility_tree_browsertest.cc",
    "../browser/accessibility/fullscreen_browsertest.cc",
    "../browser/accessibility/hit_testing_browsertest.cc",
    "../browser/accessibility/line_layout_browsertest.cc",
    "../browser/accessibility/site_per_process_accessibility_browsertest.cc",
    "../browser/accessibility/snapshot_ax_tree_browsertest.cc",
    "../browser/accessibility/touch_accessibility_aura_browsertest.cc",
    "../browser/appcache/appcache_browsertest.cc",
    "../browser/back_forward_cache_browsertest.cc",
    "../browser/background_sync/background_sync_browsertest.cc",
    "../browser/battery_monitor_browsertest.cc",
    "../browser/blob_storage/blob_storage_browsertest.cc",
    "../browser/blob_storage/blob_url_browsertest.cc",
    "../browser/bookmarklet_browsertest.cc",
    "../browser/browser_thread_browsertest.cc",
    "../browser/browsing_data/browsing_data_remover_impl_browsertest.cc",
    "../browser/browsing_data/clear_site_data_handler_browsertest.cc",
    "../browser/browsing_data/conditional_cache_deletion_helper_browsertest.cc",
    "../browser/child_process_launcher_browsertest.cc",
    "../browser/child_process_security_policy_browsertest.cc",
    "../browser/content_service_browsertest.cc",
    "../browser/cross_site_transfer_browsertest.cc",
    "../browser/database_browsertest.cc",
    "../browser/device_sensors/device_sensor_browsertest.cc",
    "../browser/devtools/devtools_video_consumer_browsertest.cc",
    "../browser/devtools/protocol/devtools_protocol_browsertest.cc",
    "../browser/devtools/protocol/devtools_protocol_test_support.cc",
    "../browser/devtools/protocol/devtools_protocol_test_support.h",
    "../browser/devtools/render_frame_devtools_agent_host_browsertest.cc",
    "../browser/devtools/site_per_process_devtools_browsertest.cc",
    "../browser/display_cutout/display_cutout_browsertest.cc",
    "../browser/do_not_track_browsertest.cc",
    "../browser/dom_storage/dom_storage_browsertest.cc",
    "../browser/download/download_browsertest.cc",
    "../browser/download/drag_download_file_browsertest.cc",
    "../browser/download/mhtml_generation_browsertest.cc",
    "../browser/download/save_package_browsertest.cc",
    "../browser/fileapi/file_system_browsertest.cc",

    # These tests have incorrect threading (https://crbug.com/860547).
    #"../browser/fileapi/file_system_url_loader_factory_browsertest.cc",

    "../browser/fileapi/file_system_chooser_browsertest.cc",
    "../browser/fileapi/fileapi_browsertest.cc",
    "../browser/find_request_manager_browsertest.cc",
    "../browser/font_unique_name_lookup/font_unique_name_browsertest.cc",
    "../browser/frame_host/blocked_scheme_navigation_browsertest.cc",
    "../browser/frame_host/frame_tree_browsertest.cc",
    "../browser/frame_host/interstitial_page_impl_browsertest.cc",
    "../browser/frame_host/navigation_controller_impl_browsertest.cc",
    "../browser/frame_host/navigation_handle_impl_browsertest.cc",
    "../browser/frame_host/render_frame_host_impl_browsertest.cc",
    "../browser/frame_host/render_frame_host_manager_browsertest.cc",
    "../browser/frame_host/render_frame_message_filter_browsertest.cc",
    "../browser/frame_host/webui_navigation_browsertest.cc",
    "../browser/generic_sensor/generic_sensor_browsertest.cc",
    "../browser/gpu/gpu_ipc_browsertests.cc",
    "../browser/gpu/in_process_gpu_thread_browsertests.cc",
    "../browser/indexed_db/indexed_db_browsertest.cc",
    "../browser/indexed_db/mock_browsertest_indexed_db_class_factory.cc",
    "../browser/indexed_db/mock_browsertest_indexed_db_class_factory.h",
    "../browser/isolated_origin_browsertest.cc",
    "../browser/keyboard_lock_browsertest.cc",
    "../browser/keyboard_lock_browsertest.h",
    "../browser/keyboard_lock_browsertest_mac.mm",
    "../browser/loader/cors_file_origin_browsertest.cc",
    "../browser/loader/cors_origin_access_list_browsertest.cc",
    "../browser/loader/cross_site_document_blocking_browsertest.cc",
    "../browser/loader/loader_browsertest.cc",
    "../browser/loader/prefetch_browsertest.cc",
    "../browser/loader/reload_cache_control_browsertest.cc",
    "../browser/loader/resource_scheduler_browsertest.cc",
    "../browser/manifest/manifest_browsertest.cc",
    "../browser/media/encrypted_media_browsertest.cc",
    "../browser/media/media_autoplay_browsertest.cc",
    "../browser/media/media_browsertest.cc",
    "../browser/media/media_browsertest.h",
    "../browser/media/media_canplaytype_browsertest.cc",
    "../browser/media/media_capabilities_browsertest.cc",
    "../browser/media/media_color_browsertest.cc",
    "../browser/media/media_redirect_browsertest.cc",
    "../browser/media/media_source_browsertest.cc",
    "../browser/media/media_suspend_browsertest.cc",
    "../browser/media/midi_browsertest.cc",
    "../browser/media/session/audio_focus_delegate_default_browsertest.cc",
    "../browser/media/session/media_session_browsertest.cc",
    "../browser/media/session/media_session_impl_browsertest.cc",
    "../browser/media/session/media_session_impl_visibility_browsertest.cc",
    "../browser/media/session/media_session_service_impl_browsertest.cc",
    "../browser/media/webaudio/audio_context_manager_browsertest.cc",
    "../browser/message_port_provider_browsertest.cc",
    "../browser/mojo_sandbox_browsertest.cc",
    "../browser/navigation_browsertest.cc",
    "../browser/net/accept_header_browsertest.cc",
    "../browser/net/net_command_line_flags_browsertest.cc",
    "../browser/net_info_browsertest.cc",
    "../browser/network_service_browsertest.cc",
    "../browser/network_service_restart_browsertest.cc",
    "../browser/oop_browsertest.cc",
    "../browser/payments/payment_app_browsertest.cc",
    "../browser/performance_memory_browsertest.cc",
    "../browser/pointer_lock_browsertest.cc",
    "../browser/pointer_lock_browsertest.h",
    "../browser/pointer_lock_browsertest_mac.mm",
    "../browser/portal/portal_browsertest.cc",
    "../browser/power_monitor_browsertest.cc",
    "../browser/presentation/presentation_browsertest.cc",
    "../browser/renderer_host/input/autoscroll_browsertest.cc",
    "../browser/renderer_host/input/composited_scrolling_browsertest.cc",
    "../browser/renderer_host/input/compositor_event_ack_browsertest.cc",
    "../browser/renderer_host/input/fling_browsertest.cc",
    "../browser/renderer_host/input/interaction_mq_dynamic_browsertest.cc",
    "../browser/renderer_host/input/main_thread_event_queue_browsertest.cc",
    "../browser/renderer_host/input/mouse_latency_browsertest.cc",
    "../browser/renderer_host/input/scroll_latency_browsertest.cc",
    "../browser/renderer_host/input/touch_action_browsertest.cc",
    "../browser/renderer_host/input/touch_input_browsertest.cc",
    "../browser/renderer_host/input/touch_selection_controller_client_aura_browsertest.cc",
    "../browser/renderer_host/input/touchpad_pinch_browsertest.cc",
    "../browser/renderer_host/input/wheel_event_listener_browsertest.cc",
    "../browser/renderer_host/input/wheel_scroll_latching_browsertest.cc",
    "../browser/renderer_host/media/video_capture_browsertest.cc",
    "../browser/renderer_host/render_process_host_browsertest.cc",
    "../browser/renderer_host/render_view_host_browsertest.cc",
    "../browser/renderer_host/render_widget_host_browsertest.cc",
    "../browser/renderer_host/render_widget_host_view_browsertest.cc",
    "../browser/renderer_host/render_widget_host_view_child_frame_browsertest.cc",
    "../browser/renderer_host/render_widget_host_view_mac_browsertest.mm",
    "../browser/resource_loading_browsertest.cc",
    "../browser/scheduler/responsiveness/native_event_observer_browsertest.mm",
    "../browser/scheduler/responsiveness/native_event_observer_browsertest_win.cc",
    "../browser/screen_orientation/screen_orientation_browsertest.cc",
    "../browser/security_exploit_browsertest.cc",
    "../browser/serial/serial_browsertest.cc",
    "../browser/service_manager/service_manager_context_browsertest.cc",
    "../browser/service_worker/service_worker_browsertest.cc",
    "../browser/service_worker/service_worker_clients_api_browsertest.cc",
    "../browser/service_worker/service_worker_file_upload_browsertest.cc",
    "../browser/service_worker/service_worker_tls_browsertest.cc",
    "../browser/session_history_browsertest.cc",
    "../browser/shape_detection/shape_detection_browsertest.cc",
    "../browser/site_per_process_browsertest.cc",
    "../browser/site_per_process_browsertest.h",
    "../browser/site_per_process_hit_test_browsertest.cc",
    "../browser/site_per_process_mac_browsertest.mm",
    "../browser/snapshot_browsertest.cc",
    "../browser/storage_partition_impl_browsertest.cc",
    "../browser/tracing/background_tracing_manager_browsertest.cc",
    "../browser/tracing/memory_instrumentation_browsertest.cc",
    "../browser/tracing/memory_tracing_browsertest.cc",
    "../browser/tracing/tracing_controller_browsertest.cc",
    "../browser/utility_process_host_browsertest.cc",
    "../browser/vibration_browsertest.cc",
    "../browser/wake_lock/wake_lock_browsertest.cc",
    "../browser/web_contents/opened_by_dom_browsertest.cc",
    "../browser/web_contents/web_contents_impl_browsertest.cc",
    "../browser/web_contents/web_contents_view_aura_browsertest.cc",
    "../browser/web_contents_binding_set_browsertest.cc",
    "../browser/web_package/signed_exchange_request_handler_browsertest.cc",
    "../browser/webkit_browsertest.cc",
    "../browser/webrtc/webrtc_audio_browsertest.cc",
    "../browser/webrtc/webrtc_audio_debug_recordings_browsertest.cc",
    "../browser/webrtc/webrtc_browsertest.cc",
    "../browser/webrtc/webrtc_capture_from_element_browsertest.cc",
    "../browser/webrtc/webrtc_constraints_browsertest.cc",
    "../browser/webrtc/webrtc_content_browsertest_base.cc",
    "../browser/webrtc/webrtc_content_browsertest_base.h",
    "../browser/webrtc/webrtc_data_browsertest.cc",
    "../browser/webrtc/webrtc_datachannel_browsertest.cc",
    "../browser/webrtc/webrtc_depth_capture_browsertest.cc",
    "../browser/webrtc/webrtc_getusermedia_browsertest.cc",
    "../browser/webrtc/webrtc_image_capture_browsertest.cc",
    "../browser/webrtc/webrtc_internals_browsertest.cc",
    "../browser/webrtc/webrtc_ip_permissions_browsertest.cc",
    "../browser/webrtc/webrtc_media_recorder_browsertest.cc",
    "../browser/webrtc/webrtc_stress_image_capture_browsertest.cc",
    "../browser/webrtc/webrtc_stress_pause_browsertest.cc",
    "../browser/webrtc/webrtc_stress_resolution_switch_browsertest.cc",
    "../browser/webrtc/webrtc_stress_source_switch_browsertest.cc",
    "../browser/webrtc/webrtc_video_capture_browsertest.cc",
    "../browser/webrtc/webrtc_video_capture_service_browsertest.cc",
    "../browser/webrtc/webrtc_video_capture_service_enumeration_browsertest.cc",
    "../browser/webrtc/webrtc_webcam_browsertest.cc",
    "../browser/webrtc/webrtc_webcam_browsertest.h",
    "../browser/webui/web_ui_mojo_browsertest.cc",
    "../browser/worker_host/worker_browsertest.cc",
    "../renderer/accessibility/render_accessibility_impl_browsertest.cc",
    "../renderer/blink_platform_audio_hardware_browsertest.cc",
    "../renderer/gin_browsertest.cc",
    "../renderer/media/renderer_webmediaplayer_delegate_browsertest.cc",
    "../renderer/mouse_lock_dispatcher_browsertest.cc",
    "../renderer/render_frame_impl_browsertest.cc",
    "../renderer/render_thread_impl_browsertest.cc",
    "../renderer/render_view_browsertest.cc",
    "../renderer/render_view_browsertest_mac.mm",
    "../renderer/render_widget_browsertest.cc",
    "../renderer/visual_state_browsertest.cc",
    "../renderer/webclipboard_impl_browsertest.cc",
    "../test/browser_test_utils_browsertest.cc",
    "../test/content_browser_test_test.cc",
    "../test/url_loader_interceptor_test.cc",
    "../test/webui_resource_browsertest.cc",
  ]

  defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]

  if (is_chromecast) {
    defines += [ "IS_CHROMECAST" ]
  }

  configs += [
    "//build/config:precompiled_headers",
    "//build/config/compiler:no_size_t_to_int_warning",
  ]

  deps = [
    ":browsertest_support",
    ":content_test_mojo_bindings",
    ":test_support",
    ":web_test_support",
    ":web_ui_test_mojo_bindings",
    "//base/test:test_support",
    "//components/discardable_memory/client",
    "//components/discardable_memory/common",
    "//components/discardable_memory/service",
    "//components/network_session_configurator/common",
    "//components/payments/mojom",
    "//components/services/leveldb/public/cpp:cpp",
    "//components/ukm:test_support",
    "//components/url_formatter:url_formatter",
    "//components/viz/test:test_support",
    "//content:resources",
    "//content/app:both_for_content_tests",
    "//content/browser:for_content_tests",
    "//content/browser/background_sync:background_sync_proto",
    "//content/child:for_content_tests",
    "//content/gpu",
    "//content/public/browser",
    "//content/public/child",
    "//content/public/common",
    "//content/public/common:buildflags",
    "//content/public/gpu",
    "//content/public/renderer",
    "//content/renderer:for_content_tests",
    "//content/renderer/compositor",
    "//content/shell:content_shell_lib",
    "//content/shell:mojo_bindings",
    "//content/shell:pak",
    "//content/test:test_support",
    "//device/base/synchronization",
    "//gin",
    "//gpu",
    "//gpu/ipc/host",
    "//ipc",
    "//ipc:test_support",
    "//media:test_support",
    "//media/webrtc",
    "//mojo/core/embedder",
    "//mojo/public/cpp/bindings",
    "//net:test_support",
    "//ppapi/buildflags",
    "//services/audio/public/cpp",
    "//services/catalog:lib",
    "//services/content/public/cpp",
    "//services/content/public/mojom",
    "//services/device/public/cpp:device_features",
    "//services/device/public/cpp/generic_sensor",
    "//services/device/public/cpp/test:test_support",
    "//services/device/public/mojom",
    "//services/device/public/mojom:generic_sensor",
    "//services/metrics/public/cpp:ukm_builders",
    "//services/network:test_support",
    "//services/service_manager/public/cpp",
    "//services/test/echo/public/mojom",
    "//services/video_capture/public/cpp",
    "//services/video_capture/public/mojom:constants",
    "//services/viz/privileged/interfaces",
    "//services/ws/public/cpp/gpu",
    "//storage/browser",
    "//storage/browser:test_support",
    "//testing/gmock",
    "//testing/gtest",
    "//third_party/blink/public:blink",
    "//third_party/leveldatabase",
    "//third_party/libaom:av1_buildflags",
    "//third_party/mesa_headers",
    "//third_party/zlib",
    "//ui/accessibility",
    "//ui/accessibility:ax_enums_mojo",
    "//ui/base:test_support",
    "//ui/base/ime",
    "//ui/compositor",
    "//ui/display",
    "//ui/events:test_support",
    "//ui/events/blink:blink",
    "//ui/gfx",
    "//ui/gfx/geometry",
    "//ui/gl",
    "//ui/gl:test_support",
    "//ui/latency",
    "//ui/native_theme",
    "//ui/resources",
    "//ui/shell_dialogs",
    "//ui/snapshot",
  ]

  data = []

  data_deps = [
    ":web_ui_test_mojo_bindings_js_data_deps",
    "//content/shell:pak",
    "//testing/buildbot/filters:content_browsertests_filters",
    "//third_party/mesa_headers",
  ]

  if (enable_plugins) {
    deps += [
      "//ppapi/host",
      "//ppapi/proxy",
      "//ppapi/proxy:ipc",
      "//ppapi/shared_impl:test_support",
    ]
    data_deps += [
      "//ppapi:corb_test_plugin",
      "//ppapi:power_saver_test_plugin",
      "//ppapi:ppapi_tests",
    ]
    if (is_mac) {
      data += [ "$root_out_dir/ppapi_tests.plugin/" ]
    }
  }

  if (is_android || is_linux || is_mac || is_win) {
    data += [
      "$root_out_dir/content_shell.pak",
      "data/",
      "//media/test/data/",
    ]
  }

  if (is_linux || is_mac || is_win) {
    sources += [
      "../browser/media/capture/content_capture_device_browsertest_base.cc",
      "../browser/media/capture/content_capture_device_browsertest_base.h",
      "../browser/media/capture/fake_video_capture_stack.cc",
      "../browser/media/capture/fake_video_capture_stack.h",
      "../browser/media/capture/frame_test_util.cc",
      "../browser/media/capture/frame_test_util.h",
      "../browser/media/capture/mouse_cursor_overlay_controller_browsertest.cc",
      "../browser/media/capture/web_contents_video_capture_device_browsertest.cc",
    ]

    # For chromecast, content_browsertests does not provide a shell window.
    if (use_aura && !is_chromecast) {
      sources += [ "../browser/media/capture/aura_window_video_capture_device_browsertest.cc" ]
    }

    deps += [ "//third_party/libyuv" ]
    data += [
      "//net/tools/testserver/",
      "//ppapi/tests/test_case.html",
      "//ppapi/tests/test_page.css",
      "//ppapi/tests/test_url_loader_data/",
      "//third_party/pyftpdlib/",
      "//third_party/pywebsocket/src/mod_pywebsocket/",
      "//third_party/tlslite/",
    ]
  }

  if (is_win) {
    sources += [
      "../browser/accessibility/accessibility_win_browsertest.cc",
      "../browser/renderer_host/direct_manipulation_browsertest.cc",
    ]

    deps += [
      "//content/app/strings",
      "//net:net_resources",
      "//third_party/blink/public:resources",
      "//third_party/iaccessible2",
      "//third_party/isimpledom",
    ]

    if (symbol_level != 0) {
      data += [ "$root_out_dir/content_browsertests.exe.pdb" ]
    }
  }

  if (is_linux) {
    sources += [ "../zygote/zygote_browsertest.cc" ]
    deps += [
      "//services/service_manager/zygote",
      "//ui/gfx:test_support",
    ]
  }

  if (is_android) {
    enable_multidex = true
    if (is_component_build) {
      sources += [ "../browser/android/render_widget_host_connector.cc" ]
    }
    sources += [
      "../browser/accessibility/android_granularity_movement_browsertest.cc",
      "../browser/android/render_widget_host_connector_browsertest.cc",
      "../browser/android/render_widget_host_connector_browsertest.h",
      "../browser/media/session/audio_focus_delegate_android_browsertest.cc",
      "../browser/renderer_host/compositor_impl_android_browsertest.cc",
      "../shell/android/browsertests_apk/content_browser_tests_jni_onload.cc",
    ]
    sources -= [
      "../browser/keyboard_lock_browsertest.cc",
      "../browser/media/session/audio_focus_delegate_default_browsertest.cc",
      "../browser/pointer_lock_browsertest.cc",
      "../browser/pointer_lock_browsertest.h",
    ]
    deps += [
      ":content_browsertests_java",
      "//content/shell:content_shell_lib",
      "//content/shell/android:content_shell_assets",
      "//content/shell/android:content_shell_jni_headers",
      "//testing/android/native_test:native_test_support",
      "//ui/android:android",
      "//ui/touch_selection:touch_selection",
    ]
    android_manifest =
        "${target_gen_dir}/content_browsertests_manifest/AndroidManifest.xml"
    android_manifest_dep = ":content_browsertests_manifest"
    use_default_launcher = false
  } else {
    # Non-Android.
    sources += [
      "../browser/host_zoom_map_impl_browsertest.cc",
      "../browser/speech/speech_recognition_browsertest.cc",
      "../browser/zoom_browsertest.cc",
    ]
    deps += [ "//content/browser/speech/proto" ]
  }

  # HID support is not available without udev.
  is_linux_without_udev = is_linux && !use_udev
  if (!is_linux_without_udev && !is_android) {
    sources += [ "../browser/webauth/webauth_browsertest.cc" ]
    deps += [
      "//device/base",
      "//device/fido:fido",
      "//device/fido:mocks",
      "//device/fido:test_support",
    ]
  }

  if (is_mac) {
    sources += [
      "../browser/accessibility/browser_accessibility_cocoa_browsertest.mm",
      "../renderer/external_popup_menu_browsertest.cc",
    ]
    deps += [
      "//content/shell:content_shell",
      "//third_party/ocmock",
    ]
    data += [ "$root_out_dir/Content Shell.app/" ]
  }

  if (is_chromeos) {
    deps += [
      "//chromeos",
      "//chromeos/audio",
    ]
  }

  if (use_aura && !is_win) {
    deps += [ "//ui/events:test_support" ]
  }

  if (use_aura) {
    sources +=
        [ "../browser/compositor/image_transport_factory_browsertest.cc" ]
  }

  if (enable_plugins) {
    sources += [
      "../browser/plugin_service_impl_browsertest.cc",
      "../renderer/pepper/fake_pepper_plugin_instance.cc",
      "../renderer/pepper/fake_pepper_plugin_instance.h",
      "../renderer/pepper/mock_renderer_ppapi_host.cc",
      "../renderer/pepper/mock_renderer_ppapi_host.h",
      "../renderer/pepper/pepper_device_enumeration_host_helper_unittest.cc",
      "../renderer/pepper/pepper_file_chooser_host_unittest.cc",
      "../renderer/pepper/pepper_graphics_2d_host_unittest.cc",
      "../renderer/pepper/pepper_url_request_unittest.cc",
      "../renderer/pepper/pepper_webplugin_impl_browsertest.cc",
      "../renderer/pepper/plugin_power_saver_helper_browsertest.cc",
      "../test/ppapi/ppapi_browsertest.cc",
      "../test/ppapi/ppapi_test.cc",
      "../test/ppapi/ppapi_test.h",
    ]
    deps += [ "//ppapi/proxy:test_support" ]
    data_deps += [ "//ppapi:ppapi_tests" ]
  }

  if (!is_chrome_branded) {
    # These tests depend on single process mode, which is disabled
    # in official builds.
    sources += [
      "../renderer/browser_render_view_browsertest.cc",
      "../renderer/dom_serializer_browsertest.cc",
      "../renderer/fetchers/resource_fetcher_browsertest.cc",
      "../renderer/render_thread_impl_discardable_memory_browsertest.cc",
      "../renderer/savable_resources_browsertest.cc",
    ]

    deps += [
      "//components/discardable_memory/client",
      "//components/discardable_memory/common",
      "//components/discardable_memory/service",
    ]
  }

  if (use_aura) {
    deps += [
      "//ui/aura",
      "//ui/aura:test_support",
      "//ui/touch_selection:test_support",
      "//ui/touch_selection:touch_selection",
    ]
  } else {
    sources -= [
      "../browser/accessibility/touch_accessibility_aura_browsertest.cc",
      "../browser/renderer_host/input/touch_selection_controller_client_aura_browsertest.cc",
      "../browser/web_contents/web_contents_view_aura_browsertest.cc",
    ]
  }

  if (is_chromecast) {
    sources -= [
      # The cast shell media pipeline doesn't produce real video frames that we
      # can inspect.
      "../browser/media/media_color_browsertest.cc",

      # The cast shell has plugin support but no pdf, causing blocked scheme PDF
      # tests to fail.
      "../browser/frame_host/blocked_scheme_navigation_browsertest.cc",

      # The multi-window tests don't work on cast_shell. Since there's little
      # added value in running the single-window test on this platform, just
      # exclude them all.
      "../browser/snapshot_browsertest.cc",
    ]
  }
}

static_library("run_all_unittests") {
  testonly = true
  sources = [
    "run_all_unittests.cc",
  ]
  deps = [
    ":content_unittests_catalog_source",
    ":test_support",
    "//base/test:test_support",
    "//services/catalog:lib",
  ]
}

test("content_unittests") {
  # See comment at the top of //content/BUILD.gn for why this is disabled in
  # component builds.
  if (is_component_build) {
    check_includes = false
  }

  if (is_android) {
    enable_multidex = true
  }

  defines = []
  sources = [
    "../browser/accessibility/browser_accessibility_mac_unittest.mm",
    "../browser/accessibility/browser_accessibility_manager_unittest.cc",
    "../browser/accessibility/browser_accessibility_unittest.cc",
    "../browser/accessibility/browser_accessibility_win_unittest.cc",
    "../browser/accessibility/one_shot_accessibility_tree_search_unittest.cc",
    "../browser/appcache/appcache_database_unittest.cc",
    "../browser/appcache/appcache_disk_cache_unittest.cc",
    "../browser/appcache/appcache_group_unittest.cc",
    "../browser/appcache/appcache_host_unittest.cc",
    "../browser/appcache/appcache_manifest_parser_unittest.cc",
    "../browser/appcache/appcache_quota_client_unittest.cc",
    "../browser/appcache/appcache_request_handler_unittest.cc",
    "../browser/appcache/appcache_response_unittest.cc",
    "../browser/appcache/appcache_service_unittest.cc",
    "../browser/appcache/appcache_storage_impl_unittest.cc",
    "../browser/appcache/appcache_storage_unittest.cc",
    "../browser/appcache/appcache_unittest.cc",
    "../browser/appcache/appcache_update_job_unittest.cc",
    "../browser/appcache/appcache_url_request_job_unittest.cc",
    "../browser/appcache/chrome_appcache_service_unittest.cc",
    "../browser/appcache/mock_appcache_policy.cc",
    "../browser/appcache/mock_appcache_policy.h",
    "../browser/appcache/mock_appcache_service.cc",
    "../browser/appcache/mock_appcache_service.h",
    "../browser/appcache/mock_appcache_storage.cc",
    "../browser/appcache/mock_appcache_storage.h",
    "../browser/appcache/mock_appcache_storage_unittest.cc",
    "../browser/background_fetch/background_fetch_cross_origin_filter_unittest.cc",
    "../browser/background_fetch/background_fetch_data_manager_unittest.cc",
    "../browser/background_fetch/background_fetch_delegate_proxy_unittest.cc",
    "../browser/background_fetch/background_fetch_event_dispatcher_unittest.cc",
    "../browser/background_fetch/background_fetch_job_controller_unittest.cc",
    "../browser/background_fetch/background_fetch_registration_notifier_unittest.cc",
    "../browser/background_fetch/background_fetch_scheduler_unittest.cc",
    "../browser/background_fetch/background_fetch_service_unittest.cc",
    "../browser/background_fetch/storage/image_helpers_unittest.cc",
    "../browser/background_sync/background_sync_manager_unittest.cc",
    "../browser/background_sync/background_sync_network_observer_unittest.cc",
    "../browser/background_sync/background_sync_service_impl_unittest.cc",
    "../browser/blob_storage/blob_url_unittest.cc",
    "../browser/bluetooth/bluetooth_allowed_devices_unittest.cc",
    "../browser/bluetooth/bluetooth_blocklist_unittest.cc",
    "../browser/bluetooth/bluetooth_device_chooser_controller_unittest.cc",
    "../browser/bluetooth/frame_connected_bluetooth_devices_unittest.cc",
    "../browser/browser_associated_interface_unittest.cc",
    "../browser/browser_main_loop_unittest.cc",
    "../browser/browser_thread_unittest.cc",
    "../browser/browser_url_handler_impl_unittest.cc",
    "../browser/browsing_data/browsing_data_filter_builder_impl_unittest.cc",
    "../browser/browsing_data/browsing_data_remover_impl_unittest.cc",
    "../browser/browsing_data/clear_site_data_handler_unittest.cc",
    "../browser/browsing_data/clear_site_data_throttle_unittest.cc",
    "../browser/byte_stream_unittest.cc",
    "../browser/cache_storage/cache_storage_blob_to_disk_cache_unittest.cc",
    "../browser/cache_storage/cache_storage_cache_unittest.cc",
    "../browser/cache_storage/cache_storage_index_unittest.cc",
    "../browser/cache_storage/cache_storage_manager_unittest.cc",
    "../browser/cache_storage/cache_storage_operation_unittest.cc",
    "../browser/cache_storage/cache_storage_scheduler_unittest.cc",
    "../browser/child_process_security_policy_unittest.cc",
    "../browser/cocoa/system_hotkey_map_unittest.mm",
    "../browser/code_cache/generated_code_cache_unittest.cc",
    "../browser/compositor/reflector_impl_unittest.cc",
    "../browser/compositor/software_browser_compositor_output_surface_unittest.cc",
    "../browser/cookie_store/cookie_store_manager_unittest.cc",
    "../browser/devtools/devtools_http_handler_unittest.cc",
    "../browser/devtools/devtools_manager_unittest.cc",
    "../browser/devtools/devtools_video_consumer_unittest.cc",
    "../browser/devtools/protocol/tracing_handler_unittest.cc",
    "../browser/devtools/protocol_unittest.cc",
    "../browser/dom_storage/dom_storage_area_unittest.cc",
    "../browser/dom_storage/dom_storage_context_impl_unittest.cc",
    "../browser/dom_storage/dom_storage_context_wrapper_unittest.cc",
    "../browser/dom_storage/dom_storage_database_unittest.cc",
    "../browser/dom_storage/local_storage_context_mojo_unittest.cc",
    "../browser/dom_storage/session_storage_area_impl_unittest.cc",
    "../browser/dom_storage/session_storage_context_mojo_unittest.cc",
    "../browser/dom_storage/session_storage_data_map_unittest.cc",
    "../browser/dom_storage/session_storage_database_unittest.cc",
    "../browser/dom_storage/session_storage_metadata_unittest.cc",
    "../browser/dom_storage/session_storage_namespace_impl_mojo_unittest.cc",
    "../browser/dom_storage/storage_area_impl_unittest.cc",
    "../browser/dom_storage/test/fake_leveldb_database_error_on_write.cc",
    "../browser/dom_storage/test/fake_leveldb_database_error_on_write.h",
    "../browser/dom_storage/test/fake_leveldb_service.cc",
    "../browser/dom_storage/test/fake_leveldb_service.h",
    "../browser/dom_storage/test/mojo_test_with_file_service.cc",
    "../browser/dom_storage/test/mojo_test_with_file_service.h",
    "../browser/dom_storage/test/storage_area_test_util.cc",
    "../browser/dom_storage/test/storage_area_test_util.h",
    "../browser/download/download_manager_impl_unittest.cc",
    "../browser/download/download_request_core_unittest.cc",
    "../browser/download/save_package_unittest.cc",
    "../browser/fileapi/browser_file_system_helper_unittest.cc",
    "../browser/fileapi/file_system_chooser_unittest.cc",
    "../browser/fileapi/file_system_operation_runner_unittest.cc",
    "../browser/frame_host/ancestor_throttle_unittest.cc",
    "../browser/frame_host/form_submission_throttle_unittest.cc",
    "../browser/frame_host/frame_service_base_unittest.cc",
    "../browser/frame_host/frame_tree_node_blame_context_unittest.cc",
    "../browser/frame_host/frame_tree_unittest.cc",
    "../browser/frame_host/mixed_content_navigation_throttle_unittest.cc",
    "../browser/frame_host/navigation_controller_impl_unittest.cc",
    "../browser/frame_host/navigation_entry_impl_unittest.cc",
    "../browser/frame_host/navigation_handle_impl_unittest.cc",
    "../browser/frame_host/navigator_impl_unittest.cc",
    "../browser/frame_host/origin_policy_throttle_unittest.cc",
    "../browser/frame_host/render_frame_host_feature_policy_unittest.cc",
    "../browser/frame_host/render_frame_host_manager_unittest.cc",
    "../browser/frame_host/render_widget_host_view_guest_unittest.cc",
    "../browser/geolocation/geolocation_service_impl_unittest.cc",
    "../browser/gpu/gpu_data_manager_impl_private_unittest.cc",
    "../browser/gpu/gpu_data_manager_testing_arrays_and_structs_autogen.h",
    "../browser/gpu/gpu_data_manager_testing_autogen.cc",
    "../browser/gpu/gpu_data_manager_testing_autogen.h",
    "../browser/gpu/gpu_data_manager_testing_entry_enums_autogen.h",
    "../browser/gpu/gpu_data_manager_testing_exceptions_autogen.h",
    "../browser/indexed_db/fake_indexed_db_metadata_coding.cc",
    "../browser/indexed_db/fake_indexed_db_metadata_coding.h",
    "../browser/indexed_db/indexed_db_active_blob_registry_unittest.cc",
    "../browser/indexed_db/indexed_db_backing_store_unittest.cc",
    "../browser/indexed_db/indexed_db_cleanup_on_io_error_unittest.cc",
    "../browser/indexed_db/indexed_db_database_unittest.cc",
    "../browser/indexed_db/indexed_db_dispatcher_host_unittest.cc",
    "../browser/indexed_db/indexed_db_factory_unittest.cc",
    "../browser/indexed_db/indexed_db_fake_backing_store.cc",
    "../browser/indexed_db/indexed_db_fake_backing_store.h",
    "../browser/indexed_db/indexed_db_leveldb_coding_unittest.cc",
    "../browser/indexed_db/indexed_db_pre_close_task_queue_unittest.cc",
    "../browser/indexed_db/indexed_db_quota_client_unittest.cc",
    "../browser/indexed_db/indexed_db_tombstone_sweeper_unittest.cc",
    "../browser/indexed_db/indexed_db_transaction_unittest.cc",
    "../browser/indexed_db/indexed_db_unittest.cc",
    "../browser/indexed_db/leveldb/fake_leveldb_factory.cc",
    "../browser/indexed_db/leveldb/fake_leveldb_factory.h",
    "../browser/indexed_db/leveldb/leveldb_env_unittest.cc",
    "../browser/indexed_db/leveldb/leveldb_transaction_unittest.cc",
    "../browser/indexed_db/leveldb/leveldb_unittest.cc",
    "../browser/indexed_db/leveldb/mock_level_db.cc",
    "../browser/indexed_db/leveldb/mock_level_db.h",
    "../browser/indexed_db/list_set_unittest.cc",
    "../browser/indexed_db/mock_indexed_db_callbacks.cc",
    "../browser/indexed_db/mock_indexed_db_callbacks.h",
    "../browser/indexed_db/mock_indexed_db_database_callbacks.cc",
    "../browser/indexed_db/mock_indexed_db_database_callbacks.h",
    "../browser/indexed_db/mock_indexed_db_factory.cc",
    "../browser/indexed_db/mock_indexed_db_factory.h",
    "../browser/indexed_db/mock_mojo_indexed_db_callbacks.cc",
    "../browser/indexed_db/mock_mojo_indexed_db_callbacks.h",
    "../browser/indexed_db/mock_mojo_indexed_db_database_callbacks.cc",
    "../browser/indexed_db/mock_mojo_indexed_db_database_callbacks.h",
    "../browser/indexed_db/scopes/disjoint_range_lock_manager_unittest.cc",
    "../browser/indexed_db/scopes/scopes_lock_manager_unittest.cc",
    "../browser/loader/cross_site_document_resource_handler_unittest.cc",
    "../browser/loader/data_pipe_to_source_stream_unittest.cc",
    "../browser/loader/detachable_resource_handler_unittest.cc",
    "../browser/loader/intercepting_resource_handler_unittest.cc",
    "../browser/loader/merkle_integrity_source_stream_unittest.cc",
    "../browser/loader/mime_sniffing_resource_handler_unittest.cc",
    "../browser/loader/mock_resource_loader.cc",
    "../browser/loader/mock_resource_loader.h",
    "../browser/loader/mojo_async_resource_handler_unittest.cc",
    "../browser/loader/navigation_url_loader_impl_unittest.cc",
    "../browser/loader/navigation_url_loader_unittest.cc",
    "../browser/loader/resource_dispatcher_host_unittest.cc",
    "../browser/loader/resource_loader_unittest.cc",
    "../browser/loader/source_stream_to_data_pipe_unittest.cc",
    "../browser/loader/test_resource_handler.cc",
    "../browser/loader/test_resource_handler.h",
    "../browser/loader/throttling_resource_handler_unittest.cc",
    "../browser/loader/upload_data_stream_builder_unittest.cc",
    "../browser/loader/url_loader_factory_impl_unittest.cc",
    "../browser/mach_broker_mac_unittest.cc",
    "../browser/manifest/manifest_icon_downloader_unittest.cc",
    "../browser/media/audible_metrics_unittest.cc",
    "../browser/media/audio_input_stream_broker_unittest.cc",
    "../browser/media/audio_loopback_stream_broker_unittest.cc",
    "../browser/media/audio_output_stream_broker_unittest.cc",
    "../browser/media/audio_stream_monitor_unittest.cc",
    "../browser/media/capture/audio_mirroring_manager_unittest.cc",
    "../browser/media/capture/web_contents_audio_input_stream_unittest.cc",
    "../browser/media/cdm_registry_impl_unittest.cc",
    "../browser/media/flinging_renderer_unittest.cc",
    "../browser/media/forwarding_audio_stream_factory_unittest.cc",
    "../browser/media/media_devices_permission_checker_unittest.cc",
    "../browser/media/media_internals_unittest.cc",
    "../browser/media/midi_host_unittest.cc",
    "../browser/media/session/media_session_controller_unittest.cc",
    "../browser/media/session/media_session_controllers_manager_unittest.cc",
    "../browser/media/session/media_session_impl_service_routing_unittest.cc",
    "../browser/media/session/media_session_impl_uma_unittest.cc",
    "../browser/media/session/media_session_impl_unittest.cc",
    "../browser/media/session/media_session_uma_helper_unittest.cc",
    "../browser/media/webaudio/audio_context_manager_impl_unittest.cc",
    "../browser/memory/memory_monitor_android_unittest.cc",
    "../browser/memory/memory_monitor_win_unittest.cc",
    "../browser/memory/swap_metrics_driver_impl_unittest.cc",
    "../browser/memory/test_memory_monitor.cc",
    "../browser/memory/test_memory_monitor.h",
    "../browser/net/network_quality_observer_impl_unittest.cc",
    "../browser/net/quota_policy_cookie_store_unittest.cc",
    "../browser/network_service_client_unittest.cc",
    "../browser/notification_service_impl_unittest.cc",
    "../browser/notifications/blink_notification_service_impl_unittest.cc",
    "../browser/notifications/notification_database_data_unittest.cc",
    "../browser/notifications/notification_database_unittest.cc",
    "../browser/notifications/notification_event_dispatcher_impl_unittest.cc",
    "../browser/notifications/notification_id_generator_unittest.cc",
    "../browser/notifications/notification_storage_unittest.cc",
    "../browser/notifications/platform_notification_context_unittest.cc",
    "../browser/payments/payment_app_content_unittest_base.cc",
    "../browser/payments/payment_app_content_unittest_base.h",
    "../browser/payments/payment_app_provider_impl_unittest.cc",
    "../browser/payments/payment_manager_unittest.cc",
    "../browser/presentation/presentation_service_impl_unittest.cc",
    "../browser/renderer_host/clipboard_host_impl_unittest.cc",
    "../browser/renderer_host/cursor_manager_unittest.cc",
    "../browser/renderer_host/dwrite_font_proxy_impl_win_unittest.cc",
    "../browser/renderer_host/embedded_frame_sink_provider_impl_unittest.cc",
    "../browser/renderer_host/frame_token_message_queue_unittest.cc",
    "../browser/renderer_host/input/fling_controller_unittest.cc",
    "../browser/renderer_host/input/fling_scheduler_unittest.cc",
    "../browser/renderer_host/input/gesture_event_queue_unittest.cc",
    "../browser/renderer_host/input/input_router_impl_unittest.cc",
    "../browser/renderer_host/input/mock_input_disposition_handler.cc",
    "../browser/renderer_host/input/mock_input_disposition_handler.h",
    "../browser/renderer_host/input/mock_input_router_client.cc",
    "../browser/renderer_host/input/mock_input_router_client.h",
    "../browser/renderer_host/input/motion_event_web_unittest.cc",
    "../browser/renderer_host/input/mouse_wheel_event_queue_unittest.cc",
    "../browser/renderer_host/input/mouse_wheel_rails_filter_unittest_mac.cc",
    "../browser/renderer_host/input/passthrough_touch_event_queue_unittest.cc",
    "../browser/renderer_host/input/render_widget_host_latency_tracker_unittest.cc",
    "../browser/renderer_host/input/stylus_text_selector_unittest.cc",
    "../browser/renderer_host/input/synthetic_gesture_controller_unittest.cc",
    "../browser/renderer_host/input/synthetic_pointer_action_unittest.cc",
    "../browser/renderer_host/input/tap_suppression_controller_unittest.cc",
    "../browser/renderer_host/input/touch_action_filter_unittest.cc",
    "../browser/renderer_host/input/touch_emulator_unittest.cc",
    "../browser/renderer_host/input/touchpad_pinch_event_queue_unittest.cc",
    "../browser/renderer_host/input/web_input_event_builders_android_unittest.cc",
    "../browser/renderer_host/input/web_input_event_builders_mac_unittest.mm",
    "../browser/renderer_host/input/web_input_event_util_unittest.cc",
    "../browser/renderer_host/media/audio_input_delegate_impl_unittest.cc",
    "../browser/renderer_host/media/audio_input_device_manager_unittest.cc",
    "../browser/renderer_host/media/audio_input_stream_handle_unittest.cc",
    "../browser/renderer_host/media/audio_output_authorization_handler_unittest.cc",
    "../browser/renderer_host/media/audio_output_delegate_impl_unittest.cc",
    "../browser/renderer_host/media/audio_service_listener_unittest.cc",
    "../browser/renderer_host/media/fake_video_capture_device_launcher.cc",
    "../browser/renderer_host/media/fake_video_capture_device_launcher.h",
    "../browser/renderer_host/media/fake_video_capture_provider.cc",
    "../browser/renderer_host/media/fake_video_capture_provider.h",
    "../browser/renderer_host/media/media_devices_dispatcher_host_unittest.cc",
    "../browser/renderer_host/media/media_devices_manager_unittest.cc",
    "../browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc",
    "../browser/renderer_host/media/media_stream_manager_unittest.cc",
    "../browser/renderer_host/media/media_stream_ui_proxy_unittest.cc",
    "../browser/renderer_host/media/mock_video_capture_provider.cc",
    "../browser/renderer_host/media/mock_video_capture_provider.h",
    "../browser/renderer_host/media/old_render_frame_audio_input_stream_factory_unittest.cc",
    "../browser/renderer_host/media/old_render_frame_audio_output_stream_factory_unittest.cc",
    "../browser/renderer_host/media/render_frame_audio_input_stream_factory_unittest.cc",
    "../browser/renderer_host/media/render_frame_audio_output_stream_factory_unittest.cc",
    "../browser/renderer_host/media/service_video_capture_device_launcher_unittest.cc",
    "../browser/renderer_host/media/service_video_capture_provider_unittest.cc",
    "../browser/renderer_host/media/video_capture_buffer_pool_unittest.cc",
    "../browser/renderer_host/media/video_capture_controller_unittest.cc",
    "../browser/renderer_host/media/video_capture_manager_unittest.cc",
    "../browser/renderer_host/media/video_capture_unittest.cc",
    "../browser/renderer_host/overscroll_controller_unittest.cc",
    "../browser/renderer_host/render_process_host_unittest.cc",
    "../browser/renderer_host/render_view_host_unittest.cc",
    "../browser/renderer_host/render_widget_host_input_event_router_unittest.cc",
    "../browser/renderer_host/render_widget_host_unittest.cc",
    "../browser/renderer_host/render_widget_host_view_aura_unittest.cc",
    "../browser/renderer_host/render_widget_host_view_base_unittest.cc",
    "../browser/renderer_host/render_widget_host_view_child_frame_unittest.cc",
    "../browser/renderer_host/render_widget_host_view_mac_editcommand_helper_unittest.mm",
    "../browser/renderer_host/render_widget_host_view_mac_unittest.mm",
    "../browser/renderer_host/text_input_client_mac_unittest.mm",
    "../browser/renderer_host/web_database_host_impl_unittest.cc",
    "../browser/resolve_proxy_msg_helper_unittest.cc",
    "../browser/sandbox_mac_unittest.mm",
    "../browser/scheduler/browser_task_executor_unittest.cc",
    "../browser/scheduler/responsiveness/calculator_unittest.cc",
    "../browser/scheduler/responsiveness/watcher_unittest.cc",
    "../browser/screen_orientation/screen_orientation_provider_unittest.cc",
    "../browser/screenlock_monitor/screenlock_monitor_unittest.cc",
    "../browser/service_worker/embedded_worker_instance_unittest.cc",
    "../browser/service_worker/service_worker_cache_writer_unittest.cc",
    "../browser/service_worker/service_worker_context_core_unittest.cc",
    "../browser/service_worker/service_worker_context_request_handler_unittest.cc",
    "../browser/service_worker/service_worker_context_unittest.cc",
    "../browser/service_worker/service_worker_context_watcher_unittest.cc",
    "../browser/service_worker/service_worker_controllee_request_handler_unittest.cc",
    "../browser/service_worker/service_worker_data_pipe_reader_unittest.cc",
    "../browser/service_worker/service_worker_database_unittest.cc",
    "../browser/service_worker/service_worker_dispatcher_host_unittest.cc",
    "../browser/service_worker/service_worker_installed_scripts_sender_unittest.cc",
    "../browser/service_worker/service_worker_job_unittest.cc",
    "../browser/service_worker/service_worker_lifetime_tracker_unittest.cc",
    "../browser/service_worker/service_worker_metrics_unittest.cc",
    "../browser/service_worker/service_worker_navigation_loader_unittest.cc",
    "../browser/service_worker/service_worker_new_script_loader_unittest.cc",
    "../browser/service_worker/service_worker_object_host_unittest.cc",
    "../browser/service_worker/service_worker_process_manager_unittest.cc",
    "../browser/service_worker/service_worker_provider_host_unittest.cc",
    "../browser/service_worker/service_worker_read_from_cache_job_unittest.cc",
    "../browser/service_worker/service_worker_registration_unittest.cc",
    "../browser/service_worker/service_worker_request_handler_unittest.cc",
    "../browser/service_worker/service_worker_script_loader_factory_unittest.cc",
    "../browser/service_worker/service_worker_single_script_update_checker_unittest.cc",
    "../browser/service_worker/service_worker_storage_unittest.cc",
    "../browser/service_worker/service_worker_url_request_job_unittest.cc",
    "../browser/service_worker/service_worker_version_unittest.cc",
    "../browser/service_worker/service_worker_write_to_cache_job_unittest.cc",
    "../browser/shareable_file_reference_unittest.cc",
    "../browser/site_instance_impl_unittest.cc",
    "../browser/speech/tts_controller_unittest.cc",
    "../browser/startup_task_runner_unittest.cc",
    "../browser/storage_partition_impl_map_unittest.cc",
    "../browser/storage_partition_impl_unittest.cc",
    "../browser/streams/stream_unittest.cc",
    "../browser/streams/stream_url_request_job_unittest.cc",
    "../browser/tracing/background_startup_tracing_observer_unittest.cc",
    "../browser/tracing/background_tracing_config_unittest.cc",
    "../browser/tracing/tracing_ui_unittest.cc",
    "../browser/web_contents/aura/gesture_nav_simple_unittest.cc",
    "../browser/web_contents/web_contents_delegate_unittest.cc",
    "../browser/web_contents/web_contents_impl_unittest.cc",
    "../browser/web_contents/web_contents_user_data_unittest.cc",
    "../browser/web_contents/web_contents_view_aura_unittest.cc",
    "../browser/web_contents/web_contents_view_mac_unittest.mm",
    "../browser/web_contents/web_drag_dest_mac_unittest.mm",
    "../browser/web_contents/web_drag_source_mac_unittest.mm",
    "../browser/web_package/origins_list_unittest.cc",
    "../browser/web_package/signed_exchange_cert_fetcher_unittest.cc",
    "../browser/web_package/signed_exchange_certificate_chain_unittest.cc",
    "../browser/web_package/signed_exchange_envelope_unittest.cc",
    "../browser/web_package/signed_exchange_handler_unittest.cc",
    "../browser/web_package/signed_exchange_prefetch_metric_recorder_unittest.cc",
    "../browser/web_package/signed_exchange_prologue_unittest.cc",
    "../browser/web_package/signed_exchange_signature_header_field_unittest.cc",
    "../browser/web_package/signed_exchange_signature_verifier_unittest.cc",
    "../browser/web_package/signed_exchange_utils_unittest.cc",
    "../browser/webrtc/webrtc_internals_message_handler_unittest.cc",
    "../browser/webrtc/webrtc_internals_unittest.cc",
    "../browser/websockets/websocket_manager_unittest.cc",
    "../browser/webui/url_data_manager_backend_unittest.cc",
    "../browser/webui/web_ui_data_source_unittest.cc",
    "../browser/webui/web_ui_message_handler_unittest.cc",
    "../browser/worker_host/mock_shared_worker.cc",
    "../browser/worker_host/mock_shared_worker.h",
    "../browser/worker_host/shared_worker_host_unittest.cc",
    "../browser/worker_host/shared_worker_instance_unittest.cc",
    "../browser/worker_host/shared_worker_service_impl_unittest.cc",
    "../child/blink_platform_impl_unittest.cc",
    "../child/dwrite_font_proxy/dwrite_font_proxy_win_unittest.cc",
    "../child/dwrite_font_proxy/font_fallback_win_unittest.cc",
    "../child/font_warmup_win_unittest.cc",
    "../common/android/gin_java_bridge_value_unittest.cc",
    "../common/background_fetch/background_fetch_struct_traits_unittest.cc",
    "../common/bluetooth/web_bluetooth_device_id_unittest.cc",
    "../common/common_param_traits_unittest.cc",
    "../common/content_security_policy/content_security_policy_unittest.cc",
    "../common/content_security_policy/csp_context_unittest.cc",
    "../common/content_security_policy/csp_source_list_unittest.cc",
    "../common/content_security_policy/csp_source_unittest.cc",
    "../common/content_switches_internal_unittest.cc",
    "../common/cursors/webcursor_unittest.cc",
    "../common/dom_storage/dom_storage_map_unittest.cc",
    "../common/input/actions_parser_unittest.cc",
    "../common/input/event_with_latency_info_unittest.cc",
    "../common/input/gesture_event_stream_validator_unittest.cc",
    "../common/input/synthetic_web_input_event_builders_unittest.cc",
    "../common/input/touch_event_stream_validator_unittest.cc",
    "../common/inter_process_time_ticks_converter_unittest.cc",
    "../common/mac/attributed_string_coder_unittest.mm",
    "../common/manifest_util_unittest.cc",
    "../common/media/media_devices_unittest.cc",
    "../common/mime_sniffing_throttle_unittest.cc",
    "../common/origin_util_unittest.cc",
    "../common/page_state_serialization_unittest.cc",
    "../common/page_zoom_unittest.cc",
    "../common/plugin_list_unittest.cc",
    "../common/service_manager/service_manager_connection_impl_unittest.cc",
    "../common/service_worker/service_worker_types_unittest.cc",
    "../common/service_worker/service_worker_utils_unittest.cc",
    "../common/throttling_url_loader_unittest.cc",
    "../common/unique_name_helper_unittest.cc",
    "../common/webplugininfo_unittest.cc",
    "../public/browser/site_isolation_policy_unittest.cc",

    # TODO(jam): move these network/ tests to services/network.
    "../public/common/drop_data_unittest.cc",
    "../public/common/url_utils_unittest.cc",
    "../public/test/referrer_unittest.cc",
    "../public/test/test_browser_thread_bundle_unittest.cc",
    "../renderer/bmp_image_decoder_unittest.cc",
    "../renderer/categorized_worker_pool_unittest.cc",
    "../renderer/child_frame_compositing_helper_unittest.cc",
    "../renderer/compositor/layer_tree_view_unittest.cc",
    "../renderer/dom_storage/dom_storage_cached_area_unittest.cc",
    "../renderer/dom_storage/local_storage_cached_area_unittest.cc",
    "../renderer/dom_storage/local_storage_cached_areas_unittest.cc",
    "../renderer/dom_storage/mock_leveldb_wrapper.cc",
    "../renderer/dom_storage/mock_leveldb_wrapper.h",
    "../renderer/frame_swap_message_queue_unittest.cc",
    "../renderer/ico_image_decoder_unittest.cc",
    "../renderer/input/input_event_prediction_unittest.cc",
    "../renderer/input/main_thread_event_queue_unittest.cc",
    "../renderer/loader/resource_dispatcher_unittest.cc",
    "../renderer/loader/shared_memory_data_consumer_handle_unittest.cc",
    "../renderer/loader/sync_load_context_unittest.cc",
    "../renderer/loader/test_request_peer.cc",
    "../renderer/loader/test_request_peer.h",
    "../renderer/loader/url_loader_client_impl_unittest.cc",
    "../renderer/loader/url_response_body_consumer_unittest.cc",
    "../renderer/loader/web_data_consumer_handle_impl_unittest.cc",
    "../renderer/loader/web_url_loader_impl_unittest.cc",
    "../renderer/low_memory_mode_controller_unittest.cc",
    "../renderer/manifest/manifest_parser_unittest.cc",
    "../renderer/media/audio/audio_output_ipc_factory_unittest.cc",
    "../renderer/media/audio/audio_renderer_mixer_manager_unittest.cc",
    "../renderer/media/audio/audio_renderer_sink_cache_unittest.cc",
    "../renderer/media/audio/mock_audio_device_factory.cc",
    "../renderer/media/audio/mock_audio_device_factory.h",
    "../renderer/media/audio/mojo_audio_input_ipc_unittest.cc",
    "../renderer/media/audio/mojo_audio_output_ipc_unittest.cc",
    "../renderer/media/render_media_log_unittest.cc",
    "../renderer/media/renderer_webaudiodevice_impl_unittest.cc",
    "../renderer/media/stream/media_stream_audio_processor_unittest.cc",
    "../renderer/media/stream/media_stream_audio_unittest.cc",
    "../renderer/media/stream/media_stream_constraints_util_audio_unittest.cc",
    "../renderer/media/stream/media_stream_constraints_util_sets_unittest.cc",
    "../renderer/media/stream/media_stream_constraints_util_unittest.cc",
    "../renderer/media/stream/media_stream_constraints_util_video_content_unittest.cc",
    "../renderer/media/stream/media_stream_constraints_util_video_device_unittest.cc",
    "../renderer/media/stream/media_stream_device_observer_unittest.cc",
    "../renderer/media/stream/media_stream_video_capturer_source_unittest.cc",
    "../renderer/media/stream/media_stream_video_renderer_sink_unittest.cc",
    "../renderer/media/stream/media_stream_video_source_unittest.cc",
    "../renderer/media/stream/media_stream_video_track_unittest.cc",
    "../renderer/media/stream/mock_constraint_factory.cc",
    "../renderer/media/stream/mock_constraint_factory.h",
    "../renderer/media/stream/mock_media_stream_registry.cc",
    "../renderer/media/stream/mock_media_stream_registry.h",
    "../renderer/media/stream/mock_media_stream_video_sink.cc",
    "../renderer/media/stream/mock_media_stream_video_sink.h",
    "../renderer/media/stream/mock_media_stream_video_source.cc",
    "../renderer/media/stream/mock_media_stream_video_source.h",
    "../renderer/media/stream/processed_local_audio_source_unittest.cc",
    "../renderer/media/stream/user_media_client_impl_unittest.cc",
    "../renderer/media/stream/video_track_adapter_unittest.cc",
    "../renderer/media/stream/webmediaplayer_ms_unittest.cc",
    "../renderer/media/video_capture_impl_manager_unittest.cc",
    "../renderer/media/video_capture_impl_unittest.cc",
    "../renderer/media/webrtc/media_stream_remote_video_source_unittest.cc",
    "../renderer/media/webrtc/media_stream_track_metrics_unittest.cc",
    "../renderer/media/webrtc/media_stream_video_webrtc_sink_unittest.cc",
    "../renderer/media/webrtc/peer_connection_dependency_factory_unittest.cc",
    "../renderer/media/webrtc/peer_connection_tracker_unittest.cc",
    "../renderer/media/webrtc/rtc_data_channel_handler_unittest.cc",
    "../renderer/media/webrtc/rtc_peer_connection_handler_unittest.cc",
    "../renderer/media/webrtc/rtc_rtp_receiver_unittest.cc",
    "../renderer/media/webrtc/rtc_rtp_sender_unittest.cc",
    "../renderer/media/webrtc/rtc_rtp_transceiver_unittest.cc",
    "../renderer/media/webrtc/rtc_stats_unittest.cc",
    "../renderer/media/webrtc/rtc_video_decoder_adapter_unittest.cc",
    "../renderer/media/webrtc/rtc_video_decoder_unittest.cc",
    "../renderer/media/webrtc/rtc_video_encoder_unittest.cc",
    "../renderer/media/webrtc/stun_field_trial_unittest.cc",
    "../renderer/media/webrtc/transceiver_state_surfacer_unittest.cc",
    "../renderer/media/webrtc/two_keys_adapter_map_unittest.cc",
    "../renderer/media/webrtc/webrtc_audio_renderer_unittest.cc",
    "../renderer/media/webrtc/webrtc_media_stream_track_adapter_map_unittest.cc",
    "../renderer/media/webrtc/webrtc_media_stream_track_adapter_unittest.cc",
    "../renderer/media/webrtc/webrtc_set_description_observer_unittest.cc",
    "../renderer/media/webrtc/webrtc_uma_histograms_unittest.cc",
    "../renderer/media/webrtc/webrtc_video_track_source_unittest.cc",
    "../renderer/media/webrtc_local_audio_source_provider_unittest.cc",
    "../renderer/media_capture_from_element/canvas_capture_handler_unittest.cc",
    "../renderer/media_capture_from_element/html_audio_element_capturer_source_unittest.cc",
    "../renderer/media_capture_from_element/html_video_element_capturer_source_unittest.cc",
    "../renderer/media_recorder/audio_track_recorder_unittest.cc",
    "../renderer/media_recorder/media_recorder_handler_unittest.cc",
    "../renderer/media_recorder/video_track_recorder_unittest.cc",
    "../renderer/notifications/notification_data_conversions_unittest.cc",
    "../renderer/p2p/filtering_network_manager_unittest.cc",
    "../renderer/p2p/ipc_network_manager_unittest.cc",
    "../renderer/peripheral_content_heuristic_unittest.cc",
    "../renderer/queue_message_swap_promise_unittest.cc",
    "../renderer/render_frame_metadata_observer_impl_unittest.cc",
    "../renderer/render_thread_impl_unittest.cc",
    "../renderer/render_widget_unittest.cc",
    "../renderer/service_worker/service_worker_context_client_unittest.cc",
    "../renderer/service_worker/service_worker_provider_context_unittest.cc",
    "../renderer/service_worker/service_worker_subresource_loader_unittest.cc",
    "../renderer/service_worker/service_worker_timeout_timer_unittest.cc",
    "../renderer/skia_benchmarking_extension_unittest.cc",
    "../renderer/v8_value_converter_impl_unittest.cc",
    "../renderer/worker_thread_registry_unittest.cc",
    "../test/renderer_audio_output_stream_factory_context_impl_unittest.cc",
    "image_decoder_test.cc",
    "image_decoder_test.h",
    "navigation_simulator_unittest.cc",
    "proxy_service_mojo_unittest.cc",
    "url_request_context_builder_mojo_unittest.cc",
  ]

  # ChromeOS also defines linux but their memory-monitors conflict.
  if (is_chromeos) {
    sources += [ "../browser/memory/memory_monitor_chromeos_unittest.cc" ]
  } else {
    sources += [ "../browser/memory/memory_monitor_linux_unittest.cc" ]
  }

  if (is_mac) {
    sources += [ "../renderer/sandbox_mac_v2_unittest.mm" ]
  }

  if (use_atk) {
    sources += [
      "../browser/accessibility/browser_accessibility_auralinux_unittest.cc",
    ]
    configs += [ "//build/config/linux/atk" ]
  }

  if (is_android || is_linux || is_mac || is_win || is_fuchsia) {
    data = [
      "$root_out_dir/content_shell.pak",
      "data/",
      "//media/test/data/",
    ]
  }

  configs += [ "//build/config:precompiled_headers" ]

  deps = [
    ":content_test_mojo_bindings",
    ":run_all_unittests",
    ":test_interfaces",
    ":test_support",
    "//base/allocator:buildflags",
    "//base/test:test_support",
    "//base/third_party/dynamic_annotations",
    "//cc",
    "//cc:test_support",
    "//components/cbor",
    "//components/network_session_configurator/browser",
    "//components/network_session_configurator/common",
    "//components/offline_pages/buildflags",
    "//components/payments/mojom",
    "//components/rappor:test_support",
    "//components/services/leveldb:lib",
    "//components/services/leveldb/public/cpp",
    "//components/ukm:test_support",
    "//components/viz/client",
    "//components/viz/common",
    "//components/viz/host",
    "//components/viz/service",
    "//components/viz/test:test_support",
    "//content:resources",
    "//content/app:both_for_content_tests",
    "//content/browser:for_content_tests",
    "//content/browser/background_fetch:background_fetch_proto",
    "//content/browser/cache_storage:cache_storage_proto",
    "//content/browser/dom_storage:local_storage_proto",
    "//content/browser/notifications:notification_proto",
    "//content/browser/service_worker:service_worker_proto",
    "//content/browser/speech/proto",
    "//content/child:for_content_tests",
    "//content/gpu",
    "//content/public/browser",
    "//content/public/child",
    "//content/public/common",
    "//content/public/common:service_names",
    "//content/public/renderer",
    "//content/renderer:for_content_tests",
    "//content/renderer/compositor",
    "//crypto",
    "//device/bluetooth",
    "//device/bluetooth:mocks",
    "//device/gamepad",
    "//device/gamepad:test_helpers",
    "//device/gamepad/public/cpp:shared_with_blink",
    "//gin",
    "//gpu",
    "//gpu:test_support",
    "//gpu/ipc/host",
    "//gpu/ipc/service",
    "//ipc:test_support",
    "//jingle:jingle_glue",
    "//media:test_support",
    "//media/blink",
    "//media/capture",
    "//media/midi:midi",
    "//media/midi:mojo",
    "//mojo/core/embedder",
    "//mojo/public/cpp/bindings",
    "//mojo/public/cpp/test_support:test_utils",
    "//net:extras",
    "//net:test_support",
    "//ppapi/buildflags",
    "//ppapi/c",
    "//printing",
    "//services/audio/public/cpp:test_support",
    "//services/audio/public/mojom",
    "//services/device/public/cpp/generic_sensor",
    "//services/device/public/cpp/test:test_support",
    "//services/device/public/mojom",
    "//services/file:lib",
    "//services/file/public/mojom",
    "//services/metrics/public/cpp:ukm_builders",
    "//services/metrics/public/mojom",
    "//services/network:network_service",
    "//services/network:test_support",
    "//services/network/public/cpp",
    "//services/network/public/mojom",
    "//services/proxy_resolver/:lib",
    "//services/service_manager/public/cpp/test:test_support",
    "//services/video_capture/public/cpp:mocks",
    "//services/video_capture/public/mojom",
    "//skia",
    "//sql",
    "//sql:test_support",
    "//storage/browser",
    "//storage/browser:test_support",
    "//storage/common",
    "//testing/gmock",
    "//testing/gtest",
    "//third_party/blink/public:blink",
    "//third_party/icu",
    "//third_party/leveldatabase",
    "//third_party/libyuv",
    "//third_party/metrics_proto",
    "//third_party/opus",
    "//third_party/re2",
    "//third_party/sqlite",
    "//third_party/webrtc/api:libjingle_peerconnection_api",
    "//third_party/webrtc/api:rtc_stats_api",
    "//third_party/webrtc/api/video:video_frame",
    "//third_party/webrtc/api/video:video_frame_i420",
    "//third_party/webrtc/api/video_codecs:video_codecs_api",
    "//third_party/webrtc/media:rtc_media",
    "//third_party/webrtc/media:rtc_vp9_profile",
    "//third_party/webrtc/modules/desktop_capture:primitives",
    "//third_party/webrtc/modules/video_capture",
    "//third_party/webrtc/modules/video_coding:video_codec_interface",
    "//third_party/webrtc/pc:libjingle_peerconnection",
    "//third_party/webrtc/rtc_base:rtc_base",
    "//third_party/webrtc/rtc_base:timeutils",
    "//third_party/webrtc/stats:rtc_stats_test_utils",
    "//third_party/webrtc_overrides",
    "//third_party/webrtc_overrides:init_webrtc",
    "//third_party/widevine/cdm:headers",
    "//ui/accessibility",
    "//ui/base:test_support",
    "//ui/base/ime",
    "//ui/compositor:test_support",
    "//ui/display",
    "//ui/display:test_support",
    "//ui/events:gesture_detection",
    "//ui/events:test_support",
    "//ui/events/blink",
    "//ui/gfx:test_support",
    "//ui/gfx/geometry",
    "//ui/gfx/geometry/mojo:struct_traits",
    "//ui/gfx/ipc",
    "//ui/gfx/ipc/skia",
    "//ui/gl",
    "//ui/gl:test_support",
    "//ui/latency:test_support",
    "//ui/shell_dialogs:shell_dialogs",
  ]

  data_deps = [
    "//testing/buildbot/filters:content_unittests_filters",
    "//third_party/mesa_headers",
  ]

  if (is_posix) {
    sources += [ "../browser/posix_file_descriptor_info_impl_unittest.cc" ]
  }

  if (enable_plugins) {
    sources += [
      "../browser/plugin_service_impl_unittest.cc",
      "../browser/renderer_host/pepper/browser_ppapi_host_test.cc",
      "../browser/renderer_host/pepper/browser_ppapi_host_test.h",
      "../browser/renderer_host/pepper/pepper_file_system_browser_host_unittest.cc",
      "../browser/renderer_host/pepper/pepper_gamepad_host_unittest.cc",
      "../browser/renderer_host/pepper/pepper_printing_host_unittest.cc",
      "../browser/renderer_host/pepper/pepper_proxy_lookup_helper_unittest.cc",
      "../browser/renderer_host/pepper/quota_reservation_unittest.cc",
      "../renderer/pepper/event_conversion_unittest.cc",
      "../renderer/pepper/host_var_tracker_unittest.cc",
      "../renderer/pepper/mock_resource.h",
      "../renderer/pepper/pepper_broker_unittest.cc",
      "../renderer/pepper/plugin_instance_throttler_impl_unittest.cc",
      "../renderer/pepper/v8_var_converter_unittest.cc",
    ]
    deps += [
      "//ppapi/host",
      "//ppapi/proxy:test_support",
      "//ppapi/shared_impl:test_support",
    ]
  }

  if (enable_library_cdms) {
    sources += [
      "../browser/media/cdm_storage_impl_unittest.cc",
      "../browser/media/key_system_support_impl_unittest.cc",
    ]
  }

  if (is_chromecast) {
    sources -= [
      "../renderer/media_recorder/audio_track_recorder_unittest.cc",
      "../renderer/media_recorder/media_recorder_handler_unittest.cc",
      "../renderer/media_recorder/video_track_recorder_unittest.cc",
    ]
  }

  # Screen capture unit tests.
  if (is_linux || is_mac || is_win) {
    defines += [ "ENABLE_SCREEN_CAPTURE=1" ]
    deps += [
      "//media/capture:test_support",
      "//third_party/libyuv",
      "//third_party/webrtc/modules/desktop_capture",
    ]
    sources += [
      "../browser/media/capture/desktop_capture_device_unittest.cc",
      "../browser/media/capture/frame_sink_video_capture_device_unittest.cc",
    ]
    if (is_chromeos) {
      sources += [
        "../browser/media/capture/lame_capture_overlay_chromeos_unittest.cc",
      ]
    }
  }

  if (is_linux) {
    if (use_dbus) {
      deps += [ "//dbus:test_support" ]
    }
  }
  if (is_win) {
    deps += [
      "//third_party/blink/public/common",
      "//third_party/blink/public/common:font_unique_name_table_proto",
      "//third_party/iaccessible2",
    ]
    libs = [
      "dwrite.lib",
      "wtsapi32.lib",
    ]
  }
  if (is_mac) {
    deps += [
      "//sandbox/mac:seatbelt",
      "//third_party/mozilla",
      "//third_party/ocmock",
      "//ui/accelerated_widget_mac",
    ]
    libs = [ "IOSurface.framework" ]
  }
  if (is_chromeos) {
    deps += [
      "//chromeos",
      "//chromeos/audio",
    ]
  }
  if (is_android) {
    sources += [
      "../browser/android/android_overlay_provider_impl_unittest.cc",
      "../browser/android/java/gin_java_method_invocation_helper_unittest.cc",
      "../browser/android/java/java_type_unittest.cc",
      "../browser/android/overscroll_controller_android_unittest.cc",
      "../browser/android/scoped_surface_request_manager_unittest.cc",
      "../browser/android/url_request_content_job_unittest.cc",
      "../browser/font_unique_name_lookup/font_unique_name_lookup_unittest.cc",
      "../browser/media/capture/screen_capture_device_android_unittest.cc",
      "../renderer/java/gin_java_bridge_value_converter_unittest.cc",
      "../renderer/media/android/stream_texture_wrapper_impl_unittest.cc",
    ]
    sources -= [
      "../browser/tracing/tracing_ui_unittest.cc",
      "../browser/webui/url_data_manager_backend_unittest.cc",
    ]

    deps += [
      "//base:base_java_unittest_support",
      "//build/config/freetype",
      "//content/public/android:content_java",
      "//media/capture/content/android",
      "//media/capture/content/android:screen_capture_java",
      "//third_party/blink/public/common",
      "//third_party/blink/public/common:font_unique_name_table_proto",
      "//ui/android:android",
    ]

    if (use_v8_context_snapshot) {
      deps += [ "//tools/v8_context_snapshot:v8_context_snapshot_assets" ]
    } else {
      deps += [ "//v8:v8_external_startup_data_assets" ]
    }

    defines += [ "APPCACHE_USE_SIMPLE_CACHE" ]
  } else {
    # Non-Android.
    sources += [
      "../browser/host_zoom_map_impl_unittest.cc",
      "../browser/speech/chunked_byte_buffer_unittest.cc",
      "../browser/speech/endpointer/endpointer_unittest.cc",
      "../browser/speech/speech_recognition_engine_unittest.cc",
      "../browser/speech/speech_recognizer_impl_unittest.cc",
    ]
    deps += [ "//third_party/libvpx" ]
  }

  # HID support is not available without udev.
  is_linux_without_udev = is_linux && !use_udev
  if (!is_linux_without_udev && !is_android) {
    sources += [ "../browser/webauth/authenticator_impl_unittest.cc" ]
    deps += [
      "//device/base",
      "//device/fido",
      "//device/fido:mocks",
      "//device/fido:test_support",
    ]
  }

  if (use_aura) {
    deps += [
      "//ui/aura:test_support",
      "//ui/aura_extra",
      "//ui/wm",
    ]
  } else {
    sources -= [
      "../browser/renderer_host/render_widget_host_view_aura_unittest.cc",
      "../browser/web_contents/aura/gesture_nav_simple_unittest.cc",
      "../browser/web_contents/web_contents_view_aura_unittest.cc",
    ]
  }

  if (use_aura || toolkit_views) {
    deps += [ "//ui/events:test_support" ]
  }
  if (!use_aura && !is_mac) {
    sources -= [
      "../browser/compositor/reflector_impl_unittest.cc",
      "../browser/compositor/software_browser_compositor_output_surface_unittest.cc",
    ]
  }

  if (!is_win && !is_mac) {
    sources -= [ "../common/plugin_list_unittest.cc" ]
  }

  if (use_ozone) {
    deps += [ "//ui/ozone" ]
  }

  if (is_mac) {
    deps += [ "//third_party/boringssl" ]
  }

  if (use_x11) {
    deps += [ "//ui/gfx/x" ]
  }
}

# Disabled on jumbo builds because of timeouts (crbug.com/882852).
if (enable_nocompile_tests && !use_jumbo_build) {
  nocompile_test("content_nocompile_tests") {
    sources = [
      "../public/browser/browser_task_traits_unittest.nc",
    ]

    deps = [
      ":run_all_unittests",
      "//base",
      "//content/public/browser",
      "//testing/gtest",
    ]
  }
}

service_manifest("content_unittests_manifest") {
  name = "content_unittests"
  source = "unittests_manifest.json"
  packaged_services = [ "//services/file:manifest" ]
}

catalog("content_unittests_catalog") {
  embedded_services = [ ":content_unittests_manifest" ]
}

catalog_cpp_source("content_unittests_catalog_source") {
  catalog = ":content_unittests_catalog"
  generated_function_name = "content::CreateContentUnittestsCatalog"
}

test("content_perftests") {
  # See comment at the top of //content/BUILD.gn for why this is disabled in
  # component builds.
  if (is_component_build) {
    check_includes = false
  }

  sources = [
    "../test/run_all_perftests.cc",
  ]
  deps = [
    "//base/test:test_support",
    "//cc",
    "//content/browser:for_content_tests",
    "//content/public/browser",
    "//content/public/common",
    "//content/test:test_support",
    "//skia",
    "//testing/gtest",
    "//testing/perf",
    "//ui/events/blink",
    "//ui/gfx",
    "//ui/gfx/geometry",

    # For TestMojoProxyResolverFactory. Remove once it moves to the network
    # service.
    "//services/service_manager/public/cpp",
  ]

  if (is_android) {
    deps += [ "//testing/android/native_test:native_test_native_code" ]
  }
}

group("fuzzers") {
  deps = [
    "//content/test/fuzzer",
  ]
}
