e6010c66创建于 2024年8月17日历史提交
# Copyright 2014 The Chromium Authors
# 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/chromeos/ui_mode.gni")
import("//build/config/compiler/compiler.gni")
import("//build/config/features.gni")
import("//build/config/ui.gni")
import("//build/nocompile.gni")
import("//components/viz/common/debugger/viz_debugger.gni")
import("//content/common/features.gni")
import("//device/vr/buildflags/buildflags.gni")
import("//media/media_options.gni")
import("//mojo/public/tools/bindings/mojom.gni")
import("//net/features.gni")
import("//ppapi/buildflags/buildflags.gni")
import("//printing/buildflags/buildflags.gni")
import("//testing/test.gni")
import("//third_party/blink/public/public_features.gni")
import("//third_party/closure_compiler/closure_args.gni")
import("//third_party/closure_compiler/compile_js.gni")
import("//tools/grit/grit_rule.gni")
import("//tools/grit/preprocess_if_expr.gni")
import("//tools/typescript/ts_library.gni")
import("//v8/gni/v8.gni")

if (is_android) {
  import("//build/config/android/rules.gni")  # For generate_jni().
}

if (is_ios) {
  import("//build/config/ios/bundle_data_from_filelist.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.
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/test_browser_accessibility_delegate.cc",
    "../browser/accessibility/test_browser_accessibility_delegate.h",
    "../browser/aggregation_service/aggregation_service_test_utils.cc",
    "../browser/aggregation_service/aggregation_service_test_utils.h",
    "../browser/attribution_reporting/attribution_interop_parser.cc",
    "../browser/attribution_reporting/attribution_interop_parser.h",
    "../browser/attribution_reporting/attribution_interop_runner.cc",
    "../browser/attribution_reporting/attribution_interop_runner.h",
    "../browser/attribution_reporting/attribution_test_utils.cc",
    "../browser/attribution_reporting/attribution_test_utils.h",
    "../browser/attribution_reporting/test/configurable_storage_delegate.cc",
    "../browser/attribution_reporting/test/configurable_storage_delegate.h",
    "../browser/attribution_reporting/test/mock_attribution_data_host_manager.cc",
    "../browser/attribution_reporting/test/mock_attribution_data_host_manager.h",
    "../browser/attribution_reporting/test/mock_attribution_host.cc",
    "../browser/attribution_reporting/test/mock_attribution_host.h",
    "../browser/attribution_reporting/test/mock_attribution_manager.cc",
    "../browser/attribution_reporting/test/mock_attribution_manager.h",
    "../browser/attribution_reporting/test/mock_attribution_observer.cc",
    "../browser/attribution_reporting/test/mock_attribution_observer.h",
    "../browser/attribution_reporting/test/mock_content_browser_client.h",
    "../browser/attribution_reporting/test/mock_data_host.cc",
    "../browser/attribution_reporting/test/mock_data_host.h",
    "../browser/attribution_reporting/test/source_observer.cc",
    "../browser/attribution_reporting/test/source_observer.h",
    "../browser/back_forward_cache_test_util.cc",
    "../browser/back_forward_cache_test_util.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/background_fetch_test_service_worker.cc",
    "../browser/background_fetch/background_fetch_test_service_worker.h",
    "../browser/background_fetch/mock_background_fetch_delegate.cc",
    "../browser/background_fetch/mock_background_fetch_delegate.h",
    "../browser/browsing_data/browsing_data_test_utils.cc",
    "../browser/browsing_data/browsing_data_test_utils.h",
    "../browser/browsing_topics/test_util.cc",
    "../browser/browsing_topics/test_util.h",
    "../browser/file_system_access/mock_file_system_access_permission_context.cc",
    "../browser/file_system_access/mock_file_system_access_permission_context.h",
    "../browser/file_system_access/mock_file_system_access_permission_grant.cc",
    "../browser/file_system_access/mock_file_system_access_permission_grant.h",
    "../browser/font_access/font_access_test_utils.cc",
    "../browser/font_access/font_access_test_utils.h",
    "../browser/interest_group/test_interest_group_observer.cc",
    "../browser/interest_group/test_interest_group_observer.h",
    "../browser/media/session/mock_media_session_player_observer.cc",
    "../browser/media/session/mock_media_session_player_observer.h",
    "../browser/media/session/mock_media_session_service_impl.cc",
    "../browser/media/session/mock_media_session_service_impl.h",
    "../browser/preloading/prefetch/prefetch_test_utils.cc",
    "../browser/preloading/prefetch/prefetch_test_utils.h",
    "../browser/presentation/presentation_test_utils.cc",
    "../browser/presentation/presentation_test_utils.h",
    "../browser/private_aggregation/private_aggregation_test_utils.cc",
    "../browser/private_aggregation/private_aggregation_test_utils.h",
    "../browser/renderer_host/document_service_echo_impl.cc",
    "../browser/renderer_host/document_service_echo_impl.h",
    "../browser/renderer_host/input/mock_input_router.cc",
    "../browser/renderer_host/input/mock_input_router.h",
    "../browser/renderer_host/mock_render_widget_host.cc",
    "../browser/renderer_host/mock_render_widget_host.h",
    "../browser/screen_details/screen_details_test_utils.cc",
    "../browser/screen_details/screen_details_test_utils.h",
    "../browser/service_worker/embedded_worker_test_helper.cc",
    "../browser/service_worker/embedded_worker_test_helper.h",
    "../browser/service_worker/fake_embedded_worker_instance_client.cc",
    "../browser/service_worker/fake_embedded_worker_instance_client.h",
    "../browser/service_worker/fake_service_worker.cc",
    "../browser/service_worker/fake_service_worker.h",
    "../browser/service_worker/service_worker_test_utils.cc",
    "../browser/service_worker/service_worker_test_utils.h",
    "../browser/service_worker/test_service_worker_observer.cc",
    "../browser/service_worker/test_service_worker_observer.h",
    "../browser/sms/test/mock_sms_provider.cc",
    "../browser/sms/test/mock_sms_provider.h",
    "../browser/sms/test/mock_sms_web_contents_delegate.cc",
    "../browser/sms/test/mock_sms_web_contents_delegate.h",
    "../browser/sms/test/mock_user_consent_handler.cc",
    "../browser/sms/test/mock_user_consent_handler.h",
    "../browser/usb/usb_test_utils.cc",
    "../browser/usb/usb_test_utils.h",
    "../browser/web_package/mock_signed_exchange_handler.cc",
    "../browser/web_package/mock_signed_exchange_handler.h",
    "../browser/web_package/signed_exchange_test_utils.h",
    "../browser/webui/test_webui_js_bridge_ui.cc",
    "../browser/webui/test_webui_js_bridge_ui.h",
    "../browser/worker_host/test_shared_worker_service_impl.cc",
    "../browser/worker_host/test_shared_worker_service_impl.h",
    "../public/test/accessibility_notification_waiter.cc",
    "../public/test/accessibility_notification_waiter.h",
    "../public/test/audio_service_test_helper.cc",
    "../public/test/audio_service_test_helper.h",
    "../public/test/back_forward_cache_util.cc",
    "../public/test/back_forward_cache_util.h",
    "../public/test/background_color_change_waiter.cc",
    "../public/test/background_color_change_waiter.h",
    "../public/test/background_sync_test_util.cc",
    "../public/test/background_sync_test_util.h",
    "../public/test/background_tracing_test_support.cc",
    "../public/test/background_tracing_test_support.h",
    "../public/test/blink_test_environment.cc",
    "../public/test/blink_test_environment.h",
    "../public/test/bluetooth_test_utils.cc",
    "../public/test/bluetooth_test_utils.h",
    "../public/test/browser_task_environment.cc",
    "../public/test/browser_task_environment.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/browsing_topics_test_util.cc",
    "../public/test/browsing_topics_test_util.h",
    "../public/test/commit_message_delayer.cc",
    "../public/test/commit_message_delayer.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/cursor_utils.cc",
    "../public/test/cursor_utils.h",
    "../public/test/download_test_observer.cc",
    "../public/test/download_test_observer.h",
    "../public/test/embedded_worker_instance_test_harness.cc",
    "../public/test/embedded_worker_instance_test_harness.h",
    "../public/test/fake_download_item.cc",
    "../public/test/fake_download_item.h",
    "../public/test/fake_file_system_access_permission_context.cc",
    "../public/test/fake_file_system_access_permission_context.h",
    "../public/test/fake_frame_widget.cc",
    "../public/test/fake_frame_widget.h",
    "../public/test/fake_local_frame.cc",
    "../public/test/fake_local_frame.h",
    "../public/test/fake_remote_frame.cc",
    "../public/test/fake_remote_frame.h",
    "../public/test/fake_render_widget_host.cc",
    "../public/test/fake_render_widget_host.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/fenced_frame_test_util.cc",
    "../public/test/fenced_frame_test_util.h",
    "../public/test/file_system_chooser_test_helpers.cc",
    "../public/test/file_system_chooser_test_helpers.h",
    "../public/test/find_test_utils.cc",
    "../public/test/find_test_utils.h",
    "../public/test/focus_changed_observer.cc",
    "../public/test/focus_changed_observer.h",
    "../public/test/frame_load_waiter.cc",
    "../public/test/frame_load_waiter.h",
    "../public/test/frame_test_utils.cc",
    "../public/test/frame_test_utils.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/local_frame_host_interceptor.cc",
    "../public/test/local_frame_host_interceptor.h",
    "../public/test/local_network_access_util.cc",
    "../public/test/local_network_access_util.h",
    "../public/test/media_start_stop_observer.cc",
    "../public/test/media_start_stop_observer.h",
    "../public/test/mock_browsing_data_remover_delegate.cc",
    "../public/test/mock_browsing_data_remover_delegate.h",
    "../public/test/mock_client_hints_controller_delegate.h",
    "../public/test/mock_devtools_agent_host.cc",
    "../public/test/mock_devtools_agent_host.h",
    "../public/test/mock_download_manager.cc",
    "../public/test/mock_download_manager.h",
    "../public/test/mock_media_session.cc",
    "../public/test/mock_media_session.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_controller.cc",
    "../public/test/mock_permission_controller.h",
    "../public/test/mock_permission_manager.cc",
    "../public/test/mock_permission_manager.h",
    "../public/test/mock_policy_container_host.cc",
    "../public/test/mock_policy_container_host.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/mock_web_contents_observer.cc",
    "../public/test/mock_web_contents_observer.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/no_renderer_crashes_assertion.cc",
    "../public/test/no_renderer_crashes_assertion.h",
    "../public/test/permissions_test_utils.cc",
    "../public/test/permissions_test_utils.h",
    "../public/test/policy_container_utils.cc",
    "../public/test/policy_container_utils.h",
    "../public/test/preloading_test_util.cc",
    "../public/test/preloading_test_util.h",
    "../public/test/prerender_test_util.cc",
    "../public/test/prerender_test_util.h",
    "../public/test/render_frame_host_test_support.cc",
    "../public/test/render_frame_host_test_support.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/scoped_page_focus_override.cc",
    "../public/test/scoped_page_focus_override.h",
    "../public/test/scoped_time_zone.cc",
    "../public/test/scoped_time_zone.h",
    "../public/test/scoped_web_ui_controller_factory_registration.cc",
    "../public/test/scoped_web_ui_controller_factory_registration.h",
    "../public/test/service_worker_host_interceptor.cc",
    "../public/test/service_worker_host_interceptor.h",
    "../public/test/service_worker_test_helpers.cc",
    "../public/test/service_worker_test_helpers.h",
    "../public/test/shared_storage_test_utils.cc",
    "../public/test/shared_storage_test_utils.h",
    "../public/test/signed_exchange_browser_test_helper.cc",
    "../public/test/signed_exchange_browser_test_helper.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/slow_http_response.cc",
    "../public/test/slow_http_response.h",
    "../public/test/test_aggregation_service.cc",
    "../public/test/test_aggregation_service.h",
    "../public/test/test_browser_context.cc",
    "../public/test/test_browser_context.h",
    "../public/test/test_cert_verifier_service_factory.cc",
    "../public/test/test_cert_verifier_service_factory.h",
    "../public/test/test_content_client_initializer.cc",
    "../public/test/test_content_client_initializer.h",
    "../public/test/test_devtools_protocol_client.cc",
    "../public/test/test_devtools_protocol_client.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_renderer_host.cc",
    "../public/test/test_renderer_host.h",
    "../public/test/test_select_url_fenced_frame_config_observer.h",
    "../public/test/test_storage_partition.cc",
    "../public/test/test_storage_partition.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/test_web_ui_listener_observer.cc",
    "../public/test/test_web_ui_listener_observer.h",
    "../public/test/text_input_test_utils.cc",
    "../public/test/text_input_test_utils.h",
    "../public/test/theme_change_waiter.cc",
    "../public/test/theme_change_waiter.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/url_loader_monitor.cc",
    "../public/test/url_loader_monitor.h",
    "../public/test/web_contents_tester.cc",
    "../public/test/web_contents_tester.h",
    "../public/test/web_transport_simple_test_server.cc",
    "../public/test/web_transport_simple_test_server.h",
    "../public/test/web_ui_browsertest_util.cc",
    "../public/test/web_ui_browsertest_util.h",
    "../renderer/mock_agent_scheduling_group.cc",
    "../renderer/mock_agent_scheduling_group.h",
    "content_browser_consistency_checker.cc",
    "content_browser_consistency_checker.h",
    "content_test_suite.cc",
    "content_test_suite.h",
    "did_commit_navigation_interceptor.cc",
    "did_commit_navigation_interceptor.h",
    "fake_network.cc",
    "fake_network.h",
    "fake_network_url_loader_factory.cc",
    "fake_network_url_loader_factory.h",
    "fake_renderer_compositor_frame_sink.cc",
    "fake_renderer_compositor_frame_sink.h",
    "fenced_frame_test_utils.cc",
    "fenced_frame_test_utils.h",
    "frame_host_interceptor.cc",
    "frame_host_interceptor.h",
    "gpu_browsertest_helpers.cc",
    "gpu_browsertest_helpers.h",
    "io_thread_shared_url_loader_factory_owner.cc",
    "io_thread_shared_url_loader_factory_owner.h",
    "mock_agent_scheduling_group_host.cc",
    "mock_agent_scheduling_group_host.h",
    "mock_background_sync_controller.cc",
    "mock_background_sync_controller.h",
    "mock_badge_service.cc",
    "mock_badge_service.h",
    "mock_client_hints_controller_delegate.cc",
    "mock_clipboard_host.cc",
    "mock_clipboard_host.h",
    "mock_commit_deferring_condition.cc",
    "mock_commit_deferring_condition.h",
    "mock_display_feature.cc",
    "mock_display_feature.h",
    "mock_keyboard.cc",
    "mock_keyboard.h",
    "mock_overscroll_observer.h",
    "mock_platform_notification_service.cc",
    "mock_platform_notification_service.h",
    "mock_reduce_accept_language_controller_delegate.cc",
    "mock_reduce_accept_language_controller_delegate.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_widget.cc",
    "mock_widget.h",
    "mock_widget_input_handler.cc",
    "mock_widget_input_handler.h",
    "navigation_simulator_impl.cc",
    "navigation_simulator_impl.h",
    "portal/portal_activated_observer.cc",
    "portal/portal_activated_observer.h",
    "portal/portal_created_observer.cc",
    "portal/portal_created_observer.h",
    "portal/portal_interceptor_for_testing.cc",
    "portal/portal_interceptor_for_testing.h",
    "render_document_feature.cc",
    "render_document_feature.h",
    "render_widget_host_visibility_observer.cc",
    "render_widget_host_visibility_observer.h",
    "storage_partition_test_helpers.cc",
    "storage_partition_test_helpers.h",
    "stub_render_view_host_delegate_view.h",
    "stub_render_widget_host_owner_delegate.cc",
    "stub_render_widget_host_owner_delegate.h",
    "task_runner_deferring_throttle.cc",
    "task_runner_deferring_throttle.h",
    "test_aggregation_service_impl.cc",
    "test_aggregation_service_impl.h",
    "test_background_sync_context.cc",
    "test_background_sync_context.h",
    "test_background_sync_manager.cc",
    "test_background_sync_manager.h",
    "test_background_sync_proxy.cc",
    "test_background_sync_proxy.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_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_page.cc",
    "test_page.h",
    "test_page_broadcast.cc",
    "test_page_broadcast.h",
    "test_page_factory.cc",
    "test_page_factory.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_select_url_fenced_frame_config_observer_impl.cc",
    "test_select_url_fenced_frame_config_observer_impl.h",
    "test_web_contents.cc",
    "test_web_contents.h",
    "test_web_contents_factory.cc",
    "web_contents_observer_consistency_checker.cc",
    "web_contents_observer_consistency_checker.h",
    "web_contents_observer_test_utils.cc",
    "web_contents_observer_test_utils.h",
  ]

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

  public_deps = [
    ":test_interfaces",
    "//components/attribution_reporting:test_support",
    "//components/download/public/common:test_support",
    "//components/services/filesystem/public/mojom",
    "//components/services/storage/public/cpp",
    "//components/services/storage/public/mojom",
    "//content/public/app",
    "//content/public/browser",
    "//content/public/common",
    "//content/public/utility",
    "//ipc",
    "//media/mojo/clients",
    "//media/mojo/mojom",
    "//services/media_session/public/cpp/test:test_support",
    "//services/media_session/public/mojom",
    "//third_party/abseil-cpp:absl",
    "//third_party/blink/public:blink",
    "//third_party/blink/public:test_support",
    "//third_party/blink/public/common:headers",
    "//third_party/blink/public/strings:accessibility_strings",
    "//third_party/blink/public/strings:strings_grit",
    "//ui/gl:test_support",
  ]

  deps = [
    ":content_test_mojo_bindings",
    "//base/third_party/dynamic_annotations",
    "//build:chromeos_buildflags",
    "//cc:test_support",
    "//components/aggregation_service:mojom",
    "//components/attribution_reporting:mojom",
    "//components/attribution_reporting:source_type_mojom",
    "//components/breadcrumbs/core",
    "//components/browsing_topics/common:common",
    "//components/network_session_configurator/common:common",
    "//components/services/storage",
    "//components/startup_metric_utils/browser",
    "//components/ukm:test_support",
    "//components/variations",
    "//components/viz/client",
    "//components/viz/host",
    "//components/web_package/test_support",
    "//content/app:for_content_tests",
    "//content/browser:for_content_tests",
    "//content/browser/attribution_reporting:attribution_reporting_proto",
    "//content/browser/attribution_reporting:mojo_bindings",
    "//content/browser/attribution_reporting:store_source_result_mojom",
    "//content/child:for_content_tests",
    "//content/common:for_content_tests",
    "//content/gpu",
    "//content/public/browser",
    "//content/public/browser:proto",
    "//content/public/child",
    "//content/public/common",
    "//content/public/renderer",
    "//content/public/utility",
    "//content/renderer:for_content_tests",
    "//content/shell:pak",
    "//content/utility:for_content_tests",
    "//device/base/synchronization",
    "//google_apis",
    "//gpu/ipc:gl_in_process_context",
    "//ipc:test_sink",
    "//media",
    "//media/capture",
    "//media/capture/mojom:image_capture",
    "//mojo/core/embedder",
    "//mojo/public/cpp/test_support:test_utils",
    "//net:quic_test_tools",
    "//net:simple_quic_tools",
    "//net:test_support",
    "//services/audio",
    "//services/audio/public/mojom",
    "//services/cert_verifier:lib",
    "//services/data_decoder/public/cpp:test_support",
    "//services/data_decoder/public/mojom",
    "//services/device/public/mojom",
    "//services/device/public/mojom:usb",
    "//services/metrics/public/cpp:metrics_cpp",
    "//storage/browser/quota:mojo_bindings",

    # 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/cpp:test_support",
    "//services/network/public/mojom",
    "//services/proxy_resolver:lib",
    "//services/service_manager/public/cpp",
    "//services/viz/public/cpp/gpu",
    "//services/viz/public/mojom",
    "//skia",
    "//storage/browser",
    "//storage/browser:test_support",
    "//storage/common",
    "//testing/gmock",
    "//testing/gtest",
    "//third_party/blink/public/strings:accessibility_strings",
    "//third_party/blink/public/strings:strings_grit",
    "//third_party/webrtc_overrides:webrtc_component",
    "//tools/v8_context_snapshot:buildflags",
    "//ui/accessibility:ax_enums_mojo",
    "//ui/base",
    "//ui/base:test_support",
    "//ui/base:ui_data_pack",
    "//ui/base/clipboard",
    "//ui/base/clipboard:clipboard_test_support",
    "//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/native_theme",
    "//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) {
    sources += [
      "../public/test/test_synchronous_compositor_android.cc",
      "../public/test/test_synchronous_compositor_android.h",
      "test_view_android_delegate.cc",
      "test_view_android_delegate.h",
    ]
    deps += [
      ":content_unittests_jni_headers",
      "//content/shell:android_shell_descriptors",
      "//mojo/public/java/system:native_support",
      "//testing/android/native_test:native_browser_test_support",
    ]
  } else {
    sources += [
      "../browser/serial/serial_test_utils.cc",
      "../browser/serial/serial_test_utils.h",
    ]
  }

  # HID support is not available without udev.
  is_linux_without_udev = (is_linux || is_chromeos) && !use_udev
  if (!is_linux_without_udev && !is_android) {
    sources += [
      "../browser/hid/hid_test_utils.cc",
      "../browser/hid/hid_test_utils.h",
    ]
  }

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

  if (use_atk) {
    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_apple) {
    deps += [
      "//components/viz/common",
      "//components/viz/host",
      "//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) {
    sources += [
      "../browser/renderer_host/test_render_widget_host_view_mac_factory.h",
      "../browser/renderer_host/test_render_widget_host_view_mac_factory.mm",
      "../public/test/browser_test_utils_mac.mm",
      "../public/test/text_input_test_utils_mac.mm",
    ]
    deps += [
      "//ui/base/mojom",
      "//ui/views:test_support",
    ]
  }

  if (is_ios) {
    sources += [
      "../browser/renderer_host/test_render_widget_host_view_ios_factory.h",
      "../browser/renderer_host/test_render_widget_host_view_ios_factory.mm",
    ]
  }

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

  if (is_win) {
    sources += [
      "dwrite_font_fake_sender_win.cc",
      "dwrite_font_fake_sender_win.h",
      "mock_keyboard_driver_win.cc",
      "mock_keyboard_driver_win.h",
    ]
    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 += [
      "//components/discardable_memory/service",
      "//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",
    ]
  }

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

  if (enable_vr) {
    sources += [
      "../public/test/xr_test_utils.cc",
      "../public/test/xr_test_utils.h",
    ]
  }

  if (is_chromeos_lacros) {
    deps += [
      "//chromeos/crosapi/cpp",
      "//chromeos/crosapi/cpp:crosapi_constants",
      "//chromeos/lacros",
      "//chromeos/lacros:test_support",
      "//chromeos/startup:constants",
    ]
  }

  if (is_linux || is_chromeos) {
    sources += [
      "sandbox_status_service.cc",
      "sandbox_status_service.h",
    ]
  }

  if (is_chromeos) {
    sources += [
      "../browser/smart_card/mock_smart_card_context_factory.cc",
      "../browser/smart_card/mock_smart_card_context_factory.h",
    ]
  }

  if (is_fuchsia) {
    public_deps += [ "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.mediacodec:fuchsia.mediacodec_hlcpp" ]
  }
}

# Fuchsia performance tests on smart displays use web_engine and a browser
# like shell instead of an actual browser, so Fuchsia needs a separate target.
if (is_fuchsia) {
  # TODO(crbug.com/1310086): Split this test suite into chrome/WebEngine
  # versions.
  # TODO(crbug.com/1309686): Move WebEngine-specific suites to //fuchsia_web/webengine/
  group("performance_web_engine_test_suite") {
    testonly = true
    data = [ "//content/test/gpu/run_telemetry_benchmark_fuchsia.py" ]
    data_deps = [
      ":fuchsia_telemetry_test_data",
      ":telemetry_gpu_integration_test_data",
      "//base:base_perftests",
      "//chrome/test:sync_performance_tests",
      "//testing:run_perf_test",
      "//tools/perf/:perf",
    ]
  }
  group("fuchsia_telemetry_test_data") {
    testonly = true
    data = [ "//content/test/gpu/fuchsia_util.py" ]
    if (fuchsia_browser_type == "web_engine_shell") {
      data += [
        "$root_gen_dir/package_metadata/web_engine_shell.meta",
        "$root_gen_dir/package_metadata/web_engine_with_webui.meta",
      ]
      if (enable_cast_receiver) {
        data += [ "$root_gen_dir/package_metadata/cast_streaming_shell.meta" ]
      }

      data_deps = [
        "//fuchsia_web/shell",
        "//fuchsia_web/webengine:web_engine_with_webui_installer",
      ]
    } else {
      data += [ "$root_gen_dir/package_metadata/chrome.meta" ]
      data_deps = [ "//chrome/app:chrome_fuchsia" ]
    }
  }
}

group("telemetry_gpu_integration_test_scripts_only") {
  testonly = true
  if (!is_ohos) {
    deps = [ "//tools/perf/chrome_telemetry_build:telemetry_chrome_test_without_chrome" ]
  }

  data = [ "//testing/scripts/run_isolated_script_test.py" ]
  data_deps = [
    ":telemetry_gpu_integration_test_data",
    "//testing:test_scripts_shared",
  ]
}

group("telemetry_gpu_integration_test_support") {
  testonly = true
  data = [
    # For the Maps performance test. Include individual files since including
    # the full directory can include a .fetchts file, which affects swarming's
    # ability to dedupe tasks.
    "//tools/perf/page_sets/maps_perf_test/config.js",
    "//tools/perf/page_sets/maps_perf_test/load_dataset",
    "//tools/perf/page_sets/maps_perf_test/load_dataset.sha1",
    "//tools/perf/page_sets/maps_perf_test/performance.html",
    "//tools/perf/page_sets/maps_perf_test/tracked.js",
    "//tools/perf/page_sets/maps_perf_test/worker.js",

    # For GpuProcess.video
    "//content/test/data/media/bear.ogv",

    # For webgl_conformance
    "//third_party/webgl/",

    # For pixel_test and trace_test
    "//media/test/data/four-colors.mp4",
    "//media/test/data/four-colors.y4m",
    "//media/test/data/four-colors-aspect-4x3.mp4",
    "//media/test/data/four-colors-rot-90.mp4",
    "//media/test/data/four-colors-rot-180.mp4",
    "//media/test/data/four-colors-rot-270.mp4",
    "//media/test/data/four-colors-vp9.webm",
    "//media/test/data/four-colors-vp9-i420a.webm",
    "//media/test/data/four-colors-incompatible-stride.y4m",

    # For power
    "//media/test/data/bear-1280x720.mp4",

    # For Skia Gold pixel test functionality.
    "//build/skia_gold_common/",

    # For isolate contract.
    "//testing/scripts/gpu_integration_test_adapter.py",
    "//testing/scripts/run_gpu_integration_test_as_googletest.py",
  ]

  data_deps = [
    ":telemetry_gpu_integration_test_data",

    # For anything using Skia Gold (pixel, maps).
    "//ui/base:goldctl",
  ]
}

group("webgpu_cts_scripts") {
  testonly = true
  data = [
    "//third_party/node/",
    "//third_party/dawn/webgpu-cts/scripts/",
    "//third_party/dawn/third_party/webgpu-cts/src/",
    "//third_party/dawn/third_party/webgpu-cts/node.tsconfig.json",
    "//third_party/dawn/third_party/webgpu-cts/tsconfig.json",
  ]
}

group("telemetry_gpu_common_data") {
  testonly = true
  data = [
    "//content/test/data/gpu/",
    "//content/test/gpu/gpu_path_util/",
    "//content/test/gpu/gpu_tests/",
    "//content/test/gpu/unittest_data/",

    "//third_party/dawn/webgpu-cts/",

    "//content/test/gpu/gpu_project_config.py",
    "//content/test/gpu/run_gpu_integration_test.py",
  ]
  data_deps = [
    # For WebGPU CTS tests.
    "//third_party/dawn/webgpu-cts",
  ]
}

group("telemetry_gpu_unittest_data") {
  testonly = true
  data = [ "//content/test/gpu/run_unittests.py" ]
  data_deps = [ ":telemetry_gpu_common_data" ]
}

group("telemetry_gpu_integration_test_data") {
  testonly = true
  data = [
    "//content/test/gpu/gold_inexact_matching/",
    "//content/test/gpu/power_measurement_results/",

    "//content/test/gpu/measure_power_intel.py",
    "//content/test/gpu/run_gpu_integration_test.py",
  ]
  data_deps = [ ":telemetry_gpu_common_data" ]
}

# browsertest_support can be used by targets that run content_shell based
# browser tests.
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 = [
    "../browser/browsing_data/browsing_data_browsertest_utils.cc",
    "../browser/browsing_data/browsing_data_browsertest_utils.h",
    "../browser/browsing_data/shared_storage_clear_site_data_tester.cc",
    "../browser/browsing_data/shared_storage_clear_site_data_tester.h",
    "../browser/browsing_data/storage_bucket_clear_site_data_tester.cc",
    "../browser/browsing_data/storage_bucket_clear_site_data_tester.h",
    "../public/test/content_browser_test.cc",
    "../public/test/content_browser_test.h",
    "../public/test/content_browser_test_content_browser_client.cc",
    "../public/test/content_browser_test_content_browser_client.h",
    "../public/test/content_browser_test_shell_main_delegate.cc",
    "../public/test/content_browser_test_shell_main_delegate.h",
    "../public/test/content_browser_test_utils.cc",
    "../public/test/content_browser_test_utils.h",
    "../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",
    "resource_load_observer.cc",
    "resource_load_observer.h",
  ]

  public_deps = [
    "//base",
    "//skia",
    "//testing/gmock",
    "//testing/gtest",
  ]

  deps = [
    ":test_support",
    "//base:i18n",
    "//base/test:test_config",
    "//base/test:test_support",
    "//build:chromeos_buildflags",
    "//components/network_session_configurator/common:common",
    "//components/services/storage:storage",
    "//content/app:for_content_tests",
    "//content/browser:for_content_tests",
    "//content/shell:content_shell_app",
    "//content/shell:content_shell_lib",
    "//gin",
    "//media",
    "//net",
    "//net:test_support",
    "//ui/accessibility:ax_enums_mojo",
    "//ui/base",
    "//ui/base/ime/init",
  ]

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

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

  if (is_mac) {
    sources += [ "../public/test/content_browser_test_utils_mac.mm" ]
    deps += [ "//ui/base/mojom" ]
  }

  if (is_chromeos_lacros) {
    deps += [ "//chromeos/lacros:lacros" ]
  }

  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",
    "test_mojo_binder_policy_applier_unittest.mojom",
  ]
  public_deps = [
    "//mojo/public/mojom/base",
    "//url/mojom:url_mojom_gurl",
  ]
}

mojom("web_ui_test_mojo_bindings") {
  testonly = true
  sources = [
    "data/web_ui_managed_interface_test.test-mojom",
    "data/web_ui_test.test-mojom",
    "data/web_ui_test_types.test-mojom",
  ]
  public_deps = [ "//url/mojom:url_mojom_gurl" ]
  webui_module_path = "/content/test/data"
}

# Closure compilation is only used on Ash. See below for TypeScript targets
# which are used across platforms.
if (is_chromeos_ash) {
  js_library("web_ui_mojo_test_js") {
    sources = [ "data/web_ui_mojo_test.js" ]
    deps = [ ":web_ui_test_mojo_bindings_webui_js" ]
  }

  # NOTE: Building this target serves as a compile test for type-checking of
  # WebUI JS that consumes generated Mojom JS bindings.
  js_type_check("web_ui_mojo_test_js_type_check") {
    deps = [ ":web_ui_mojo_test_js" ]
    closure_flags = default_closure_args + mojom_js_args
  }
}

mojom("web_ui_ts_test_mojo_bindings") {
  testonly = true
  sources = [
    "data/web_ui_ts_test.test-mojom",
    "data/web_ui_ts_test_types.test-mojom",
  ]
  public_deps = [ "//url/mojom:url_mojom_gurl" ]
  webui_module_path = "/content/test/data"
  use_typescript_sources = true
}

preprocess_if_expr("preprocess_mojo_webui_test") {
  in_folder = "./data"
  out_folder = "$target_gen_dir/data"
  in_files = [ "web_ui_mojo_ts_test.ts" ]
}

ts_library("web_ui_mojo_test_build_ts") {
  root_dir = "$target_gen_dir/data"
  out_dir = "$target_gen_dir/data/tsc"
  in_files = [
    "web_ui_mojo_ts_test.ts",
    "web_ui_ts_test.test-mojom-webui.ts",
    "web_ui_ts_test_types.test-mojom-webui.ts",
  ]
  deps = [ "//ui/webui/resources/mojo:build_ts" ]
  extra_deps = [
    ":preprocess_mojo_webui_test",
    ":web_ui_ts_test_mojo_bindings_ts__generator",
  ]
}

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.test-mojom" ]
  if (is_linux || is_chromeos) {
    sources += [ "sandbox_status.test-mojom" ]
  }
}

mojom("mojo_bindings_web_test_mojom") {
  testonly = true
  sources = [
    "data/mojo_bindings_web_test.test-mojom",
    "data/mojo_bindings_web_test_types.test-mojom",
  ]
  scramble_message_ids = false
  js_generate_struct_deserializers = true
}

if (is_android) {
  static_library("android_test_message_pump_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_deps = [ "//base" ]

    deps = [ "//content/public/test/android:test_support_content_jni_headers" ]
  }
}

static_library("blink_test_browser_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/blink_test_browser_support.h",
    "blink_test_browser_support.cc",
  ]

  deps = [
    "//content/browser:for_content_tests",
    "//content/public/browser",
    "//content/public/common",
    "//skia",
  ]
}

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

  content_browsertests_manifest =
      "${target_gen_dir}/content_browsertests_manifest/AndroidManifest.xml"

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

  generate_jni("content_browsertests_jni_headers") {
    testonly = true
    sources = [ "//content/public/android/javatests/src/org/chromium/content/browser/fakes/TestViewAndroidDelegate.java" ]
  }

  android_library("content_browsertests_java") {
    testonly = true
    resources_package = "org.chromium.content_browsertests_apk"
    sources = [
      "../shell/android/browsertests_apk/src/org/chromium/content_browsertests_apk/ContentBrowserTestsActivity.java",
      "../shell/android/browsertests_apk/src/org/chromium/content_browsertests_apk/ContentBrowserTestsApplication.java",
      "//content/public/android/javatests/src/org/chromium/content/browser/fakes/TestViewAndroidDelegate.java",
    ]
    deps = [
      ":content_browsertests_manifest",
      ":content_browsertests_resources",
      "//base:base_java",
      "//base:base_java_test_support",
      "//base:jni_java",
      "//components/download/internal/common:internal_java",
      "//components/metrics:metrics_java",
      "//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
    sources = [
      "//content/shell/android/browsertests_apk/res/layout/test_activity.xml",
      "//content/shell/android/browsertests_apk/res/xml/file_paths.xml",
    ]
  }
}

test("content_browsertests") {
  use_xvfb = use_xvfb_in_this_config

  # 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/content_main_runner_impl_browsertest.cc",
    "../app/mojo/mojo_browsertest.cc",
    "../browser/accessibility/accessibility_action_browsertest.cc",
    "../browser/accessibility/accessibility_content_browsertest.cc",
    "../browser/accessibility/accessibility_content_browsertest.h",
    "../browser/accessibility/accessibility_ipc_error_browsertest.cc",
    "../browser/accessibility/accessibility_mode_browsertest.cc",
    "../browser/accessibility/aom_browsertest.cc",
    "../browser/accessibility/browser_accessibility_state_impl_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_node_browsertest.cc",
    "../browser/accessibility/dump_accessibility_scripts_browsertest.cc",
    "../browser/accessibility/dump_accessibility_tree_browsertest.cc",
    "../browser/accessibility/dump_accessibility_tree_browsertest.h",
    "../browser/accessibility/fullscreen_browsertest.cc",
    "../browser/accessibility/hit_testing_browsertest.cc",
    "../browser/accessibility/hit_testing_browsertest.h",
    "../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/aggregation_service/aggregation_service_internals_browsertest.cc",
    "../browser/attribution_reporting/attribution_internals_browsertest.cc",
    "../browser/attribution_reporting/attribution_src_browsertest.cc",
    "../browser/attribution_reporting/attributions_browsertest.cc",
    "../browser/attribution_reporting/privacy_sandbox_ads_apis_browsertest.cc",
    "../browser/attribution_reporting/source_declaration_browsertest.cc",
    "../browser/attribution_reporting/trigger_registration_browsertest.cc",
    "../browser/back_forward_cache_basics_browsertest.cc",
    "../browser/back_forward_cache_browsertest.cc",
    "../browser/back_forward_cache_browsertest.h",
    "../browser/back_forward_cache_features_browsertest.cc",
    "../browser/back_forward_cache_internal_browsertest.cc",
    "../browser/back_forward_cache_network_request_browsertest.cc",
    "../browser/back_forward_cache_no_store_browsertest.cc",
    "../browser/back_forward_cache_not_restored_reasons_browsertest.cc",
    "../browser/background_sync/background_sync_base_browsertest.cc",
    "../browser/background_sync/background_sync_base_browsertest.h",
    "../browser/background_sync/one_shot_background_sync_browsertest.cc",
    "../browser/background_sync/periodic_background_sync_browsertest.cc",
    "../browser/battery_monitor_browsertest.cc",
    "../browser/blob_storage/blob_storage_browsertest.cc",
    "../browser/blob_storage/blob_url_browsertest.cc",
    "../browser/bluetooth/web_bluetooth_service_impl_browsertest.cc",
    "../browser/bookmarklet_browsertest.cc",
    "../browser/browser_child_process_observer_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/browsing_topics/browsing_topics_browsertest.cc",
    "../browser/child_process_launcher_browsertest.cc",
    "../browser/child_process_security_policy_browsertest.cc",
    "../browser/content_index/content_index_browsertest.cc",
    "../browser/content_security_policy_browsertest.cc",
    "../browser/cross_origin_opener_policy_browsertest.cc",
    "../browser/cross_site_transfer_browsertest.cc",
    "../browser/data_decoder_browsertest.cc",
    "../browser/database_browsertest.cc",
    "../browser/device_posture/device_posture_browsertest.cc",
    "../browser/device_sensors/device_sensor_browsertest.cc",
    "../browser/devtools/devtools_issue_storage_browsertest.cc",
    "../browser/devtools/devtools_trust_token_browsertest.cc",
    "../browser/devtools/devtools_video_consumer_browsertest.cc",
    "../browser/devtools/protocol/devtools_network_resource_loader_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/direct_sockets/direct_sockets_test_utils.cc",
    "../browser/direct_sockets/direct_sockets_test_utils.h",
    "../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/fenced_frame/fenced_frame_browsertest.cc",
    "../browser/file_system/file_system_browsertest.cc",
    "../browser/file_system/file_system_url_drag_drop_browsertest.cc",
    "../browser/file_system/file_system_url_loader_factory_browsertest.cc",
    "../browser/file_system/fileapi_browsertest.cc",
    "../browser/file_system_access/file_system_access_capacity_allocation_host_impl_browsertest.cc",
    "../browser/find_request_manager_browsertest.cc",
    "../browser/font_access/font_access_manager_browsertest.cc",
    "../browser/font_unique_name_lookup/font_unique_name_browsertest.cc",
    "../browser/form_controls_browsertest.cc",
    "../browser/generic_sensor/generic_sensor_browsertest.cc",
    "../browser/gpu/gpu_ipc_browsertests.cc",
    "../browser/gpu/in_process_gpu_thread_browsertests.cc",
    "../browser/gpu/peak_gpu_memory_tracker_impl_browsertest.cc",
    "../browser/host_zoom_map_impl_browsertest.cc",
    "../browser/indexed_db/indexed_db_browsertest.cc",
    "../browser/indexed_db/indexed_db_feature_observer_browsertest.cc",
    "../browser/interest_group/interest_group_browsertest.cc",
    "../browser/isolated_origin_browsertest.cc",
    "../browser/keyboard_lock_browsertest.cc",
    "../browser/keyboard_lock_browsertest.h",
    "../browser/largest_contentful_paint_browsertests.cc",
    "../browser/loader/cors_file_origin_browsertest.cc",
    "../browser/loader/cors_origin_pattern_setter_browsertest.cc",
    "../browser/loader/cors_preflight_cache_browsertest.cc",
    "../browser/loader/cross_site_document_blocking_browsertest.cc",
    "../browser/loader/derived_origin_in_fetch_browsertest.cc",
    "../browser/loader/file_url_loader_factory_browsertest.cc",
    "../browser/loader/keep_alive_url_browsertest.cc",
    "../browser/loader/loader_browsertest.cc",
    "../browser/loader/navigation_early_hints_browsertest.cc",
    "../browser/loader/prefetch_browsertest.cc",
    "../browser/loader/prefetch_browsertest_base.cc",
    "../browser/loader/prefetch_browsertest_base.h",
    "../browser/loader/reload_cache_control_browsertest.cc",
    "../browser/loader/resource_cache_browsertest.cc",
    "../browser/loader/resource_scheduler_browsertest.cc",
    "../browser/locks/lock_manager_browsertest.cc",
    "../browser/manifest/manifest_browsertest.cc",
    "../browser/media/encrypted_media_browsertest.cc",
    "../browser/media/fullscreen_video_detection_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/navigation_mhtml_browsertest.cc",
    "../browser/net_info_browsertest.cc",
    "../browser/network/accept_header_browsertest.cc",
    "../browser/network/dns_https_protocol_upgrade_browsertest.cc",
    "../browser/network/http_cookie_browsertest.cc",
    "../browser/network/network_field_trial_browsertest.cc",
    "../browser/network/network_service_memory_cache_browsertest.cc",
    "../browser/network/sandboxed_http_cache_browsertest.cc",
    "../browser/network/sandboxed_nqe_browsertest.cc",
    "../browser/network/sandboxed_socket_broker_browsertest.cc",
    "../browser/network/split_cache_browsertest.cc",
    "../browser/network/transferable_socket_browsertest.cc",
    "../browser/network/trust_token_browsertest.cc",
    "../browser/network/trust_token_browsertest.h",
    "../browser/network/trust_token_origin_trial_browsertest.cc",
    "../browser/network/trust_token_parameters_browsertest.cc",
    "../browser/network_service_browsertest.cc",
    "../browser/network_service_restart_browsertest.cc",
    "../browser/origin_trials/origin_trials_browsertest.cc",
    "../browser/payments/payment_app_browsertest.cc",
    "../browser/performance_memory_browsertest.cc",
    "../browser/performance_timeline_browsertest.cc",
    "../browser/picture_in_picture/video_picture_in_picture_content_browsertest.cc",
    "../browser/pointer_lock_browsertest.cc",
    "../browser/pointer_lock_browsertest.h",
    "../browser/portal/portal_browsertest.cc",
    "../browser/portal/portal_navigation_throttle_browsertest.cc",
    "../browser/power_monitor_browsertest.cc",
    "../browser/preloading/anchor_element_interaction_browsertest.cc",
    "../browser/preloading/prerender/prerender_browsertest.cc",
    "../browser/process_internals/process_internals_browsertest.cc",
    "../browser/quota/quota_browsertest.cc",
    "../browser/quota/quota_change_browsertest.cc",
    "../browser/quota/quota_internals_browsertest.cc",
    "../browser/renderer_host/ancestor_throttle_browsertest.cc",
    "../browser/renderer_host/back_forward_cache_metrics_browsertest.cc",
    "../browser/renderer_host/blocked_scheme_navigation_browsertest.cc",
    "../browser/renderer_host/browsing_context_group_swap_browsertest.cc",
    "../browser/renderer_host/close_listener_host_browsertest.cc",
    "../browser/renderer_host/cookie_browsertest.cc",
    "../browser/renderer_host/document_service_browsertest.cc",
    "../browser/renderer_host/document_token_browsertest.cc",
    "../browser/renderer_host/document_user_data_browsertest.cc",
    "../browser/renderer_host/embedding_token_browsertest.cc",
    "../browser/renderer_host/frame_tree_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/double_tap_to_zoom_browsertest.cc",
    "../browser/renderer_host/input/event_latency_aura_browsertest.cc",
    "../browser/renderer_host/input/fling_browsertest.cc",
    "../browser/renderer_host/input/input_event_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_behavior_browsertest.cc",
    "../browser/renderer_host/input/scroll_latency_browsertest.cc",
    "../browser/renderer_host/input/synthetic_input_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/isolated_web_app_throttle_browsertest.cc",
    "../browser/renderer_host/media/video_capture_browsertest.cc",
    "../browser/renderer_host/navigation_controller_history_intervention_browsertest.cc",
    "../browser/renderer_host/navigation_controller_impl_browsertest.cc",
    "../browser/renderer_host/navigation_handle_user_data_browsertest.cc",
    "../browser/renderer_host/navigation_policy_container_builder_browsertest.cc",
    "../browser/renderer_host/navigation_request_browsertest.cc",
    "../browser/renderer_host/origin_agent_cluster_browsertest.cc",
    "../browser/renderer_host/page_impl_browsertest.cc",
    "../browser/renderer_host/page_lifecycle_state_manager_browsertest.cc",
    "../browser/renderer_host/panel_rotation_browsertest.cc",
    "../browser/renderer_host/pending_beacon_browsertest.cc",
    "../browser/renderer_host/policy_container_host_browsertest.cc",
    "../browser/renderer_host/private_network_access_browsertest.cc",
    "../browser/renderer_host/proactively_swap_browsing_instances_browsertest.cc",
    "../browser/renderer_host/render_document_host_browsertest.cc",
    "../browser/renderer_host/render_frame_host_impl_browsertest.cc",
    "../browser/renderer_host/render_frame_host_manager_browsertest.cc",
    "../browser/renderer_host/render_frame_host_manager_browsertest.h",
    "../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_aura_browsertest.cc",
    "../browser/renderer_host/render_widget_host_view_aura_vk_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/scroll_into_view_browsertest.cc",
    "../browser/renderer_host/sec_fetch_browsertest.cc",
    "../browser/renderer_host/speculative_render_view_host_browsertest.cc",
    "../browser/renderer_host/unassigned_site_instance_browsertest.cc",
    "../browser/resource_loading_browsertest.cc",
    "../browser/screen_details/screen_details_browsertest.cc",
    "../browser/screen_orientation/screen_orientation_browsertest.cc",
    "../browser/security_exploit_browsertest.cc",
    "../browser/service_process_host_browsertest.cc",
    "../browser/service_worker/service_worker_auth_browsertest.cc",
    "../browser/service_worker/service_worker_browsertest.cc",
    "../browser/service_worker/service_worker_clients_api_browsertest.cc",
    "../browser/service_worker/service_worker_fetch_dispatcher_browsertest.cc",
    "../browser/service_worker/service_worker_file_upload_browsertest.cc",
    "../browser/service_worker/service_worker_internals_ui_browsertest.cc",
    "../browser/service_worker/service_worker_no_best_effort_tasks_browsertest.cc",
    "../browser/service_worker/service_worker_offline_capability_check_browsertest.cc",
    "../browser/service_worker/service_worker_process_browsertest.cc",
    "../browser/service_worker/service_worker_version_browsertest.cc",
    "../browser/session_history_browsertest.cc",
    "../browser/shape_detection/shape_detection_browsertest.cc",
    "../browser/shared_storage/shared_storage_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_layout_browsertest.cc",
    "../browser/site_per_process_mixed_content_browsertest.cc",
    "../browser/site_per_process_oopsif_browsertest.cc",
    "../browser/site_per_process_sad_frame_browsertest.cc",
    "../browser/site_per_process_scroll_browsertest.cc",
    "../browser/site_per_process_unload_browsertest.cc",
    "../browser/site_per_process_web_bundle_browsertest.cc",
    "../browser/sms/sms_browsertest.cc",
    "../browser/snapshot_browsertest.cc",
    "../browser/storage_partition_impl_browsertest.cc",
    "../browser/system_dns_resolution/system_dns_resolver_browsertest.cc",
    "../browser/text_fragment_browsertest.cc",
    "../browser/tracing/background_tracing_manager_browsertest.cc",
    "../browser/tracing/memory_instrumentation_browsertest.cc",
    "../browser/tracing/memory_tracing_browsertest.cc",
    "../browser/tracing/startup_tracing_browsertest.cc",
    "../browser/tracing/tracing_controller_browsertest.cc",
    "../browser/usb/usb_browsertest.cc",
    "../browser/utility_process_host_browsertest.cc",
    "../browser/vibration_browsertest.cc",
    "../browser/web_contents/file_chooser_impl_browsertest.cc",
    "../browser/web_contents/opened_by_dom_browsertest.cc",
    "../browser/web_contents/web_contents_impl_browsertest.cc",
    "../browser/web_contents/web_contents_observer_browsertest.cc",
    "../browser/web_contents/web_contents_view_aura_browsertest.cc",
    "../browser/web_package/signed_exchange_request_handler_browsertest.cc",
    "../browser/web_package/signed_exchange_subresource_prefetch_browsertest.cc",
    "../browser/webid/test/mock_mdoc_provider.cc",
    "../browser/webid/test/mock_mdoc_provider.h",
    "../browser/webid/test/webid_test_content_browser_client.cc",
    "../browser/webid/test/webid_test_content_browser_client.h",
    "../browser/webid/webid_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_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_video_capture_shared_device_browsertest.cc",
    "../browser/webrtc/webrtc_webcam_browsertest.cc",
    "../browser/webrtc/webrtc_webcam_browsertest.h",
    "../browser/webui/web_ui_browsertest.cc",
    "../browser/webui/web_ui_managed_interface_browsertest.cc",
    "../browser/webui/web_ui_mojo_browsertest.cc",
    "../browser/webui/web_ui_navigation_browsertest.cc",
    "../browser/webui/web_ui_security_browsertest.cc",
    "../browser/worker_host/worker_browsertest.cc",
    "../browser/worker_network_isolation_key_browsertest.cc",
    "../child/webthemeengine_impl_default_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/media/too_many_web_media_players_intervention_browsertest.cc",
    "../renderer/render_frame_impl_browsertest.cc",
    "../renderer/render_thread_impl_browsertest.cc",
    "../renderer/render_view_browsertest.cc",
    "../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/top_frame_population_browsertest.cc",
    "../test/url_loader_interceptor_browsertest.cc",
  ]

  if(ohos_unittests){
    sources += [
      "../renderer/host_proxy_unittest.cc",
      "../renderer/render_remote_proxy_ohos_unittest.cc",
    ]
  }
  
  if (is_linux) {
    sources += [ "../browser/network/address_map_linux_browsertest.cc" ]
  }

  if (is_mac) {
    sources +=
        [ "../app_shim_remote_cocoa/window_occlusion_browsertest_mac.mm" ]
  }
  if (enable_reporting) {
    sources += [
      "../browser/network/cross_origin_opener_policy_reporting_browsertest.cc",
    ]
  }

  if (use_viz_debugger) {
    sources += [
      "../browser/devtools/protocol/visual_debugger_handler_browsertest.cc",
    ]
  }

  defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]

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

  public_deps = [
    ":test_interfaces",
    ":web_ui_mojo_test_resources",
    "//content:content_resources",
    "//content:dev_ui_content_resources",
  ]

  deps = [
    ":browsertest_support",
    ":content_test_mojo_bindings",
    ":test_support",
    ":web_ui_test_mojo_bindings",
    ":web_ui_ts_test_mojo_bindings",
    "//base/test:test_support",
    "//build:chromecast_buildflags",
    "//build:chromeos_buildflags",
    "//cc/slim",
    "//components/aggregation_service:mojom",
    "//components/attribution_reporting:mojom",
    "//components/discardable_memory/client",
    "//components/discardable_memory/common",
    "//components/discardable_memory/service",
    "//components/favicon/content",
    "//components/network_session_configurator/common",
    "//components/payments/mojom",
    "//components/performance_manager",
    "//components/services/quarantine:test_support",
    "//components/services/storage",
    "//components/services/storage/public/cpp",
    "//components/services/storage/public/mojom:test_api",
    "//components/ukm:test_support",
    "//components/url_formatter:url_formatter",
    "//components/viz/host",
    "//components/viz/test:test_support",
    "//components/web_package",
    "//components/web_package/test_support",
    "//content/app:for_content_tests",
    "//content/browser:buildflags",
    "//content/browser:for_content_tests",
    "//content/browser/attribution_reporting:attribution_reporting_proto",
    "//content/browser/attribution_reporting:mojo_bindings",
    "//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/gpu",
    "//content/public/renderer",
    "//content/renderer:for_content_tests",
    "//content/services/auction_worklet/public/mojom:for_content_tests",
    "//content/shell:content_browsertests_mojom",
    "//content/shell:content_shell_lib",
    "//content/shell:pak",
    "//content/test:mojo_web_test_bindings",
    "//content/test:test_support",
    "//device/base/synchronization",
    "//device/bluetooth:mocks",
    "//gin",
    "//gpu",
    "//gpu/ipc/host",
    "//ipc",
    "//ipc:test_sink",
    "//media:media_buildflags",
    "//media:test_support",
    "//media/webrtc",
    "//mojo/core/embedder",
    "//mojo/public/cpp/bindings",
    "//mojo/public/cpp/test_support:test_utils",
    "//net:quic_test_tools",
    "//net:simple_quic_tools",
    "//net:test_support",
    "//pdf:buildflags",
    "//ppapi/buildflags",
    "//services/audio/public/cpp",
    "//services/cert_verifier/public/mojom",
    "//services/data_decoder/public/cpp",
    "//services/data_decoder/public/cpp:test_support",
    "//services/data_decoder/public/mojom",
    "//services/device/public/cpp:device_features",
    "//services/device/public/cpp:test_support",
    "//services/device/public/cpp/generic_sensor",
    "//services/device/public/mojom",
    "//services/device/public/mojom:generic_sensor",
    "//services/image_annotation/public/cpp:cpp",
    "//services/image_annotation/public/mojom:mojom",
    "//services/metrics",
    "//services/metrics/public/cpp:ukm_builders",
    "//services/network:test_support",
    "//services/network/public/mojom",
    "//services/network/trust_tokens:test_support",
    "//services/service_manager/public/cpp",
    "//services/test/echo/public/mojom",
    "//services/tracing:privacy_check",
    "//services/video_capture/public/cpp",
    "//services/video_capture/public/cpp:mocks",
    "//services/video_capture/public/mojom:constants",
    "//services/viz/privileged/mojom",
    "//services/viz/public/cpp/gpu",
    "//storage/browser",
    "//storage/browser:test_support",
    "//testing/gmock",
    "//testing/gtest",
    "//third_party/blink/public:blink",
    "//third_party/leveldatabase",
    "//third_party/mesa_headers",
    "//third_party/re2",
    "//third_party/zlib",
    "//ui/accessibility:ax_base",
    "//ui/accessibility:ax_enums_mojo",
    "//ui/base:test_support",
    "//ui/base/clipboard",
    "//ui/base/cursor",
    "//ui/base/ime",
    "//ui/base/ime/init",
    "//ui/base/ime/mojom",
    "//ui/compositor",
    "//ui/display",
    "//ui/display:test_support",
    "//ui/events:test_support",
    "//ui/events/blink:blink",
    "//ui/gfx",
    "//ui/gfx:gfx_switches",
    "//ui/gfx/geometry",
    "//ui/gl",
    "//ui/gl:test_support",
    "//ui/latency",
    "//ui/native_theme",
    "//ui/resources",
    "//ui/shell_dialogs",
    "//ui/snapshot",
    "//ui/webui:test_support",
  ]

  data = [
    "data/",
    "//media/test/data/",
  ]

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

  if (enable_plugins) {
    sources += [ "../browser/plugin_service_impl_browsertest.cc" ]
  }

  if (enable_ppapi) {
    sources += [
      "../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",
      "../test/ppapi/ppapi_browsertest.cc",
      "../test/ppapi/ppapi_test.cc",
      "../test/ppapi/ppapi_test.h",
    ]
    deps += [
      "//ppapi/c",
      "//ppapi/host",
      "//ppapi/proxy",
      "//ppapi/proxy:ipc",
      "//ppapi/proxy:test_support",
      "//ppapi/shared_impl:test_support",
    ]
    data_deps += [ "//ppapi:ppapi_tests" ]
    data += [
      "//ppapi/tests/test_case.html",
      "//ppapi/tests/test_page.css",
      "//ppapi/tests/test_url_loader_data/",
    ]
    if (is_mac) {
      data += [ "$root_out_dir/ppapi_tests.plugin/" ]
    }
  }

  if (enable_screen_capture) {
    if (is_android || is_linux || is_chromeos || 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/web_contents_video_capture_device_browsertest.cc",
      ]

      data += [ "$root_out_dir/content_shell.pak" ]
    }

    if (is_linux || is_chromeos || is_mac || is_win) {
      sources += [ "../browser/media/capture/mouse_cursor_overlay_controller_browsertest.cc" ]

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

      if (is_chromeos_ash) {
        deps += [ "//ui/wm" ]
      }
    }
  }

  if (is_linux || is_chromeos || is_mac || is_win || is_fuchsia) {
    deps += [ "//third_party/libyuv" ]
    data += [
      "//net/tools/testserver/",
      "//third_party/pywebsocket3/src/mod_pywebsocket/",
    ]
  }

  if (!is_chromeos_ash) {
    sources +=
        [ "../browser/media/media_keys_listener_manager_impl_browsertest.cc" ]
  }

  if (is_chromeos) {
    sources +=
        [ "../browser/lock_screen/lock_screen_service_impl_browsertest.cc" ]
  }

  if (is_win) {
    sources += [
      "../browser/accessibility/accessibility_browsertest.cc",
      "../browser/accessibility/accessibility_browsertest.h",
      "../browser/accessibility/accessibility_win_browsertest.cc",
      "../browser/accessibility/ax_platform_node_textprovider_win_browsertest.cc",
      "../browser/accessibility/ax_platform_node_textrangeprovider_win_browsertest.cc",
      "../browser/accessibility/ax_platform_node_win_browsertest.cc",
      "../browser/accessibility/hit_testing_win_browsertest.cc",
      "../browser/network/network_service_process_tracker_win_browsertest.cc",
      "../browser/renderer_host/accessibility_object_lifetime_win_browsertest.cc",
      "../browser/renderer_host/accessibility_tree_linkage_win_browsertest.cc",
      "../browser/renderer_host/direct_manipulation_test_helper_win.cc",
      "../browser/renderer_host/direct_manipulation_test_helper_win.h",
      "../browser/renderer_host/direct_manipulation_win_browsertest.cc",
      "../browser/renderer_host/render_process_host_sandbox_policy_win_browsertest.cc",
      "../browser/scheduler/responsiveness/native_event_observer_browsertest_win.cc",
      "../renderer/fluent_scrollbar_browsertest.cc",
    ]

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

    libs = [ "uiautomationcore.lib" ]

    configs += [ "//build/config/win:delayloads" ]
  }

  if (is_linux || is_chromeos) {
    sources += [
      "../browser/utility_process_sandbox_browsertest.cc",
      "../browser/zygote_host/zygote_browsertest.cc",
    ]
    deps += [
      "//content/common:sandbox_support_linux",
      "//media/gpu:buildflags",
      "//printing/buildflags",
      "//ui/gfx:test_support",
    ]

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

  if (is_chromeos_ash) {
    deps += [
      ":web_ui_mojo_test_js_type_check",
      "//chromeos/ash/components/assistant:buildflags",
    ]
  }

  if (is_android) {
    if (is_component_build) {
      sources += [ "../browser/android/render_widget_host_connector.cc" ]
    }
    sources += [
      "../browser/accessibility/android_granularity_movement_browsertest.cc",
      "../browser/android/date_time_chooser_browsertest.cc",
      "../browser/android/nfc_host_browsertest.cc",
      "../browser/android/render_widget_host_connector_browsertest.cc",
      "../browser/android/render_widget_host_connector_browsertest.h",
      "../browser/android/synchronous_compositor_browsertest.cc",
      "../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/media/session/audio_focus_delegate_default_browsertest.cc",
      "../browser/pointer_lock_browsertest.cc",
      "../browser/pointer_lock_browsertest.h",
    ]
    deps += [
      ":android_test_message_pump_support",
      ":content_browsertests_java",
      ":content_browsertests_jni_headers",
      "//content/shell:content_shell_app",
      "//content/shell/android:content_shell_assets",
      "//content/shell/android:content_shell_jni_headers",
      "//services/data_decoder/public/cpp/android:safe_json_java",
      "//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

    if (enable_chrome_android_internal) {
      data_deps += [ "//clank/build/bot/filters:content_browsertests_filters" ]
    }
  } else {
    # Non-Android.
    sources += [
      "../browser/direct_sockets/direct_sockets_open_browsertest.cc",
      "../browser/direct_sockets/direct_sockets_tcp_browsertest.cc",
      "../browser/direct_sockets/direct_sockets_udp_browsertest.cc",
      "../browser/file_system_access/file_system_access_clipboard_browsertest.cc",
      "../browser/file_system_access/file_system_access_drag_drop_browsertest.cc",
      "../browser/file_system_access/file_system_access_file_handle_impl_browsertest.cc",
      "../browser/file_system_access/file_system_access_file_writer_impl_browsertest.cc",
      "../browser/file_system_access/file_system_chooser_browsertest.cc",
      "../browser/font_preferences_browsertest.cc",
      "../browser/renderer_host/clipboard_host_impl_browsertest.cc",
      "../browser/serial/serial_browsertest.cc",
      "../browser/speech/speech_recognition_browsertest.cc",
      "../browser/speech/tts_ssml_browsertest.cc",
      "../browser/storage_service_restart_browsertest.cc",
      "../browser/storage_service_sandbox_browsertest.cc",
      "../browser/zoom_browsertest.cc",
    ]
    deps += [
      "//content/public/browser:proto",
      "//ui/base/clipboard:clipboard_test_support",
    ]
    data += [ "//content/test/data/clipboard/" ]
  }
  if (is_posix) {
    deps += [ "//services/tracing:test_utils" ]
  }

  if (is_chromeos) {
    sources += [ "../browser/smart_card/smart_card_browsertest.cc" ]
  }

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

  if (is_mac) {
    sources += [
      "../browser/accessibility/ax_tree_formatter_mac_browsertest.mm",
      "../browser/accessibility/browser_accessibility_cocoa_browsertest.mm",
      "../browser/accessibility/hit_testing_mac_browsertest.mm",
      "../browser/form_controls_browsertest_mac.h",
      "../browser/form_controls_browsertest_mac.mm",
      "../browser/gpu/browser_child_process_backgrounded_bridge_browsertest.mm",
      "../browser/keyboard_lock_browsertest_mac.mm",
      "../browser/pointer_lock_browsertest_mac.mm",
      "../browser/renderer_host/render_frame_host_impl_mac_browsertest.mm",
      "../browser/renderer_host/render_widget_host_view_mac_browsertest.mm",
      "../browser/scheduler/responsiveness/native_event_observer_browsertest.mm",
      "../browser/site_per_process_mac_browsertest.mm",
      "../renderer/render_view_browsertest_mac.mm",
    ]
    deps += [ "//third_party/ocmock" ]
    data_deps += [ "//content/shell:content_shell" ]
    data += [ "$root_out_dir/Content Shell.app/" ]
  }

  if (is_ios) {
    sources += [
      "../browser/keyboard_lock_browsertest_ios.mm",
      "../browser/pointer_lock_browsertest_ios.mm",
    ]
    bundle_deps = [ ":content_shell_pak_bundle_data" ]
  }

  if (is_chromeos_ash) {
    deps += [
      "//chromeos/ash/components/audio",
      "//chromeos/ash/components/dbus/audio",
      "//chromeos/ash/components/dbus/debug_daemon",
      "//chromeos/ash/components/system",
    ]
  }

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

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

  if (enable_vr) {
    sources += [ "../browser/xr/metrics/session_metrics_browsertest.cc" ]
    deps += [ "//device/vr:vr_fakes" ]
  }

  if ((is_win || is_chromeos || is_linux) && !is_tsan) {
    # NOTE: We don't bother to build these tests when TSan is enabled, because
    # they can't properly launch a child content_shell in that environment.
    sources += [ "../browser/launch_as_mojo_client_browsertest.cc" ]
    deps += [
      "//components/variations:variations",
      "//components/variations/field_trial_config:field_trial_config",
      "//content/shell:shell_controller_mojom",
      "//mojo/public/cpp/platform",
      "//mojo/public/mojom/base",
    ]
    data_deps += [
      "//content/shell:content_shell",
      "//mojo/core:shared_library",
    ]
    if (use_ozone) {
      deps += [ "//ui/ozone" ]
    }
  }

  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/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/base/dragdrop:types",
      "//ui/touch_selection:test_support",
      "//ui/touch_selection:touch_selection",
    ]
  } else {
    sources -= [
      "../browser/accessibility/touch_accessibility_aura_browsertest.cc",
      "../browser/renderer_host/input/event_latency_aura_browsertest.cc",
      "../browser/renderer_host/input/touch_selection_controller_client_aura_browsertest.cc",
      "../browser/renderer_host/render_widget_host_view_aura_browsertest.cc",
      "../browser/renderer_host/render_widget_host_view_aura_vk_browsertest.cc",
      "../browser/web_contents/web_contents_view_aura_browsertest.cc",
    ]
  }

  if (is_castos || is_cast_android) {
    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/renderer_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",
    ]
  }

  # KeyboardLock is currently not supported in Android, Fuchsia and
  # Chromecast builds. TODO(crbug.com/1414160): Re-enable on Fuchsia
  # once its platform support is available.
  if (is_android || is_fuchsia || is_castos) {
    sources -= [ "../browser/keyboard_lock_browsertest.cc" ]
  }

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

  if (is_chromeos_ash) {
    deps += [ "//chromeos/dbus/constants" ]
  }

  if (is_fuchsia) {
    use_test_server = true

    test_runner_shard = "//build/config/fuchsia/test/elf_test_ambient_exec_runner.shard.test-cml"
    additional_manifest_fragments = [
      "//build/config/fuchsia/test/audio_output.shard.test-cml",
      "//build/config/fuchsia/test/fonts.shard.test-cml",
      "//build/config/fuchsia/test/mark_vmo_executable.shard.test-cml",
      "//build/config/fuchsia/test/network.shard.test-cml",
      "//build/config/fuchsia/test/present_view.shard.test-cml",
      "//third_party/fuchsia-sdk/sdk/pkg/vulkan/client.shard.cml",
    ]
  }
}

grit("web_ui_mojo_test_resources") {
  source = "web_ui_mojo_test_resources.grd"

  outputs = [
    "grit/web_ui_mojo_test_resources.h",
    "grit/web_ui_mojo_test_resources_map.cc",
    "grit/web_ui_mojo_test_resources_map.h",
    "web_ui_mojo_test_resources.pak",
  ]
  deps = [
    ":web_ui_mojo_test_build_ts",
    ":web_ui_test_mojo_bindings_js__generator",
  ]
}

static_library("run_all_unittests") {
  testonly = true
  sources = [ "run_all_unittests.cc" ]
  deps = [
    ":test_support",
    "//base/test:test_support",
  ]
  if (is_linux || is_chromeos) {
    deps += [ "//content/common:set_process_title_linux" ]
  }
}

test("content_unittests") {
  use_xvfb = use_xvfb_in_this_config

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

  defines = []
  sources = [
    "../browser/accessibility/browser_accessibility_manager_unittest.cc",
    "../browser/accessibility/browser_accessibility_state_impl_unittest.cc",
    "../browser/accessibility/browser_accessibility_unittest.cc",
    "../browser/accessibility/one_shot_accessibility_tree_search_unittest.cc",
    "../browser/accessibility/touch_passthrough_manager_unittest.cc",
    "../browser/aggregation_service/aggregatable_report_assembler_unittest.cc",
    "../browser/aggregation_service/aggregatable_report_scheduler_unittest.cc",
    "../browser/aggregation_service/aggregatable_report_sender_unittest.cc",
    "../browser/aggregation_service/aggregatable_report_unittest.cc",
    "../browser/aggregation_service/aggregation_service_impl_unittest.cc",
    "../browser/aggregation_service/aggregation_service_internals_handler_impl_unittest.cc",
    "../browser/aggregation_service/aggregation_service_key_fetcher_unittest.cc",
    "../browser/aggregation_service/aggregation_service_network_fetcher_impl_unittest.cc",
    "../browser/aggregation_service/aggregation_service_storage_sql_unittest.cc",
    "../browser/aggregation_service/public_key_parsing_utils_unittest.cc",
    "../browser/aggregation_service/report_scheduler_timer_unittest.cc",
    "../browser/attribution_reporting/aggregatable_attribution_utils_unittest.cc",
    "../browser/attribution_reporting/attribution_aggregatable_report_golden_unittest.cc",
    "../browser/attribution_reporting/attribution_cookie_checker_impl_unittest.cc",
    "../browser/attribution_reporting/attribution_data_host_manager_impl_unittest.cc",
    "../browser/attribution_reporting/attribution_debug_report_unittest.cc",
    "../browser/attribution_reporting/attribution_host_unittest.cc",
    "../browser/attribution_reporting/attribution_interop_parser_unittest.cc",
    "../browser/attribution_reporting/attribution_interop_unittest.cc",
    "../browser/attribution_reporting/attribution_manager_impl_unittest.cc",
    "../browser/attribution_reporting/attribution_report_network_sender_unittest.cc",
    "../browser/attribution_reporting/attribution_report_unittest.cc",
    "../browser/attribution_reporting/attribution_storage_delegate_impl_unittest.cc",
    "../browser/attribution_reporting/attribution_storage_sql_migrations_unittest.cc",
    "../browser/attribution_reporting/attribution_storage_sql_unittest.cc",
    "../browser/attribution_reporting/attribution_storage_unittest.cc",
    "../browser/attribution_reporting/attribution_utils_unittest.cc",
    "../browser/attribution_reporting/combinatorics_unittest.cc",
    "../browser/attribution_reporting/rate_limit_table_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/database_helpers_unittest.cc",
    "../browser/background_fetch/storage/image_helpers_unittest.cc",
    "../browser/background_sync/background_sync_launcher_unittest.cc",
    "../browser/background_sync/background_sync_manager_unittest.cc",
    "../browser/background_sync/background_sync_metrics_unittest.cc",
    "../browser/background_sync/background_sync_network_observer_unittest.cc",
    "../browser/background_sync/background_sync_op_scheduler_unittest.cc",
    "../browser/background_sync/background_sync_scheduler_unittest.cc",
    "../browser/background_sync/background_sync_service_impl_test_harness.cc",
    "../browser/background_sync/background_sync_service_impl_test_harness.h",
    "../browser/background_sync/one_shot_background_sync_service_impl_unittest.cc",
    "../browser/background_sync/periodic_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/bluetooth_util_unittest.cc",
    "../browser/bluetooth/frame_connected_bluetooth_devices_unittest.cc",
    "../browser/bluetooth/web_bluetooth_pairing_manager_impl_unittest.cc",
    "../browser/bluetooth/web_bluetooth_service_impl_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_topics/browsing_topics_site_data_manager_impl_unittest.cc",
    "../browser/browsing_topics/browsing_topics_site_data_storage_unittest.cc",
    "../browser/browsing_topics/browsing_topics_url_loader_service_unittest.cc",
    "../browser/browsing_topics/header_util_unittest.cc",
    "../browser/buckets/bucket_manager_host_unittest.cc",
    "../browser/buckets/bucket_utils_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_context_unittest.cc",
    "../browser/cache_storage/cache_storage_index_unittest.cc",
    "../browser/cache_storage/cache_storage_manager_unittest.cc",
    "../browser/cache_storage/cache_storage_scheduler_unittest.cc",
    "../browser/child_process_security_policy_unittest.cc",
    "../browser/client_hints/client_hints_unittest.cc",
    "../browser/code_cache/generated_code_cache_unittest.cc",
    "../browser/code_cache/simple_lru_cache_unittest.cc",
    "../browser/compute_pressure/compute_pressure_unittest.cc",
    "../browser/content_index/content_index_database_unittest.cc",
    "../browser/content_index/content_index_service_impl_unittest.cc",
    "../browser/cookie_store/cookie_store_manager_unittest.cc",
    "../browser/devtools/devtools_agent_host_impl_unittest.cc",
    "../browser/devtools/devtools_background_services_context_impl_unittest.cc",
    "../browser/devtools/devtools_http_handler_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_context_wrapper_unittest.cc",
    "../browser/download/download_manager_impl_unittest.cc",
    "../browser/download/save_package_unittest.cc",
    "../browser/fenced_frame/fenced_frame_reporter_unittest.cc",
    "../browser/fenced_frame/fenced_frame_unittest.cc",
    "../browser/fenced_frame/fenced_frame_url_mapping_unittest.cc",
    "../browser/fenced_frame/redacted_fenced_frame_config_mojom_traits_unittest.cc",
    "../browser/file_system/browser_file_system_helper_unittest.cc",
    "../browser/file_system/file_system_operation_runner_unittest.cc",
    "../browser/file_system_access/file_system_access_capacity_allocation_host_impl_unittest.cc",
    "../browser/file_system_access/file_system_access_directory_handle_impl_unittest.cc",
    "../browser/file_system_access/file_system_access_file_handle_impl_unittest.cc",
    "../browser/file_system_access/file_system_access_file_writer_impl_unittest.cc",
    "../browser/file_system_access/file_system_access_handle_base_unittest.cc",
    "../browser/file_system_access/file_system_access_manager_impl_unittest.cc",
    "../browser/file_system_access/file_system_access_safe_move_helper_unittest.cc",
    "../browser/file_system_access/file_system_access_write_lock_manager_unittest.cc",
    "../browser/file_system_access/file_system_chooser_unittest.cc",
    "../browser/first_party_sets/database/first_party_sets_database_unittest.cc",
    "../browser/first_party_sets/first_party_set_parser_unittest.cc",
    "../browser/first_party_sets/first_party_sets_handler_database_helper_unittest.cc",
    "../browser/first_party_sets/first_party_sets_handler_impl_unittest.cc",
    "../browser/first_party_sets/first_party_sets_loader_unittest.cc",
    "../browser/first_party_sets/local_set_declaration_unittest.cc",
    "../browser/font_access/font_access_manager_unittest.cc",
    "../browser/font_access/font_enumeration_data_source_unittest.cc",
    "../browser/generic_sensor/sensor_provider_proxy_impl_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/handwriting/handwriting_recognition_service_impl_unittest.cc",
    "../browser/idle/idle_manager_unittest.cc",
    "../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_context_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_leveldb_env_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/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_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/interest_group/ad_auction_service_impl_unittest.cc",
    "../browser/interest_group/auction_metrics_recorder_unittest.cc",
    "../browser/interest_group/auction_process_manager_unittest.cc",
    "../browser/interest_group/auction_runner_unittest.cc",
    "../browser/interest_group/auction_url_loader_factory_proxy_unittest.cc",
    "../browser/interest_group/auction_worklet_manager_unittest.cc",
    "../browser/interest_group/interest_group_auction_reporter_unittest.cc",
    "../browser/interest_group/interest_group_k_anonymity_manager_unittest.cc",
    "../browser/interest_group/interest_group_pa_report_util_unittest.cc",
    "../browser/interest_group/interest_group_permissions_cache_unittest.cc",
    "../browser/interest_group/interest_group_permissions_checker_unittest.cc",
    "../browser/interest_group/interest_group_priority_util_unittest.cc",
    "../browser/interest_group/interest_group_storage_unittest.cc",
    "../browser/interest_group/mock_auction_process_manager.cc",
    "../browser/interest_group/mock_auction_process_manager.h",
    "../browser/interest_group/noiser_and_bucketer_unittest.cc",
    "../browser/interest_group/subresource_url_authorizations_unittest.cc",
    "../browser/interest_group/subresource_url_builder_unittest.cc",
    "../browser/interest_group/test_interest_group_manager_impl.cc",
    "../browser/interest_group/test_interest_group_manager_impl.h",
    "../browser/interest_group/test_interest_group_private_aggregation_manager.cc",
    "../browser/interest_group/test_interest_group_private_aggregation_manager.h",
    "../browser/loader/cors_origin_pattern_setter_unittest.cc",
    "../browser/loader/file_url_loader_factory_unittest.cc",
    "../browser/loader/keep_alive_url_loader_service_unittest.cc",
    "../browser/loader/merkle_integrity_source_stream_unittest.cc",
    "../browser/loader/navigation_early_hints_manager_unittest.cc",
    "../browser/loader/navigation_url_loader_impl_unittest.cc",
    "../browser/loader/navigation_url_loader_unittest.cc",
    "../browser/locks/lock_manager_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/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/media_power_experiment_manager_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/system_media_controls_notifier_unittest.cc",
    "../browser/media/webaudio/audio_context_manager_impl_unittest.cc",
    "../browser/memory/swap_metrics_driver_impl_unittest.cc",
    "../browser/metrics/histograms_monitor_unittest.cc",
    "../browser/mojo_binder_policy_applier_unittest.cc",
    "../browser/mojo_binder_policy_map_impl_unittest.cc",
    "../browser/network/cross_origin_embedder_policy_reporter_unittest.cc",
    "../browser/network/cross_origin_opener_policy_reporter_unittest.cc",
    "../browser/network/network_quality_observer_impl_unittest.cc",
    "../browser/network/socket_broker_impl_unittest.cc",
    "../browser/network_context_client_base_impl_unittest.cc",
    "../browser/network_service_instance_impl_unittest.cc",
    "../browser/notification_service_impl_unittest.cc",
    "../browser/notifications/blink_notification_service_impl_unittest.cc",
    "../browser/notifications/notification_database_conversions_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_trigger_unittest.cc",
    "../browser/notifications/platform_notification_context_unittest.cc",
    "../browser/origin_trials/critical_origin_trials_throttle_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/permissions/permission_controller_impl_unittest.cc",
    "../browser/permissions/permission_service_context_unittest.cc",
    "../browser/permissions/permission_util_unittest.cc",
    "../browser/picture_in_picture/picture_in_picture_service_impl_unittest.cc",
    "../browser/preloading/anchor_element_interaction_host_impl_unittest.cc",
    "../browser/preloading/preconnector_unittest.cc",
    "../browser/preloading/prefetch/no_vary_search_helper_unittest.cc",
    "../browser/preloading/prefetch/prefetch_canary_checker_unittest.cc",
    "../browser/preloading/prefetch/prefetch_container_unittest.cc",
    "../browser/preloading/prefetch/prefetch_cookie_listener_unittest.cc",
    "../browser/preloading/prefetch/prefetch_document_manager_unittest.cc",
    "../browser/preloading/prefetch/prefetch_network_context_unittest.cc",
    "../browser/preloading/prefetch/prefetch_params_unittest.cc",
    "../browser/preloading/prefetch/prefetch_proxy_configurator_unittest.cc",
    "../browser/preloading/prefetch/prefetch_service_unittest.cc",
    "../browser/preloading/prefetch/prefetch_streaming_url_loader_unittest.cc",
    "../browser/preloading/prefetch/prefetch_type_unittest.cc",
    "../browser/preloading/prefetch/prefetch_url_loader_interceptor_unittest.cc",
    "../browser/preloading/prefetch/proxy_lookup_client_impl_unittest.cc",
    "../browser/preloading/prefetcher_unittest.cc",
    "../browser/preloading/preloading_attempt_impl_unittest.cc",
    "../browser/preloading/preloading_config_unittest.cc",
    "../browser/preloading/preloading_data_impl_unittest.cc",
    "../browser/preloading/preloading_decider_unittest.cc",
    "../browser/preloading/prerender/prerender_host_registry_unittest.cc",
    "../browser/preloading/prerender/prerender_host_unittest.cc",
    "../browser/preloading/prerender/prerender_metrics_unittest.cc",
    "../browser/preloading/prerenderer_impl_unittest.cc",
    "../browser/preloading/speculation_rules/speculation_host_impl_unittest.cc",
    "../browser/presentation/presentation_service_impl_unittest.cc",
    "../browser/private_aggregation/private_aggregation_budget_key_unittest.cc",
    "../browser/private_aggregation/private_aggregation_budget_storage_unittest.cc",
    "../browser/private_aggregation/private_aggregation_budgeter_unittest.cc",
    "../browser/private_aggregation/private_aggregation_host_unittest.cc",
    "../browser/private_aggregation/private_aggregation_manager_impl_unittest.cc",
    "../browser/private_aggregation/private_aggregation_report_golden_unittest.cc",
    "../browser/quota/quota_change_dispatcher_unittest.cc",
    "../browser/reduce_accept_language/reduce_accept_language_utils_unittest.cc",
    "../browser/renderer_host/ancestor_throttle_unittest.cc",
    "../browser/renderer_host/back_forward_cache_impl_unittest.cc",
    "../browser/renderer_host/back_forward_cache_metrics_unittest.cc",
    "../browser/renderer_host/browsing_context_group_swap_unittest.cc",
    "../browser/renderer_host/clipboard_host_impl_unittest.cc",
    "../browser/renderer_host/commit_deferring_condition_runner_unittest.cc",
    "../browser/renderer_host/cross_origin_opener_policy_status_unittest.cc",
    "../browser/renderer_host/cursor_manager_unittest.cc",
    "../browser/renderer_host/document_service_unittest.cc",
    "../browser/renderer_host/embedded_frame_sink_provider_impl_unittest.cc",
    "../browser/renderer_host/frame_token_message_queue_unittest.cc",
    "../browser/renderer_host/frame_tree_unittest.cc",
    "../browser/renderer_host/indexed_db_client_state_checker_factory_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/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_util_unittest.cc",
    "../browser/renderer_host/isolated_web_app_throttle_unittest.cc",
    "../browser/renderer_host/local_network_access_util_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_service_listener_unittest.cc",
    "../browser/renderer_host/media/capture_handle_manager_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/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/mixed_content_navigation_throttle_unittest.cc",
    "../browser/renderer_host/navigation_controller_impl_unittest.cc",
    "../browser/renderer_host/navigation_entry_impl_unittest.cc",
    "../browser/renderer_host/navigation_policy_container_builder_unittest.cc",
    "../browser/renderer_host/navigation_request_unittest.cc",
    "../browser/renderer_host/navigation_throttle_runner_unittest.cc",
    "../browser/renderer_host/navigation_transitions/navigation_entry_screenshot_cache_unittest.cc",
    "../browser/renderer_host/navigator_unittest.cc",
    "../browser/renderer_host/overscroll_controller_unittest.cc",
    "../browser/renderer_host/pending_beacon_host_unittest.cc",
    "../browser/renderer_host/policy_container_host_unittest.cc",
    "../browser/renderer_host/recently_destroyed_hosts_unittest.cc",
    "../browser/renderer_host/render_frame_host_csp_context_unittest.cc",
    "../browser/renderer_host/render_frame_host_impl_unittest.cc",
    "../browser/renderer_host/render_frame_host_manager_unittest.cc",
    "../browser/renderer_host/render_frame_host_permissions_policy_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/renderer_sandboxed_process_launcher_delegate_unittest.cc",
    "../browser/renderer_host/transient_allow_popup_unittest.cc",
    "../browser/renderer_host/view_transition_commit_deferring_condition_unittest.cc",
    "../browser/renderer_host/visible_time_request_trigger_unittest.cc",
    "../browser/scheduler/browser_io_thread_delegate_unittest.cc",
    "../browser/scheduler/browser_task_executor_unittest.cc",
    "../browser/scheduler/browser_task_queues_unittest.cc",
    "../browser/scheduler/browser_ui_thread_scheduler_unittest.cc",
    "../browser/scheduler/responsiveness/calculator_unittest.cc",
    "../browser/scheduler/responsiveness/jank_monitor_impl_unittest.cc",
    "../browser/scheduler/responsiveness/metric_source_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_container_host_unittest.cc",
    "../browser/service_worker/service_worker_context_core_unittest.cc",
    "../browser/service_worker/service_worker_context_unittest.cc",
    "../browser/service_worker/service_worker_context_watcher_unittest.cc",
    "../browser/service_worker/service_worker_context_wrapper_unittest.cc",
    "../browser/service_worker/service_worker_controllee_request_handler_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_loader_helpers_unittest.cc",
    "../browser/service_worker/service_worker_main_resource_loader_interceptor_unittest.cc",
    "../browser/service_worker/service_worker_main_resource_loader_unittest.cc",
    "../browser/service_worker/service_worker_metrics_unittest.cc",
    "../browser/service_worker/service_worker_new_script_fetcher_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_registration_unittest.cc",
    "../browser/service_worker/service_worker_registry_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_updated_script_loader_unittest.cc",
    "../browser/service_worker/service_worker_version_unittest.cc",
    "../browser/shareable_file_reference_unittest.cc",
    "../browser/shared_storage/shared_storage_url_loader_factory_proxy_unittest.cc",
    "../browser/site_instance_group_unittest.cc",
    "../browser/site_instance_impl_unittest.cc",
    "../browser/site_isolation_policy_unittest.cc",
    "../browser/sms/sms_fetcher_impl_unittest.cc",
    "../browser/sms/sms_parser_unittest.cc",
    "../browser/sms/user_consent_handler_unittest.cc",
    "../browser/sms/webotp_service_unittest.cc",
    "../browser/speech/tts_controller_unittest.cc",
    "../browser/startup_task_runner_unittest.cc",
    "../browser/storage_partition_config_unittest.cc",
    "../browser/storage_partition_impl_map_unittest.cc",
    "../browser/storage_partition_impl_unittest.cc",
    "../browser/tracing/background_startup_tracing_observer_unittest.cc",
    "../browser/tracing/background_tracing_config_unittest.cc",
    "../browser/usb/web_usb_service_impl_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_database/web_database_host_impl_unittest.cc",
    "../browser/web_exposed_isolation_info_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_loader_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/webid/federated_auth_request_impl_logout_unittest.cc",
    "../browser/webid/federated_auth_request_impl_multiple_frames_unittest.cc",
    "../browser/webid/federated_auth_request_impl_registry_unittest.cc",
    "../browser/webid/federated_auth_request_impl_unittest.cc",
    "../browser/webid/federated_auth_user_info_request_unittest.cc",
    "../browser/webid/idp_network_request_manager_unittest.cc",
    "../browser/webid/test/delegated_idp_network_request_manager.cc",
    "../browser/webid/test/delegated_idp_network_request_manager.h",
    "../browser/webid/test/federated_auth_request_request_token_callback_helper.cc",
    "../browser/webid/test/federated_auth_request_request_token_callback_helper.h",
    "../browser/webid/test/mock_api_permission_delegate.cc",
    "../browser/webid/test/mock_api_permission_delegate.h",
    "../browser/webid/test/mock_auto_reauthn_permission_delegate.cc",
    "../browser/webid/test/mock_auto_reauthn_permission_delegate.h",
    "../browser/webid/test/mock_identity_request_dialog_controller.cc",
    "../browser/webid/test/mock_identity_request_dialog_controller.h",
    "../browser/webid/test/mock_idp_network_request_manager.cc",
    "../browser/webid/test/mock_idp_network_request_manager.h",
    "../browser/webid/test/mock_permission_delegate.cc",
    "../browser/webid/test/mock_permission_delegate.h",
    "../browser/webrtc/webrtc_internals_message_handler_unittest.cc",
    "../browser/webrtc/webrtc_internals_unittest.cc",
    "../browser/webtransport/web_transport_throttle_context_unittest.cc",
    "../browser/webui/web_ui_data_source_unittest.cc",
    "../browser/webui/web_ui_main_frame_observer_unittest.cc",
    "../browser/webui/web_ui_message_handler_unittest.cc",
    "../browser/webui/web_ui_unittest.cc",
    "../browser/webui/web_ui_url_loader_factory_unittest.cc",
    "../browser/webui/web_ui_webui_js_bridge_unittest.cc",
    "../browser/worker_host/dedicated_worker_service_impl_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",
    "../browser/worker_host/worker_script_fetcher_unittest.cc",
    "../browser/worker_host/worker_script_loader_factory_unittest.cc",
    "../browser/xr/metrics/session_tracker_unittest.cc",
    "../child/blink_platform_impl_unittest.cc",
    "../common/background_fetch/background_fetch_mojom_traits_unittest.cc",
    "../common/color_parser_unittest.cc",
    "../common/common_param_traits_unittest.cc",
    "../common/content_switches_internal_unittest.cc",
    "../common/cursors/webcursor_unittest.cc",
    "../common/drop_data_unittest.cc",
    "../common/fetch/fetch_api_request_proto_unittest.cc",
    "../common/fetch/fetch_request_type_converters_unittest.cc",
    "../common/font_list_unittest.cc",
    "../common/frame_owner_element_type_mojom_traits_unittest.cc",
    "../common/input/actions_parser_test_driver_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/touch_event_stream_validator_unittest.cc",
    "../common/pseudonymization_salt_unittest.cc",
    "../common/url_utils_unittest.cc",
    "../common/user_agent_unittest.cc",
    "../common/webid/identity_url_loader_throttle_unittest.cc",
    "../common/webplugininfo_unittest.cc",
    "../public/test/browser_task_environment_unittest.cc",
    "../public/test/no_renderer_crashes_assertion_unittest.cc",
    "../public/test/permission_overrides_unittest.cc",
    "../public/test/permission_type_unittest.cc",
    "../public/test/referrer_unittest.cc",
    "../public/test/test_utils_unittest.cc",
    "../renderer/accessibility/ax_image_stopwords_unittest.cc",
    "../renderer/content_security_policy_util_unittest.cc",
    "../renderer/media/batching_media_log_unittest.cc",
    "../renderer/media/gpu/gpu_video_accelerator_factories_impl_unittest.cc",
    "../renderer/media/inspector_media_event_handler_unittest.cc",
    "../renderer/media/renderer_webaudiodevice_impl_unittest.cc",
    "../renderer/render_thread_impl_unittest.cc",
    "../renderer/service_worker/service_worker_provider_context_unittest.cc",
    "../renderer/service_worker/service_worker_subresource_loader_unittest.cc",
    "../renderer/skia_benchmarking_extension_unittest.cc",
    "../renderer/v8_value_converter_impl_unittest.cc",
    "../renderer/worker/worker_thread_registry_unittest.cc",
    "navigation_simulator_unittest.cc",
    "test_aggregation_service_impl_unittest.cc",
    "test_page_unittest.cc",
    "test_render_frame_host_unittest.cc",
  ]

  if (is_mac) {
    sources += [
      "../browser/accessibility/browser_accessibility_mac_unittest.mm",
      "../browser/child_process_task_port_provider_mac_unittest.cc",
      "../browser/cocoa/system_hotkey_map_unittest.mm",
      "../browser/renderer_host/input/mouse_wheel_rails_filter_unittest_mac.cc",
      "../browser/renderer_host/input/web_input_event_builders_mac_unittest.mm",
      "../browser/renderer_host/native_web_keyboard_event_mac_unittest.mm",
      "../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/sandbox_mac_unittest.mm",
      "../browser/speech/tts_mac_unittest.mm",
      "../browser/web_contents/web_drag_dest_mac_unittest.mm",
      "../browser/web_contents/web_drag_source_mac_unittest.mm",
      "../common/mac/attributed_string_type_converters_unittest.mm",
      "../renderer/sandbox_mac_v2_unittest.mm",
    ]
  }

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

  if (is_fuchsia) {
    sources += [
      "../browser/accessibility/browser_accessibility_fuchsia_unittest.cc",
      "../browser/accessibility/browser_accessibility_manager_fuchsia_unittest.cc",
      "../browser/renderer_host/media/fuchsia_media_codec_provider_impl_unittest.cc",
    ]

    # TODO(https://crbug.com/1185811): Investigate removing the requirement for
    # job_policy_ambient_mark_vmo_exec for the sake of V8's allocator in tests.
    test_runner_shard = "//build/config/fuchsia/test/elf_test_ambient_exec_runner.shard.test-cml"

    additional_manifest_fragments = [
      "//build/config/fuchsia/test/fonts.shard.test-cml",
      "//build/config/fuchsia/test/mark_vmo_executable.shard.test-cml",
      "//build/config/fuchsia/test/network.shard.test-cml",
      "//build/config/fuchsia/test/platform_video_codecs.shard.test-cml",
      "//build/config/fuchsia/test/present_view.shard.test-cml",
      "//third_party/fuchsia-sdk/sdk/pkg/vulkan/client.shard.cml",
    ]
  }

  if (is_android) {
    sources += [
      "../browser/accessibility/browser_accessibility_android_unittest.cc",
      "../browser/android/nfc_host_unittest.cc",
      "../browser/attribution_reporting/attribution_input_event_tracker_android_unittest.cc",
      "../browser/renderer_host/input/web_input_event_builders_android_unittest.cc",
      "../browser/web_contents/color_chooser_unittest.cc",
      "../common/android/cpu_time_metrics_unittest.cc",
      "../common/android/gin_java_bridge_value_unittest.cc",
    ]
  }

  if (is_win) {
    sources +=
        [ "../renderer/media/win/overlay_state_observer_impl_unittest.cc" ]
  }

  if (is_android || is_linux || is_chromeos || is_mac || is_win || is_fuchsia) {
    data = [
      "$root_out_dir/content_shell.pak",
      "data/",
      "//media/test/data/",
      "//content/test/data/attribution_reporting/databases/",
      "//content/test/data/browsing_topics/",
    ]
  }
  if (is_ios) {
    bundle_deps = [
      ":content_shell_pak_bundle_data",
      ":content_unittests_bundle_data",
      "//media/test:media_bundle_data",
    ]
  }

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

  public_deps = [
    "//content:content_resources",
    "//content:dev_ui_content_resources",
  ]

  deps = [
    ":content_test_mojo_bindings",
    ":run_all_unittests",
    ":test_interfaces",
    ":test_support",
    "web_ui:test_webui_js_bridge2_webui_js_bridge_impl",
    "web_ui:test_webui_js_bridge_webui_js_bridge_impl",
    "//base",
    "//base/allocator:buildflags",
    "//base/test:test_support",
    "//base/third_party/dynamic_annotations",
    "//build:chromecast_buildflags",
    "//build:chromeos_buildflags",
    "//cc",
    "//cc:test_support",
    "//cc/mojom",
    "//components/aggregation_service:mojom",
    "//components/attribution_reporting:mojom",
    "//components/cbor",
    "//components/network_session_configurator/browser",
    "//components/network_session_configurator/common",
    "//components/offline_pages/buildflags",
    "//components/payments/mojom",
    "//components/power_scheduler",
    "//components/services/quarantine/public/mojom",
    "//components/services/storage",
    "//components/services/storage:filesystem_proxy_factory",
    "//components/services/storage:test_support",
    "//components/services/storage/dom_storage:local_storage_proto",
    "//components/services/storage/public/cpp",
    "//components/services/storage/service_worker:service_worker_proto",
    "//components/system_media_controls:test_support",
    "//components/ukm:test_support",
    "//components/viz/client",
    "//components/viz/common",
    "//components/viz/host",
    "//components/viz/service",
    "//components/viz/test:test_support",
    "//content/app:for_content_tests",
    "//content/browser:for_content_tests",
    "//content/browser/aggregation_service:for_content_tests",
    "//content/browser/attribution_reporting:attribution_reporting_proto",
    "//content/browser/attribution_reporting:mojo_bindings",
    "//content/browser/background_fetch:background_fetch_proto",
    "//content/browser/cache_storage:cache_storage_proto",
    "//content/browser/devtools:devtools_background_services_proto",
    "//content/browser/download:proto",
    "//content/browser/notifications:notification_proto",
    "//content/browser/private_aggregation/proto:private_aggregation_budgets_proto",
    "//content/child:for_content_tests",
    "//content/common:buildflags",
    "//content/common:for_content_tests",
    "//content/gpu",
    "//content/public/browser",
    "//content/public/browser:proto",
    "//content/public/child",
    "//content/public/common",
    "//content/public/renderer",
    "//content/renderer:for_content_tests",
    "//content/services/auction_worklet:tests",
    "//content/services/auction_worklet/public/mojom:for_content_tests",
    "//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/common:test_support",
    "//gpu/ipc/host",
    "//gpu/ipc/service",
    "//ipc:test_sink",
    "//media:test_support",
    "//media/capture",
    "//media/midi:midi",
    "//media/midi:mojo",
    "//media/webrtc",
    "//mojo/core/embedder",
    "//mojo/public/cpp/bindings",
    "//mojo/public/cpp/test_support:test_utils",
    "//net:extras",
    "//net:test_support",
    "//ppapi/buildflags",
    "//services/audio/public/cpp:test_support",
    "//services/audio/public/mojom",
    "//services/data_decoder/public/cpp:test_support",
    "//services/data_decoder/public/mojom",
    "//services/device/public/cpp:test_support",
    "//services/device/public/cpp/generic_sensor",
    "//services/device/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/service_manager/public/cpp/test:test_support",
    "//services/video_capture/public/cpp:mocks",
    "//services/video_capture/public/mojom",
    "//services/video_capture/public/mojom:constants",
    "//services/viz/public/cpp/gpu",
    "//skia",
    "//sql",
    "//sql:test_support",
    "//storage/browser",
    "//storage/browser:test_support",
    "//storage/common",
    "//testing/gmock",
    "//testing/gtest",
    "//third_party/blink/public:blink",
    "//third_party/blink/public:test_support",
    "//third_party/blink/public/common:font_enumeration_table_proto",
    "//third_party/blink/public/common:headers",
    "//third_party/icu",
    "//third_party/inspector_protocol:crdtp",
    "//third_party/inspector_protocol:crdtp_test",
    "//third_party/leveldatabase",
    "//third_party/libyuv",
    "//third_party/metrics_proto",
    "//third_party/re2",
    "//third_party/sqlite",
    "//third_party/widevine/cdm:headers",
    "//third_party/zlib/google:compression_utils",
    "//ui/accessibility",
    "//ui/accessibility:test_support",
    "//ui/base:test_support",
    "//ui/base/clipboard:clipboard_test_support",
    "//ui/base/cursor",
    "//ui/base/cursor/mojom:cursor_type",
    "//ui/base/idle:test_support",
    "//ui/base/ime/init",
    "//ui/compositor:test_support",
    "//ui/display",
    "//ui/display:test_support",
    "//ui/display/mojom",
    "//ui/events:gesture_detection",
    "//ui/events:test_support",
    "//ui/events/blink",
    "//ui/gfx:test_support",
    "//ui/gfx/geometry",
    "//ui/gfx/geometry:geometry_skia",
    "//ui/gfx/geometry/mojom:mojom_traits",
    "//ui/gfx/ipc",
    "//ui/gfx/ipc/skia",
    "//ui/gl",
    "//ui/gl:test_support",
    "//ui/latency:test_support",
    "//ui/shell_dialogs:shell_dialogs",
    "//ui/webui:test_support",
  ]

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

  # Platforms where sqlite_dev_shell is defined.
  if (is_win || is_mac || is_linux || is_chromeos) {
    sources += [ "../browser/attribution_reporting/attribution_storage_sql_query_plans_unittest.cc" ]
    deps += [ "../browser/attribution_reporting:sqlite_test_utils" ]
  }

  if (is_chromeos_lacros) {
    deps += [
      "//chromeos/crosapi/mojom",
      "//chromeos/lacros:test_support",
    ]
  }

  if (is_mac) {
    data_deps += [ "//device/fido/strings:fido_test_strings" ]
  }

  if (is_posix) {
    sources += [ "../browser/posix_file_descriptor_info_impl_unittest.cc" ]
    deps += [ "//services/tracing:test_utils" ]
  }

  if (is_linux || is_chromeos) {
    deps += [ "//components/crash/content/browser/error_reporting" ]
  }

  if (is_fuchsia) {
    deps += [
      "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.accessibility.semantics:fuchsia.accessibility.semantics_cpp",
      "//third_party/fuchsia-sdk/sdk/fidl/fuchsia.accessibility.semantics:fuchsia.accessibility.semantics_hlcpp",
    ]
  }

  if (enable_printing) {
    deps += [
      "//printing",
      "//printing/backend",
    ]
  }

  if (enable_ppapi) {
    sources += [
      "../browser/ppapi_plugin_sandboxed_process_launcher_delegate_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/resource_creation_impl_unittest.cc",
      "../renderer/pepper/v8_var_converter_unittest.cc",
    ]
    deps += [
      "//ppapi/c",
      "//ppapi/host",
      "//ppapi/proxy:test_support",
      "//ppapi/shared_impl:test_support",
    ]
  }

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

  # Screen capture unit tests.
  if (enable_screen_capture) {
    sources += [
      "../browser/media/capture/frame_sink_video_capture_device_unittest.cc",
      "../browser/media/capture/web_contents_frame_tracker_unittest.cc",
    ]

    if (!is_android) {
      deps += [
        "//content/common:buildflags",
        "//media/capture:test_support",
        "//third_party/libyuv",
        "//third_party/webrtc_overrides:webrtc_component",
      ]
      sources += [
        "../browser/media/capture/desktop_capture_device_unittest.cc",
        "../browser/renderer_host/media/crop_id_web_contents_helper_unittest.cc",
      ]
    }
  }

  if (is_linux || is_chromeos) {
    if (use_dbus) {
      deps += [ "//dbus:test_support" ]
    }
  }
  if (is_win) {
    sources += [
      "../browser/accessibility/browser_accessibility_manager_win_unittest.cc",
      "../browser/accessibility/browser_accessibility_win_unittest.cc",
      "../browser/renderer_host/direct_manipulation_test_helper_win.cc",
      "../browser/renderer_host/direct_manipulation_test_helper_win.h",
      "../browser/renderer_host/direct_manipulation_win_unittest.cc",
      "../browser/renderer_host/dwrite_font_proxy_impl_win_unittest.cc",
      "../browser/screenlock_monitor/screenlock_monitor_device_source_win_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",
      "../renderer/media/win/dcomp_texture_wrapper_unittest.cc",
    ]
    deps += [
      "//sandbox/policy:sandbox_test_utils",
      "//sandbox/win:sandbox",
      "//third_party/blink/public/common",
      "//third_party/blink/public/common:font_unique_name_table_proto",
      "//third_party/iaccessible2",
      "//ui/base",
    ]
    libs = [
      "dwrite.lib",
      "wtsapi32.lib",
    ]
    configs += [ "//build/config/win:delayloads" ]
  }
  if (is_mac) {
    deps += [
      "//sandbox/mac:seatbelt",
      "//third_party/ocmock",
      "//ui/accelerated_widget_mac",
      "//ui/base/mojom",
    ]
    frameworks = [
      "Carbon.framework",
      "IOSurface.framework",
    ]
  }
  if (is_chromeos_ash) {
    sources += [
      "../browser/handwriting/handwriting_recognition_service_impl_cros_unittest.cc",
      "../browser/ml/ml_service_impl_cros_unittest.cc",
      "../browser/ml/ml_service_impl_unittest.cc",
    ]
    deps += [
      "//ash/constants:constants",
      "//chromeos/ash/components/audio",
      "//chromeos/ash/components/dbus/audio",
      "//chromeos/services/machine_learning/public/cpp:stub",
      "//chromeos/services/machine_learning/public/mojom",
      "//chromeos/services/machine_learning/public/mojom",
      "//components/ml/mojom",
    ]
  }
  if (is_chromeos_lacros) {
    sources += [ "../browser/screenlock_monitor/screenlock_monitor_device_source_lacros_unittest.cc" ]
    deps += [
      "//chromeos/crosapi/mojom",
      "//chromeos/lacros:test_support",
    ]
  }
  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/message_payload_unittest.cc",
      "../browser/android/overscroll_controller_android_unittest.cc",
      "../browser/android/scoped_surface_request_manager_unittest.cc",
      "../browser/font_unique_name_lookup/font_unique_name_lookup_unittest.cc",
      "../browser/host_zoom_map_impl_android_unittest.cc",
      "../browser/renderer_host/render_widget_host_view_android_unittest.cc",
      "../browser/sms/sms_provider_gms_unittest.cc",
      "../renderer/java/gin_java_bridge_value_converter_unittest.cc",
      "../renderer/media/android/stream_texture_proxy_unittest.cc",
      "../renderer/media/android/stream_texture_wrapper_impl_unittest.cc",
    ]

    deps += [
      ":content_unittests_java",
      ":content_unittests_jni_headers",
      "//base:base_java_unittest_support",
      "//build/config/freetype",
      "//cc/slim",
      "//components/download/internal/common:internal_java",
      "//content/public/android:content_java",
      "//gin:v8_snapshot_assets",
      "//gpu/command_buffer/service:android_texture_owner_test_support",
      "//services/data_decoder/public/cpp/android:safe_json_java",
      "//third_party/blink/public/common",
      "//third_party/blink/public/common:font_unique_name_table_proto",
      "//ui/android:android",
    ]

    defines += [ "APPCACHE_USE_SIMPLE_CACHE" ]
  } else {
    # Non-Android.
    sources += [
      "../browser/devtools/protocol/webauthn_handler_unittest.cc",
      "../browser/host_zoom_map_impl_unittest.cc",
      "../browser/serial/serial_unittest.cc",
      "../browser/speech/endpointer/endpointer_unittest.cc",
      "../browser/speech/speech_recognition_engine_unittest.cc",
      "../browser/speech/speech_recognizer_impl_unittest.cc",
      "../browser/tracing/tracing_ui_unittest.cc",
    ]
    deps += [ "//components/speech:speech" ]
  }

  # HID support is not available without udev.
  is_linux_without_udev = (is_linux || is_chromeos) && !use_udev
  if (!is_linux_without_udev && !is_android) {
    sources += [
      "../browser/hid/hid_service_unittest.cc",
      "../browser/webauth/authenticator_impl_unittest.cc",
      "../browser/webauth/authenticator_mojom_traits_unittest.cc",
      "../browser/webauth/webauth_request_security_checker_unittest.cc",
    ]
    deps += [
      "//components/webauthn/content/browser",
      "//device/base",
      "//device/fido",
      "//device/fido:cablev2_authenticator",
      "//device/fido:cablev2_test_util",
      "//device/fido:mocks",
      "//device/fido:test_support",
    ]
    if (is_chromeos) {
      deps += [
        "//chromeos/dbus/tpm_manager",
        "//chromeos/dbus/u2f",
      ]
    }
  }

  if (is_chromeos) {
    sources +=
        [ "../browser/smart_card/smart_card_reader_tracker_impl_unittest.cc" ]
  }

  if (use_aura) {
    deps += [
      "//ui/aura:test_support",
      "//ui/aura_extra",
      "//ui/base/dragdrop:types",
      "//ui/base/dragdrop/mojom",
      "//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 (enable_plugins) {
    sources += [ "../browser/plugin_list_unittest.cc" ]
  }

  if (use_ozone) {
    deps += [ "//ui/ozone" ]
    if (ozone_platform_x11) {
      deps += [
        "//ui/base/x",
        "//ui/gfx/x",
      ]
    }
  }

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

  if (is_linux || is_chromeos) {
    sources += [ "../common/set_process_title_linux_unittest.cc" ]
    deps += [ "//content/common:set_process_title_linux" ]
  }

  if (enable_vr) {
    sources += [ "../browser/xr/service/xr_runtime_manager_unittest.cc" ]
    deps += [ "//device/vr:vr_fakes" ]
  }

  # TODO(crbug.com/1293538): Update to check is_cast_audio_only
  if (is_castos || is_cast_android) {
    deps += [ "//chromecast:chromecast_buildflags" ]
  }
}

if (is_ios) {
  bundle_data("content_shell_pak_bundle_data") {
    testonly = true
    public_deps = [ "//content/shell:pak" ]
    sources = [ "$root_out_dir/content_shell.pak" ]
    outputs = [ "{{bundle_resources_dir}}/content_shell.pak" ]
  }

  bundle_data_from_filelist("content_unittests_bundle_data") {
    testonly = true
    filelist_name = "content_unittests_bundle_data.filelist"
  }
}

if (enable_nocompile_tests) {
  nocompile_test("content_nocompile_tests") {
    sources = [ "../browser/browser_task_traits_unittest.nc" ]

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

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

# This group defines the isolate files needed to run
# test_buildbucket_api_gpu_cases.py on bots. This also tells the build system
# when the tests should be re-run - when one of the dependent files changes.
#
group("test_buildbucket_api_gpu_use_cases") {
  data = [
    # The test runner and its dependencies.
    "//testing/scripts/test_buildbucket_api_gpu_use_cases.py",

    "//content/test/gpu/gather_power_measurement_results.py",
    "//content/test/gpu/gather_swarming_json_results.py",
  ]
  data_deps = [ "//testing:test_scripts_shared" ]
}

if (is_android) {
  content_java_sources_needing_jni = [
    "//content/public/android/javatests/src/org/chromium/content/browser/sms/SmsProviderFakes.java",
    "//content/public/android/javatests/src/org/chromium/content/browser/fakes/TestViewAndroidDelegate.java",
  ]

  generate_jni("content_unittests_jni_headers") {
    testonly = true
    sources = content_java_sources_needing_jni
  }

  android_library("content_unittests_java") {
    testonly = true
    sources = content_java_sources_needing_jni
    deps = [
      "$google_play_services_package:google_play_services_auth_api_phone_java",
      "$google_play_services_package:google_play_services_base_java",
      "$google_play_services_package:google_play_services_basement_java",
      "$google_play_services_package:google_play_services_tasks_java",
      "//base:base_java",
      "//base:jni_java",
      "//content/public/android:content_java",
      "//ui/android:ui_full_java",
    ]
  }
}

group("gpu_pytype") {
  testonly = true

  data = [
    "//content/test/gpu/run_pytype.py",
    "//content/test/gpu/validate_tag_consistency.py",

    "//content/test/gpu/gold_inexact_matching/",
    "//content/test/gpu/flake_suppressor/",
    "//testing/flake_suppressor_common/",
    "//content/test/gpu/unexpected_passes/",
    "//testing/unexpected_passes_common/",
  ]

  data_deps = [
    # This includes more than we strictly need to, but this ensures that we
    # don't accidentally omit Python files that the real tests would be using.
    ":telemetry_gpu_integration_test_scripts_only",
    ":telemetry_gpu_integration_test_support",
    "//testing:pytype_dependencies",
  ]
}