# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/chrome_build.gni")
import("//build/config/compiler/compiler.gni")
import("//build/config/crypto.gni")
import("//build/config/features.gni")
import("//build/config/ui.gni")
import("//chrome/common/features.gni")
import("//chrome/chrome_repack_locales.gni")
import("//chrome/test/base/js2gtest.gni")
import("//components/os_crypt/features.gni")
import("//components/spellcheck/spellcheck_build_features.gni")
import("//extensions/features/features.gni")
import("//media/media_options.gni")
import("//ppapi/features/features.gni")
import("//remoting/remoting_enable.gni")
import("//rlz/features/features.gni")
import("//services/service_manager/public/service_manifest.gni")
import("//services/catalog/public/tools/catalog.gni")
import("//testing/test.gni")
import("//ui/base/ui_features.gni")
import("//v8/gni/v8.gni")

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

# This target exists to reference other test executables to bring these files
# into the build.
group("test") {
  testonly = true
}

# 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") {
  defines = []
  testonly = true

  sources = [
    "base/chrome_process_util.cc",
    "base/chrome_process_util.h",
    "base/chrome_process_util_mac.cc",
    "base/chrome_render_view_host_test_harness.cc",
    "base/chrome_render_view_host_test_harness.h",
    "base/chrome_test_launcher.cc",
    "base/chrome_test_launcher.h",
    "base/chrome_test_suite.cc",
    "base/chrome_test_suite.h",
    "base/chrome_unit_test_suite.cc",
    "base/chrome_unit_test_suite.h",
    "base/dialog_test_browser_window.cc",
    "base/dialog_test_browser_window.h",
    "base/find_in_page_observer.cc",
    "base/find_in_page_observer.h",
    "base/scoped_browser_locale.cc",
    "base/scoped_browser_locale.h",
    "base/scoped_bundle_swizzler_mac.h",
    "base/scoped_bundle_swizzler_mac.mm",
    "base/scoped_testing_local_state.cc",
    "base/scoped_testing_local_state.h",
    "base/search_test_utils.cc",
    "base/search_test_utils.h",
    "base/test_browser_window.cc",
    "base/test_browser_window.h",
    "base/test_launcher_utils.cc",
    "base/test_launcher_utils.h",
    "base/test_switches.cc",
    "base/test_switches.h",
    "base/testing_browser_process.cc",
    "base/testing_browser_process.h",
    "base/testing_browser_process_platform_part.cc",
    "base/testing_browser_process_platform_part.h",
    "base/testing_io_thread_state.cc",
    "base/testing_io_thread_state.h",
    "base/testing_profile.cc",
    "base/testing_profile.h",
    "base/testing_profile_manager.cc",
    "base/testing_profile_manager.h",
    "base/tracing.cc",
    "base/tracing.h",
    "logging/win/file_logger.cc",
    "logging/win/file_logger.h",
    "logging/win/log_file_printer.cc",
    "logging/win/log_file_printer.h",
    "logging/win/log_file_reader.cc",
    "logging/win/log_file_reader.h",
    "logging/win/mof_data_parser.cc",
    "logging/win/mof_data_parser.h",
    "logging/win/test_log_collector.cc",
    "logging/win/test_log_collector.h",
  ]

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

  # New deps should go in the non-iOS section below.
  public_deps = [
    "//base/test:test_support",
    "//chrome:resources",
    "//chrome:strings",
    "//chrome/app:test_support",

    #"//chrome/app/theme:theme_resources",
    "//chrome/browser:test_support",
    "//chrome/child",
    "//chrome/common:test_support",
    "//chrome/renderer",
    "//chrome/renderer:test_support",
    "//chrome/utility",
    "//components/autofill/core/browser:test_support",
    "//components/bookmarks/test",
    "//components/captive_portal:test_support",
    "//components/gcm_driver:test_support",
    "//components/gcm_driver/crypto:test_support",
    "//components/gcm_driver/instance_id:test_support",
    "//components/guest_view/browser:test_support",
    "//components/history/core/test:test",
    "//components/infobars/core",
    "//components/metrics:test_support",
    "//components/network_time:network_time_test_support",
    "//components/offline_pages/core:test_support",
    "//components/omnibox/browser:test_support",
    "//components/password_manager/core/browser:test_support",
    "//components/prefs:test_support",
    "//components/rappor:test_support",
    "//components/search_engines:test_support",
    "//components/sessions:test_support",
    "//components/signin/core/browser:test_support",
    "//components/sync",
    "//components/sync:test_support_driver",
    "//components/sync_preferences:test_support",
    "//components/sync_sessions:test_support",
    "//components/toolbar:test_support",
    "//components/update_client:test_support",
    "//components/web_resource:test_support",
    "//components/zoom:test_support",
    "//content/public/app:both",
    "//content/public/child",
    "//content/public/common",
    "//content/public/renderer",
    "//content/public/utility",
    "//content/test:test_support",
    "//extensions/features",
    "//google_apis:test_support",
    "//gpu/ipc/service",
    "//ipc:test_support",
    "//media:media_features",
    "//media:test_support",
    "//net",
    "//net:test_support",
    "//pdf",
    "//ppapi/features",
    "//printing/features",
    "//skia",
    "//sql",
    "//sql:test_support",
    "//sql:test_support",
    "//testing/gmock",
    "//testing/gtest",
    "//third_party/leveldatabase",
    "//third_party/zlib",
    "//ui/base",
    "//ui/events:events_base",
    "//ui/gfx:test_support",
    "//ui/gl",
    "//ui/message_center:test_support",
  ]

  if (enable_plugins) {
    public_deps += [ "//ppapi/shared_impl" ]
  }

  if (is_android) {
    public_deps -= [ "//ui/message_center:test_support" ]
    sources -= [
      "base/dialog_test_browser_window.cc",
      "base/dialog_test_browser_window.h",
      "base/test_browser_window.cc",
      "base/test_browser_window.h",
    ]
  }

  if (enable_extensions) {
    public_deps += [
      "//apps:test_support",
      "//chrome/common/extensions/api",
      "//extensions:test_support",
    ]
  }

  if (is_linux) {
    public_deps += [ "//crypto:platform" ]
  }
  if (is_mac) {
    sources += [
      "//chrome/app/chrome_crash_reporter_client.cc",
      "//chrome/app/chrome_crash_reporter_client_mac.mm",
    ]
    public_deps += [
      "//breakpad",
      "//components/crash/content/app",
      "//third_party/ocmock",
    ]
  }
  if (is_win) {
    sources += [ "//chrome/app/chrome_crash_reporter_client_win.cc" ]
    public_deps += [
      "//chrome/install_static/test:test_support",
      "//components/crash/content/app",
      "//third_party/wtl",
    ]
  }
  if (is_chromeos) {
    sources += [
      "../browser/chromeos/accessibility/speech_monitor.cc",
      "../browser/chromeos/accessibility/speech_monitor.h",
    ]
    public_deps += [
      "//components/ownership",
      "//components/user_manager:test_support",
    ]
  }

  if (use_aura) {
    sources += [
      "base/test_browser_window_aura.cc",
      "base/test_browser_window_aura.h",
    ]
  }

  if (use_ash) {
    sources += [
      "base/default_ash_event_generator_delegate.cc",
      "base/default_ash_event_generator_delegate.h",
    ]

    public_deps += [
      "//ash",
      "//ash/test:ash_with_aura_test_support",
      "//ash/test:test_support_with_content",
      "//ui/aura",
      "//ui/aura:test_support",
    ]
  }
  if (toolkit_views) {
    public_deps += [ "//ui/views:test_support" ]
  }

  if (enable_extensions) {
    public_deps += [
      "//apps:test_support",
      "//chrome/common/extensions/api",
      "//extensions:test_support",
    ]
  }
}

# TODO(GYP_GONE): Delete this after we've converted everything to GN.
# The _run targets exist only for compatibility w/ GYP.
group("telemetry_gpu_integration_test_run") {
  testonly = true
  deps = [
    ":telemetry_gpu_integration_test",
  ]
}

group("telemetry_gpu_integration_test") {
  testonly = true
  deps = [
    "//tools/perf/chrome_telemetry_build:telemetry_chrome_test",
  ]

  data = [
    # For isolate contract.
    "//testing/scripts/common.py",
    "//testing/xvfb.py",
    "//testing/scripts/run_gpu_integration_test_as_googletest.py",

    "//content/test/gpu/",
    "//content/test/data/gpu/",

    # For depth_capture
    "//content/test/data/media/depth_stream_test_utilities.js",
    "//content/test/data/media/getusermedia-depth-capture.html",
    "//content/test/data/media/webrtc_test_utilities.js",

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

    # For webgl_conformance
    "//third_party/webgl/",
    "//content/test/gpu/run_gpu_integration_test.py",
  ]
}

if (!is_android) {
  static_library("test_support_ui") {
    defines = []
    testonly = true

    sources = [
      "../browser/permissions/permission_request_manager_test_api.cc",
      "../browser/permissions/permission_request_manager_test_api.h",
      "base/in_process_browser_test.cc",
      "base/in_process_browser_test.h",
      "base/in_process_browser_test_mac.cc",
      "base/javascript_browser_test.cc",
      "base/javascript_browser_test.h",
      "base/test_chrome_web_ui_controller_factory.cc",
      "base/test_chrome_web_ui_controller_factory.h",
      "base/ui_test_utils.cc",
      "base/ui_test_utils.h",
      "base/web_ui_browser_test.cc",
      "base/web_ui_browser_test.h",
    ]

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

    public_deps = [
      "//chrome/browser:test_support_ui",
    ]
    deps = [
      "//components/metrics:test_support",
      "//components/os_crypt:test_support",
      "//content/public/browser:browser",
      "//skia",
      "//testing/gtest",
    ]

    if (enable_plugins) {
      sources += [
        "ppapi/ppapi_test.cc",
        "ppapi/ppapi_test.h",
      ]
    }
  }

  import("//third_party/protobuf/proto_library.gni")

  proto_library("test_proto") {
    sources = [
      "../common/safe_browsing/ipc_protobuf_message_test.proto",
    ]
  }

  test("interactive_ui_tests") {
    sources = [
      "../browser/apps/app_browsertest_util.cc",
      "../browser/apps/app_browsertest_util.h",
      "../browser/apps/app_pointer_lock_interactive_uitest.cc",
      "../browser/apps/app_shim/app_shim_interactive_uitest_mac.mm",
      "../browser/apps/app_shim/app_shim_quit_interactive_uitest_mac.mm",
      "../browser/apps/app_window_interactive_uitest.cc",
      "../browser/apps/guest_view/web_view_interactive_browsertest.cc",
      "../browser/autofill/autofill_interactive_uitest.cc",
      "../browser/autofill/autofill_uitest_util.cc",
      "../browser/browser_keyevents_browsertest.cc",
      "../browser/extensions/api/extension_action/browser_action_interactive_test.cc",
      "../browser/extensions/api/notifications/notifications_apitest.cc",
      "../browser/extensions/api/omnibox/omnibox_api_interactive_test.cc",
      "../browser/extensions/api/tabs/tabs_interactive_test.cc",
      "../browser/extensions/browsertest_util.cc",
      "../browser/extensions/chrome_extension_test_notification_observer.cc",
      "../browser/extensions/chrome_extension_test_notification_observer.h",
      "../browser/extensions/clipboard_extension_apitest_chromeos.cc",
      "../browser/extensions/extension_apitest.cc",
      "../browser/extensions/extension_browsertest.cc",
      "../browser/extensions/extension_commands_global_registry_apitest.cc",
      "../browser/extensions/extension_crash_recovery_browsertest.cc",
      "../browser/extensions/extension_fullscreen_apitest.cc",
      "../browser/extensions/extension_function_test_utils.cc",
      "../browser/extensions/extension_keybinding_apitest.cc",
      "../browser/extensions/updater/extension_cache_fake.cc",
      "../browser/extensions/updater/extension_cache_fake.h",
      "../browser/extensions/window_open_interactive_apitest.cc",
      "../browser/mouseleave_browsertest.cc",
      "../browser/notifications/message_center_notifications_browsertest.cc",
      "../browser/password_manager/password_generation_interactive_uitest.cc",
      "../browser/password_manager/password_manager_interactive_uitest.cc",
      "../browser/renderer_context_menu/render_view_context_menu_browsertest_util.cc",
      "../browser/renderer_context_menu/render_view_context_menu_browsertest_util.h",
      "../browser/renderer_host/site_per_process_text_input_browsertest.cc",
      "../browser/site_per_process_interactive_browsertest.cc",
      "../browser/ui/autofill/autofill_popup_controller_interactive_uitest.cc",
      "../browser/ui/blocked_content/popup_blocker_browsertest.cc",
      "../browser/ui/browser_focus_uitest.cc",
      "../browser/ui/cocoa/apps/app_shim_menu_controller_mac_interactive_uitest.mm",
      "../browser/ui/cocoa/apps/quit_with_apps_controller_mac_interactive_uitest.mm",
      "../browser/ui/cocoa/permission_bubble/permission_bubble_cocoa_interactive_uitest.mm",
      "../browser/ui/exclusive_access/flash_fullscreen_interactive_browsertest.cc",
      "../browser/ui/exclusive_access/fullscreen_controller_interactive_browsertest.cc",
      "../browser/ui/exclusive_access/fullscreen_controller_state_interactive_browsertest.cc",
      "../browser/ui/find_bar/find_bar_host_interactive_uitest.cc",
      "../browser/ui/omnibox/omnibox_view_browsertest.cc",
      "../browser/ui/passwords/manage_passwords_test.cc",
      "../browser/ui/passwords/manage_passwords_test.h",
      "../browser/ui/search/instant_extended_interactive_uitest.cc",
      "../browser/ui/search/instant_extended_manual_interactive_uitest.cc",
      "../browser/ui/search/instant_test_utils.cc",
      "../browser/ui/search/instant_test_utils.h",
      "../browser/ui/search/local_ntp_browsertest.cc",
      "../browser/ui/startup/startup_browser_creator_interactive_uitest.cc",
      "../browser/ui/translate/translate_bubble_test_utils.h",
      "../browser/ui/views/accessibility/navigation_accessibility_uitest_win.cc",
      "../browser/ui/webui/options/language_dictionary_interactive_uitest.cc",
      "../browser/ui/webui/options/language_options_interactive_uitest.cc",
      "//ui/base/clipboard/clipboard_android_unittest.cc",
      "//ui/base/clipboard/clipboard_unittest.cc",
      "base/always_on_top_window_killer_win.cc",
      "base/always_on_top_window_killer_win.h",
      "base/interactive_test_utils.cc",
      "base/interactive_test_utils.h",
      "base/interactive_test_utils_aura.cc",
      "base/interactive_test_utils_aura.h",
      "base/interactive_test_utils_common_views.cc",
      "base/interactive_test_utils_mac.mm",
      "base/interactive_test_utils_win.cc",
      "base/interactive_ui_tests_main.cc",
      "base/view_event_test_platform_part.h",
      "base/view_event_test_platform_part_chromeos.cc",
      "base/view_event_test_platform_part_default.cc",
      "ppapi/ppapi_interactive_browsertest.cc",
    ]

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

    data_deps = [
      "//testing/buildbot/filters:interactive_ui_tests_filters",
    ]

    data = [
      "data/",
      "//chrome/third_party/mock4js/",
      "//content/test/data/",
      "//net/tools/testserver/",
      "//ppapi/tests/test_case.html",
      "//ppapi/tests/test_case.html.mock-http-headers",
      "//ppapi/tests/test_page.css",
      "//ppapi/tests/test_page.css.mock-http-headers",
      "//third_party/accessibility-audit/axs_testing.js",
      "//third_party/chaijs/chai.js",
      "//third_party/mocha/mocha.js",
      "//third_party/pyftpdlib/",
      "//third_party/pywebsocket/",
      "//third_party/tlslite/",
      "//third_party/zlib/google/test/data/",
      "//tools/metrics/histograms/histograms.xml",
      "//ui/webui/resources/js/",
      "$root_out_dir/pyproto/google/",
      "$root_out_dir/test_case.html",
      "$root_out_dir/test_case.html.mock-http-headers",
      "$root_out_dir/test_page.css",
      "$root_out_dir/test_page.css.mock-http-headers",
      "$root_out_dir/ui_test.pak",
    ]
    if (is_linux || is_win) {
      data += [
        "$root_out_dir/chrome_100_percent.pak",
        "$root_out_dir/chrome_200_percent.pak",
        "$root_out_dir/locales/en-US.pak",
        "$root_out_dir/locales/fr.pak",
        "$root_out_dir/resources.pak",
      ]
    }
    if (is_linux) {
      data += [ "$root_out_dir/libppapi_tests.so" ]
    }

    defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
    ldflags = []

    deps = [
      ":interactive_ui_tests_js_webui",
      ":test_support",
      ":test_support_ui",
      "//chrome:packed_resources",
      "//chrome:resources",
      "//chrome:strings",
      "//chrome/browser",
      "//chrome/browser/devtools",
      "//chrome/renderer",
      "//components/resources",
      "//components/sync",
      "//components/sync:test_support_model",
      "//content/app/resources",
      "//content/test:test_support",
      "//crypto:platform",
      "//crypto:test_support",
      "//extensions/features",
      "//google_apis:test_support",
      "//net",
      "//net:net_resources",
      "//net:test_support",
      "//skia",
      "//testing/gmock",
      "//testing/gtest",
      "//third_party/hunspell",
      "//third_party/icu",
      "//third_party/libpng",
      "//third_party/zlib",
      "//ui/base:test_support",
      "//ui/resources:ui_test_pak",
      "//ui/web_dialogs:test_support",
    ]

    # TODO(rockot) bug 505926: The chrome_extensions_interactive_uitests target
    # should be deleted and this line removed. See the
    # chrome_extensions_interactive_uitests target for more.
    deps += [ "//extensions:chrome_extensions_interactive_uitests" ]

    # Runtime dependencies
    data_deps += [
      "//ppapi:ppapi_tests",
      "//third_party/mesa:osmesa",
    ]

    if (use_aura) {
      sources += [ "../browser/ui/views/drag_and_drop_interactive_uitest.cc" ]
    }

    if (toolkit_views) {
      sources += [
        "../browser/ui/views/menu_controller_interactive_uitest.cc",
        "../browser/ui/views/menu_item_view_interactive_uitest.cc",
        "../browser/ui/views/menu_model_adapter_test.cc",
        "../browser/ui/views/menu_test_base.cc",
        "../browser/ui/views/menu_test_base.h",
        "../browser/ui/views/menu_view_drag_and_drop_test.cc",
        "../browser/ui/views/status_icons/status_tray_state_changer_interactive_uitest_win.cc",
        "//ui/views/corewm/desktop_capture_controller_unittest.cc",
        "//ui/views/widget/desktop_aura/desktop_window_tree_host_x11_interactive_uitest.cc",
        "//ui/views/widget/desktop_aura/x11_topmost_window_finder_interactive_uitest.cc",
        "//ui/views/widget/widget_interactive_uitest.cc",
        "base/view_event_test_base.cc",
        "base/view_event_test_base.h",
      ]
      deps += [
        "//ui/views",
        "//ui/views:test_support",
        "//ui/views/controls/webview:test_support",
      ]
      if (!is_mac || mac_views_browser) {
        # TODO(tapted): Move these to chrome_interactive_ui_test_views_sources
        # when the corresponding files are moved in chrome_browser_ui.gypi
        # (i.e. out of chrome_browser_ui_views_non_mac_sources).
        sources += [
          "../browser/ui/views/bookmarks/bookmark_bar_view_test.cc",
          "../browser/ui/views/bookmarks/bookmark_bar_view_test_helper.h",
          "../browser/ui/views/certificate_selector_browsertest.cc",
          "../browser/ui/views/constrained_window_views_browsertest.cc",
          "../browser/ui/views/extensions/extension_dialog_interactive_uitest.cc",
          "../browser/ui/views/find_bar_views_interactive_uitest.cc",
          "../browser/ui/views/frame/browser_view_focus_uitest.cc",
          "../browser/ui/views/frame/browser_view_interactive_uitest.cc",
          "../browser/ui/views/keyboard_access_browsertest.cc",
          "../browser/ui/views/location_bar/location_icon_view_interactive_uitest.cc",
          "../browser/ui/views/location_bar/star_view_browsertest.cc",
          "../browser/ui/views/omnibox/omnibox_view_views_browsertest.cc",
          "../browser/ui/views/page_info/website_settings_popup_view_interactive_uitest.cc",
          "../browser/ui/views/passwords/manage_passwords_bubble_view_interactive_uitest.cc",
          "../browser/ui/views/passwords/manage_passwords_icon_view_interactive_uitest.cc",
          "../browser/ui/views/ssl_client_certificate_selector_browsertest.cc",
          "../browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc",
          "../browser/ui/views/tabs/tab_drag_controller_interactive_uitest.h",
          "../browser/ui/views/toolbar/toolbar_action_view_interactive_uitest.cc",
          "../browser/ui/views/toolbar/toolbar_button_interactive_uitest.cc",
          "../browser/ui/views/toolbar/toolbar_view_interactive_uitest.cc",
          "../browser/ui/views/translate/translate_bubble_test_utils_views.cc",
          "base/interactive_test_utils_views.cc",
        ]
      }
      if (is_linux) {
        if (!is_chromeos) {
          # Desktop linux.
          sources -= [
            # TODO(port): This times out. Attempts have been made to fix the
            # individual failures, but each time I disable a test from these
            # suites, it seems like one or another starts timing out too.
            "../browser/ui/views/keyboard_access_browsertest.cc",
          ]
          if (!use_ozone) {
            sources += [ "../browser/ui/libgtkui/select_file_dialog_interactive_uitest.cc" ]
            deps += [ "//build/config/linux/gtk" ]
          }
        }
      }
      if (is_chromeos || !use_x11) {
        sources -= [
          "//ui/views/widget/desktop_aura/desktop_window_tree_host_x11_interactive_uitest.cc",
          "//ui/views/widget/desktop_aura/x11_topmost_window_finder_interactive_uitest.cc",
        ]
      }
      if (use_aura) {
        sources +=
            [ "//ui/views/widget/native_widget_aura_interactive_uitest.cc" ]
      }
      if (use_aura || is_mac) {
        deps += [ "//ui/touch_selection" ]
      }
    }

    if (is_chromeos) {
      sources += [
        "../../ash/accelerators/accelerator_interactive_uitest_chromeos.cc",
        "../browser/chromeos/accessibility/accessibility_highlight_manager_interactive_uitest.cc",
        "../browser/chromeos/accessibility/magnification_controller_browsertest.cc",
        "../browser/chromeos/accessibility/spoken_feedback_browsertest.cc",
        "../browser/chromeos/accessibility/sticky_keys_browsertest.cc",
        "../browser/chromeos/input_method/textinput_browsertest.cc",
        "../browser/chromeos/input_method/textinput_surroundingtext_browsertest.cc",
        "../browser/chromeos/input_method/textinput_test_helper.cc",
        "../browser/chromeos/input_method/textinput_test_helper.h",
        "../browser/chromeos/login/eula_browsertest.cc",
        "../browser/chromeos/login/lock/screen_locker_browsertest.cc",
        "../browser/chromeos/login/lock/screen_locker_tester.cc",
        "../browser/chromeos/login/lock/screen_locker_tester.h",
        "../browser/chromeos/login/login_browsertest.cc",
        "../browser/chromeos/login/login_manager_test.cc",
        "../browser/chromeos/login/login_manager_test.h",
        "../browser/chromeos/login/login_ui_browsertest.cc",
        "../browser/chromeos/login/mixin_based_browser_test.cc",
        "../browser/chromeos/login/mixin_based_browser_test.h",
        "../browser/chromeos/login/oobe_browsertest.cc",
        "../browser/chromeos/login/screenshot_testing/SkDiffPixelsMetric.h",
        "../browser/chromeos/login/screenshot_testing/SkDiffPixelsMetric_cpu.cpp",
        "../browser/chromeos/login/screenshot_testing/SkImageDiffer.cpp",
        "../browser/chromeos/login/screenshot_testing/SkImageDiffer.h",
        "../browser/chromeos/login/screenshot_testing/SkPMetric.cpp",
        "../browser/chromeos/login/screenshot_testing/SkPMetric.h",
        "../browser/chromeos/login/screenshot_testing/screenshot_tester.cc",
        "../browser/chromeos/login/screenshot_testing/screenshot_tester.h",
        "../browser/chromeos/login/screenshot_testing/screenshot_testing_mixin.cc",
        "../browser/chromeos/login/screenshot_testing/screenshot_testing_mixin.h",
        "../browser/chromeos/login/test/https_forwarder.cc",
        "../browser/chromeos/login/test/https_forwarder.h",
        "../browser/chromeos/login/test/oobe_base_test.cc",
        "../browser/chromeos/login/test/oobe_base_test.h",
        "../browser/chromeos/login/users/wallpaper/wallpaper_manager_browsertest.cc",
        "../browser/chromeos/login/users/wallpaper/wallpaper_manager_test_utils.cc",
        "../browser/chromeos/login/users/wallpaper/wallpaper_manager_test_utils.h",
        "../browser/notifications/login_state_notification_blocker_chromeos_browsertest.cc",
        "data/chromeos/service_login.html",
      ]
      deps += [
        "//ash/resources",
        "//chrome/browser/media/router:test_support",
        "//chromeos",
        "//mojo/edk/system",
        "//ui/app_list/presenter:test_support",
      ]

      data += [
        "//chrome/browser/chromeos/login/test/https_forwarder.py",
        "//google_apis/test/",
        "$root_out_dir/resources/chromeos/",
      ]

      data_deps += [ "//ui/keyboard:resources" ]

      if (enable_nacl) {
        data_deps += [
          "//components/nacl/loader:nacl_helper",
          "//ppapi/native_client:irt",
        ]

        if (enable_nacl_nonsfi) {
          data_deps += [ "//components/nacl/loader:helper_nonsfi" ]
        }
      }

      if (is_chrome_branded) {
        sources -= [
          # These tests are failing on official cros bots. crbug.com/431450.
          "../browser/ui/views/bookmarks/bookmark_bar_view_test.cc",
        ]
      }
    } else {  # ! is_chromeos
      # Non-ChromeOS notifications tests (ChromeOS does not use cross-platform
      # panels).
      sources += [
        "../browser/notifications/notification_interactive_uitest.cc",
        "../browser/notifications/notification_interactive_uitest_mac.mm",
        "../browser/notifications/notification_interactive_uitest_support.cc",
        "../browser/notifications/platform_notification_service_interactive_uitest.cc",
      ]
    }

    if (is_win) {
      sources += [
        "../browser/downgrade/user_data_downgrade_browsertest.cc",
        "//ui/resources/cursors/aliasb.cur",
        "//ui/resources/cursors/cell.cur",
        "//ui/resources/cursors/col_resize.cur",
        "//ui/resources/cursors/copy.cur",
        "//ui/resources/cursors/none.cur",
        "//ui/resources/cursors/row_resize.cur",
        "//ui/resources/cursors/vertical_text.cur",
        "//ui/resources/cursors/zoom_in.cur",
        "//ui/resources/cursors/zoom_out.cur",
        "data/resource.rc",
      ]
      deps += [
        "//chrome:other_version",
        "//chrome/app:chrome_dll_resources",
        "//chrome/install_static:install_static_util",
        "//third_party/isimpledom",
        "//third_party/wtl",
        "//ui/resources",
      ]

      configs -= [ "//build/config/win:default_incremental_linking" ]
      configs +=
          [ "//build/config/win:default_large_module_incremental_linking" ]

      libs = [ "oleacc.lib" ]
    }

    if (is_mac) {
      data_deps += [
        "//chrome",
        "//chrome:chrome_framework",
      ]

      # The browser window can be views or Cocoa on Mac. Test accordingly.
      if (mac_views_browser) {
        # Aura depended tests.
        sources -= [ "../browser/ui/views/bookmarks/bookmark_bar_view_test.cc" ]
      } else {
        sources += [
          "../browser/ui/cocoa/extensions/browser_action_button_interactive_uitest.mm",
          "../browser/ui/cocoa/translate/translate_bubble_test_utils_cocoa.mm",
          "base/interactive_test_utils_cocoa.mm",
        ]
      }
    }

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

    if (enable_app_list) {
      sources +=
          [ "../browser/ui/app_list/app_list_service_interactive_uitest.cc" ]
    }

    if (!use_aura) {
      sources -= [
        "base/interactive_test_utils_aura.cc",
        "base/interactive_test_utils_aura.h",
      ]
    }

    if (use_ash) {
      sources += [
        "../browser/ui/ash/app_list/app_list_interactive_uitest.cc",
        "../browser/ui/views/ash/tab_scrubber_browsertest.cc",
        "../browser/ui/window_sizer/window_sizer_ash_uitest.cc",
        "//ash/drag_drop/drag_drop_interactive_uitest.cc",
        "//ash/wm/ash_native_cursor_manager_interactive_uitest.cc",
      ]
      sources -= [
        # Use only the _chromeos version on Ash / Chrome OS.
        "base/view_event_test_platform_part_default.cc",
      ]
      deps += [ "//ash/test:interactive_ui_test_support" ]
    }

    if (is_android) {
      sources -= [
        # Android does not use the message center-based Notification system.
        "../browser/notifications/message_center_notifications_browsertest.cc",

        # TODO(peter): Enable the Notification browser tests.
        "../browser/notifications/notification_interactive_uitest.cc",
        "../browser/notifications/platform_notification_service_interactive_uitest.cc",
      ]
    }

    if (!use_aura || is_chromeos) {
      sources -= [ "//ui/views/corewm/desktop_capture_controller_unittest.cc" ]
    }
  }

  if (enable_app_list && use_ash) {
    static_library("test_support_applist_ash") {
      defines = []
      testonly = true

      sources = [
        "../browser/ui/ash/app_list/test/app_list_service_ash_test_api.cc",
        "../browser/ui/ash/app_list/test/app_list_service_ash_test_api.h",
      ]
      deps = [
        "//chrome/browser/ui",
        "//ui/app_list/presenter:test_support",
      ]
    }
  }

  static_library("sync_integration_test_support") {
    testonly = true
    sources = [
      "../browser/sync/test/integration/apps_helper.cc",
      "../browser/sync/test/integration/apps_helper.h",
      "../browser/sync/test/integration/autofill_helper.cc",
      "../browser/sync/test/integration/autofill_helper.h",
      "../browser/sync/test/integration/await_match_status_change_checker.cc",
      "../browser/sync/test/integration/await_match_status_change_checker.h",
      "../browser/sync/test/integration/bookmarks_helper.cc",
      "../browser/sync/test/integration/bookmarks_helper.h",
      "../browser/sync/test/integration/dictionary_helper.cc",
      "../browser/sync/test/integration/dictionary_helper.h",
      "../browser/sync/test/integration/dictionary_load_observer.cc",
      "../browser/sync/test/integration/dictionary_load_observer.h",
      "../browser/sync/test/integration/extension_settings_helper.cc",
      "../browser/sync/test/integration/extension_settings_helper.h",
      "../browser/sync/test/integration/extensions_helper.cc",
      "../browser/sync/test/integration/extensions_helper.h",
      "../browser/sync/test/integration/fake_server_invalidation_service.cc",
      "../browser/sync/test/integration/fake_server_invalidation_service.h",
      "../browser/sync/test/integration/fake_server_match_status_checker.cc",
      "../browser/sync/test/integration/fake_server_match_status_checker.h",
      "../browser/sync/test/integration/migration_waiter.cc",
      "../browser/sync/test/integration/migration_waiter.h",
      "../browser/sync/test/integration/migration_watcher.cc",
      "../browser/sync/test/integration/migration_watcher.h",
      "../browser/sync/test/integration/multi_client_status_change_checker.cc",
      "../browser/sync/test/integration/multi_client_status_change_checker.h",
      "../browser/sync/test/integration/p2p_invalidation_forwarder.cc",
      "../browser/sync/test/integration/p2p_invalidation_forwarder.h",
      "../browser/sync/test/integration/p2p_sync_refresher.cc",
      "../browser/sync/test/integration/p2p_sync_refresher.h",
      "../browser/sync/test/integration/password_manager_setting_migrator_helper.cc",
      "../browser/sync/test/integration/password_manager_setting_migrator_helper.h",
      "../browser/sync/test/integration/passwords_helper.cc",
      "../browser/sync/test/integration/passwords_helper.h",
      "../browser/sync/test/integration/preferences_helper.cc",
      "../browser/sync/test/integration/preferences_helper.h",
      "../browser/sync/test/integration/printers_helper.cc",
      "../browser/sync/test/integration/printers_helper.h",
      "../browser/sync/test/integration/profile_sync_service_harness.cc",
      "../browser/sync/test/integration/profile_sync_service_harness.h",
      "../browser/sync/test/integration/quiesce_status_change_checker.cc",
      "../browser/sync/test/integration/quiesce_status_change_checker.h",
      "../browser/sync/test/integration/retry_verifier.cc",
      "../browser/sync/test/integration/retry_verifier.h",
      "../browser/sync/test/integration/search_engines_helper.cc",
      "../browser/sync/test/integration/search_engines_helper.h",
      "../browser/sync/test/integration/session_hierarchy_match_checker.cc",
      "../browser/sync/test/integration/session_hierarchy_match_checker.h",
      "../browser/sync/test/integration/sessions_helper.cc",
      "../browser/sync/test/integration/sessions_helper.h",
      "../browser/sync/test/integration/single_client_status_change_checker.cc",
      "../browser/sync/test/integration/single_client_status_change_checker.h",
      "../browser/sync/test/integration/status_change_checker.cc",
      "../browser/sync/test/integration/status_change_checker.h",
      "../browser/sync/test/integration/sync_app_helper.cc",
      "../browser/sync/test/integration/sync_app_helper.h",
      "../browser/sync/test/integration/sync_app_list_helper.cc",
      "../browser/sync/test/integration/sync_app_list_helper.h",
      "../browser/sync/test/integration/sync_arc_package_helper.cc",
      "../browser/sync/test/integration/sync_arc_package_helper.h",
      "../browser/sync/test/integration/sync_datatype_helper.cc",
      "../browser/sync/test/integration/sync_datatype_helper.h",
      "../browser/sync/test/integration/sync_extension_helper.cc",
      "../browser/sync/test/integration/sync_extension_helper.h",
      "../browser/sync/test/integration/sync_extension_installer.cc",
      "../browser/sync/test/integration/sync_extension_installer.h",
      "../browser/sync/test/integration/sync_integration_test_util.cc",
      "../browser/sync/test/integration/sync_integration_test_util.h",
      "../browser/sync/test/integration/sync_test.cc",
      "../browser/sync/test/integration/sync_test.h",
      "../browser/sync/test/integration/themes_helper.cc",
      "../browser/sync/test/integration/themes_helper.h",
      "../browser/sync/test/integration/typed_urls_helper.cc",
      "../browser/sync/test/integration/typed_urls_helper.h",
      "../browser/sync/test/integration/updated_progress_marker_checker.cc",
      "../browser/sync/test/integration/updated_progress_marker_checker.h",
      "../browser/sync/test/integration/wifi_credentials_helper.cc",
      "../browser/sync/test/integration/wifi_credentials_helper.h",
      "../browser/sync/test/integration/wifi_credentials_helper_chromeos.cc",
      "../browser/sync/test/integration/wifi_credentials_helper_chromeos.h",
    ]
    public_deps = [
      "//chrome/browser",
    ]
    deps = [
      ":test_support",
      "//base",
      "//components/invalidation/impl",
      "//components/invalidation/impl:test_support",
      "//components/sync",
      "//components/sync:test_support_fake_server",
      "//components/sync:test_support_model",
      "//components/sync:test_support_testserver",
      "//content/test:test_support",
      "//net",
      "//skia",
    ]

    if (is_mac) {
      sources -= [
        "../browser/sync/test/integration/dictionary_helper.cc",
        "../browser/sync/test/integration/dictionary_helper.h",
        "../browser/sync/test/integration/dictionary_load_observer.cc",
        "../browser/sync/test/integration/dictionary_load_observer.h",
      ]
    }
    if (enable_app_list) {
      deps += [ "//ui/app_list:test_support" ]
    } else {
      sources -= [
        "../browser/sync/test/integration/sync_app_list_helper.cc",
        "../browser/sync/test/integration/sync_app_list_helper.h",
      ]
    }
    if (!is_chromeos) {
      sources -= [
        "../browser/sync/test/integration/printers_helper.cc",
        "../browser/sync/test/integration/printers_helper.h",
        "../browser/sync/test/integration/sync_arc_package_helper.cc",
        "../browser/sync/test/integration/sync_arc_package_helper.h",
        "../browser/sync/test/integration/wifi_credentials_helper.cc",
        "../browser/sync/test/integration/wifi_credentials_helper.h",
      ]
    }
    if (is_chromeos) {
      deps += [
        "//components/arc:arc_test_support",
        "//components/user_manager:test_support",
      ]
    }
  }

  js2gtest("interactive_ui_tests_js_webui") {
    test_type = "webui"

    sources = [
      "data/webui/cr_elements/cr_elements_focus_test.js",
      "data/webui/md_history/md_history_focus_test.js",
    ]

    gen_include_files = [
      "data/webui/polymer_browser_test_base.js",
      "data/webui/polymer_interactive_ui_test.js",
    ]

    deps = [
      "//chrome/browser/ui",
    ]

    defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
  }

  js2gtest("browser_tests_js_webui") {
    test_type = "webui"

    # Javascript sources. These are combined with the .cc files in the GYP build
    # and are handled by a rule, but in the GN build they're in a separate
    # action so need to be separated out.
    sources = [
      "../browser/ui/webui/app_list/start_page_browsertest.js",
      "../browser/ui/webui/chromeos/bluetooth_pairing_ui_browsertest.js",
      "../browser/ui/webui/chromeos/certificate_manager_dialog_browsertest.js",
      "../browser/ui/webui/chromeos/set_time_ui_browsertest.js",
      "../browser/ui/webui/extensions/chromeos/kiosk_apps_browsertest.js",
      "../browser/ui/webui/extensions/extension_settings_browsertest.js",
      "../browser/ui/webui/help/help_browsertest.js",
      "../browser/ui/webui/identity_internals_ui_browsertest.js",
      "../browser/ui/webui/options/autofill_options_browsertest.js",
      "../browser/ui/webui/options/browser_options_browsertest.js",
      "../browser/ui/webui/options/certificate_manager_browsertest.js",
      "../browser/ui/webui/options/chromeos/accounts_options_browsertest.js",
      "../browser/ui/webui/options/chromeos/bluetooth_options_browsertest.js",
      "../browser/ui/webui/options/chromeos/date_time_options_browsertest.js",
      "../browser/ui/webui/options/chromeos/guest_mode_options_browsertest.js",
      "../browser/ui/webui/options/chromeos/power_overlay_browsertest.js",
      "../browser/ui/webui/options/content_options_browsertest.js",
      "../browser/ui/webui/options/content_settings_exception_area_browsertest.js",
      "../browser/ui/webui/options/cookies_view_browsertest.js",
      "../browser/ui/webui/options/edit_dictionary_browsertest.js",
      "../browser/ui/webui/options/font_settings_browsertest.js",
      "../browser/ui/webui/options/language_options_browsertest.js",
      "../browser/ui/webui/options/language_options_dictionary_download_browsertest.js",
      "../browser/ui/webui/options/manage_profile_browsertest.js",
      "../browser/ui/webui/options/multilanguage_options_webui_browsertest.js",
      "../browser/ui/webui/options/options_browsertest.js",
      "../browser/ui/webui/options/options_browsertest_base.js",
      "../browser/ui/webui/options/password_manager_browsertest.js",
      "../browser/ui/webui/options/profile_settings_reset_browsertest.js",
      "../browser/ui/webui/options/search_engine_manager_browsertest.js",
      "../browser/ui/webui/options/settings_format_browsertest.js",
      "../browser/ui/webui/options/startup_page_list_browsertest.js",
      "../browser/ui/webui/sync_internals_browsertest.js",
      "../browser/ui/webui/sync_setup_browsertest.js",
      "data/chromeos/oobe_webui_browsertest.js",
      "data/webui/about_invalidations_browsertest.js",
      "data/webui/accessibility_audit_browsertest.js",
      "data/webui/assertions.js",
      "data/webui/async_gen.js",
      "data/webui/bluetooth_internals_browsertest.js",
      "data/webui/certificate_viewer_dialog_test.js",
      "data/webui/chrome_send_browsertest.js",
      "data/webui/cr_elements/cr_elements_browsertest.js",
      "data/webui/extensions/cr_extensions_browsertest.js",
      "data/webui/history_browsertest.js",
      "data/webui/md_bookmarks/md_bookmarks_browsertest.js",
      "data/webui/md_downloads/downloads_browsertest.js",
      "data/webui/md_history/md_history_browsertest.js",
      "data/webui/md_user_manager/user_manager_browsertest.js",
      "data/webui/mock4js_browsertest.js",
      "data/webui/net_internals/bandwidth_view.js",
      "data/webui/net_internals/chromeos_view.js",
      "data/webui/net_internals/dns_view.js",
      "data/webui/net_internals/events_view.js",
      "data/webui/net_internals/hsts_view.js",
      "data/webui/net_internals/log_util.js",
      "data/webui/net_internals/log_view_painter.js",
      "data/webui/net_internals/main.js",
      "data/webui/net_internals/net_internals_test.js",
      "data/webui/net_internals/prerender_view.js",
      "data/webui/net_internals/sdch_view.js",
      "data/webui/net_internals/timeline_view.js",
      "data/webui/ntp4.js",
      "data/webui/polymer_browser_test_base.js",
      "data/webui/print_preview.js",
      "data/webui/print_preview_destination_search_test.js",
      "data/webui/sandboxstatus_browsertest.js",
      "data/webui/text_defaults_browsertest.js",
      "data/webui/webui_resource_async_browsertest.js",
    ]

    if (!is_asan) {
      sources += [
        "data/webui/settings/advanced_page_browsertest.js",
        "data/webui/settings/animation_browsertest.js",
        "data/webui/settings/basic_page_browsertest.js",
        "data/webui/settings/cr_settings_browsertest.js",
        "data/webui/settings/help_page_browsertest.js",
        "data/webui/settings/languages_page_browsertest.js",
        "data/webui/settings/on_startup_browsertest.js",
        "data/webui/settings/passwords_and_autofill_fake_data.js",
        "data/webui/settings/passwords_and_forms_browsertest.js",
        "data/webui/settings/settings_autofill_section_browsertest.js",
        "data/webui/settings/settings_idle_render_browsertest.js",
        "data/webui/settings/settings_page_browsertest.js",
        "data/webui/settings/settings_passwords_section_browsertest.js",
        "data/webui/settings/settings_subpage_browsertest.js",
        "data/webui/settings/settings_ui_browsertest.js",
        "data/webui/settings/site_settings_page_browsertest.js",
      ]

      if (is_chromeos) {
        sources += [ "data/webui/settings/easy_unlock_browsertest_chromeos.js" ]
      }
    }

    if (is_chrome_branded) {
      # crbug.com/230471
      sources -= [ "data/webui/accessibility_audit_browsertest.js" ]
    }
    if (!is_chromeos) {
      sources -= [ "data/webui/certificate_viewer_dialog_test.js" ]
    } else {
      sources -= [ "data/webui/md_user_manager/user_manager_browsertest.js" ]
    }
    if (is_mac) {
      sources -= [
        # TODO(rouslan): This test depends on the custom dictionary UI,
        # which is disabled on Mac.
        "../browser/ui/webui/options/edit_dictionary_browsertest.js",

        # TODO(rouslan): This test depends on hunspell and we cannot run it
        # on Mac, which does not use hunspell by default.
        "../browser/ui/webui/options/language_options_dictionary_download_browsertest.js",
        "../browser/ui/webui/options/multilanguage_options_webui_browsertest.js",
      ]
    }
    if (!enable_app_list) {
      sources -= [ "../browser/ui/webui/app_list/start_page_browsertest.js" ]
    }
    if (!enable_print_preview) {
      sources -= [ "data/webui/print_preview.js" ]
    }
    if (enable_media_router) {
      sources +=
          [ "data/webui/media_router/media_router_elements_browsertest.js" ]
    }
    deps = [
      "//chrome/browser/ui",
      "//skia",
    ]
    defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
  }

  # TODO(GYP_GONE): Delete this after we've converted everything to GN.
  # The _run targets exist only for compatibility w/ GYP.
  group("telemetry_unittests_run") {
    testonly = true
    deps = [
      ":telemetry_unittests",
    ]
  }

  group("telemetry_unittests") {
    testonly = true
    deps = [
      "//tools/perf/chrome_telemetry_build:telemetry_chrome_test",
    ]

    data = [
      "//tools/perf/run_telemetry_tests",

      # For isolate contract.
      "//testing/scripts/common.py",
      "//testing/xvfb.py",
      "//testing/scripts/run_telemetry_as_googletest.py",
    ]
  }

  group("telemetry_gpu_unittests_run") {
    testonly = true
    deps = [
      ":telemetry_gpu_unittests",
    ]
  }

  group("telemetry_gpu_unittests") {
    deps = [
      "//third_party/catapult/telemetry:telemetry_test_support",
    ]
    data = [
      # TODO(kbr): refactor the telemetry dependencies more cleanly.
      "//content/test/gpu/",
      "//content/test/data/gpu/",

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

      # For webgl_conformance_expectations_unittest
      "//third_party/webgl/src/sdk/tests/",

      # For resolve the imports in content/test/gpu/run_gpu_test.py
      "//tools/perf/chrome_telemetry_build/",

      # From telemetry_gpu_unittests.isolate
      "//third_party/pylint/",
      "//third_party/logilab/",
      "//testing/scripts/common.py",
      "//testing/xvfb.py",
      "//testing/scripts/run_telemetry_as_googletest.py",
    ]
  }

  # TODO(GYP_GONE): Delete this after we've converted everything to GN.
  # The _run targets exist only for compatibility w/ GYP.
  group("tab_capture_end2end_tests_run") {
    testonly = true
    deps = [
      ":browser_tests",
    ]
  }
}

static_library("browser_tests_runner") {
  testonly = true
  sources = []

  deps = [
    ":test_support",
  ]

  if (is_chromeos && enable_package_mash_services) {
    sources += [
      "base/browser_tests_main_chromeos.cc",
      "base/mash_browser_tests_main.cc",
      "base/mash_browser_tests_main.h",
      "base/mojo_test_connector.cc",
      "base/mojo_test_connector.h",
    ]

    deps += [
      "//mash/package",
      "//mash/session/public/interfaces:constants",
      "//services/service_manager/background:lib",
    ]

    data_deps = [
      ":mash_browser_tests_catalog_copy",
      "//mash/session",
    ]
  } else {
    sources += [ "base/browser_tests_main.cc" ]
  }
}

# Used only by chrome/browser/ui/webui/bidi_checker_web_ui_test.cc
chrome_repack_locales("repack_pseudo_locales") {
  visibility = [ ":*" ]

  input_locales = [ "fake-bidi" ]

  if (is_mac) {
    output_locales = [ "fake_bidi" ]  # Mac uses underscores.
  } else {
    output_locales = [ "fake-bidi" ]
  }
}

test("browser_tests") {
  sources = [
    # TODO(jbudorick): Move tests here from other lists as Android support is
    # implemented. See crbug.com/611756
  ]

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

  deps = [
    ":browser_tests_runner",
    ":repack_pseudo_locales",
    ":test_support",
    "//base",
    "//components/spellcheck:build_features",
    "//components/sync:test_support_model",
    "//extensions/features",
    "//media:media_features",
    "//ppapi/features",
    "//printing/features",
    "//rlz/features",
    "//third_party/WebKit/public:features",
  ]

  data_deps = [
    "//testing/buildbot/filters:browser_tests_filters",
  ]

  data = []

  defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]

  if (is_win) {
    data += [ "$root_out_dir/chrome_200_percent.pak" ]
    deps += [ "//chrome/app:chrome_dll_resources" ]
  }
  if (is_chromeos) {
    data += [
      # TODO(GYP): figure out which of these things are
      # actually needed and also which should be pulled in via
      # data or data_deps and through which dependencies.
      "//chrome/browser/chromeos/login/test/https_forwarder.py",
      "//chrome/browser/resources/chromeos/wallpaper_manager/",
      "//chromeos/test/data/",
      "//components/chrome_apps/webstore_widget/cws_widget/",
      "//ui/file_manager/file_manager/",
      "//ui/file_manager/gallery/",
      "//ui/file_manager/image_loader/",
      "//ui/file_manager/integration_tests/",
      "//third_party/analytics/",
      "//third_party/polymer/v1_0/components-chromium/polymer/",
      "$root_gen_dir/ui/login/login_resources.pak",
      "$root_out_dir/chromevox_test_data/",
      "$root_out_dir/content_shell.pak",
      "$root_out_dir/locales/",
      "$root_out_dir/resources/chromeos/",
    ]

    data_deps += [
      # Needed for --run-in-mash, which triggers launching chrome.
      "//chrome",
      "//ui/keyboard:resources",
    ]

    if (enable_nacl) {
      data_deps += [
        "//components/nacl/loader:nacl_helper",
        "//ppapi/native_client:irt",
      ]
    }

    deps += [ "//chrome/browser/chromeos:test_support" ]
  }

  # TODO(jbudorick): In progress. See crbug.com/611756
  if (is_android) {
    deps += [
      "//chrome/android:app_hooks_java",
      "//chrome/android:chrome_java",
      "//v8:v8_external_startup_data_assets",
    ]

    enable_multidex = true
  } else {  # Not Android.
    sources += [
      # The list of sources which is only used by chrome browser tests on
      # desktop platforms.
      "../../apps/app_restore_service_browsertest.cc",
      "../../apps/load_and_launch_browsertest.cc",
      "../app/chrome_version.rc.version",
      "../browser/accessibility/browser_accessibility_state_browsertest.cc",
      "../browser/app_controller_mac_browsertest.mm",
      "../browser/apps/app_browsertest.cc",
      "../browser/apps/app_shim/app_shim_host_manager_browsertest_mac.mm",
      "../browser/apps/app_shim/test/app_shim_host_manager_test_api_mac.cc",
      "../browser/apps/app_shim/test/app_shim_host_manager_test_api_mac.h",
      "../browser/apps/app_speech_recognition_browsertest.cc",
      "../browser/apps/app_url_redirector_browsertest.cc",
      "../browser/apps/app_window_browsertest.cc",
      "../browser/apps/event_page_browsertest.cc",
      "../browser/apps/guest_view/app_view_browsertest.cc",
      "../browser/apps/guest_view/extension_view/extension_view_browsertest.cc",
      "../browser/apps/guest_view/web_view_browsertest.cc",
      "../browser/apps/service_worker_browsertest.cc",
      "../browser/autocomplete/autocomplete_browsertest.cc",
      "../browser/autofill/autofill_browsertest.cc",
      "../browser/autofill/autofill_server_browsertest.cc",
      "../browser/autofill/content_autofill_driver_browsertest.cc",
      "../browser/autofill/form_structure_browsertest.cc",
      "../browser/banners/app_banner_manager_browsertest.cc",
      "../browser/bitmap_fetcher/bitmap_fetcher_browsertest.cc",
      "../browser/browser_encoding_browsertest.cc",
      "../browser/browsing_data/autofill_counter_browsertest.cc",
      "../browser/browsing_data/browsing_data_cache_storage_helper_browsertest.cc",
      "../browser/browsing_data/browsing_data_database_helper_browsertest.cc",
      "../browser/browsing_data/browsing_data_helper_browsertest.h",
      "../browser/browsing_data/browsing_data_indexed_db_helper_browsertest.cc",
      "../browser/browsing_data/browsing_data_local_storage_helper_browsertest.cc",
      "../browser/browsing_data/browsing_data_remover_browsertest.cc",
      "../browser/browsing_data/browsing_data_remover_test_util.cc",
      "../browser/browsing_data/browsing_data_remover_test_util.h",
      "../browser/browsing_data/cache_counter_browsertest.cc",
      "../browser/browsing_data/cache_test_util.cc",
      "../browser/browsing_data/cache_test_util.h",
      "../browser/browsing_data/conditional_cache_counting_helper_browsertest.cc",
      "../browser/browsing_data/conditional_cache_deletion_helper_browsertest.cc",
      "../browser/browsing_data/downloads_counter_browsertest.cc",
      "../browser/browsing_data/history_counter_browsertest.cc",
      "../browser/browsing_data/media_licenses_counter_browsertest.cc",
      "../browser/browsing_data/passwords_counter_browsertest.cc",
      "../browser/budget_service/budget_manager_browsertest.cc",
      "../browser/chrome_content_browser_client_browsertest.cc",
      "../browser/chrome_find_request_manager_browsertest.cc",
      "../browser/chrome_main_browsertest.cc",
      "../browser/chrome_navigation_browsertest.cc",
      "../browser/chrome_plugin_browsertest.cc",
      "../browser/chrome_security_exploit_browsertest.cc",
      "../browser/chrome_site_per_process_browsertest.cc",
      "../browser/chrome_switches_browsertest.cc",
      "../browser/component_updater/component_patcher_operation_out_of_process_browsertest.cc",
      "../browser/content_settings/content_settings_browsertest.cc",
      "../browser/crash_recovery_browsertest.cc",
      "../browser/custom_handlers/protocol_handler_registry_browsertest.cc",
      "../browser/data_saver/data_saver_browsertest.cc",
      "../browser/devtools/device/adb/adb_client_socket_browsertest.cc",
      "../browser/devtools/device/adb/mock_adb_server.cc",
      "../browser/devtools/device/adb/mock_adb_server.h",
      "../browser/devtools/device/devtools_android_bridge_browsertest.cc",
      "../browser/devtools/device/port_forwarding_browsertest.cc",
      "../browser/devtools/device/usb/android_usb_browsertest.cc",
      "../browser/devtools/devtools_sanity_browsertest.cc",
      "../browser/devtools/devtools_window_testing.cc",
      "../browser/devtools/devtools_window_testing.h",
      "../browser/do_not_track_browsertest.cc",
      "../browser/dom_distiller/distillable_page_utils_browsertest.cc",
      "../browser/dom_distiller/dom_distiller_viewer_source_browsertest.cc",
      "../browser/dom_distiller/tab_utils_browsertest.cc",
      "../browser/domain_reliability/browsertest.cc",
      "../browser/download/download_browsertest.cc",
      "../browser/download/download_browsertest.h",
      "../browser/download/download_danger_prompt_browsertest.cc",
      "../browser/download/download_started_animation_browsertest.cc",
      "../browser/download/save_page_browsertest.cc",
      "../browser/extensions/active_tab_apitest.cc",
      "../browser/extensions/activity_log/activity_log_browsertest.cc",
      "../browser/extensions/alert_apitest.cc",
      "../browser/extensions/all_urls_apitest.cc",
      "../browser/extensions/api/activity_log_private/activity_log_private_apitest.cc",
      "../browser/extensions/api/autofill_private/autofill_private_apitest.cc",
      "../browser/extensions/api/automation/automation_apitest.cc",
      "../browser/extensions/api/autotest_private/autotest_private_apitest.cc",
      "../browser/extensions/api/bluetooth_low_energy/bluetooth_low_energy_apitest_chromeos.cc",
      "../browser/extensions/api/bookmark_manager_private/bookmark_manager_private_apitest.cc",
      "../browser/extensions/api/bookmarks/bookmark_apitest.cc",
      "../browser/extensions/api/braille_display_private/braille_display_private_apitest.cc",
      "../browser/extensions/api/braille_display_private/mock_braille_controller.cc",
      "../browser/extensions/api/braille_display_private/mock_braille_controller.h",
      "../browser/extensions/api/browser/browser_apitest.cc",
      "../browser/extensions/api/browsing_data/browsing_data_test.cc",
      "../browser/extensions/api/cast_streaming/cast_streaming_apitest.cc",
      "../browser/extensions/api/cloud_print_private/cloud_print_private_apitest.cc",
      "../browser/extensions/api/command_line_private/command_line_private_apitest.cc",
      "../browser/extensions/api/commands/command_service_browsertest.cc",
      "../browser/extensions/api/content_settings/content_settings_apitest.cc",
      "../browser/extensions/api/context_menus/context_menu_apitest.cc",
      "../browser/extensions/api/cookies/cookies_apitest.cc",
      "../browser/extensions/api/debugger/debugger_apitest.cc",
      "../browser/extensions/api/debugger/debugger_extension_apitest.cc",
      "../browser/extensions/api/declarative/declarative_apitest.cc",
      "../browser/extensions/api/declarative_content/declarative_content_apitest.cc",
      "../browser/extensions/api/declarative_content/request_content_script_apitest.cc",
      "../browser/extensions/api/declarative_content/set_icon_apitest.cc",
      "../browser/extensions/api/desktop_capture/desktop_capture_apitest.cc",
      "../browser/extensions/api/developer_private/developer_private_apitest.cc",
      "../browser/extensions/api/dial/dial_apitest.cc",
      "../browser/extensions/api/downloads/downloads_api_browsertest.cc",
      "../browser/extensions/api/enterprise_device_attributes/enterprise_device_attributes_apitest.cc",
      "../browser/extensions/api/enterprise_platform_keys/enterprise_platform_keys_apitest_nss.cc",
      "../browser/extensions/api/extension_action/browser_action_apitest.cc",
      "../browser/extensions/api/extension_action/browser_action_browsertest.cc",
      "../browser/extensions/api/extension_action/page_action_apitest.cc",
      "../browser/extensions/api/feedback_private/feedback_browsertest.cc",
      "../browser/extensions/api/feedback_private/feedback_private_apitest.cc",
      "../browser/extensions/api/file_system/file_system_apitest.cc",
      "../browser/extensions/api/file_system/file_system_apitest_chromeos.cc",
      "../browser/extensions/api/font_settings/font_settings_apitest.cc",
      "../browser/extensions/api/gcm/gcm_apitest.cc",
      "../browser/extensions/api/history/history_apitest.cc",
      "../browser/extensions/api/i18n/i18n_apitest.cc",
      "../browser/extensions/api/identity/identity_apitest.cc",
      "../browser/extensions/api/idltest/idltest_apitest.cc",
      "../browser/extensions/api/image_writer_private/image_writer_private_apitest.cc",
      "../browser/extensions/api/image_writer_private/test_utils.cc",
      "../browser/extensions/api/inline_install_private/inline_install_private_apitest.cc",
      "../browser/extensions/api/input_ime/input_ime_apitest_chromeos.cc",
      "../browser/extensions/api/instance_id/instance_id_apitest.cc",
      "../browser/extensions/api/log_private/log_private_apitest_chromeos.cc",
      "../browser/extensions/api/management/management_api_browsertest.cc",
      "../browser/extensions/api/management/management_apitest.cc",
      "../browser/extensions/api/management/management_browsertest.cc",
      "../browser/extensions/api/media_galleries/media_galleries_apitest.cc",
      "../browser/extensions/api/media_galleries/media_galleries_watch_apitest.cc",
      "../browser/extensions/api/messaging/native_messaging_apitest.cc",
      "../browser/extensions/api/metrics_private/metrics_apitest.cc",
      "../browser/extensions/api/module/module_apitest.cc",
      "../browser/extensions/api/music_manager_private/music_manager_private_browsertest.cc",
      "../browser/extensions/api/networking_config_chromeos_apitest_chromeos.cc",
      "../browser/extensions/api/omnibox/omnibox_api_browsertest.cc",
      "../browser/extensions/api/page_capture/page_capture_apitest.cc",
      "../browser/extensions/api/passwords_private/passwords_private_apitest.cc",
      "../browser/extensions/api/permissions/permissions_apitest.cc",
      "../browser/extensions/api/platform_keys/platform_keys_apitest_nss.cc",
      "../browser/extensions/api/preference/preference_apitest.cc",
      "../browser/extensions/api/processes/processes_apitest.cc",
      "../browser/extensions/api/proxy/proxy_apitest.cc",
      "../browser/extensions/api/resources_private/resources_private_apitest.cc",
      "../browser/extensions/api/screenlock_private/screenlock_private_apitest.cc",
      "../browser/extensions/api/sessions/sessions_apitest.cc",
      "../browser/extensions/api/settings_overrides/settings_overrides_browsertest.cc",
      "../browser/extensions/api/settings_private/settings_private_apitest.cc",
      "../browser/extensions/api/socket/socket_apitest.cc",
      "../browser/extensions/api/storage/settings_apitest.cc",
      "../browser/extensions/api/streams_private/streams_private_apitest.cc",
      "../browser/extensions/api/sync_file_system/sync_file_system_apitest.cc",
      "../browser/extensions/api/sync_file_system/sync_file_system_browsertest.cc",
      "../browser/extensions/api/system_indicator/system_indicator_apitest.cc",
      "../browser/extensions/api/system_private/system_private_apitest.cc",
      "../browser/extensions/api/tab_capture/tab_capture_apitest.cc",
      "../browser/extensions/api/tabs/tabs_test.cc",
      "../browser/extensions/api/terminal/terminal_private_apitest.cc",
      "../browser/extensions/api/test/apitest_apitest.cc",
      "../browser/extensions/api/top_sites/top_sites_apitest.cc",
      "../browser/extensions/api/web_navigation/web_navigation_apitest.cc",
      "../browser/extensions/api/web_request/web_request_apitest.cc",
      "../browser/extensions/api/webrtc_audio_private/webrtc_audio_private_browsertest.cc",
      "../browser/extensions/api/webrtc_from_web_accessible_resource_browsertest.cc",
      "../browser/extensions/api/webrtc_logging_private/webrtc_event_log_apitest.cc",
      "../browser/extensions/api/webrtc_logging_private/webrtc_logging_private_apitest.cc",
      "../browser/extensions/api/webstore_private/webstore_private_apitest.cc",
      "../browser/extensions/api_binding_perf_browsertest.cc",
      "../browser/extensions/app_background_page_apitest.cc",
      "../browser/extensions/app_process_apitest.cc",
      "../browser/extensions/app_window_overrides_browsertest.cc",
      "../browser/extensions/background_app_browsertest.cc",
      "../browser/extensions/background_page_apitest.cc",
      "../browser/extensions/background_scripts_apitest.cc",
      "../browser/extensions/background_xhr_browsertest.cc",
      "../browser/extensions/browsertest_util_browsertest.cc",
      "../browser/extensions/chrome_app_api_browsertest.cc",
      "../browser/extensions/chrome_theme_url_browsertest.cc",
      "../browser/extensions/chrome_ui_overrides_browsertest.cc",
      "../browser/extensions/content_capabilities_browsertest.cc",
      "../browser/extensions/content_script_apitest.cc",
      "../browser/extensions/content_security_policy_apitest.cc",
      "../browser/extensions/content_verifier_browsertest.cc",
      "../browser/extensions/crazy_extension_browsertest.cc",
      "../browser/extensions/cross_origin_xhr_apitest.cc",
      "../browser/extensions/crx_installer_browsertest.cc",
      "../browser/extensions/docs/examples/apps/calculator_browsertest.cc",
      "../browser/extensions/error_console/error_console_browsertest.cc",
      "../browser/extensions/events_apitest.cc",
      "../browser/extensions/execute_script_apitest.cc",
      "../browser/extensions/extension_action_runner_browsertest.cc",
      "../browser/extensions/extension_bindings_apitest.cc",
      "../browser/extensions/extension_context_menu_browsertest.cc",
      "../browser/extensions/extension_disabled_ui_browsertest.cc",
      "../browser/extensions/extension_dom_clipboard_apitest.cc",
      "../browser/extensions/extension_fileapi_apitest.cc",
      "../browser/extensions/extension_functional_browsertest.cc",
      "../browser/extensions/extension_geolocation_apitest.cc",
      "../browser/extensions/extension_get_views_apitest.cc",
      "../browser/extensions/extension_icon_source_apitest.cc",
      "../browser/extensions/extension_incognito_apitest.cc",
      "../browser/extensions/extension_install_prompt_browsertest.cc",
      "../browser/extensions/extension_install_prompt_test_helper.cc",
      "../browser/extensions/extension_install_prompt_test_helper.h",
      "../browser/extensions/extension_install_ui_browsertest.cc",
      "../browser/extensions/extension_javascript_url_apitest.cc",
      "../browser/extensions/extension_loading_browsertest.cc",
      "../browser/extensions/extension_management_test_util.cc",
      "../browser/extensions/extension_management_test_util.h",
      "../browser/extensions/extension_messages_apitest.cc",
      "../browser/extensions/extension_override_apitest.cc",
      "../browser/extensions/extension_request_limiting_throttle_browsertest.cc",
      "../browser/extensions/extension_resource_request_policy_apitest.cc",
      "../browser/extensions/extension_startup_browsertest.cc",
      "../browser/extensions/extension_storage_apitest.cc",
      "../browser/extensions/extension_storage_monitor_browsertest.cc",
      "../browser/extensions/extension_tab_util_browsertest.cc",
      "../browser/extensions/extension_tabs_apitest.cc",
      "../browser/extensions/extension_unload_browsertest.cc",
      "../browser/extensions/extension_url_rewrite_browsertest.cc",
      "../browser/extensions/extension_view_host_factory_browsertest.cc",
      "../browser/extensions/extension_websocket_apitest.cc",
      "../browser/extensions/extension_webui_apitest.cc",
      "../browser/extensions/fetch_apitest.cc",
      "../browser/extensions/gpu_browsertest.cc",
      "../browser/extensions/hotword_browsertest.cc",
      "../browser/extensions/isolated_app_browsertest.cc",
      "../browser/extensions/lazy_background_page_apitest.cc",
      "../browser/extensions/lazy_background_page_test_util.h",
      "../browser/extensions/mutation_observers_apitest.cc",
      "../browser/extensions/native_bindings_apitest.cc",
      "../browser/extensions/navigation_observer_browsertest.cc",
      "../browser/extensions/options_page_apitest.cc",
      "../browser/extensions/page_action_browsertest.cc",
      "../browser/extensions/process_management_browsertest.cc",
      "../browser/extensions/process_manager_browsertest.cc",
      "../browser/extensions/renderer_initialization_browsertest.cc",
      "../browser/extensions/requirements_checker_browsertest.cc",
      "../browser/extensions/sandboxed_pages_apitest.cc",
      "../browser/extensions/service_worker_apitest.cc",
      "../browser/extensions/shared_module_apitest.cc",
      "../browser/extensions/startup_helper_browsertest.cc",
      "../browser/extensions/stubs_apitest.cc",
      "../browser/extensions/subscribe_page_action_browsertest.cc",
      "../browser/extensions/wake_event_page_apitest.cc",
      "../browser/extensions/web_contents_browsertest.cc",
      "../browser/extensions/webstore_inline_installer_browsertest.cc",
      "../browser/extensions/webstore_installer_browsertest.cc",
      "../browser/extensions/webstore_installer_test.cc",
      "../browser/extensions/webstore_installer_test.h",
      "../browser/extensions/webstore_reinstaller_browsertest.cc",
      "../browser/extensions/webstore_startup_installer_browsertest.cc",
      "../browser/extensions/window_open_apitest.cc",
      "../browser/fast_shutdown_browsertest.cc",
      "../browser/favicon/content_favicon_driver_browsertest.cc",
      "../browser/first_run/first_run_browsertest.cc",
      "../browser/first_run/try_chrome_dialog_view_browsertest.cc",
      "../browser/gcm/fake_gcm_profile_service.cc",
      "../browser/gcm/fake_gcm_profile_service.h",
      "../browser/geolocation/access_token_store_browsertest.cc",
      "../browser/geolocation/geolocation_browsertest.cc",
      "../browser/global_keyboard_shortcuts_mac_browsertest.mm",
      "../browser/history/history_browsertest.cc",
      "../browser/history/redirect_browsertest.cc",
      "../browser/iframe_browsertest.cc",
      "../browser/image_decoder_browsertest.cc",
      "../browser/importer/edge_importer_browsertest_win.cc",
      "../browser/importer/firefox_importer_browsertest.cc",
      "../browser/importer/ie_importer_browsertest_win.cc",
      "../browser/importer/importer_unittest_utils.cc",
      "../browser/importer/importer_unittest_utils.h",
      "../browser/infobars/infobars_browsertest.cc",
      "../browser/installable/installable_manager_browsertest.cc",
      "../browser/interstitials/security_interstitial_page_test_utils.cc",
      "../browser/interstitials/security_interstitial_page_test_utils.h",
      "../browser/invalidation/profile_invalidation_provider_factory_browsertest.cc",
      "../browser/lifetime/browser_close_manager_browsertest.cc",
      "../browser/loader/chrome_resource_dispatcher_host_delegate_browsertest.cc",
      "../browser/loadtimes_extension_bindings_browsertest.cc",
      "../browser/locale_tests_browsertest.cc",
      "../browser/media/defer_background_media_browsertest.cc",
      "../browser/media/encrypted_media_browsertest.cc",
      "../browser/media/encrypted_media_supported_types_browsertest.cc",
      "../browser/media/media_browsertest.cc",
      "../browser/media/media_browsertest.h",
      "../browser/media/test_license_server.cc",
      "../browser/media/test_license_server.h",
      "../browser/media/test_license_server_config.h",
      "../browser/media/webrtc/media_stream_devices_controller_browsertest.cc",
      "../browser/media/webrtc/media_stream_infobar_browsertest.cc",
      "../browser/media/webrtc/test_stats_dictionary.cc",
      "../browser/media/webrtc/test_stats_dictionary.h",
      "../browser/media/webrtc/test_stats_dictionary_unittest.cc",
      "../browser/media/webrtc/webrtc_apprtc_browsertest.cc",
      "../browser/media/webrtc/webrtc_audio_quality_browsertest.cc",
      "../browser/media/webrtc/webrtc_browsertest.cc",
      "../browser/media/webrtc/webrtc_browsertest_audio.cc",
      "../browser/media/webrtc/webrtc_browsertest_audio.h",
      "../browser/media/webrtc/webrtc_browsertest_base.cc",
      "../browser/media/webrtc/webrtc_browsertest_base.h",
      "../browser/media/webrtc/webrtc_browsertest_common.cc",
      "../browser/media/webrtc/webrtc_browsertest_common.h",
      "../browser/media/webrtc/webrtc_browsertest_perf.cc",
      "../browser/media/webrtc/webrtc_browsertest_perf.h",
      "../browser/media/webrtc/webrtc_disable_encryption_flag_browsertest.cc",
      "../browser/media/webrtc/webrtc_getmediadevices_browsertest.cc",
      "../browser/media/webrtc/webrtc_internals_perf_browsertest.cc",
      "../browser/media/webrtc/webrtc_simulcast_browsertest.cc",
      "../browser/media/webrtc/webrtc_stats_perf_browsertest.cc",
      "../browser/media/webrtc/webrtc_video_quality_browsertest.cc",
      "../browser/media/webrtc/webrtc_webcam_browsertest.cc",
      "../browser/media/wv_test_license_server_config.cc",
      "../browser/media/wv_test_license_server_config.h",
      "../browser/media_galleries/fileapi/iapps_finder_impl_win_browsertest.cc",
      "../browser/media_galleries/fileapi/media_file_validator_browsertest.cc",
      "../browser/media_galleries/media_galleries_dialog_controller_mock.cc",
      "../browser/media_galleries/media_galleries_dialog_controller_mock.h",
      "../browser/memory/tab_manager_browsertest.cc",
      "../browser/memory/tab_manager_observer_browsertest.cc",
      "../browser/metrics/metrics_memory_details_browsertest.cc",
      "../browser/metrics/metrics_service_browsertest.cc",
      "../browser/metrics/tab_reactivation_tracker_browsertest.cc",
      "../browser/net/cookie_policy_browsertest.cc",
      "../browser/net/dns_probe_browsertest.cc",
      "../browser/net/errorpage_browsertest.cc",
      "../browser/net/ftp_browsertest.cc",
      "../browser/net/load_timing_browsertest.cc",
      "../browser/net/nqe/ui_network_quality_estimator_service_browsertest.cc",
      "../browser/net/nqe/ui_network_quality_estimator_service_test_util.cc",
      "../browser/net/nqe/ui_network_quality_estimator_service_test_util.h",
      "../browser/net/nss_context_chromeos_browsertest.cc",
      "../browser/net/predictor_browsertest.cc",
      "../browser/net/proxy_browsertest.cc",
      "../browser/net/sdch_browsertest.cc",
      "../browser/net/spdyproxy/chrome_data_use_group_browsertest.cc",
      "../browser/net/websocket_browsertest.cc",
      "../browser/ntp_snippets/content_suggestions_service_factory_browsertest.cc",
      "../browser/page_load_metrics/observers/https_engagement_metrics/https_engagement_page_load_metrics_observer_browsertest.cc",
      "../browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.cc",
      "../browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.h",
      "../browser/page_load_metrics/page_load_metrics_browsertest.cc",
      "../browser/password_manager/credential_manager_browsertest.cc",
      "../browser/password_manager/password_manager_browsertest.cc",
      "../browser/pdf/pdf_extension_test.cc",
      "../browser/pdf/pdf_extension_test_util.cc",
      "../browser/pdf/pdf_extension_test_util.h",
      "../browser/permissions/permission_request_manager_browsertest.cc",
      "../browser/permissions/permissions_browsertest.cc",
      "../browser/permissions/permissions_browsertest.h",
      "../browser/plugins/flash_permission_browsertest.cc",
      "../browser/plugins/plugin_power_saver_browsertest.cc",
      "../browser/policy/cloud/cloud_policy_browsertest.cc",
      "../browser/policy/cloud/cloud_policy_manager_browsertest.cc",
      "../browser/policy/cloud/cloud_policy_test_utils.cc",
      "../browser/policy/cloud/component_cloud_policy_browsertest.cc",
      "../browser/policy/cloud/device_management_service_browsertest.cc",
      "../browser/policy/cloud/test_request_interceptor.cc",
      "../browser/policy/cloud/test_request_interceptor.h",
      "../browser/policy/policy_browsertest.cc",
      "../browser/policy/policy_network_browsertest.cc",
      "../browser/policy/policy_prefs_browsertest.cc",
      "../browser/policy/policy_startup_browsertest.cc",
      "../browser/predictors/resource_prefetch_predictor_browsertest.cc",
      "../browser/predictors/resource_prefetch_predictor_test_util.cc",
      "../browser/predictors/resource_prefetch_predictor_test_util.h",
      "../browser/prefetch/prefetch_browsertest.cc",
      "../browser/prefs/pref_functional_browsertest.cc",
      "../browser/prefs/pref_service_browsertest.cc",
      "../browser/prefs/synced_pref_change_registrar_browsertest.cc",
      "../browser/prefs/tracked/pref_hash_browsertest.cc",
      "../browser/prerender/prerender_browsertest.cc",
      "../browser/prerender/prerender_nostate_prefetch_browsertest.cc",
      "../browser/prerender/prerender_test_utils.cc",
      "../browser/previews/previews_service_browser_test.cc",
      "../browser/printing/cloud_print/test/cloud_print_policy_browsertest.cc",
      "../browser/printing/cloud_print/test/cloud_print_proxy_process_browsertest.cc",
      "../browser/printing/print_preview_dialog_controller_browsertest.cc",
      "../browser/printing/print_preview_pdf_generated_browsertest.cc",
      "../browser/process_singleton_browsertest.cc",
      "../browser/profile_resetter/profile_resetter_browsertest.cc",
      "../browser/profiles/host_zoom_map_browsertest.cc",
      "../browser/profiles/profile_browsertest.cc",
      "../browser/profiles/profile_list_desktop_browsertest.cc",
      "../browser/profiles/profile_manager_browsertest.cc",
      "../browser/profiles/profile_window_browsertest.cc",
      "../browser/push_messaging/push_messaging_browsertest.cc",
      "../browser/referrer_policy_browsertest.cc",
      "../browser/renderer_context_menu/mock_render_view_context_menu.cc",
      "../browser/renderer_context_menu/mock_render_view_context_menu.h",
      "../browser/renderer_context_menu/render_view_context_menu_browsertest.cc",
      "../browser/renderer_context_menu/render_view_context_menu_browsertest_util.cc",
      "../browser/renderer_context_menu/render_view_context_menu_browsertest_util.h",
      "../browser/renderer_context_menu/render_view_context_menu_test_util.cc",
      "../browser/renderer_context_menu/render_view_context_menu_test_util.h",
      "../browser/renderer_context_menu/spelling_menu_observer_browsertest.cc",
      "../browser/renderer_host/render_process_host_chrome_browsertest.cc",
      "../browser/repost_form_warning_browsertest.cc",
      "../browser/safe_browsing/srt_fetcher_browsertest_win.cc",
      "../browser/safe_json_parser_browsertest.cc",
      "../browser/search/hotword_installer_browsertest.cc",
      "../browser/search/suggestions/image_fetcher_impl_browsertest.cc",
      "../browser/search_engines/template_url_scraper_browsertest.cc",
      "../browser/service_process/service_process_control_browsertest.cc",
      "../browser/sessions/better_session_restore_browsertest.cc",
      "../browser/sessions/persistent_tab_restore_service_browsertest.cc",
      "../browser/sessions/session_restore_browsertest.cc",
      "../browser/sessions/session_restore_browsertest_chromeos.cc",
      "../browser/sessions/tab_restore_browsertest.cc",
      "../browser/site_details_browsertest.cc",
      "../browser/ui/ask_google_for_suggestions_dialog_browsertest.cc",

      # If this list is used on Android in the future, these browser/speech/*
      # files will probably not be applicable.
      "../browser/speech/extension_api/tts_extension_apitest.cc",
      "../browser/speech/speech_recognition_browsertest.cc",
      "../browser/spellchecker/spellcheck_service_browsertest.cc",
      "../browser/ssl/cert_verifier_browser_test.cc",
      "../browser/ssl/cert_verifier_browser_test.h",
      "../browser/ssl/certificate_reporting_test_utils.cc",
      "../browser/ssl/certificate_reporting_test_utils.h",
      "../browser/ssl/chrome_ssl_host_state_delegate_test.cc",
      "../browser/ssl/security_state_tab_helper_browser_tests.cc",
      "../browser/ssl/ssl_browser_tests.cc",
      "../browser/ssl/ssl_client_certificate_selector_test.cc",
      "../browser/ssl/ssl_client_certificate_selector_test.h",
      "../browser/storage/durable_storage_browsertest.cc",
      "../browser/subresource_filter/subresource_filter_browsertest.cc",
      "../browser/subresource_filter/test_ruleset_publisher.cc",
      "../browser/subresource_filter/test_ruleset_publisher.h",
      "../browser/sync_file_system/mock_local_change_processor.cc",
      "../browser/sync_file_system/mock_local_change_processor.h",
      "../browser/sync_file_system/mock_remote_file_sync_service.cc",
      "../browser/sync_file_system/mock_remote_file_sync_service.h",
      "../browser/tab_contents/navigation_metrics_recorder_browsertest.cc",
      "../browser/tab_contents/view_source_browsertest.cc",
      "../browser/task_manager/mock_web_contents_task_manager.cc",
      "../browser/task_manager/mock_web_contents_task_manager.h",
      "../browser/task_manager/providers/web_contents/background_contents_tag_browsertest.cc",
      "../browser/task_manager/providers/web_contents/devtools_tag_browsertest.cc",
      "../browser/task_manager/providers/web_contents/extension_tag_browsertest.cc",
      "../browser/task_manager/providers/web_contents/subframe_task_browsertest.cc",
      "../browser/task_manager/providers/web_contents/tab_contents_tag_browsertest.cc",
      "../browser/task_manager/task_manager_browsertest.cc",
      "../browser/task_manager/task_manager_browsertest_util.cc",
      "../browser/task_manager/task_manager_browsertest_util.h",
      "../browser/task_manager/task_manager_tester.cc",
      "../browser/task_manager/task_manager_tester.h",
      "../browser/themes/theme_service_browsertest.cc",
      "../browser/tracing/chrome_tracing_delegate_browsertest.cc",
      "../browser/translate/translate_browsertest.cc",
      "../browser/translate/translate_manager_browsertest.cc",
      "../browser/ui/autofill/card_unmask_prompt_view_browsertest.cc",
      "../browser/ui/autofill/card_unmask_prompt_view_tester.h",
      "../browser/ui/autofill/password_generation_popup_view_browsertest.cc",
      "../browser/ui/autofill/password_generation_popup_view_tester.h",
      "../browser/ui/bookmarks/bookmark_browsertest.cc",
      "../browser/ui/browser_browsertest.cc",
      "../browser/ui/browser_command_controller_browsertest.cc",
      "../browser/ui/browser_navigator_browsertest.cc",
      "../browser/ui/browser_navigator_browsertest.h",
      "../browser/ui/browser_navigator_browsertest_chromeos.cc",
      "../browser/ui/browser_tabrestore_browsertest.cc",
      "../browser/ui/collected_cookies_browsertest.cc",
      "../browser/ui/content_settings/content_setting_bubble_model_browsertest.cc",
      "../browser/ui/content_settings/content_setting_image_model_browsertest.cc",
      "../browser/ui/exclusive_access/fullscreen_controller_browsertest.cc",
      "../browser/ui/extensions/extension_installed_bubble_browsertest.cc",
      "../browser/ui/extensions/extension_message_bubble_browsertest.cc",
      "../browser/ui/extensions/extension_message_bubble_browsertest.h",
      "../browser/ui/extensions/hosted_app_browsertest.cc",
      "../browser/ui/find_bar/find_bar_host_browsertest.cc",
      "../browser/ui/javascript_dialogs/javascript_dialog_browsertest.cc",
      "../browser/ui/location_bar/location_bar_browsertest.cc",
      "../browser/ui/login/login_handler_browsertest.cc",
      "../browser/ui/native_window_tracker_browsertest.cc",
      "../browser/ui/permission_bubble/mock_permission_prompt.cc",
      "../browser/ui/permission_bubble/mock_permission_prompt.h",
      "../browser/ui/permission_bubble/mock_permission_prompt_factory.cc",
      "../browser/ui/permission_bubble/mock_permission_prompt_factory.h",
      "../browser/ui/permission_bubble/permission_bubble_browser_test_util.cc",
      "../browser/ui/permission_bubble/permission_bubble_browser_test_util.h",
      "../browser/ui/passwords/manage_passwords_test.cc",
      "../browser/ui/prefs/prefs_tab_helper_browsertest.cc",
      "../browser/ui/profile_error_browsertest.cc",
      "../browser/ui/search/new_tab_page_interceptor_browsertest.cc",
      "../browser/ui/search_engines/search_engine_tab_helper_browsertest.cc",
      "../browser/ui/settings_window_manager_browsertest.cc",
      "../browser/ui/startup/startup_browser_creator_browsertest.cc",
      "../browser/ui/startup/startup_browser_creator_corrupt_profiles_browsertest_win.cc",
      "../browser/ui/startup/startup_browser_creator_triggered_reset_browsertest_win.cc",
      "../browser/ui/sync/one_click_signin_links_delegate_impl_browsertest.cc",
      "../browser/ui/sync/profile_signin_confirmation_helper_browsertest.cc",
      "../browser/ui/tab_modal_confirm_dialog_browsertest.cc",
      "../browser/ui/tab_modal_confirm_dialog_browsertest.h",
      "../browser/ui/test/browser_dialog_browsertest.cc",
      "../browser/ui/test/test_browser_dialog.cc",
      "../browser/ui/test/test_browser_dialog.h",
      "../browser/ui/toolbar/browser_actions_bar_browsertest.cc",
      "../browser/ui/toolbar/browser_actions_bar_browsertest.h",
      "../browser/ui/toolbar/component_toolbar_actions_browsertest.cc",
      "../browser/ui/toolbar/mock_component_toolbar_actions_factory.cc",
      "../browser/ui/toolbar/mock_component_toolbar_actions_factory.h",
      "../browser/ui/update_chrome_dialog_browsertest.cc",
      "../browser/ui/views/hung_renderer_view_browsertest.cc",
      "../browser/ui/webui/bidi_checker_web_ui_test.cc",
      "../browser/ui/webui/bidi_checker_web_ui_test.h",
      "../browser/ui/webui/bookmarks_ui_browsertest.cc",
      "../browser/ui/webui/chrome_url_data_manager_browsertest.cc",
      "../browser/ui/webui/chromeos/bluetooth_pairing_ui_browsertest-inl.h",
      "../browser/ui/webui/constrained_web_dialog_ui_browsertest.cc",
      "../browser/ui/webui/extensions/extension_settings_browsertest.cc",
      "../browser/ui/webui/extensions/extension_settings_browsertest.h",
      "../browser/ui/webui/identity_internals_ui_browsertest.cc",
      "../browser/ui/webui/identity_internals_ui_browsertest.h",
      "../browser/ui/webui/inspect_ui_browsertest.cc",
      "../browser/ui/webui/interstitials/interstitial_ui_browsertest.cc",
      "../browser/ui/webui/log_web_ui_url_browsertest.cc",
      "../browser/ui/webui/net_internals/net_internals_ui_browsertest.cc",
      "../browser/ui/webui/net_internals/net_internals_ui_browsertest.h",
      "../browser/ui/webui/ntp/new_tab_ui_browsertest.cc",
      "../browser/ui/webui/options/certificate_manager_browsertest.cc",
      "../browser/ui/webui/options/clear_browser_data_browsertest.cc",
      "../browser/ui/webui/options/content_settings_exception_area_browsertest.cc",
      "../browser/ui/webui/options/multilanguage_options_browsertest.cc",
      "../browser/ui/webui/options/multilanguage_options_browsertest.h",
      "../browser/ui/webui/options/options_browsertest.cc",
      "../browser/ui/webui/options/options_ui_browsertest.cc",
      "../browser/ui/webui/options/options_ui_browsertest.h",
      "../browser/ui/webui/options/preferences_browsertest.cc",
      "../browser/ui/webui/options/preferences_browsertest.h",
      "../browser/ui/webui/password_manager_internals/password_manager_internals_ui_browsertest.cc",
      "../browser/ui/webui/policy_ui_browsertest.cc",
      "../browser/ui/webui/print_preview/print_preview_ui_browsertest.cc",
      "../browser/ui/webui/set_as_default_browser_ui_browsertest_win.cc",
      "../browser/ui/webui/settings/md_settings_ui_browsertest.cc",
      "../browser/ui/webui/signin/inline_login_ui_browsertest.cc",
      "../browser/ui/webui/signin/user_manager_ui_browsertest.cc",
      "../browser/ui/webui/task_scheduler_internals/task_scheduler_internals_ui_browsertest.cc",
      "../browser/ui/webui/uber/uber_ui_browsertest.cc",
      "../browser/ui/webui/webui_browsertest.cc",
      "../browser/ui/webui/webui_webview_browsertest.cc",
      "../browser/ui/zoom/zoom_controller_browsertest.cc",
      "../browser/unload_browsertest.cc",
      "../browser/usb/usb_browsertest.cc",
      "../browser/web_bluetooth_browsertest.cc",
      "../common/mac/app_mode_chrome_locator_browsertest.mm",
      "../common/mac/mock_launchd.cc",
      "../common/mac/mock_launchd.h",
      "../common/time_format_browsertest.cc",
      "../renderer/autofill/autofill_renderer_browsertest.cc",
      "../renderer/autofill/fake_content_password_manager_driver.cc",
      "../renderer/autofill/fake_content_password_manager_driver.h",
      "../renderer/autofill/fake_password_manager_client.cc",
      "../renderer/autofill/fake_password_manager_client.h",
      "../renderer/autofill/form_autocomplete_browsertest.cc",
      "../renderer/autofill/form_autofill_browsertest.cc",
      "../renderer/autofill/form_classifier_browsertest.cc",
      "../renderer/autofill/page_click_tracker_browsertest.cc",
      "../renderer/autofill/password_autofill_agent_browsertest.cc",
      "../renderer/autofill/password_generation_agent_browsertest.cc",
      "../renderer/autofill/password_generation_test_utils.cc",
      "../renderer/autofill/password_generation_test_utils.h",
      "../renderer/chrome_content_renderer_client_browsertest.cc",
      "../renderer/chrome_render_frame_observer_browsertest.cc",
      "../renderer/content_settings_observer_browsertest.cc",
      "../renderer/media/cast_session_browsertest.cc",
      "../renderer/translate/translate_helper_browsertest.cc",
      "../renderer/translate/translate_script_browsertest.cc",
      "base/chrome_render_view_test.cc",
      "base/chrome_render_view_test.h",
      "base/in_process_browser_test_browsertest.cc",
      "base/test_chrome_web_ui_controller_factory_browsertest.cc",
      "base/tracing_browsertest.cc",
      "base/web_ui_browser_test_browsertest.cc",
      "data/webui/async_gen.cc",
      "data/webui/async_gen.h",
      "data/webui/certificate_viewer_ui_test-inl.h",
      "data/webui/chrome_send_browsertest.cc",
      "data/webui/chrome_send_browsertest.h",
      "data/webui/history_ui_browsertest.cc",
      "data/webui/history_ui_browsertest.h",
      "data/webui/ntp4_browsertest.cc",
      "data/webui/ntp4_browsertest.h",
      "data/webui/print_preview.cc",
      "data/webui/print_preview.h",
      "data/webui/webui_resource_browsertest.cc",
      "gpu/webgl_infobar_browsertest.cc",
      "ppapi/ppapi_browsertest.cc",
      "ppapi/ppapi_filechooser_browsertest.cc",
    ]

    deps += [
      ":browser_tests_js_webui",
      ":sync_integration_test_support",
      ":test_support_ui",
      "//base:i18n",
      "//base/test:test_support",
      "//chrome:browser_tests_pak",
      "//chrome:packed_resources",
      "//chrome:resources",
      "//chrome:strings",
      "//chrome/browser",
      "//chrome/renderer",
      "//components/autofill/content/browser:risk_proto",
      "//components/autofill/content/renderer:test_support",
      "//components/captive_portal:test_support",
      "//components/dom_distiller/content/browser",
      "//components/dom_distiller/content/renderer",
      "//components/dom_distiller/core:test_support",
      "//components/guest_view/browser:test_support",
      "//components/policy:chrome_settings_proto",
      "//components/resources",
      "//components/safe_browsing_db:test_database_manager",
      "//components/strings",
      "//components/sync",
      "//components/translate/core/common",
      "//content/public/common:features",
      "//content/test:test_support",
      "//crypto:platform",
      "//crypto:test_support",
      "//device/base:mocks",
      "//device/bluetooth:mocks",
      "//device/serial:test_support",
      "//device/usb:test_support",
      "//google_apis:test_support",
      "//media",
      "//media/base:test_support",
      "//media/cast:test_support",
      "//mojo/common:common_base",
      "//net",
      "//net:test_support",
      "//sdch",
      "//services/service_manager/public/cpp",
      "//skia",
      "//testing/gmock",
      "//testing/gtest",
      "//testing/perf",
      "//third_party/cacheinvalidation",
      "//third_party/icu",
      "//third_party/leveldatabase",
      "//third_party/webrtc/modules/desktop_capture",
      "//third_party/webrtc_overrides",
      "//third_party/widevine/cdm:headers",
      "//ui/accessibility:test_support",
      "//ui/base:test_support",
      "//ui/compositor:test_support",
      "//ui/resources",
      "//ui/web_dialogs:test_support",
      "//v8",
    ]

    # Runtime dependencies
    data_deps += [
      "//ppapi:ppapi_tests",
      "//ppapi:power_saver_test_plugin",
      "//remoting/webapp:browser_test_resources",
      "//remoting/webapp:unit_tests",
      "//third_party/mesa:osmesa",
      "//third_party/widevine/cdm:widevine_test_license_server",
    ]

    data += [
      "data/",
      "//chrome/browser/policy/test/asn1der.py",
      "//chrome/browser/policy/test/policy_testserver.py",
      "//chrome/common/extensions/docs/examples/apps/calculator/",
      "//chrome/third_party/mock4js/",
      "//components/test/data/update_client/",
      "//content/test/data/",
      "//google_apis/test/",
      "//media/test/data/",
      "//net/tools/testserver/",
      "//ppapi/tests/test_case.html",
      "//ppapi/tests/test_case.html.mock-http-headers",
      "//ppapi/tests/test_page.css",
      "//ppapi/tests/test_page.css.mock-http-headers",
      "//testing/test_env.py",
      "//third_party/accessibility-audit/axs_testing.js",
      "//third_party/chaijs/chai.js",
      "//third_party/mocha/mocha.js",
      "//third_party/pyftpdlib/",
      "//third_party/pywebsocket/",
      "//third_party/simplejson/",
      "//third_party/tlslite/",
      "//ui/webui/resources/js/",
      "$root_out_dir/pyproto/",
      "$root_out_dir/browser_tests.pak",
      "$root_out_dir/remoting/unittests/",
      "$root_out_dir/test_case.html",
      "$root_out_dir/test_case.html.mock-http-headers",
      "$root_out_dir/test_data/",
      "$root_out_dir/test_page.css",
      "$root_out_dir/test_page.css.mock-http-headers",
      "$root_out_dir/test_url_loader_data/",
    ]

    if (!is_mac) {
      data += [
        "$root_out_dir/locales/",
        "$root_out_dir/chrome_100_percent.pak",
        "$root_out_dir/chrome_200_percent.pak",
        "$root_out_dir/resources.pak",
      ]
    }

    if (enable_captive_portal_detection) {
      sources +=
          [ "../browser/ssl/captive_portal_blocking_page_browsertest.cc" ]
    }
    if (!enable_one_click_signin) {
      sources -= [ "../browser/ui/sync/one_click_signin_links_delegate_impl_browsertest.cc" ]
    }
    if (enable_nacl) {
      sources += [
        "../browser/chrome_service_worker_browsertest.cc",
        "../browser/extensions/extension_nacl_browsertest.cc",
        "../browser/nacl_host/test/gdb_debug_stub_browsertest.cc",
        "nacl/nacl_browsertest.cc",
        "nacl/nacl_browsertest_uma.cc",
        "nacl/nacl_browsertest_util.cc",
        "nacl/nacl_browsertest_util.h",
        "nacl/pnacl_header_test.cc",
        "nacl/pnacl_header_test.h",
      ]
      deps += [ "//components/nacl/renderer/plugin:nacl_trusted_plugin" ]

      data_deps += [
        "//chrome/test/data/nacl",
        "//ppapi/native_client:irt",
        "//ppapi:ppapi_nacl_tests_all",
        "//ppapi/tests/extensions",
      ]
      if (is_chromeos) {
        sources += [ "//third_party/liblouis/nacl_wrapper/liblouis_wrapper_browsertest.cc" ]
        deps += [ "//chrome/browser/chromeos" ]
        data_deps += [ "//third_party/liblouis:liblouis_test_data" ]
      } else if (is_linux || is_win) {
        sources += [
          "../browser/ui/views/ime/ime_warning_bubble_browsertest.cc",
          "../browser/ui/views/ime/ime_window_browsertest.cc",
        ]
      }

      if (is_win || is_linux) {
        sources += [ "../browser/nacl_host/test/nacl_gdb_browsertest.cc" ]
        data_deps += [ "//chrome/browser/nacl_host/test:mock_nacl_gdb" ]
      }
      if (is_win) {
        # TODO(halyavin) NaCl on Windows can't open debug stub socket in
        # browser process as needed by this test. See http://crbug.com/157312.
        sources -= [ "../browser/nacl_host/test/gdb_debug_stub_browsertest.cc" ]
        configs -= [ "//build/config/win:default_incremental_linking" ]
        configs +=
            [ "//build/config/win:default_large_module_incremental_linking" ]
      }
      if (is_linux) {
        data_deps += [ "//components/nacl/loader:nacl_helper" ]

        if (enable_nacl_nonsfi) {
          data_deps += [ "//components/nacl/loader:helper_nonsfi" ]
        }
      }
    }

    if (enable_extensions) {
      sources += [
        "../browser/apps/app_browsertest_util.cc",
        "../browser/apps/app_browsertest_util.h",
        "../browser/extensions/browsertest_util.cc",
        "../browser/extensions/browsertest_util.h",
        "../browser/extensions/extension_apitest.cc",
        "../browser/extensions/extension_apitest.h",
        "../browser/extensions/extension_browsertest.cc",
        "../browser/extensions/extension_browsertest.h",
        "../browser/extensions/extension_function_test_utils.cc",
        "../browser/extensions/extension_function_test_utils.h",
        "../browser/extensions/updater/extension_cache_fake.cc",
        "../browser/extensions/updater/extension_cache_fake.h",
        "../browser/safe_browsing/settings_reset_prompt/settings_reset_prompt_model_browsertest_win.cc",
        "../browser/safe_browsing/settings_reset_prompt/settings_reset_prompt_test_utils.cc",
        "../browser/safe_browsing/settings_reset_prompt/settings_reset_prompt_test_utils.h",
      ]

      deps += [
        "//chrome/common/extensions/api",

        # TODO(rockot) bug 505926: The chrome_extensions_browsertests target
        # should be deleted and this line removed. See the
        # chrome_extensions_browsertests target for more.
        "//extensions:chrome_extensions_browsertests",
        "//extensions/common/api",
      ]
    }

    if (use_ash) {
      sources += [
        "../browser/ui/ash/accelerator_commands_browsertest.cc",
        "../browser/ui/ash/accelerator_controller_browsertest.cc",
        "../browser/ui/ash/app_list/app_list_controller_ash_browsertest.cc",
        "../browser/ui/ash/chrome_new_window_client_browsertest.cc",
        "../browser/ui/ash/keyboard_controller_browsertest.cc",
        "../browser/ui/ash/launcher/chrome_launcher_controller_impl_browsertest.cc",
        "../browser/ui/ash/launcher/launcher_favicon_loader_browsertest.cc",
        "../browser/ui/ash/multi_user/multi_user_window_manager_test.cc",
        "../browser/ui/ash/multi_user/multi_user_window_manager_test.h",
        "../browser/ui/ash/networking_config_delegate_chromeos_browsertest.cc",
        "../browser/ui/ash/shelf_browsertest.cc",
        "../browser/ui/ash/system_tray_client_browsertest.cc",
        "../browser/ui/ash/system_tray_delegate_chromeos_browsertest_chromeos.cc",
        "../browser/ui/ash/volume_controller_browsertest.cc",
        "../browser/ui/views/frame/browser_non_client_frame_view_ash_browsertest.cc",
      ]
      deps += [
        "//ash/test:ash_with_aura_test_support",
        "//ash/test:test_support_with_content",
      ]

      if (enable_app_list) {
        deps += [ ":test_support_applist_ash" ]
      }

      if (enable_media_router) {
        sources += [ "../browser/ui/ash/system_tray_tray_cast_browsertest_media_router_chromeos.cc" ]
      }
    }
    if (use_aura || toolkit_views) {
      deps += [ "//ui/events:test_support" ]
    }
    if (toolkit_views) {
      sources += [
        "../browser/payments/site_per_process_payments_browsertest.cc",
        "../browser/ui/cocoa/extensions/extension_message_bubble_views_browsertest_mac.mm",
        "../browser/ui/global_error/global_error_service_browsertest.cc",
        "../browser/ui/views/bookmarks/bookmark_editor_view_browsertest.cc",
        "../browser/ui/views/extensions/extension_message_bubble_view_browsertest.cc",
        "../browser/ui/views/external_protocol_dialog_browsertest.cc",
        "../browser/ui/views/frame/browser_non_client_frame_view_browsertest_win.cc",
        "../browser/ui/views/frame/browser_window_property_manager_browsertest_win.cc",
        "../browser/ui/views/location_bar/content_setting_bubble_dialog_browsertest.cc",
        "../browser/ui/views/payments/credit_card_editor_view_controller_browsertest.cc",
        "../browser/ui/views/payments/payment_method_view_controller_browsertest.cc",
        "../browser/ui/views/payments/payment_request_browsertest.cc",
        "../browser/ui/views/payments/payment_request_browsertest_base.cc",
        "../browser/ui/views/payments/payment_request_browsertest_base.h",
        "../browser/ui/views/payments/payment_sheet_view_controller_browsertest.cc",
        "../browser/ui/views/select_file_dialog_extension_browsertest.cc",
        "../browser/ui/views/sync/profile_signin_confirmation_dialog_views_browsertest.cc",
      ]
      deps += [ "//ui/views" ]
      if (!is_chromeos && (!is_mac || mac_views_browser)) {
        sources += [ "../browser/ui/views/profiles/profile_chooser_view_browsertest.cc" ]
      }
      if (!is_mac || mac_views_browser) {
        sources += [
          # TODO(tapted): Move these to chrome_browser_tests_views_sources when the
          # the corresponding files are moved in chrome_browser_ui.gypi (i.e. out of
          # chrome_browser_ui_views_non_mac_sources). http://crbug.com/404979.
          "../browser/ui/views/autofill/autofill_popup_base_view_browsertest.cc",
          "../browser/ui/views/autofill/card_unmask_prompt_view_tester_views.cc",
          "../browser/ui/views/autofill/card_unmask_prompt_view_tester_views.h",
          "../browser/ui/views/autofill/password_generation_popup_view_tester_views.cc",
          "../browser/ui/views/autofill/password_generation_popup_view_tester_views.h",
          "../browser/ui/views/bookmarks/bookmark_bubble_sign_in_delegate_browsertest.cc",
          "../browser/ui/views/collected_cookies_views_browsertest.cc",
          "../browser/ui/views/extensions/bookmark_override_browsertest.cc",
          "../browser/ui/views/extensions/extension_install_dialog_view_browsertest.cc",
          "../browser/ui/views/extensions/extension_message_bubble_view_browsertest_nonmac.cc",
          "../browser/ui/views/extensions/extension_uninstall_dialog_view_browsertest.cc",
          "../browser/ui/views/frame/browser_non_client_frame_view_browsertest.cc",
          "../browser/ui/views/frame/browser_view_browsertest.cc",
          "../browser/ui/views/location_bar/zoom_bubble_view_browsertest.cc",
          "../browser/ui/views/passwords/password_dialog_view_browsertest.cc",
          "../browser/ui/views/task_manager_view_browsertest.cc",
          "../browser/ui/views/toolbar/browser_actions_container_browsertest.cc",
          "../browser/ui/views/translate/translate_bubble_view_browsertest.cc",
          "../browser/ui/views/web_dialog_view_browsertest.cc",
        ]
        if (enable_media_router) {
          sources += [ "../browser/ui/views/media_router/media_router_ui_browsertest.cc" ]
        }
      }
    }

    if (is_linux && !is_component_build) {
      # Set rpath to find the CDM adapter even in a non-component build.
      configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
    }

    if (is_chromeos) {
      sources += [
        "../browser/apps/custom_launcher_page_browsertest_views.cc",
        "../browser/chromeos/accessibility/accessibility_manager_browsertest.cc",
        "../browser/chromeos/accessibility/magnification_manager_browsertest.cc",
        "../browser/chromeos/accessibility/speech_monitor.cc",
        "../browser/chromeos/accessibility/speech_monitor.h",
        "../browser/chromeos/accessibility/touch_exploration_controller_browsertest.cc",
        "../browser/chromeos/app_mode/arc/arc_kiosk_app_manager_browsertest.cc",
        "../browser/chromeos/app_mode/kiosk_app_manager_browsertest.cc",
        "../browser/chromeos/app_mode/kiosk_app_update_service_browsertest.cc",
        "../browser/chromeos/app_mode/kiosk_crash_restore_browsertest.cc",
        "../browser/chromeos/arc/arc_session_manager_browsertest.cc",
        "../browser/chromeos/arc/auth/arc_active_directory_enrollment_token_fetcher_browsertest.cc",
        "../browser/chromeos/arc/auth/arc_robot_auth_code_fetcher_browsertest.cc",
        "../browser/chromeos/arc/intent_helper/arc_settings_service_browsertest.cc",
        "../browser/chromeos/attestation/attestation_policy_browsertest.cc",
        "../browser/chromeos/customization/customization_document_browsertest.cc",
        "../browser/chromeos/customization/customization_wallpaper_downloader_browsertest.cc",
        "../browser/chromeos/device/input_service_proxy_browsertest.cc",
        "../browser/chromeos/device/input_service_test_helper.cc",
        "../browser/chromeos/device/input_service_test_helper.h",
        "../browser/chromeos/display/quirks_browsertest.cc",
        "../browser/chromeos/drive/drive_integration_service_browsertest.cc",
        "../browser/chromeos/extensions/accessibility_features_apitest.cc",
        "../browser/chromeos/extensions/action_handlers/action_handlers_apitest.cc",
        "../browser/chromeos/extensions/echo_private_apitest.cc",
        "../browser/chromeos/extensions/file_manager/file_browser_handler_api_test.cc",
        "../browser/chromeos/extensions/file_manager/file_manager_private_apitest.cc",
        "../browser/chromeos/extensions/file_system_provider/file_system_provider_apitest.cc",
        "../browser/chromeos/extensions/info_private_apitest.cc",
        "../browser/chromeos/extensions/input_method_apitest_chromeos.cc",
        "../browser/chromeos/extensions/users_private/users_private_apitest.cc",
        "../browser/chromeos/extensions/virtual_keyboard_browsertest.cc",
        "../browser/chromeos/extensions/virtual_keyboard_browsertest.h",
        "../browser/chromeos/extensions/wallpaper_apitest.cc",
        "../browser/chromeos/extensions/wallpaper_manager_browsertest.cc",
        "../browser/chromeos/extensions/wallpaper_private_apitest.cc",
        "../browser/chromeos/file_manager/audio_player_browsertest.cc",
        "../browser/chromeos/file_manager/external_filesystem_apitest.cc",
        "../browser/chromeos/file_manager/file_manager_browsertest.cc",
        "../browser/chromeos/file_manager/file_manager_browsertest_base.cc",
        "../browser/chromeos/file_manager/file_manager_browsertest_base.h",
        "../browser/chromeos/file_manager/file_manager_jstest.cc",
        "../browser/chromeos/file_manager/file_manager_jstest_base.cc",
        "../browser/chromeos/file_manager/file_manager_jstest_base.h",
        "../browser/chromeos/file_manager/gallery_browsertest.cc",
        "../browser/chromeos/file_manager/gallery_jstest.cc",
        "../browser/chromeos/file_manager/image_loader_jstest.cc",
        "../browser/chromeos/file_manager/mount_test_util.cc",
        "../browser/chromeos/file_manager/mount_test_util.h",
        "../browser/chromeos/file_manager/video_player_browsertest.cc",
        "../browser/chromeos/file_manager/zip_file_creator_browsertest.cc",
        "../browser/chromeos/first_run/chromeos_first_run_browsertest.cc",
        "../browser/chromeos/first_run/drive_first_run_browsertest.cc",
        "../browser/chromeos/first_run/goodies_displayer_browsertest.cc",
        "../browser/chromeos/input_method/input_method_engine_browsertests.cc",
        "../browser/chromeos/input_method/mode_indicator_browsertest.cc",
        "../browser/chromeos/login/auto_launched_kiosk_browsertest.cc",
        "../browser/chromeos/login/bluetooth_host_pairing_browsertest.cc",
        "../browser/chromeos/login/crash_restore_browsertest.cc",
        "../browser/chromeos/login/demo_mode/demo_app_launcher_browsertest.cc",
        "../browser/chromeos/login/easy_unlock/bootstrap_browsertest.cc",
        "../browser/chromeos/login/enable_debugging_browsertest.cc",
        "../browser/chromeos/login/enrollment/enrollment_screen_browsertest.cc",
        "../browser/chromeos/login/enrollment/mock_auto_enrollment_check_screen.cc",
        "../browser/chromeos/login/enrollment/mock_auto_enrollment_check_screen.h",
        "../browser/chromeos/login/enterprise_enrollment_browsertest.cc",
        "../browser/chromeos/login/existing_user_controller_browsertest.cc",
        "../browser/chromeos/login/hid_detection_browsertest.cc",
        "../browser/chromeos/login/kiosk_browsertest.cc",
        "../browser/chromeos/login/lock/screen_locker_tester.cc",
        "../browser/chromeos/login/lock/screen_locker_tester.h",
        "../browser/chromeos/login/login_manager_test.cc",
        "../browser/chromeos/login/login_manager_test.h",
        "../browser/chromeos/login/login_screen_policy_browsertest.cc",
        "../browser/chromeos/login/login_ui_keyboard_browsertest.cc",
        "../browser/chromeos/login/login_utils_browsertest.cc",
        "../browser/chromeos/login/mixin_based_browser_test.cc",
        "../browser/chromeos/login/mixin_based_browser_test.h",
        "../browser/chromeos/login/oobe_localization_browsertest.cc",
        "../browser/chromeos/login/proxy_auth_dialog_browsertest.cc",
        "../browser/chromeos/login/reset_browsertest.cc",
        "../browser/chromeos/login/resource_loader_browsertest.cc",
        "../browser/chromeos/login/saml/saml_browsertest.cc",
        "../browser/chromeos/login/screens/hid_detection_screen_browsertest.cc",
        "../browser/chromeos/login/screens/mock_enable_debugging_screen.cc",
        "../browser/chromeos/login/screens/mock_enable_debugging_screen.h",
        "../browser/chromeos/login/screens/mock_error_screen.cc",
        "../browser/chromeos/login/screens/mock_error_screen.h",
        "../browser/chromeos/login/screens/mock_eula_screen.cc",
        "../browser/chromeos/login/screens/mock_eula_screen.h",
        "../browser/chromeos/login/screens/mock_network_screen.cc",
        "../browser/chromeos/login/screens/mock_network_screen.h",
        "../browser/chromeos/login/screens/mock_update_screen.cc",
        "../browser/chromeos/login/screens/mock_update_screen.h",
        "../browser/chromeos/login/screens/mock_wrong_hwid_screen.cc",
        "../browser/chromeos/login/screens/mock_wrong_hwid_screen.h",
        "../browser/chromeos/login/screens/network_screen_browsertest.cc",
        "../browser/chromeos/login/screens/update_screen_browsertest.cc",
        "../browser/chromeos/login/session/chrome_session_manager_browsertest.cc",
        "../browser/chromeos/login/session_login_browsertest.cc",
        "../browser/chromeos/login/signin/device_id_browsertest.cc",
        "../browser/chromeos/login/signin/oauth2_browsertest.cc",
        "../browser/chromeos/login/supervised/supervised_user_creation_browsertest.cc",
        "../browser/chromeos/login/supervised/supervised_user_password_browsertest.cc",
        "../browser/chromeos/login/supervised/supervised_user_test_base.cc",
        "../browser/chromeos/login/supervised/supervised_user_test_base.h",
        "../browser/chromeos/login/test/https_forwarder.cc",
        "../browser/chromeos/login/test/https_forwarder.h",
        "../browser/chromeos/login/test/oobe_base_test.cc",
        "../browser/chromeos/login/test/oobe_base_test.h",
        "../browser/chromeos/login/test/wizard_in_process_browser_test.cc",
        "../browser/chromeos/login/test/wizard_in_process_browser_test.h",
        "../browser/chromeos/login/ui/captive_portal_window_browsertest.cc",
        "../browser/chromeos/login/ui/login_feedback_browsertest.cc",
        "../browser/chromeos/login/ui/login_web_dialog_browsertest.cc",
        "../browser/chromeos/login/ui/simple_web_view_dialog_browsertest.cc",
        "../browser/chromeos/login/ui/user_adding_screen_browsertest.cc",
        "../browser/chromeos/login/users/avatar/user_image_manager_browsertest.cc",
        "../browser/chromeos/login/users/avatar/user_image_manager_test_util.cc",
        "../browser/chromeos/login/users/avatar/user_image_manager_test_util.h",
        "../browser/chromeos/login/users/wallpaper/wallpaper_manager_policy_browsertest.cc",
        "../browser/chromeos/login/users/wallpaper/wallpaper_manager_test_utils.cc",
        "../browser/chromeos/login/users/wallpaper/wallpaper_manager_test_utils.h",
        "../browser/chromeos/login/webview_login_browsertest.cc",
        "../browser/chromeos/login/wizard_controller_browsertest.cc",
        "../browser/chromeos/net/network_portal_detector_impl_browsertest.cc",
        "../browser/chromeos/ownership/fake_owner_settings_service.cc",
        "../browser/chromeos/ownership/fake_owner_settings_service.h",
        "../browser/chromeos/policy/affiliation_test_helper.cc",
        "../browser/chromeos/policy/affiliation_test_helper.h",
        "../browser/chromeos/policy/blocking_login_browsertest.cc",
        "../browser/chromeos/policy/device_cloud_policy_browsertest.cc",
        "../browser/chromeos/policy/device_local_account_browsertest.cc",
        "../browser/chromeos/policy/device_policy_cros_browser_test.cc",
        "../browser/chromeos/policy/device_policy_cros_browser_test.h",
        "../browser/chromeos/policy/device_quirks_policy_browsertest.cc",
        "../browser/chromeos/policy/device_status_collector_browsertest.cc",
        "../browser/chromeos/policy/device_system_use_24hour_clock_browsertest.cc",
        "../browser/chromeos/policy/display_rotation_default_handler_browsertest.cc",
        "../browser/chromeos/policy/force_maximize_on_first_run_chromeos_browsertest.cc",
        "../browser/chromeos/policy/login_policy_test_base.cc",
        "../browser/chromeos/policy/login_policy_test_base.h",
        "../browser/chromeos/policy/login_screen_default_policy_browsertest.cc",
        "../browser/chromeos/policy/policy_cert_verifier_browsertest.cc",
        "../browser/chromeos/policy/power_policy_browsertest.cc",
        "../browser/chromeos/policy/restore_on_startup_browsertest_chromeos.cc",
        "../browser/chromeos/policy/user_affiliation_browsertest.cc",
        "../browser/chromeos/policy/user_cloud_external_data_manager_browsertest.cc",
        "../browser/chromeos/policy/user_cloud_policy_manager_chromeos_browsertest.cc",
        "../browser/chromeos/policy/user_policy_test_helper.cc",
        "../browser/chromeos/policy/user_policy_test_helper.h",
        "../browser/chromeos/policy/variations_service_policy_browsertest.cc",
        "../browser/chromeos/power/peripheral_battery_observer_browsertest.cc",
        "../browser/chromeos/preferences_chromeos_browsertest.cc",
        "../browser/chromeos/profiles/profile_helper_browsertest.cc",
        "../browser/chromeos/settings/scoped_cros_settings_test_helper.cc",
        "../browser/chromeos/settings/scoped_cros_settings_test_helper.h",
        "../browser/chromeos/shutdown_policy_browsertest.cc",
        "../browser/chromeos/system/device_disabling_browsertest.cc",
        "../browser/chromeos/system/tray_accessibility_browsertest.cc",
        "../browser/download/notification/download_notification_browsertest.cc",
        "../browser/drive/drive_notification_manager_factory_browsertest.cc",
        "../browser/extensions/api/certificate_provider/certificate_provider_apitest.cc",
        "../browser/extensions/api/hotword_private/hotword_private_apitest.cc",
        "../browser/extensions/api/vpn_provider/vpn_provider_apitest.cc",
        "../browser/ui/ash/launcher/arc_app_launcher_browsertest.cc",
        "../browser/ui/views/arc_app_dialog_view_browsertest.cc",
        "../browser/ui/views/frame/browser_frame_ash_browsertest.cc",
        "../browser/ui/webui/options/chromeos/accounts_options_browsertest.cc",
        "../browser/ui/webui/options/chromeos/guest_mode_options_browsertest.cc",
        "../browser/ui/webui/options/chromeos/guest_mode_options_ui_browsertest.cc",
        "../browser/ui/webui/options/chromeos/shared_options_browsertest.cc",
        "//ui/base/ime/chromeos/input_method_whitelist.cc",
        "//ui/base/ime/chromeos/input_method_whitelist.h",
      ]
      sources -= [
        "../../apps/load_and_launch_browsertest.cc",
        "../browser/policy/policy_startup_browsertest.cc",

        # chromeos does not support profile list avatar menu
        "../browser/profiles/profile_list_desktop_browsertest.cc",
        "../browser/service_process/service_process_control_browsertest.cc",
        "../browser/ui/views/external_protocol_dialog_browsertest.cc",

        # inline login UI is disabled on chromeos
        "../browser/ui/views/sync/profile_signin_confirmation_dialog_views_browsertest.cc",
        "../browser/ui/webui/signin/inline_login_ui_browsertest.cc",

        # chromeos does not use the desktop user manager
        "../browser/ui/webui/signin/user_manager_ui_browsertest.cc",
      ]
      deps += [
        "//chrome/browser/chromeos:arc_test_support",
        "//chromeos/ime:gencode",
        "//components/arc:arc_test_support",
        "//components/prefs",
        "//components/user_manager:test_support",
        "//services/preferences/public/cpp",
        "//services/preferences/public/interfaces",
        "//services/service_manager/public/cpp",
        "//ui/login:resources",
      ]

      if (use_dbus) {
        deps += [ "//dbus:test_support" ]
      }
    } else {  # !is_chromeos
      sources -= [
        "../browser/extensions/api/enterprise_device_attributes/enterprise_device_attributes_apitest.cc",
        "../browser/extensions/api/enterprise_platform_keys/enterprise_platform_keys_apitest_nss.cc",
        "../browser/extensions/api/platform_keys/platform_keys_apitest_nss.cc",
        "../browser/extensions/api/terminal/terminal_private_apitest.cc",
        "../browser/invalidation/profile_invalidation_provider_factory_browsertest.cc",
        "../browser/net/nss_context_chromeos_browsertest.cc",
        "data/webui/certificate_viewer_ui_test-inl.h",
      ]
      if (toolkit_views) {
        sources -= [ "../browser/ui/views/select_file_dialog_extension_browsertest.cc" ]
      }
      if (is_win || is_linux) {
        sources +=
            [ "../browser/ui/views/ime/input_ime_apitest_nonchromeos.cc" ]
      }
    }
    if (safe_browsing_mode == 1) {
      sources += [
        "../browser/safe_browsing/certificate_reporting_service_browsertest.cc",
        "../browser/safe_browsing/permission_reporter_browsertest.cc",
        "../browser/safe_browsing/safe_browsing_blocking_page_test.cc",
        "../browser/safe_browsing/safe_browsing_navigation_observer_browsertest.cc",
        "../browser/safe_browsing/safe_browsing_service_browsertest.cc",
        "../renderer/safe_browsing/phishing_classifier_browsertest.cc",
        "../renderer/safe_browsing/phishing_classifier_delegate_browsertest.cc",
        "../renderer/safe_browsing/phishing_dom_feature_extractor_browsertest.cc",
        "../renderer/safe_browsing/threat_dom_details_browsertest.cc",
      ]
    }
    if (enable_captive_portal_detection) {
      sources += [ "../browser/captive_portal/captive_portal_browsertest.cc" ]
    }
    if (enable_webrtc) {
      deps += [ "//content/public/common:feature_h264_with_openh264_ffmpeg" ]
    } else {
      sources -= [
        "../browser/extensions/api/webrtc_audio_private/webrtc_audio_private_browsertest.cc",
        "../browser/extensions/api/webrtc_logging_private/webrtc_event_log_apitest.cc",
        "../browser/extensions/api/webrtc_logging_private/webrtc_logging_private_apitest.cc",
        "../browser/media/webrtc/webrtc_apprtc_browsertest.cc",
        "../browser/media/webrtc/webrtc_audio_quality_browsertest.cc",
        "../browser/media/webrtc/webrtc_browsertest.cc",
        "../browser/media/webrtc/webrtc_disable_encryption_flag_browsertest.cc",
        "../browser/media/webrtc/webrtc_getmediadevices_browsertest.cc",
        "../browser/media/webrtc/webrtc_internals_perf_browsertest.cc",
        "../browser/media/webrtc/webrtc_simulcast_browsertest.cc",
        "../browser/media/webrtc/webrtc_stats_perf_browsertest.cc",
        "../browser/media/webrtc/webrtc_video_quality_browsertest.cc",
        "../browser/media/webrtc/webrtc_webcam_browsertest.cc",
      ]
    }
    if (enable_media_router) {
      sources += [ "../browser/ui/webui/media_router/media_router_dialog_controller_impl_browsertest.cc" ]
      deps += [ "//chrome/test/media_router:media_router_browsertests" ]
    }
    if (is_win) {
      deps += [
        "//chrome:other_version",
        "//chrome/app:command_ids",
        "//third_party/wtl",
        "//ui/resources",
      ]
    } else {
      sources -= [
        "../app/chrome_version.rc.version",
        "../browser/media_galleries/fileapi/iapps_finder_impl_win_browsertest.cc",
      ]
    }
    if (is_mac) {
      # Other platforms only need .pak files, and can build this target
      # standalone much faster.
      deps += [
        "//chrome",
        "//chrome/common:app_mode_app_support",

        # TODO(GYP) Mac: GYP has this dependency. Uncommenting this line
        # generates duplicate symbols between
        #   obj/components/crash/content/app/breakpad_stubs/crash_reporter_client.o
        #   obj/components/crash/content/app/lib/crash_reporter_client.o
        # It's not clear how this is supposed to work. The intent seems to be
        # to not link breakpad in the tests. The dependency on .../app:lib
        # seems to come from //chrome/app:test_support. That reference maybe
        # should be a dependency on the stubs instead because it could be all
        # tests might want them. Or it could be that we need to make a new
        # "headers" target to make GN check happy, and then force each
        # executable to link the correct implementation. Somebody with a
        # higher-level understanding of Mac crash reporting needs to think
        # about this.
        # "//components/crash/content/app:breakpad_stubs",
        "//third_party/ocmock",
      ]
      sources += [
        "../browser/renderer_host/chrome_render_widget_host_view_mac_history_swiper_browsertest.mm",
        "../browser/spellchecker/spellcheck_message_filter_platform_mac_browsertest.cc",
        "../browser/ui/cocoa/applescript/bookmark_applescript_utils_test.h",
        "../browser/ui/cocoa/applescript/bookmark_applescript_utils_test.mm",
        "../browser/ui/cocoa/applescript/bookmark_folder_applescript_browsertest.mm",
        "../browser/ui/cocoa/applescript/bookmark_item_applescript_browsertest.mm",
        "../browser/ui/cocoa/applescript/browsercrapplication+applescript_test.mm",
        "../browser/ui/cocoa/applescript/window_applescript_test.mm",
        "../browser/ui/cocoa/certificate_viewer_mac_browsertest.mm",
      ]
      sources -= [
        # TODO(groby): This test depends on hunspell and we cannot run it on
        # Mac, which does not use hunspell by default.
        "../browser/spellchecker/spellcheck_service_browsertest.cc",

        # ProcessSingletonMac doesn"t do anything.
        "../browser/process_singleton_browsertest.cc",
      ]

      if (safe_browsing_mode == 1) {
        sources -= [
          # single-process mode hangs on Mac sometimes because of multiple UI
          # message loops. See 306348
          "../renderer/safe_browsing/phishing_classifier_browsertest.cc",
          "../renderer/safe_browsing/phishing_classifier_delegate_browsertest.cc",
        ]
      }

      data_deps += [
        "//chrome",
        "//chrome:chrome_framework",
      ]

      # TODO(rsesek): Remove once https://crbug.com/611414 is fixed.
      data += [
        "$root_out_dir/Chromium.app/",
        "$root_out_dir/Chromium Framework.framework/",
        "$root_out_dir/power_saver_test_plugin.plugin/",
        "$root_out_dir/ppapi_tests.plugin/",
      ]

      # The browser window can be views or Cocoa on Mac. Test accordingly.
      if (!mac_views_browser) {
        sources += [
          "../browser/ui/cocoa/accelerators_cocoa_browsertest.mm",
          "../browser/ui/cocoa/apps/app_shim_menu_controller_mac_browsertest.mm",
          "../browser/ui/cocoa/apps/native_app_window_cocoa_browsertest.mm",
          "../browser/ui/cocoa/browser_window_controller_browsertest.mm",
          "../browser/ui/cocoa/constrained_window/constrained_window_mac_browsertest.mm",
          "../browser/ui/cocoa/content_settings/collected_cookies_mac_browsertest.mm",
          "../browser/ui/cocoa/content_settings/content_setting_bubble_cocoa_browsertest.mm",
          "../browser/ui/cocoa/dev_tools_controller_browsertest.mm",
          "../browser/ui/cocoa/extensions/extension_install_dialog_controller_browsertest.mm",
          "../browser/ui/cocoa/extensions/extension_install_prompt_test_utils.h",
          "../browser/ui/cocoa/extensions/extension_install_prompt_test_utils.mm",
          "../browser/ui/cocoa/extensions/extension_message_bubble_browsertest_mac.mm",
          "../browser/ui/cocoa/extensions/media_galleries_dialog_cocoa_browsertest.mm",
          "../browser/ui/cocoa/extensions/windowed_install_dialog_controller_browsertest.mm",
          "../browser/ui/cocoa/find_bar/find_bar_browsertest.mm",
          "../browser/ui/cocoa/location_bar/content_setting_decoration_browsertest.mm",
          "../browser/ui/cocoa/location_bar/zoom_decoration_browsertest.mm",
          "../browser/ui/cocoa/omnibox/omnibox_view_mac_browsertest.mm",
          "../browser/ui/cocoa/passwords/passwords_bubble_browsertest.mm",
          "../browser/ui/cocoa/permission_bubble/permission_bubble_cocoa_browser_test.mm",
          "../browser/ui/cocoa/profiles/profile_signin_confirmation_view_controller_browsertest.mm",
          "../browser/ui/cocoa/renderer_context_menu/render_view_context_menu_mac_browsertest.mm",
          "../browser/ui/cocoa/ssl_client_certificate_selector_cocoa_browsertest.mm",
          "../browser/ui/cocoa/task_manager_mac_browsertest.mm",
          "../browser/ui/cocoa/view_id_util_browsertest.mm",
          "../browser/ui/cocoa/web_contents_modal_dialog_manager_views_mac_browsertest.mm",
        ]
      }
    }
    if (is_win) {
      sources += [
        "../browser/extensions/api/networking_private/networking_private_credentials_getter_browsertest.cc",
        "../browser/ui/views/settings_reset_prompt_dialog_browsertest.cc",
      ]
    }
    if (is_mac || is_win) {
      sources += [
        "../browser/extensions/api/image_writer_private/image_writer_utility_client_browsertest.cc",
        "../browser/extensions/api/networking_private/networking_private_apitest.cc",
        "../browser/extensions/api/networking_private/networking_private_service_client_apitest.cc",
        "../browser/media_galleries/fileapi/itunes_data_provider_browsertest.cc",
        "../browser/media_galleries/fileapi/picasa_data_provider_browsertest.cc",
      ]
      deps += [ "//components/wifi:test_support" ]
    }
    if (is_linux || is_win) {
      sources += [
        # This test is for the spelling options submenu that's only for Windows,
        # ChromeOS, and Linux.
        "../browser/renderer_context_menu/spelling_options_submenu_observer_browsertest.cc",
      ]
    }
    if (!is_posix || is_chromeos) {
      sources -= [ "../common/time_format_browsertest.cc" ]
    }
    if (is_chromeos) {
      sources += [
        "../browser/extensions/api/networking_private/networking_private_apitest.cc",
        "../browser/extensions/api/networking_private/networking_private_chromeos_apitest.cc",
      ]
    }
    if (is_mac || is_win || (is_linux && !is_chromeos)) {
      sources += [
        # Tests for non mobile and non CrOS (includes Linux, Win, Mac).
        "../browser/metrics/desktop_session_duration/audible_contents_tracker_browsertest.cc",
        "../browser/metrics/desktop_session_duration/chrome_visibility_observer_browsertest.cc",
        "../browser/profiles/profile_statistics_browsertest.cc",
      ]
    }
    if (enable_app_list) {
      sources += [
        "../browser/apps/drive/drive_app_converter_browsertest.cc",
        "../browser/apps/drive/drive_app_provider_browsertest.cc",
        "../browser/ui/app_list/app_list_controller_browsertest.cc",
        "../browser/ui/app_list/app_list_service_impl_browsertest.cc",
        "../browser/ui/app_list/search/webstore/webstore_provider_browsertest.cc",
        "../browser/ui/app_list/speech_recognizer_browsertest.cc",
      ]
    }
    if (enable_service_discovery) {
      sources += [ "../browser/extensions/api/mdns/mdns_apitest.cc" ]
    }
    if (enable_supervised_users) {
      sources += [
        "../browser/supervised_user/supervised_user_browsertest.cc",
        "../browser/supervised_user/supervised_user_resource_throttle_browsertest.cc",
        "../browser/supervised_user/supervised_user_service_browsertest.cc",
      ]
    }
    if (enable_pepper_cdms) {
      # Runtime dependencies.
      data_deps += [
        "//media/cdm/ppapi:clearkeycdmadapter",
        "//third_party/widevine/cdm:widevinecdmadapter",
      ]
    }
    if (!enable_print_preview) {
      sources -= [
        "../browser/extensions/api/cloud_print_private/cloud_print_private_apitest.cc",
        "../browser/printing/print_preview_dialog_controller_browsertest.cc",
        "../browser/printing/print_preview_pdf_generated_browsertest.cc",
        "../browser/service_process/service_process_control_browsertest.cc",
        "../browser/ui/webui/print_preview/print_preview_ui_browsertest.cc",
        "data/webui/print_preview.cc",
        "data/webui/print_preview.h",
      ]
    }
    if (!enable_print_preview || is_mac || is_chromeos) {
      sources -= [
        # This test depends on GetCommandLineForRelaunch, which is not
        # available on Mac. It is also not intended to run on ChromeOS.
        "../browser/printing/cloud_print/test/cloud_print_policy_browsertest.cc",
      ]
    }
    if (!enable_print_preview || is_chromeos) {
      sources -= [
        # Not intended to run on ChromeOS.
        "../browser/printing/cloud_print/test/cloud_print_proxy_process_browsertest.cc",
      ]
    }
    if (enable_mdns) {
      sources += [ "../browser/ui/webui/local_discovery/local_discovery_ui_browsertest.cc" ]
    }
    if (use_brlapi) {
      deps += [ "//build/linux/libbrlapi" ]
    } else {
      sources -= [ "../browser/extensions/api/braille_display_private/braille_display_private_apitest.cc" ]
    }
    if (is_chrome_branded && safe_browsing_mode == 1 && !is_mac) {
      sources -= [
        # These tests depend on single process mode, which is disabled in
        # official builds.
        "../renderer/safe_browsing/phishing_classifier_browsertest.cc",
        "../renderer/safe_browsing/phishing_classifier_delegate_browsertest.cc",
      ]
    }
    if (enable_remoting) {
      sources += [
        "remoting/auth_browsertest.cc",
        "remoting/fullscreen_browsertest.cc",
        "remoting/it2me_browsertest.cc",
        "remoting/key_code_conv.cc",
        "remoting/key_code_conv.h",
        "remoting/key_code_map.h",
        "remoting/key_code_test_map.h",
        "remoting/launch_browsertest.cc",
        "remoting/me2me_browsertest.cc",
        "remoting/page_load_notification_observer.cc",
        "remoting/page_load_notification_observer.h",
        "remoting/pin_browsertest.cc",
        "remoting/qunit_browser_test_runner.cc",
        "remoting/remote_desktop_browsertest.cc",
        "remoting/remote_desktop_browsertest.h",
        "remoting/remote_test_helper.cc",
        "remoting/remote_test_helper.h",
        "remoting/scrollbar_browsertest.cc",
        "remoting/unauthenticated_browsertest.cc",
        "remoting/waiter.cc",
        "remoting/waiter.h",
        "remoting/webapp_javascript_browsertest.cc",
      ]
      deps += [ "//remoting/webapp" ]
    }

    if (use_aura) {
      if (enable_wifi_display) {
        sources += [
          "../../extensions/browser/api/display_source/display_source_apitestbase.cc",
          "../../extensions/browser/api/display_source/display_source_apitestbase.h",
          "../browser/extensions/api/display_source/display_source_wifi_display_apitest.cc",
        ]
      }
    }

    if (is_chromeos || (is_linux && use_dbus)) {
      sources += [ "../browser/extensions/api/bluetooth_low_energy/bluetooth_low_energy_apitest.cc" ]
    }
  }
}

if (!is_android) {
  test("sync_integration_tests") {
    sources = [
      "../app/chrome_version.rc.version",
      "../browser/sync/test/integration/enable_disable_test.cc",
      "../browser/sync/test/integration/migration_test.cc",
      "../browser/sync/test/integration/single_client_app_list_sync_test.cc",
      "../browser/sync/test/integration/single_client_apps_sync_test.cc",
      "../browser/sync/test/integration/single_client_arc_package_sync_test.cc",
      "../browser/sync/test/integration/single_client_bookmarks_sync_test.cc",
      "../browser/sync/test/integration/single_client_dictionary_sync_test.cc",
      "../browser/sync/test/integration/single_client_directory_sync_test.cc",
      "../browser/sync/test/integration/single_client_extensions_sync_test.cc",
      "../browser/sync/test/integration/single_client_password_manager_setting_migrator_service_sync_test.cc",
      "../browser/sync/test/integration/single_client_passwords_sync_test.cc",
      "../browser/sync/test/integration/single_client_preferences_sync_test.cc",
      "../browser/sync/test/integration/single_client_printers_sync_test.cc",
      "../browser/sync/test/integration/single_client_search_engines_sync_test.cc",
      "../browser/sync/test/integration/single_client_sessions_sync_test.cc",
      "../browser/sync/test/integration/single_client_supervised_user_settings_sync_test.cc",
      "../browser/sync/test/integration/single_client_themes_sync_test.cc",
      "../browser/sync/test/integration/single_client_typed_urls_sync_test.cc",
      "../browser/sync/test/integration/single_client_wallet_sync_test.cc",
      "../browser/sync/test/integration/single_client_wifi_credentials_sync_test.cc",
      "../browser/sync/test/integration/sync_auth_test.cc",
      "../browser/sync/test/integration/sync_errors_test.cc",
      "../browser/sync/test/integration/sync_exponential_backoff_test.cc",
      "../browser/sync/test/integration/two_client_app_list_sync_test.cc",
      "../browser/sync/test/integration/two_client_apps_sync_test.cc",
      "../browser/sync/test/integration/two_client_arc_package_sync_test.cc",
      "../browser/sync/test/integration/two_client_autofill_sync_test.cc",
      "../browser/sync/test/integration/two_client_bookmarks_sync_test.cc",
      "../browser/sync/test/integration/two_client_dictionary_sync_test.cc",
      "../browser/sync/test/integration/two_client_extension_settings_and_app_settings_sync_test.cc",
      "../browser/sync/test/integration/two_client_extensions_sync_test.cc",
      "../browser/sync/test/integration/two_client_password_manager_setting_migrator_service_sync_test.cc",
      "../browser/sync/test/integration/two_client_passwords_sync_test.cc",
      "../browser/sync/test/integration/two_client_preferences_sync_test.cc",
      "../browser/sync/test/integration/two_client_printers_sync_test.cc",
      "../browser/sync/test/integration/two_client_search_engines_sync_test.cc",
      "../browser/sync/test/integration/two_client_sessions_sync_test.cc",
      "../browser/sync/test/integration/two_client_themes_sync_test.cc",
      "../browser/sync/test/integration/two_client_typed_urls_sync_test.cc",
      "../browser/sync/test/integration/two_client_uss_sync_test.cc",
      "../browser/sync/test/integration/two_client_wifi_credentials_sync_test.cc",
      "data/resource.rc",
    ]

    data = [
      "//chrome/test/data/sync/",
      "//net/tools/testserver/",
      "//components/sync/tools/testserver/",
      "//third_party/pyftpdlib/",
      "//third_party/pywebsocket/",
      "//third_party/tlslite/",
      "$root_out_dir/pyproto/",
      "//testing/xvfb.py",
    ]

    if (is_linux || is_win) {
      data += [
        "$root_out_dir/chrome_100_percent.pak",
        "$root_out_dir/chrome_200_percent.pak",
        "$root_out_dir/locales/en-US.pak",
        "$root_out_dir/resources.pak",
      ]
    }

    # TODO(phajdan.jr): Only temporary, to make transition easier.
    defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]

    deps = [
      ":browser_tests_runner",
      ":sync_integration_test_support",
      ":test_support",
      ":test_support_ui",
      "//chrome:packed_resources",
      "//chrome:resources",
      "//chrome:strings",
      "//chrome/app:chrome_dll_resources",
      "//chrome/app:command_ids",
      "//chrome/common",
      "//chrome/renderer",
      "//components/sync",
      "//crypto:platform",
      "//testing/gmock",
      "//testing/gtest",
      "//third_party/WebKit/public:blink",
      "//third_party/icu",
      "//third_party/leveldatabase",
    ]

    data_deps = [
      "//third_party/mesa:osmesa",
    ]

    if (is_mac) {
      # Dictionary sync is disabled on Mac.
      sources -= [
        "../browser/sync/test/integration/single_client_dictionary_sync_test.cc",
        "../browser/sync/test/integration/two_client_dictionary_sync_test.cc",
      ]

      data_deps += [
        "//chrome",
        "//chrome:chrome_framework",
      ]
    }
    if (is_win) {
      deps += [
        "//chrome:other_version",
        "//third_party/wtl",
        "//ui/resources",
      ]

      configs -= [ "//build/config/win:default_incremental_linking" ]
      configs +=
          [ "//build/config/win:default_large_module_incremental_linking" ]
    } else {
      sources -= [ "../app/chrome_version.rc.version" ]
    }
    if (!is_chromeos) {
      sources -= [
        "../browser/sync/test/integration/single_client_arc_package_sync_test.cc",
        "../browser/sync/test/integration/single_client_printers_sync_test.cc",
        "../browser/sync/test/integration/single_client_wifi_credentials_sync_test.cc",
        "../browser/sync/test/integration/two_client_arc_package_sync_test.cc",
        "../browser/sync/test/integration/two_client_printers_sync_test.cc",
        "../browser/sync/test/integration/two_client_wifi_credentials_sync_test.cc",
      ]
    }

    if (toolkit_views) {
      deps += [ "//ui/views" ]
    }
    if (enable_basic_printing || enable_print_preview) {
      deps += [ "//printing" ]
    }
    if (!enable_app_list) {
      sources -= [
        "../browser/sync/test/integration/single_client_app_list_sync_test.cc",
        "../browser/sync/test/integration/two_client_app_list_sync_test.cc",
      ]
    }
    if (!enable_supervised_users) {
      sources -= [ "../browser/sync/test/integration/single_client_supervised_user_settings_sync_test.cc" ]
    }
  }

  test("sync_performance_tests") {
    sources = [
      "../app/chrome_version.rc.version",
      "../browser/sync/test/integration/performance/autofill_sync_perf_test.cc",
      "../browser/sync/test/integration/performance/bookmarks_sync_perf_test.cc",
      "../browser/sync/test/integration/performance/dictionary_sync_perf_test.cc",
      "../browser/sync/test/integration/performance/extensions_sync_perf_test.cc",
      "../browser/sync/test/integration/performance/passwords_sync_perf_test.cc",
      "../browser/sync/test/integration/performance/sessions_sync_perf_test.cc",
      "../browser/sync/test/integration/performance/sync_timing_helper.cc",
      "../browser/sync/test/integration/performance/sync_timing_helper.h",
      "../browser/sync/test/integration/performance/typed_urls_sync_perf_test.cc",
      "base/browser_perf_tests_main.cc",
      "data/resource.rc",
    ]

    defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]

    deps = [
      ":sync_integration_test_support",
      ":test_support_ui",
      "//chrome/app:chrome_dll_resources",
      "//chrome/app:command_ids",
      "//components/sync",
      "//crypto:platform",
      "//testing/gmock",
      "//testing/gtest",
    ]

    if (is_mac) {
      # Dictionary sync is disabled on Mac.
      sources -= [ "../browser/sync/test/integration/performance/dictionary_sync_perf_test.cc" ]

      # The sync_performance_tests do not run on mac without this flag.
      # Search for comments about "xcode_settings" elsewhere in this file.
      ldflags = [ "-Wl,-ObjC" ]
    }
    if (is_win) {
      deps += [
        "//chrome:other_version",
        "//chrome/installer/util:strings",
        "//third_party/wtl",
        "//ui/resources",
      ]
      configs -= [ "//build/config/win:default_incremental_linking" ]
      configs +=
          [ "//build/config/win:default_large_module_incremental_linking" ]
    } else {
      sources -= [ "../app/chrome_version.rc.version" ]
    }

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

    # This target should not require the Chrome executable to run.
    assert_no_deps = [ "//chrome" ]
  }

  # Executable to measure time to load libraries.
  test("load_library_perf_tests") {
    sources = [
      "../browser/load_library_perf_test.cc",
    ]

    # This test deliberately does not depend in chrome's test support targets.
    # This is a small test and Chrome's test support targets bring in the
    # world, causing link time to explode. Please don't add more dependencies
    # here without understanding how it affects link time (and factor them
    # differently if possible).
    deps = [
      "//base/test:test_support_perf",
      "//ppapi/features",
      "//testing/gtest",
      "//testing/perf",
      "//third_party/widevine/cdm:headers",
    ]

    if (enable_pepper_cdms) {
      deps += [
        "//chrome/browser:pepper_cdm_test_constants",
        "//media:cdm_paths",
      ]
      data_deps = [
        "//media/cdm/ppapi:clearkeycdmadapter",
        "//third_party/widevine/cdm:widevinecdmadapter",
      ]
    }

    data = [
      # Needed for isolate script to execute.
      "//testing/scripts/common.py",
      "//testing/xvfb.py",
      "//testing/scripts/run_gtest_perf_test.py",
      "//tools/perf/generate_legacy_perf_dashboard_json.py",
    ]

    # This target should not require the Chrome executable to run.
    assert_no_deps = [ "//chrome" ]
  }
}

# TODO(GYP_GONE): Delete this after we've converted everything to GN.
# The _run targets exist only for compatibility w/ GYP.
group("telemetry_perf_unittests_run") {
  testonly = true
  deps = [
    ":telemetry_perf_unittests",
  ]
}

group("telemetry_perf_unittests") {
  testonly = true
  deps = [
    "//tools/perf:perf",
  ]

  data = [
    # For isolate contract.
    "//testing/scripts/common.py",
    "//testing/xvfb.py",
    "//testing/scripts/run_telemetry_as_googletest.py",
  ]
}

group("telemetry_perf_tests") {
  testonly = true
  deps = [
    "//tools/perf/:perf",
  ]

  data = [
    # Needed for isolate script to execute.
    "//testing/scripts/common.py",
    "//testing/xvfb.py",
    "//testing/scripts/run_telemetry_benchmark_as_googletest.py",
  ]
}

group("angle_perftests") {
  testonly = true
  if (is_win || is_linux) {
    data_deps = [
      "//third_party/angle/src/tests:angle_perftests",
    ]
  }

  data = [
    # Needed for isolate script to execute.
    "//testing/scripts/common.py",
    "//testing/xvfb.py",
    "//testing/scripts/run_gtest_perf_test.py",
    "//tools/perf/generate_legacy_perf_dashboard_json.py",
  ]
}

js2gtest("unit_tests_js") {
  test_type = "unit"
  sources = [
    "../browser/resources/md_downloads/action_service_unittest.gtestjs",
    "../browser/resources/print_preview/data/measurement_system_unittest.gtestjs",
    "../browser/resources/print_preview/print_preview_utils_unittest.gtestjs",
    "../renderer/resources/extensions/notifications_custom_bindings.gtestjs",
    "../test/data/unit/framework_unittest.gtestjs",
  ]
  extra_js_files = [
    "../browser/resources/md_downloads/action_service.js",
    "../browser/resources/print_preview/data/measurement_system.js",
    "../browser/resources/print_preview/print_preview_utils.js",
    "../renderer/resources/extensions/notifications_custom_bindings.js",
    "../renderer/resources/extensions/notifications_test_util.js",
    "//ui/webui/resources/js/cr.js",
  ]
  if (is_chromeos) {
    sources += [
      "../browser/resources/chromeos/braille_ime/braille_ime_unittest.gtestjs",
      "../browser/resources/chromeos/select_to_speak/select_to_speak_unittest.gtestjs",
      "../browser/resources/chromeos/switch_access/switch_access_unittest.gtestjs",
    ]
    extra_js_files += [
      "../browser/resources/chromeos/braille_ime/braille_ime.js",
      "../browser/resources/chromeos/select_to_speak/select_to_speak.js",
      "../browser/resources/chromeos/select_to_speak/test_support.js",
      "../browser/resources/chromeos/switch_access/switch_access.js",
      "../browser/resources/chromeos/switch_access/test_support.js",
      "../browser/resources/chromeos/switch_access/testable_switch_access.js",
    ]
  }
}

test("unit_tests") {
  sources = [
    # histograms.xml is analyzed by AboutFlagsHistogramTest, so this
    # dependency is needed to make commit bots run unit_tests on
    # histograms.xml changes.
    "../../tools/metrics/histograms/histograms.xml",

    # All unittests in browser, common, renderer and service.
    "../browser/about_flags_unittest.cc",
    "../browser/after_startup_task_utils_unittest.cc",
    "../browser/android/bookmarks/partner_bookmarks_shim_unittest.cc",
    "../browser/android/compositor/layer/tab_layer_unittest.cc",
    "../browser/android/contextualsearch/contextual_search_delegate_unittest.cc",
    "../browser/android/contextualsearch/contextual_search_field_trial_unittest.cc",
    "../browser/android/data_usage/data_use_matcher_unittest.cc",
    "../browser/android/data_usage/data_use_tab_model_unittest.cc",
    "../browser/android/data_usage/data_use_ui_tab_model_unittest.cc",
    "../browser/android/data_usage/external_data_use_observer_unittest.cc",
    "../browser/android/data_usage/external_data_use_reporter_unittest.cc",
    "../browser/android/data_usage/tab_data_use_entry_unittest.cc",
    "../browser/android/download/download_manager_service_unittest.cc",
    "../browser/android/history_report/data_observer_unittest.cc",
    "../browser/android/history_report/delta_file_backend_leveldb_unittest.cc",
    "../browser/android/history_report/delta_file_commons_unittest.cc",
    "../browser/android/history_report/usage_reports_buffer_backend_unittest.cc",
    "../browser/android/locale/special_locale_handler_unittest.cc",

    # TODO(newt): move this to test_support_unit?
    "../browser/android/chrome_backup_agent_unittest.cc",
    "../browser/android/favicon_helper_unittest.cc",
    "../browser/android/mock_location_settings.cc",
    "../browser/android/mock_location_settings.h",
    "../browser/android/net/external_estimate_provider_android_unittest.cc",
    "../browser/android/physical_web/physical_web_data_source_android_unittest.cc",
    "../browser/android/preferences/pref_service_bridge_unittest.cc",
    "../browser/android/shortcut_info_unittest.cc",
    "../browser/android/thumbnail/scoped_ptr_expiring_cache_unittest.cc",
    "../browser/android/webapk/webapk_icon_hasher_unittest.cc",
    "../browser/android/webapk/webapk_installer_unittest.cc",
    "../browser/android/webapk/webapk_web_manifest_checker_unittest.cc",
    "../browser/android/webapps/add_to_homescreen_data_fetcher_unittest.cc",
    "../browser/app_controller_mac_unittest.mm",
    "../browser/autocomplete/search_provider_unittest.cc",
    "../browser/autocomplete/shortcuts_provider_extension_unittest.cc",
    "../browser/background_sync/background_sync_controller_impl_unittest.cc",
    "../browser/background_sync/background_sync_permission_context_unittest.cc",
    "../browser/banners/app_banner_settings_helper_unittest.cc",
    "../browser/bitmap_fetcher/bitmap_fetcher_service_unittest.cc",
    "../browser/bookmarks/managed_bookmark_service_unittest.cc",
    "../browser/browser_about_handler_unittest.cc",
    "../browser/browser_process_impl_unittest.cc",
    "../browser/browsing_data/browsing_data_appcache_helper_unittest.cc",
    "../browser/browsing_data/browsing_data_cache_storage_helper_unittest.cc",
    "../browser/browsing_data/browsing_data_channel_id_helper_unittest.cc",
    "../browser/browsing_data/browsing_data_cookie_helper_unittest.cc",
    "../browser/browsing_data/browsing_data_counter_utils_unittest.cc",
    "../browser/browsing_data/browsing_data_database_helper_unittest.cc",
    "../browser/browsing_data/browsing_data_file_system_helper_unittest.cc",
    "../browser/browsing_data/browsing_data_helper_unittest.cc",
    "../browser/browsing_data/browsing_data_indexed_db_helper_unittest.cc",
    "../browser/browsing_data/browsing_data_local_storage_helper_unittest.cc",
    "../browser/browsing_data/browsing_data_media_license_helper_unittest.cc",
    "../browser/browsing_data/browsing_data_quota_helper_unittest.cc",
    "../browser/browsing_data/browsing_data_remover_impl_unittest.cc",
    "../browser/browsing_data/browsing_data_remover_test_util.cc",
    "../browser/browsing_data/browsing_data_remover_test_util.h",
    "../browser/browsing_data/browsing_data_service_worker_helper_unittest.cc",
    "../browser/browsing_data/chrome_browsing_data_remover_delegate_unittest.cc",
    "../browser/browsing_data/cookies_tree_model_unittest.cc",
    "../browser/browsing_data/site_data_counting_helper_unittest.cc",
    "../browser/browsing_data/site_data_size_collector_unittest.cc",
    "../browser/budget_service/budget_database_unittest.cc",
    "../browser/budget_service/budget_manager_unittest.cc",
    "../browser/chrome_content_browser_client_unittest.cc",
    "../browser/chrome_process_singleton_win_unittest.cc",
    "../browser/command_updater_unittest.cc",
    "../browser/component_updater/chrome_component_updater_configurator_unittest.cc",
    "../browser/component_updater/component_installer_errors_unittest.cc",
    "../browser/component_updater/origin_trials_component_installer_unittest.cc",
    "../browser/component_updater/sth_set_component_installer_unittest.cc",
    "../browser/component_updater/subresource_filter_component_installer_unittest.cc",
    "../browser/component_updater/supervised_user_whitelist_installer_unittest.cc",
    "../browser/component_updater/sw_reporter_installer_win_unittest.cc",
    "../browser/conflicts/module_database_win_unittest.cc",
    "../browser/conflicts/module_event_sink_impl_win_unittest.cc",
    "../browser/conflicts/module_info_util_win_unittest.cc",
    "../browser/conflicts/module_info_win_unittest.cc",
    "../browser/conflicts/module_inspector_win_unittest.cc",
    "../browser/content_settings/content_settings_default_provider_unittest.cc",
    "../browser/content_settings/content_settings_mock_observer.cc",
    "../browser/content_settings/content_settings_mock_observer.h",
    "../browser/content_settings/content_settings_origin_identifier_value_map_unittest.cc",
    "../browser/content_settings/content_settings_policy_provider_unittest.cc",
    "../browser/content_settings/content_settings_pref_provider_unittest.cc",
    "../browser/content_settings/content_settings_usages_state_unittest.cc",
    "../browser/content_settings/cookie_settings_factory_unittest.cc",
    "../browser/content_settings/host_content_settings_map_unittest.cc",
    "../browser/content_settings/mock_settings_observer.cc",
    "../browser/content_settings/mock_settings_observer.h",
    "../browser/content_settings/tab_specific_content_settings_unittest.cc",
    "../browser/custom_handlers/protocol_handler_registry_unittest.cc",
    "../browser/data_usage/tab_id_annotator_unittest.cc",
    "../browser/data_usage/tab_id_provider_unittest.cc",
    "../browser/data_use_measurement/chrome_data_use_ascriber_service_unittest.cc",
    "../browser/data_use_measurement/chrome_data_use_ascriber_unittest.cc",
    "../browser/devtools/devtools_network_controller_unittest.cc",
    "../browser/download/all_download_item_notifier_unittest.cc",
    "../browser/download/chrome_download_manager_delegate_unittest.cc",
    "../browser/download/download_history_unittest.cc",
    "../browser/download/download_item_model_unittest.cc",
    "../browser/download/download_path_reservation_tracker_unittest.cc",
    "../browser/download/download_prefs_unittest.cc",
    "../browser/download/download_query_unittest.cc",
    "../browser/download/download_request_infobar_delegate_unittest.cc",
    "../browser/download/download_request_limiter_unittest.cc",
    "../browser/download/download_resource_throttle_unittest.cc",
    "../browser/download/download_status_updater_unittest.cc",
    "../browser/download/download_target_determiner_unittest.cc",
    "../browser/download/download_ui_controller_unittest.cc",
    "../browser/engagement/important_sites_util_unittest.cc",
    "../browser/engagement/site_engagement_helper_unittest.cc",
    "../browser/engagement/site_engagement_score_unittest.cc",
    "../browser/engagement/site_engagement_service_unittest.cc",
    "../browser/external_protocol/external_protocol_handler_unittest.cc",
    "../browser/favicon/chrome_fallback_icon_client_unittest.cc",
    "../browser/file_select_helper_unittest.cc",
    "../browser/gcm/fake_gcm_profile_service.cc",
    "../browser/gcm/fake_gcm_profile_service.h",
    "../browser/geolocation/geolocation_permission_context_unittest.cc",
    "../browser/global_keyboard_shortcuts_mac_unittest.mm",
    "../browser/google/google_update_settings_unittest.cc",
    "../browser/google/google_update_win_unittest.cc",
    "../browser/history/android/android_cache_database_unittest.cc",
    "../browser/history/android/android_history_provider_service_unittest.cc",
    "../browser/history/android/android_provider_backend_unittest.cc",
    "../browser/history/android/android_urls_database_unittest.cc",
    "../browser/history/android/bookmark_model_sql_handler_unittest.cc",
    "../browser/history/android/sqlite_cursor_unittest.cc",
    "../browser/history/android/urls_sql_handler_unittest.cc",
    "../browser/history/android/visit_sql_handler_unittest.cc",
    "../browser/history/browsing_history_service_unittest.cc",
    "../browser/install_verification/win/loaded_module_verification_unittest.cc",
    "../browser/install_verification/win/module_ids_unittest.cc",
    "../browser/install_verification/win/module_info_unittest.cc",
    "../browser/install_verification/win/module_list_unittest.cc",
    "../browser/install_verification/win/module_verification_test.cc",
    "../browser/install_verification/win/module_verification_test.h",
    "../browser/installable/installable_manager_unittest.cc",
    "../browser/internal_auth_unittest.cc",
    "../browser/io_thread_unittest.cc",
    "../browser/loader/chrome_navigation_data_unittest.cc",
    "../browser/loader/chrome_resource_dispatcher_host_delegate_unittest.cc",
    "../browser/logging_chrome_unittest.cc",
    "../browser/mac/exception_processor_unittest.mm",
    "../browser/mac/keystone_glue_unittest.mm",
    "../browser/manifest/manifest_icon_downloader_unittest.cc",
    "../browser/manifest/manifest_icon_selector_unittest.cc",
    "../browser/media/midi_permission_context_unittest.cc",
    "../browser/media/webrtc/media_stream_device_permission_context_unittest.cc",
    "../browser/metrics/antivirus_metrics_provider_win_unittest.cc",
    "../browser/metrics/chrome_browser_main_extra_parts_metrics_unittest.cc",
    "../browser/metrics/chrome_metrics_service_accessor_unittest.cc",
    "../browser/metrics/perf/perf_provider_chromeos_unittest.cc",
    "../browser/metrics/subprocess_metrics_provider_unittest.cc",
    "../browser/metrics/thread_watcher_android_unittest.cc",
    "../browser/metrics/thread_watcher_unittest.cc",
    "../browser/mod_pagespeed/mod_pagespeed_metrics_unittest.cc",
    "../browser/net/chrome_network_delegate_unittest.cc",
    "../browser/net/dns_probe_runner_unittest.cc",
    "../browser/net/dns_probe_service_unittest.cc",
    "../browser/net/file_downloader_unittest.cc",
    "../browser/net/net_error_tab_helper_unittest.cc",
    "../browser/net/predictor_unittest.cc",
    "../browser/net/probe_message_unittest.cc",
    "../browser/net/quota_policy_channel_id_store_unittest.cc",
    "../browser/net/safe_search_util_unittest.cc",
    "../browser/net/spdyproxy/chrome_data_use_group_provider_unittest.cc",
    "../browser/net/spdyproxy/chrome_data_use_group_unittest.cc",
    "../browser/net/spdyproxy/data_reduction_proxy_chrome_settings_unittest.cc",
    "../browser/net/spdyproxy/data_reduction_proxy_settings_unittest_android.cc",
    "../browser/net/url_info_unittest.cc",
    "../browser/notifications/desktop_notification_profile_util_unittest.cc",
    "../browser/notifications/notification_permission_context_unittest.cc",
    "../browser/notifications/notification_platform_bridge_mac_unittest.mm",
    "../browser/notifications/platform_notification_service_unittest.cc",
    "../browser/notifications/stub_alert_dispatcher_mac.h",
    "../browser/notifications/stub_alert_dispatcher_mac.mm",
    "../browser/notifications/stub_notification_center_mac.h",
    "../browser/notifications/stub_notification_center_mac.mm",
    "../browser/ntp_snippets/bookmark_last_visit_updater_unittest.cc",
    "../browser/ntp_snippets/download_suggestions_provider_unittest.cc",
    "../browser/page_load_metrics/metrics_web_contents_observer_unittest.cc",
    "../browser/page_load_metrics/observers/aborts_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/amp_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/core_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/document_write_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/from_gws_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/google_captcha_observer_unittest.cc",
    "../browser/page_load_metrics/observers/media_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.cc",
    "../browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.h",
    "../browser/page_load_metrics/observers/previews_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/protocol_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/service_worker_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/subresource_filter_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/tab_restore_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/observers/ukm_page_load_metrics_observer_unittest.cc",
    "../browser/page_load_metrics/user_input_tracker_unittest.cc",
    "../browser/password_manager/chrome_password_manager_client_unittest.cc",
    "../browser/password_manager/password_manager_internals_service_unittest.cc",
    "../browser/password_manager/password_store_mac_unittest.cc",
    "../browser/password_manager/password_store_proxy_mac_unittest.cc",
    "../browser/password_manager/password_store_win_unittest.cc",
    "../browser/password_manager/password_store_x_unittest.cc",
    "../browser/password_manager/simple_password_store_mac_unittest.cc",
    "../browser/permissions/chooser_context_base_unittest.cc",
    "../browser/permissions/permission_context_base_unittest.cc",
    "../browser/permissions/permission_decision_auto_blocker_unittest.cc",
    "../browser/permissions/permission_manager_unittest.cc",
    "../browser/permissions/permission_uma_util_unittest.cc",
    "../browser/permissions/permission_util_unittest.cc",
    "../browser/policy/cloud/cloud_policy_invalidator_unittest.cc",
    "../browser/policy/cloud/cloud_policy_test_utils.cc",
    "../browser/policy/cloud/remote_commands_invalidator_unittest.cc",
    "../browser/policy/cloud/user_policy_signin_service_unittest.cc",
    "../browser/policy/file_selection_dialogs_policy_handler_unittest.cc",
    "../browser/policy/javascript_policy_handler_unittest.cc",
    "../browser/policy/managed_bookmarks_policy_handler_unittest.cc",
    "../browser/policy/profile_policy_connector_unittest.cc",
    "../browser/predictors/autocomplete_action_predictor_table_unittest.cc",
    "../browser/predictors/autocomplete_action_predictor_unittest.cc",
    "../browser/predictors/resource_prefetch_common_unittest.cc",
    "../browser/predictors/resource_prefetch_predictor_tables_unittest.cc",
    "../browser/predictors/resource_prefetch_predictor_test_util.cc",
    "../browser/predictors/resource_prefetch_predictor_test_util.h",
    "../browser/predictors/resource_prefetch_predictor_unittest.cc",
    "../browser/predictors/resource_prefetcher_unittest.cc",
    "../browser/prefs/chrome_command_line_pref_store_proxy_unittest.cc",
    "../browser/prefs/chrome_command_line_pref_store_ssl_manager_unittest.cc",
    "../browser/prefs/chrome_command_line_pref_store_unittest.cc",
    "../browser/prefs/chrome_pref_service_unittest.cc",
    "../browser/prefs/incognito_mode_prefs_unittest.cc",
    "../browser/prefs/preferences_service_unittest.cc",
    "../browser/prefs/profile_pref_store_manager_unittest.cc",
    "../browser/prefs/proxy_policy_unittest.cc",
    "../browser/prefs/session_startup_pref_unittest.cc",
    "../browser/prerender/prerender_history_unittest.cc",
    "../browser/prerender/prerender_resource_throttle_unittest.cc",
    "../browser/prerender/prerender_unittest.cc",
    "../browser/prerender/prerender_util_unittest.cc",
    "../browser/previews/previews_infobar_delegate_unittest.cc",
    "../browser/previews/previews_infobar_tab_helper_unittest.cc",
    "../browser/process_singleton_win_unittest.cc",
    "../browser/profiles/gaia_info_update_service_unittest.cc",
    "../browser/profiles/guest_mode_policy_handler_unittest.cc",
    "../browser/profiles/incognito_mode_policy_handler_unittest.cc",
    "../browser/profiles/profile_attributes_storage_unittest.cc",
    "../browser/profiles/profile_avatar_icon_util_unittest.cc",
    "../browser/profiles/profile_downloader_unittest.cc",
    "../browser/profiles/profile_info_cache_unittest.cc",
    "../browser/profiles/profile_info_cache_unittest.h",
    "../browser/profiles/profile_manager_unittest.cc",
    "../browser/profiles/profile_shortcut_manager_unittest_win.cc",
    "../browser/push_messaging/push_messaging_app_identifier_unittest.cc",
    "../browser/push_messaging/push_messaging_notification_manager_unittest.cc",
    "../browser/push_messaging/push_messaging_service_unittest.cc",
    "../browser/renderer_host/chrome_render_widget_host_view_mac_history_swiper_unit_test.mm",
    "../browser/resources_util_unittest.cc",
    "../browser/search/contextual_search_policy_handler_android_unittest.cc",
    "../browser/search/iframe_source_unittest.cc",
    "../browser/search/thumbnail_source_unittest.cc",

    # TODO(hashimoto): those tests should be componentized and moved to
    # //components:components_unittests, http://crbug.com/527882.
    "../browser/search_engines/template_url_fetcher_unittest.cc",
    "../browser/search_engines/template_url_parser_unittest.cc",
    "../browser/search_engines/template_url_service_sync_unittest.cc",
    "../browser/search_engines/template_url_service_unittest.cc",
    "../browser/service_process/service_process_control_mac_unittest.mm",
    "../browser/sessions/restore_on_startup_policy_handler_unittest.cc",
    "../browser/sessions/session_common_utils_unittest.cc",
    "../browser/shell_integration_win_unittest.cc",
    "../browser/signin/account_reconcilor_unittest.cc",
    "../browser/signin/chrome_signin_client_unittest.cc",
    "../browser/signin/chrome_signin_status_metrics_provider_delegate_unittest.cc",
    "../browser/signin/local_auth_unittest.cc",
    "../browser/signin/signin_manager_unittest.cc",
    "../browser/signin/signin_status_metrics_provider_chromeos_unittest.cc",
    "../browser/signin/signin_tracker_unittest.cc",
    "../browser/signin/test_signin_client_builder.cc",
    "../browser/ssl/chrome_expect_ct_reporter_unittest.cc",
    "../browser/ssl/security_state_tab_helper_unittest.cc",
    "../browser/ssl/ssl_error_handler_unittest.cc",
    "../browser/status_icons/status_icon_menu_model_unittest.cc",
    "../browser/status_icons/status_icon_unittest.cc",
    "../browser/status_icons/status_tray_unittest.cc",
    "../browser/storage/durable_storage_permission_context_unittest.cc",
    "../browser/sync/profile_sync_service_factory_unittest.cc",
    "../browser/sync/sync_startup_tracker_unittest.cc",
    "../browser/task_profiler/task_profiler_data_serializer_unittest.cc",
    "../browser/thumbnails/content_analysis_unittest.cc",
    "../browser/thumbnails/content_based_thumbnailing_algorithm_unittest.cc",
    "../browser/thumbnails/simple_thumbnail_crop_unittest.cc",
    "../browser/thumbnails/thumbnail_service_unittest.cc",
    "../browser/translate/language_model_factory_unittest.cc",
    "../browser/translate/translate_service_unittest.cc",
    "../browser/ui/android/tab_model/tab_model_list_unittest.cc",
    "../browser/ui/android/tab_model/tab_model_unittest.cc",
    "../browser/ui/autofill/autofill_dialog_models_unittest.cc",
    "../browser/ui/autofill/autofill_popup_layout_model_unittest.cc",
    "../browser/ui/autofill/popup_view_common_unittest.cc",
    "../browser/ui/bookmarks/bookmark_editor_unittest.cc",
    "../browser/ui/bookmarks/bookmark_ui_utils_desktop_unittest.cc",
    "../browser/ui/bookmarks/recently_used_folders_combo_model_unittest.cc",
    "../browser/ui/chrome_select_file_policy_unittest.cc",
    "../browser/ui/find_bar/find_backend_unittest.cc",
    "../browser/ui/login/login_handler_unittest.cc",
    "../browser/ui/page_info/website_settings_unittest.cc",
    "../browser/ui/permission_bubble/mock_permission_prompt.cc",
    "../browser/ui/permission_bubble/mock_permission_prompt.h",
    "../browser/ui/permission_bubble/mock_permission_prompt_factory.cc",
    "../browser/ui/permission_bubble/mock_permission_prompt_factory.h",
    "../browser/ui/passwords/manage_passwords_state_unittest.cc",
    "../browser/ui/passwords/manage_passwords_view_utils_unittest.cc",
    "../browser/ui/passwords/password_manager_presenter_unittest.cc",
    "../browser/ui/search_engines/keyword_editor_controller_unittest.cc",
    "../browser/ui/sync/profile_signin_confirmation_helper_unittest.cc",
    "../browser/ui/sync/sync_promo_ui_unittest.cc",
    "../browser/ui/tests/ui_gfx_image_unittest.cc",
    "../browser/ui/tests/ui_gfx_image_unittest.mm",
    "../browser/ui/webui/browsing_history_handler_unittest.cc",
    "../browser/ui/webui/fileicon_source_unittest.cc",
    "../browser/ui/webui/local_state/local_state_ui_unittest.cc",
    "../browser/ui/webui/log_web_ui_url_unittest.cc",
    "../browser/update_client/chrome_update_query_params_delegate_unittest.cc",
    "../browser/webshare/share_target_pref_helper_unittest.cc",
    "../browser/win/chrome_elf_init_unittest.cc",
    "../browser/win/enumerate_modules_model_unittest.cc",
    "../common/chrome_constants_win_unittest.cc",
    "../common/chrome_content_client_unittest.cc",
    "../common/chrome_paths_unittest.cc",
    "../common/component_flash_hint_file_linux_unittest.cc",
    "../common/conflicts/module_watcher_win_unittest.cc",
    "../common/crash_keys_unittest.cc",
    "../common/ini_parser_unittest.cc",
    "../common/mac/cfbundle_blocker_unittest.mm",
    "../common/mac/mock_launchd.cc",
    "../common/mac/mock_launchd.h",
    "../common/origin_trials/chrome_origin_trial_policy_unittest.cc",
    "../common/partial_circular_buffer_unittest.cc",
    "../common/pref_names_util_unittest.cc",
    "../common/search/instant_types_unittest.cc",
    "../common/search/search_urls_unittest.cc",
    "../common/secure_origin_whitelist_unittest.cc",
    "../common/switch_utils_unittest.cc",
    "../renderer/app_categorizer_unittest.cc",
    "../renderer/chrome_content_renderer_client_unittest.cc",
    "../renderer/content_settings_observer_unittest.cc",
    "../renderer/instant_restricted_id_cache_unittest.cc",
    "../renderer/page_load_metrics/fake_page_timing_metrics_ipc_sender.cc",
    "../renderer/page_load_metrics/fake_page_timing_metrics_ipc_sender.h",
    "../renderer/page_load_metrics/metrics_render_frame_observer_unittest.cc",
    "../renderer/page_load_metrics/page_timing_metrics_sender_unittest.cc",
    "../renderer/plugins/plugin_uma_unittest.cc",
    "../renderer/prerender/prerender_dispatcher_unittest.cc",
    "../renderer/searchbox/search_bouncer_unittest.cc",
    "../renderer/searchbox/searchbox_extension_unittest.cc",
    "../renderer/searchbox/searchbox_unittest.cc",
    "../renderer/web_apps_unittest.cc",
    "../test/base/chrome_render_view_test.cc",
    "../test/base/chrome_render_view_test.h",
    "../test/base/menu_model_test.cc",
    "../test/base/menu_model_test.h",
    "../test/base/v8_unit_test.cc",
    "../test/base/v8_unit_test.h",
    "../test/logging/win/mof_data_parser_unittest.cc",

    # Duplicate these tests here because PathService has more items in
    # unit_tests than in base_unittests.
    "../../base/path_service_unittest.cc",
    "../../testing/gtest_mac_unittest.mm",
    "../../third_party/zlib/google/compression_utils_unittest.cc",
    "../../third_party/zlib/google/zip_reader_unittest.cc",
    "../../third_party/zlib/google/zip_unittest.cc",
  ]

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

  data_deps = []

  data = [
    "data/",
    "//base/test/data/",
    "//chrome/third_party/mock4js/",
    "//components/test/data/",
    "//extensions/test/data/",
    "//google_apis/test/data/",
    "//net/tools/testserver/",
    "//third_party/accessibility-audit/axs_testing.js",
    "//third_party/chaijs/chai.js",
    "//third_party/hunspell_dictionaries/",
    "//third_party/pyftpdlib/",
    "//third_party/pywebsocket/",
    "//third_party/tlslite/",
    "//third_party/zlib/google/test/data/",
    "//tools/metrics/histograms/histograms.xml",
    "$root_out_dir/pyproto/google/",
  ]
  if (is_android || is_linux || is_win) {
    data += [
      "$root_out_dir/chrome_100_percent.pak",
      "$root_out_dir/locales/en-US.pak",
      "$root_out_dir/resources.pak",
    ]
  }
  if (is_linux || is_win) {
    data += [ "$root_out_dir/chrome_200_percent.pak" ]
  }
  if (is_win) {
    data_deps += [ "//chrome" ]
    data += [ "$root_out_dir/chrome.exe" ]
  }

  defines = []

  deps = [
    ":test_support",
    ":test_support_unit",
    "//base/test:test_support",
    "//chrome:browser_dependencies",
    "//chrome:child_dependencies",
    "//chrome:resources",
    "//chrome:strings",
    "//chrome/common:test_support",
    "//components/autofill/content/renderer:test_support",
    "//components/browser_sync:test_support",
    "//components/component_updater:test_support",
    "//components/content_settings/core/test:test_support",
    "//components/content_settings/core/test:test_support",
    "//components/data_reduction_proxy/core/browser:test_support",
    "//components/data_use_measurement/core",
    "//components/metrics/proto",
    "//components/ntp_snippets:test_support",
    "//components/os_crypt:test_support",
    "//components/resources",
    "//components/safe_browsing_db",
    "//components/safe_browsing_db:test_database_manager",
    "//components/safe_json:test_support",
    "//components/spellcheck:build_features",
    "//components/strings",
    "//components/subresource_filter/core/browser:test_support",
    "//components/sync:test_support_driver",
    "//components/sync:test_support_model",
    "//components/sync_sessions:test_support",
    "//components/variations:test_support",
    "//components/version_info:generate_version_info",
    "//components/webdata_services:test_support",
    "//content/app/resources",
    "//content/public/app:both",
    "//content/test:test_support",
    "//courgette:courgette_lib",
    "//crypto:platform",
    "//crypto:test_support",
    "//device/base:mocks",
    "//device/bluetooth:mocks",
    "//device/usb:test_support",
    "//extensions/features",
    "//google_apis",
    "//gpu:test_support",
    "//media:media_features",
    "//media:test_support",
    "//net",
    "//net:test_support",
    "//ppapi/features",
    "//skia",
    "//testing/gmock",
    "//testing/gtest",
    "//third_party/cacheinvalidation",
    "//third_party/icu",
    "//third_party/leveldatabase",
    "//third_party/libaddressinput",
    "//third_party/libphonenumber",
    "//third_party/libxml",
    "//third_party/webrtc/modules/desktop_capture",
    "//third_party/webrtc_overrides",
    "//ui/base:test_support",
    "//ui/display:test_support",
    "//ui/gfx:test_support",
    "//ui/gl",
    "//ui/resources",
    "//v8",
  ]

  if (is_mac) {
    data_deps += [ "//chrome:chrome_framework" ]
    data += [ "$root_out_dir/Chromium Framework.framework/" ]
  }

  if (is_android) {
    sources += [
      # Offline pages are currently only on Android.
      "../browser/android/offline_pages/background_loader_offliner_unittest.cc",
      "../browser/android/offline_pages/downloads/resource_throttle_unittest.cc",
      "../browser/android/offline_pages/offline_page_mhtml_archiver_unittest.cc",
      "../browser/android/offline_pages/offline_page_request_job_unittest.cc",
      "../browser/android/offline_pages/offline_page_utils_unittest.cc",
      "../browser/android/offline_pages/prerender_adapter_unittest.cc",
      "../browser/android/offline_pages/prerendering_loader_unittest.cc",
      "../browser/android/offline_pages/prerendering_offliner_unittest.cc",
      "../browser/android/offline_pages/recent_tab_helper_unittest.cc",
      "../browser/android/offline_pages/test_offline_page_model_builder.cc",
      "../browser/android/offline_pages/test_offline_page_model_builder.h",
      "../browser/android/offline_pages/test_request_coordinator_builder.cc",
      "../browser/android/offline_pages/test_request_coordinator_builder.h",
      "../browser/android/search_geolocation/search_geolocation_service_unittest.cc",
      "../browser/autofill/autofill_credit_card_filling_infobar_delegate_mobile_unittest.cc",
      "../browser/autofill/autofill_save_card_infobar_delegate_mobile_unittest.cc",
      "../browser/password_manager/account_chooser_dialog_android_unittest.cc",
      "../browser/password_manager/auto_signin_first_run_dialog_android_unittest.cc",
      "../browser/password_manager/save_password_infobar_delegate_android_unittest.cc",
      "../browser/permissions/permission_queue_controller_unittest.cc",
    ]
    deps += [
      ":unit_tests_java",
      "//components/gcm_driver/instance_id/android:instance_id_driver_java",
      "//components/gcm_driver/instance_id/android:instance_id_driver_test_support_java",
      "//components/offline_pages/content/background_loader:test_support",
      "//components/offline_pages/core:test_support",
      "//components/offline_pages/core/background:test_support",
      "//v8:v8_external_startup_data_assets",
    ]

    android_manifest =
        "//chrome/test/android/unit_tests_apk/AndroidManifest.xml"
    enable_multidex = true
  } else {
    # !is_android
    sources += [
      # Bookmark export/import are handled via the BookmarkColumns
      # ContentProvider.
      "../browser/bookmarks/bookmark_html_writer_unittest.cc",
      "../browser/browser_commands_unittest.cc",
      "../browser/diagnostics/diagnostics_controller_unittest.cc",
      "../browser/diagnostics/diagnostics_model_unittest.cc",
      "../browser/download/download_commands_unittest.cc",
      "../browser/download/download_shelf_unittest.cc",
      "../browser/first_run/first_run_unittest.cc",
      "../browser/font_family_cache_unittest.cc",

      # GCMDriverAndroid is not yet implemented.
      "../browser/gcm/gcm_profile_service_unittest.cc",
      "../browser/importer/firefox_profile_lock_unittest.cc",
      "../browser/importer/profile_writer_unittest.cc",
      "../browser/media/webrtc/tab_desktop_media_list_unittest.cc",
      "../browser/media_galleries/fileapi/native_media_file_util_unittest.cc",
      "../browser/media_galleries/gallery_watch_manager_unittest.cc",
      "../browser/media_galleries/mac/mtp_device_delegate_impl_mac_unittest.mm",
      "../browser/media_galleries/media_file_system_registry_unittest.cc",
      "../browser/media_galleries/media_galleries_dialog_controller_mock.cc",
      "../browser/media_galleries/media_galleries_dialog_controller_mock.h",
      "../browser/media_galleries/media_galleries_dialog_controller_test_util.cc",
      "../browser/media_galleries/media_galleries_dialog_controller_test_util.h",
      "../browser/media_galleries/media_galleries_permission_controller_unittest.cc",
      "../browser/media_galleries/media_galleries_permissions_unittest.cc",
      "../browser/media_galleries/media_galleries_preferences_unittest.cc",
      "../browser/media_galleries/win/mtp_device_delegate_impl_win_unittest.cc",
      "../browser/media_galleries/win/mtp_device_object_enumerator_unittest.cc",
      "../browser/memory/tab_manager_delegate_chromeos_unittest.cc",
      "../browser/memory/tab_manager_unittest.cc",
      "../browser/memory/tab_manager_web_contents_data_unittest.cc",

      # Android does not use the Message Center notification system.
      "../browser/net/firefox_proxy_settings_unittest.cc",
      "../browser/notifications/message_center_notifications_unittest.cc",
      "../browser/notifications/message_center_settings_controller_unittest.cc",
      "../browser/permissions/permission_request_manager_unittest.cc",
      "../browser/platform_util_unittest.cc",
      "../browser/policy/policy_path_parser_unittest.cc",
      "../browser/process_singleton_posix_unittest.cc",
      "../browser/profile_resetter/profile_resetter_unittest.cc",
      "../browser/profile_resetter/triggered_profile_resetter_win_unittest.cc",
      "../browser/renderer_context_menu/render_view_context_menu_unittest.cc",
      "../browser/search/instant_service_unittest.cc",
      "../browser/search/instant_unittest_base.cc",
      "../browser/search/instant_unittest_base.h",
      "../browser/search/search_unittest.cc",
      "../browser/sessions/persistent_tab_restore_service_unittest.cc",
      "../browser/signin/mutable_profile_oauth2_token_service_delegate_unittest.cc",
      "../browser/speech/extension_api/extension_manifests_tts_unittest.cc",
      "../browser/speech/tts_controller_unittest.cc",
      "../browser/sync/sync_ui_util_unittest.cc",  # Sync setup uses native ui.
      "../browser/task_manager/providers/browser_process_task_unittest.cc",
      "../browser/task_manager/providers/child_process_task_unittest.cc",
      "../browser/task_manager/sampling/shared_sampler_win_unittest.cc",
      "../browser/task_manager/sampling/task_group_unittest.cc",
      "../browser/task_manager/sampling/task_manager_impl_unittest.cc",
      "../browser/task_manager/task_manager_observer_unittest.cc",
      "../browser/task_manager/test_task_manager.cc",
      "../browser/task_manager/test_task_manager.h",
      "../browser/themes/browser_theme_pack_unittest.cc",
      "../browser/themes/theme_properties_unittest.cc",
      "../browser/themes/theme_service_unittest.cc",
      "../browser/themes/theme_syncable_service_unittest.cc",
      "../browser/translate/translate_manager_render_view_host_unittest.cc",
      "../browser/ui/webui/theme_source_unittest.cc",

      # The autofill popup is implemented in mostly native code on Android.
      "../browser/ui/autofill/autofill_popup_controller_unittest.cc",
      "../browser/ui/bookmarks/bookmark_context_menu_controller_unittest.cc",
      "../browser/ui/bookmarks/bookmark_unittest.cc",
      "../browser/ui/browser_close_unittest.cc",
      "../browser/ui/browser_command_controller_unittest.cc",
      "../browser/ui/browser_instant_controller_unittest.cc",
      "../browser/ui/browser_unittest.cc",
      "../browser/ui/chrome_bubble_manager_unittest.cc",
      "../browser/ui/content_settings/content_setting_bubble_model_unittest.cc",
      "../browser/ui/content_settings/content_setting_image_model_unittest.cc",
      "../browser/ui/exclusive_access/fullscreen_controller_state_unittest.cc",
      "../browser/ui/extensions/extension_action_view_controller_unittest.cc",
      "../browser/ui/extensions/extension_message_bubble_bridge_unittest.cc",
      "../browser/ui/global_error/global_error_service_unittest.cc",
      "../browser/ui/omnibox/clipboard_utils_unittest.cc",
      "../browser/ui/omnibox/omnibox_controller_unittest.cc",
      "../browser/ui/page_info/permission_menu_model_unittest.cc",
      "../browser/ui/passwords/manage_passwords_bubble_model_unittest.cc",
      "../browser/ui/passwords/manage_passwords_view_utils_desktop_unittest.cc",
      "../browser/ui/passwords/password_dialog_controller_impl_unittest.cc",
      "../browser/ui/search/instant_search_prerenderer_unittest.cc",
      "../browser/ui/search/instant_tab_unittest.cc",
      "../browser/ui/search/search_delegate_unittest.cc",
      "../browser/ui/search/search_ipc_router_policy_unittest.cc",
      "../browser/ui/search/search_ipc_router_unittest.cc",
      "../browser/ui/search/search_model_unittest.cc",
      "../browser/ui/search/search_tab_helper_unittest.cc",
      "../browser/ui/tab_contents/tab_contents_iterator_unittest.cc",
      "../browser/ui/tabs/pinned_tab_codec_unittest.cc",
      "../browser/ui/tabs/pinned_tab_service_unittest.cc",
      "../browser/ui/tabs/pinned_tab_test_utils.cc",
      "../browser/ui/tabs/tab_menu_model_unittest.cc",
      "../browser/ui/tabs/tab_strip_model_stats_recorder_unittest.cc",
      "../browser/ui/tabs/tab_strip_model_unittest.cc",
      "../browser/ui/tabs/test_tab_strip_model_delegate.cc",
      "../browser/ui/tabs/test_tab_strip_model_delegate.h",
      "../browser/ui/toolbar/app_menu_model_unittest.cc",
      "../browser/ui/toolbar/back_forward_menu_model_unittest.cc",
      "../browser/ui/toolbar/component_toolbar_actions_factory_unittest.cc",
      "../browser/ui/toolbar/mock_component_toolbar_actions_factory.cc",
      "../browser/ui/toolbar/mock_component_toolbar_actions_factory.h",
      "../browser/ui/toolbar/recent_tabs_builder_test_helper.cc",
      "../browser/ui/toolbar/recent_tabs_builder_test_helper.h",
      "../browser/ui/toolbar/recent_tabs_sub_menu_model_unittest.cc",
      "../browser/ui/toolbar/test_toolbar_actions_bar_bubble_delegate.cc",
      "../browser/ui/toolbar/test_toolbar_actions_bar_bubble_delegate.h",
      "../browser/ui/toolbar/toolbar_actions_bar_unittest.cc",
      "../browser/ui/toolbar/toolbar_actions_bar_unittest.h",
      "../browser/ui/toolbar/toolbar_actions_model_unittest.cc",
      "../browser/ui/toolbar/toolbar_model_unittest.cc",
      "../browser/ui/webui/help/version_updater_chromeos_unittest.cc",
      "../browser/ui/webui/md_downloads/downloads_list_tracker_unittest.cc",
      "../browser/ui/webui/md_downloads/md_downloads_dom_handler_unittest.cc",
      "../browser/ui/webui/ntp/ntp_user_data_logger_unittest.cc",
      "../browser/ui/webui/options/autofill_options_handler_unittest.cc",
      "../browser/ui/webui/options/font_settings_utils_unittest.cc",
      "../browser/ui/webui/options/language_options_handler_unittest.cc",
      "../browser/ui/webui/options/password_manager_handler_unittest.cc",
      "../browser/ui/webui/options/pepper_flash_content_settings_utils_unittest.cc",
      "../browser/ui/webui/options/sync_setup_handler_unittest.cc",
      "../browser/ui/webui/settings/downloads_handler_unittest.cc",
      "../browser/ui/webui/settings/metrics_reporting_handler_unittest.cc",
      "../browser/ui/webui/settings/people_handler_unittest.cc",
      "../browser/ui/webui/settings/profile_info_handler_unittest.cc",
      "../browser/ui/webui/settings/reset_settings_handler_unittest.cc",
      "../browser/ui/webui/settings/settings_manage_profile_handler_unittest.cc",
      "../browser/ui/webui/settings/site_settings_handler_unittest.cc",
      "../browser/ui/webui/settings_utils_unittest.cc",
      "../browser/ui/webui/signin/login_ui_service_unittest.cc",
      "../browser/ui/webui/site_settings_helper_unittest.cc",
      "../browser/ui/webui/sync_internals_message_handler_unittest.cc",
      "../browser/ui/webui/web_dialog_web_contents_delegate_unittest.cc",
      "../browser/ui/window_sizer/window_sizer_common_unittest.cc",
      "../browser/ui/window_sizer/window_sizer_unittest.cc",
      "../browser/ui/zoom/zoom_controller_unittest.cc",
      "../browser/usb/usb_blocklist_unittest.cc",
      "../browser/usb/usb_chooser_context_unittest.cc",
      "../browser/usb/usb_chooser_controller_unittest.cc",
      "../browser/usb/web_usb_detector_unittest.cc",

      # The importer code is not used on Android.
      "../common/importer/firefox_importer_utils_unittest.cc",

      # No service process (which also requires multiprocess lock).
      "../common/importer/mock_importer_bridge.cc",
      "../common/importer/mock_importer_bridge.h",
      "../common/multi_process_lock_unittest.cc",
      "../test/base/browser_with_test_window_test.cc",
      "../test/base/browser_with_test_window_test.h",
      "../utility/importer/bookmark_html_reader_unittest.cc",
      "../utility/importer/bookmarks_file_importer_unittest.cc",
      "../utility/importer/edge_database_reader_unittest_win.cc",
      "../utility/importer/firefox_importer_unittest.cc",
      "../utility/importer/firefox_importer_unittest_messages_internal.h",
      "../utility/importer/firefox_importer_unittest_utils.h",
      "../utility/importer/firefox_importer_unittest_utils_mac.cc",
      "../utility/importer/safari_importer_unittest.mm",
    ]
    sources -=
        [ "../browser/download/download_request_infobar_delegate_unittest.cc" ]
    deps += [
      "//device/battery:mojo_bindings",
      "//ipc",
      "//third_party/libaddressinput",
    ]
  }

  if (!is_android) {
    sources += [
      "../browser/devtools/devtools_ui_bindings_unittest.cc",
      "../browser/download/download_dir_policy_handler_unittest.cc",
      "../browser/lifetime/keep_alive_registry_unittest.cc",
      "../browser/renderer_context_menu/render_view_context_menu_test_util.cc",
      "../browser/renderer_context_menu/render_view_context_menu_test_util.h",
      "../browser/ui/autofill/save_card_bubble_controller_impl_unittest.cc",
      "../browser/ui/bluetooth/bluetooth_chooser_controller_unittest.cc",
      "../browser/ui/passwords/manage_passwords_ui_controller_unittest.cc",
    ]
    deps += [
      ":unit_tests_js",
      "//components/bubble:test_support",
    ]
    data += [
      "$root_out_dir/test_data/chrome/browser/resources/print_preview/",
      "$root_out_dir/test_data/chrome/renderer/resources/extensions/",
      "$root_out_dir/test_data/ui/webui/",
    ]
  }

  if (is_linux || is_win) {
    sources += [ "../browser/webshare/share_service_impl_unittest.cc" ]
  }

  if (is_chromeos) {
    sources +=
        [ "../browser/component_updater/cros_component_installer_unittest.cc" ]
    sources -= [ "../browser/signin/chrome_signin_status_metrics_provider_delegate_unittest.cc" ]
  }
  if (enable_background) {
    sources += [
      "../browser/background/background_application_list_model_unittest.cc",
      "../browser/background/background_contents_service_unittest.cc",
      "../browser/background/background_mode_manager_unittest.cc",
      "../browser/background/background_mode_optimizer_unittest.cc",
    ]
  }

  if (enable_spellcheck) {
    sources += [
      "../browser/spellchecker/spellcheck_custom_dictionary_unittest.cc",
      "../browser/spellchecker/spellcheck_message_filter_platform_mac_unittest.cc",
      "../browser/spellchecker/spellcheck_message_filter_unittest.cc",
      "../browser/spellchecker/spellcheck_service_unittest.cc",
      "../browser/spellchecker/spelling_service_client_unittest.cc",
      "../tools/convert_dict/convert_dict_unittest.cc",
    ]
  }

  if (enable_one_click_signin) {
    sources += [
      "../browser/ui/sync/one_click_signin_sync_observer_unittest.cc",
      "../browser/ui/sync/one_click_signin_sync_starter_unittest.cc",
    ]
  }

  if (enable_extensions) {
    sources += [
      "../../apps/saved_files_service_unittest.cc",
      "../../components/drive/drive_api_util_unittest.cc",
      "../../components/drive/drive_app_registry_unittest.cc",
      "../../components/drive/drive_uploader_unittest.cc",
      "../../components/drive/event_logger_unittest.cc",
      "../../components/drive/service/drive_api_service_unittest.cc",
      "../../components/drive/service/fake_drive_service_unittest.cc",
      "../../tools/json_schema_compiler/test/features_generation_unittest.cc",
      "../browser/apps/app_shim/app_shim_host_mac_unittest.cc",
      "../browser/apps/app_shim/extension_app_shim_handler_mac_unittest.cc",
      "../browser/autocomplete/keyword_extensions_delegate_impl_unittest.cc",
      "../browser/browsing_data/hosted_apps_counter_unittest.cc",
      "../browser/extensions/active_tab_unittest.cc",
      "../browser/extensions/activity_log/activity_database_unittest.cc",
      "../browser/extensions/activity_log/activity_log_enabled_unittest.cc",
      "../browser/extensions/activity_log/activity_log_policy_unittest.cc",
      "../browser/extensions/activity_log/activity_log_unittest.cc",
      "../browser/extensions/activity_log/counting_policy_unittest.cc",
      "../browser/extensions/activity_log/database_string_table_unittest.cc",
      "../browser/extensions/activity_log/fullstream_ui_policy_unittest.cc",
      "../browser/extensions/api/activity_log_private/activity_log_private_api_unittest.cc",
      "../browser/extensions/api/bookmarks/bookmark_api_helpers_unittest.cc",
      "../browser/extensions/api/content_settings/content_settings_store_unittest.cc",
      "../browser/extensions/api/content_settings/content_settings_unittest.cc",
      "../browser/extensions/api/cookies/cookies_unittest.cc",
      "../browser/extensions/api/cryptotoken_private/cryptotoken_private_api_unittest.cc",
      "../browser/extensions/api/declarative/rules_registry_service_unittest.cc",
      "../browser/extensions/api/declarative/rules_registry_with_cache_unittest.cc",
      "../browser/extensions/api/declarative_content/chrome_content_rules_registry_unittest.cc",
      "../browser/extensions/api/declarative_content/content_action_unittest.cc",
      "../browser/extensions/api/declarative_content/content_condition_unittest.cc",
      "../browser/extensions/api/declarative_content/declarative_content_condition_tracker_test.cc",
      "../browser/extensions/api/declarative_content/declarative_content_condition_tracker_test.h",
      "../browser/extensions/api/declarative_content/declarative_content_css_condition_tracker_unittest.cc",
      "../browser/extensions/api/declarative_content/declarative_content_is_bookmarked_condition_tracker_unittest.cc",
      "../browser/extensions/api/declarative_content/declarative_content_page_url_condition_tracker_unittest.cc",
      "../browser/extensions/api/declarative_webrequest/webrequest_action_unittest.cc",
      "../browser/extensions/api/declarative_webrequest/webrequest_rules_registry_unittest.cc",
      "../browser/extensions/api/developer_private/developer_private_api_unittest.cc",
      "../browser/extensions/api/developer_private/extension_info_generator_unittest.cc",
      "../browser/extensions/api/device_permissions_manager_unittest.cc",
      "../browser/extensions/api/dial/device_description_fetcher_unittest.cc",
      "../browser/extensions/api/dial/dial_device_data_unittest.cc",
      "../browser/extensions/api/dial/dial_registry_unittest.cc",
      "../browser/extensions/api/dial/dial_service_unittest.cc",
      "../browser/extensions/api/downloads/downloads_api_unittest.cc",
      "../browser/extensions/api/easy_unlock_private/easy_unlock_private_api_chromeos_unittest.cc",
      "../browser/extensions/api/experience_sampling_private/experience_sampling_private_api_unittest.cc",
      "../browser/extensions/api/extension_action/browser_action_unittest.cc",
      "../browser/extensions/api/extension_action/extension_action_prefs_unittest.cc",
      "../browser/extensions/api/file_system/file_system_api_unittest.cc",
      "../browser/extensions/api/identity/extension_token_key_unittest.cc",
      "../browser/extensions/api/identity/gaia_web_auth_flow_unittest.cc",
      "../browser/extensions/api/identity/identity_mint_queue_unittest.cc",
      "../browser/extensions/api/image_writer_private/destroy_partitions_operation_unittest.cc",
      "../browser/extensions/api/image_writer_private/operation_manager_unittest.cc",
      "../browser/extensions/api/image_writer_private/operation_unittest.cc",
      "../browser/extensions/api/image_writer_private/removable_storage_provider_chromeos_unittest.cc",
      "../browser/extensions/api/image_writer_private/test_utils.cc",
      "../browser/extensions/api/image_writer_private/write_from_file_operation_unittest.cc",
      "../browser/extensions/api/image_writer_private/write_from_url_operation_unittest.cc",
      "../browser/extensions/api/management/management_api_unittest.cc",
      "../browser/extensions/api/omnibox/omnibox_unittest.cc",
      "../browser/extensions/api/passwords_private/passwords_private_delegate_impl_unittest.cc",
      "../browser/extensions/api/permissions/permissions_api_helpers_unittest.cc",
      "../browser/extensions/api/permissions/permissions_api_unittest.cc",
      "../browser/extensions/api/preference/preference_api_prefs_unittest.cc",
      "../browser/extensions/api/proxy/proxy_api_helpers_unittest.cc",
      "../browser/extensions/api/runtime/chrome_runtime_api_delegate_unittest.cc",
      "../browser/extensions/api/signed_in_devices/id_mapping_helper_unittest.cc",
      "../browser/extensions/api/signed_in_devices/signed_in_devices_api_unittest.cc",
      "../browser/extensions/api/signed_in_devices/signed_in_devices_manager_unittest.cc",
      "../browser/extensions/api/socket/combined_socket_unittest.cc",
      "../browser/extensions/api/socket/socket_api_unittest.cc",
      "../browser/extensions/api/socket/tcp_socket_unittest.cc",
      "../browser/extensions/api/socket/tls_socket_unittest.cc",
      "../browser/extensions/api/socket/udp_socket_unittest.cc",
      "../browser/extensions/api/sockets_tcp_server/sockets_tcp_server_api_unittest.cc",
      "../browser/extensions/api/storage/policy_value_store_unittest.cc",
      "../browser/extensions/api/storage/settings_sync_unittest.cc",
      "../browser/extensions/api/streams_private/streams_private_manifest_unittest.cc",
      "../browser/extensions/api/tabs/tabs_api_unittest.cc",
      "../browser/extensions/api/web_navigation/frame_navigation_state_unittest.cc",
      "../browser/extensions/api/web_request/web_request_api_unittest.cc",
      "../browser/extensions/api/web_request/web_request_event_details_unittest.cc",
      "../browser/extensions/api/web_request/web_request_permissions_unittest.cc",
      "../browser/extensions/app_data_migrator_unittest.cc",
      "../browser/extensions/blacklist_state_fetcher_unittest.cc",
      "../browser/extensions/bookmark_app_helper_unittest.cc",
      "../browser/extensions/chrome_app_sorting_unittest.cc",
      "../browser/extensions/chrome_component_extension_resource_manager_unittest.cc",
      "../browser/extensions/chrome_extension_function_unittest.cc",
      "../browser/extensions/chrome_info_map_unittest.cc",
      "../browser/extensions/component_loader_unittest.cc",
      "../browser/extensions/convert_user_script_unittest.cc",
      "../browser/extensions/convert_web_app_unittest.cc",
      "../browser/extensions/default_apps_unittest.cc",
      "../browser/extensions/display_info_provider_chromeos_unittest.cc",
      "../browser/extensions/error_console/error_console_unittest.cc",
      "../browser/extensions/event_router_forwarder_unittest.cc",
      "../browser/extensions/extension_action_icon_factory_unittest.cc",
      "../browser/extensions/extension_action_manager_unittest.cc",
      "../browser/extensions/extension_action_runner_unittest.cc",
      "../browser/extensions/extension_action_unittest.cc",
      "../browser/extensions/extension_api_unittest.cc",
      "../browser/extensions/extension_api_unittest.h",
      "../browser/extensions/extension_context_menu_model_unittest.cc",
      "../browser/extensions/extension_creator_filter_unittest.cc",
      "../browser/extensions/extension_error_controller_unittest.cc",
      "../browser/extensions/extension_function_test_utils.cc",
      "../browser/extensions/extension_function_test_utils.h",
      "../browser/extensions/extension_garbage_collector_chromeos_unittest.cc",
      "../browser/extensions/extension_garbage_collector_unittest.cc",
      "../browser/extensions/extension_gcm_app_handler_unittest.cc",
      "../browser/extensions/extension_icon_manager_unittest.cc",
      "../browser/extensions/extension_install_checker_unittest.cc",
      "../browser/extensions/extension_install_prompt_unittest.cc",
      "../browser/extensions/extension_management_test_util.cc",
      "../browser/extensions/extension_management_test_util.h",
      "../browser/extensions/extension_management_unittest.cc",
      "../browser/extensions/extension_message_bubble_controller_unittest.cc",
      "../browser/extensions/extension_migrator_unittest.cc",
      "../browser/extensions/extension_navigation_throttle_unittest.cc",
      "../browser/extensions/extension_path_util_unittest.cc",
      "../browser/extensions/extension_prefs_unittest.cc",
      "../browser/extensions/extension_prefs_unittest.h",
      "../browser/extensions/extension_protocols_unittest.cc",
      "../browser/extensions/extension_reenabler_unittest.cc",
      "../browser/extensions/extension_service_sync_unittest.cc",
      "../browser/extensions/extension_service_test_base.cc",
      "../browser/extensions/extension_service_test_base.h",
      "../browser/extensions/extension_service_test_with_install.cc",
      "../browser/extensions/extension_service_test_with_install.h",
      "../browser/extensions/extension_service_unittest.cc",
      "../browser/extensions/extension_special_storage_policy_unittest.cc",
      "../browser/extensions/extension_sync_data_unittest.cc",
      "../browser/extensions/extension_test_message_listener_unittest.cc",
      "../browser/extensions/extension_user_script_loader_unittest.cc",
      "../browser/extensions/extension_web_ui_unittest.cc",
      "../browser/extensions/external_policy_loader_unittest.cc",
      "../browser/extensions/external_provider_impl_chromeos_unittest.cc",
      "../browser/extensions/external_provider_impl_unittest.cc",
      "../browser/extensions/favicon_downloader_unittest.cc",
      "../browser/extensions/install_tracker_unittest.cc",
      "../browser/extensions/location_bar_controller_unittest.cc",
      "../browser/extensions/menu_manager_unittest.cc",
      "../browser/extensions/pack_extension_unittest.cc",
      "../browser/extensions/permission_message_combinations_unittest.cc",
      "../browser/extensions/permission_messages_unittest.cc",
      "../browser/extensions/permissions_based_management_policy_provider_unittest.cc",
      "../browser/extensions/permissions_updater_unittest.cc",
      "../browser/extensions/policy_handlers_unittest.cc",
      "../browser/extensions/scripting_permissions_modifier_unittest.cc",
      "../browser/extensions/shared_module_service_unittest.cc",
      "../browser/extensions/standard_management_policy_provider_unittest.cc",
      "../browser/extensions/tab_helper_unittest.cc",
      "../browser/extensions/token_cache/token_cache_service_unittest.cc",
      "../browser/extensions/update_install_gate_unittest.cc",
      "../browser/extensions/updater/extension_cache_fake.cc",
      "../browser/extensions/updater/extension_cache_fake.h",
      "../browser/extensions/updater/extension_updater_unittest.cc",
      "../browser/extensions/user_script_listener_unittest.cc",
      "../browser/extensions/warning_badge_service_unittest.cc",
      "../browser/extensions/webstore_inline_installer_unittest.cc",
      "../browser/extensions/webstore_installer_unittest.cc",
      "../browser/extensions/zipfile_installer_unittest.cc",
      "../browser/media_galleries/chromeos/mtp_device_object_enumerator_unittest.cc",
      "../browser/metrics/extensions_metrics_provider_unittest.cc",
      "../browser/notifications/extension_welcome_notification_unittest.cc",
      "../browser/renderer_context_menu/context_menu_content_type_unittest.cc",
      "../browser/safe_browsing/settings_reset_prompt/settings_reset_prompt_config_unittest.cc",
      "../browser/safe_browsing/settings_reset_prompt/settings_reset_prompt_model_unittest.cc",
      "../browser/safe_browsing/settings_reset_prompt/settings_reset_prompt_test_utils.cc",
      "../browser/safe_browsing/settings_reset_prompt/settings_reset_prompt_test_utils.h",
      "../browser/safe_search_api/safe_search_url_checker_unittest.cc",
      "../browser/search/hotword_service_unittest.cc",
      "../browser/signin/easy_unlock_app_manager_unittest.cc",
      "../browser/signin/easy_unlock_auth_attempt_unittest.cc",
      "../browser/signin/easy_unlock_screenlock_state_handler_unittest.cc",
      "../browser/signin/easy_unlock_service_unittest_chromeos.cc",
      "../browser/sync/glue/extensions_activity_monitor_unittest.cc",
      "../browser/sync_file_system/drive_backend/callback_helper_unittest.cc",
      "../browser/sync_file_system/drive_backend/callback_tracker_unittest.cc",
      "../browser/sync_file_system/drive_backend/conflict_resolver_unittest.cc",
      "../browser/sync_file_system/drive_backend/drive_backend_sync_unittest.cc",
      "../browser/sync_file_system/drive_backend/drive_backend_test_util.cc",
      "../browser/sync_file_system/drive_backend/drive_backend_test_util.h",
      "../browser/sync_file_system/drive_backend/fake_drive_service_helper.cc",
      "../browser/sync_file_system/drive_backend/fake_drive_service_helper.h",
      "../browser/sync_file_system/drive_backend/fake_drive_uploader.cc",
      "../browser/sync_file_system/drive_backend/fake_drive_uploader.h",
      "../browser/sync_file_system/drive_backend/fake_sync_worker.cc",
      "../browser/sync_file_system/drive_backend/fake_sync_worker.h",
      "../browser/sync_file_system/drive_backend/leveldb_wrapper_unittest.cc",
      "../browser/sync_file_system/drive_backend/list_changes_task_unittest.cc",
      "../browser/sync_file_system/drive_backend/local_to_remote_syncer_unittest.cc",
      "../browser/sync_file_system/drive_backend/metadata_database_index_on_disk_unittest.cc",
      "../browser/sync_file_system/drive_backend/metadata_database_index_unittest.cc",
      "../browser/sync_file_system/drive_backend/metadata_database_unittest.cc",
      "../browser/sync_file_system/drive_backend/metadata_db_migration_util_unittest.cc",
      "../browser/sync_file_system/drive_backend/register_app_task_unittest.cc",
      "../browser/sync_file_system/drive_backend/remote_to_local_syncer_unittest.cc",
      "../browser/sync_file_system/drive_backend/sync_engine_initializer_unittest.cc",
      "../browser/sync_file_system/drive_backend/sync_engine_unittest.cc",
      "../browser/sync_file_system/drive_backend/sync_task_manager_unittest.cc",
      "../browser/sync_file_system/drive_backend/sync_worker_unittest.cc",
      "../browser/sync_file_system/drive_backend/task_dependency_manager_unittest.cc",
      "../browser/sync_file_system/fake_remote_change_processor.cc",
      "../browser/sync_file_system/fake_remote_change_processor.h",
      "../browser/sync_file_system/file_change_unittest.cc",
      "../browser/sync_file_system/local/canned_syncable_file_system.cc",
      "../browser/sync_file_system/local/canned_syncable_file_system.h",
      "../browser/sync_file_system/local/local_file_change_tracker_unittest.cc",
      "../browser/sync_file_system/local/local_file_sync_context_unittest.cc",
      "../browser/sync_file_system/local/local_file_sync_service_unittest.cc",
      "../browser/sync_file_system/local/local_file_sync_status_unittest.cc",
      "../browser/sync_file_system/local/mock_sync_status_observer.cc",
      "../browser/sync_file_system/local/mock_sync_status_observer.h",
      "../browser/sync_file_system/local/syncable_file_operation_runner_unittest.cc",
      "../browser/sync_file_system/local/syncable_file_system_unittest.cc",
      "../browser/sync_file_system/logger_unittest.cc",
      "../browser/sync_file_system/mock_local_change_processor.cc",
      "../browser/sync_file_system/mock_local_change_processor.h",
      "../browser/sync_file_system/mock_remote_change_processor.cc",
      "../browser/sync_file_system/mock_remote_change_processor.h",
      "../browser/sync_file_system/mock_remote_file_sync_service.cc",
      "../browser/sync_file_system/mock_remote_file_sync_service.h",
      "../browser/sync_file_system/subtree_set_unittest.cc",
      "../browser/sync_file_system/sync_file_system_service_unittest.cc",
      "../browser/sync_file_system/sync_file_system_test_util.cc",
      "../browser/sync_file_system/sync_file_system_test_util.h",
      "../browser/sync_file_system/sync_process_runner_unittest.cc",
      "../browser/sync_file_system/syncable_file_system_util_unittest.cc",
      "../browser/web_applications/web_app_mac_unittest.mm",
      "../browser/web_applications/web_app_unittest.cc",
      "../common/extensions/api/commands/commands_manifest_unittest.cc",
      "../common/extensions/api/common_extension_api_unittest.cc",
      "../common/extensions/api/extension_action/browser_action_manifest_unittest.cc",
      "../common/extensions/api/extension_action/page_action_manifest_unittest.cc",
      "../common/extensions/api/storage/storage_schema_manifest_handler_unittest.cc",
      "../common/extensions/chrome_extensions_client_unittest.cc",
      "../common/extensions/chrome_manifest_url_handlers_unittest.cc",
      "../common/extensions/command_unittest.cc",
      "../common/extensions/extension_unittest.cc",
      "../common/extensions/feature_switch_unittest.cc",
      "../common/extensions/manifest_handlers/automation_unittest.cc",
      "../common/extensions/manifest_handlers/content_scripts_manifest_unittest.cc",
      "../common/extensions/manifest_handlers/exclude_matches_manifest_unittest.cc",
      "../common/extensions/manifest_handlers/settings_overrides_handler_unittest.cc",
      "../common/extensions/manifest_handlers/ui_overrides_handler_unittest.cc",
      "../common/extensions/manifest_tests/chrome_manifest_test.cc",
      "../common/extensions/manifest_tests/chrome_manifest_test.h",
      "../common/extensions/manifest_tests/extension_manifests_about_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_background_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_chromepermission_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_contentsecuritypolicy_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_default_extent_path_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_devtools_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_dummy_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_experimental_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_homepage_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_icons_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_initvalue_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_isolatedapp_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_kiosk_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_launch_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_launcher_page_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_manifest_version_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_offline_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_old_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_options_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_override_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_platformapp_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_portsinpermissions_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_requirements_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_storage_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_ui_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_update_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_validapp_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_web_accessible_resources_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_web_unittest.cc",
      "../common/extensions/manifest_tests/extension_manifests_webview_accessible_resources_unittest.cc",
      "../common/extensions/manifest_unittest.cc",
      "../common/extensions/permissions/chrome_permission_message_provider_unittest.cc",
      "../common/extensions/permissions/chrome_permission_message_rules_unittest.cc",
      "../common/extensions/permissions/media_galleries_permission_unittest.cc",
      "../common/extensions/permissions/permission_set_unittest.cc",
      "../common/extensions/permissions/permissions_data_unittest.cc",
      "../common/extensions/permissions/settings_override_permission_unittest.cc",
      "../common/extensions/sync_type_unittest.cc",
      "../renderer/extensions/extension_localization_peer_unittest.cc",
      "../renderer/extensions/renderer_permissions_policy_delegate_unittest.cc",
      "../renderer/media/cast_ipc_dispatcher_unittest.cc",
      "../utility/image_writer/image_writer_unittest.cc",
    ]
    deps += [
      "//chrome/common/extensions/api",
      "//extensions:extensions_resources",
      "//extensions/strings",
      "//media/cast:test_support",

      # This will add all of the unit tests for the schema compiler to this
      # target.
      "//tools/json_schema_compiler/test:unit_tests",
    ]
    if (enable_service_discovery) {
      sources += [
        "../browser/extensions/api/mdns/dns_sd_registry_unittest.cc",
        "../browser/extensions/api/mdns/mdns_api_unittest.cc",
      ]
    }
    if (!is_chromeos) {
      sources += [
        "../browser/extensions/api/messaging/native_message_process_host_unittest.cc",
        "../browser/extensions/api/messaging/native_messaging_host_manifest_unittest.cc",
        "../browser/extensions/api/messaging/native_messaging_policy_handler_unittest.cc",
      ]
    }
    if (enable_media_router) {
      sources += [
        "../browser/media/cast_remoting_sender_unittest.cc",
        "../browser/media/cast_transport_host_filter_unittest.cc",
      ]
    }
  }
  if (use_ash) {
    sources += [
      "../browser/media/webrtc/desktop_media_list_ash_unittest.cc",
      "../browser/renderer_context_menu/mock_render_view_context_menu.cc",
      "../browser/renderer_context_menu/mock_render_view_context_menu.h",
      "../browser/renderer_context_menu/open_with_menu_factory_ash_unittest.cc",
      "../browser/signin/signin_error_notifier_ash_unittest.cc",
      "../browser/sync/sync_error_notifier_ash_unittest.cc",

      # Ash implies the app list is enabled (only disabled on mobile).
      "../browser/ui/ash/accessibility/ax_tree_source_aura_unittest.cc",
      "../browser/ui/ash/chrome_screenshot_grabber_unittest.cc",
      "../browser/ui/ash/launcher/arc_app_shelf_id_unittest.cc",
      "../browser/ui/ash/launcher/chrome_launcher_controller_impl_unittest.cc",
      "../browser/ui/ash/launcher/launcher_context_menu_unittest.cc",
      "../browser/ui/ash/multi_user/multi_user_context_menu_chromeos_unittest.cc",
      "../browser/ui/ash/multi_user/multi_user_notification_blocker_chromeos_unittest.cc",
      "../browser/ui/ash/multi_user/multi_user_util_chromeos_unittest.cc",
      "../browser/ui/ash/multi_user/multi_user_window_manager_chromeos_unittest.cc",
      "../browser/ui/ash/multi_user/user_switch_util_unittest.cc",
      "../browser/ui/ash/session_controller_client_unittest.cc",
      "../browser/ui/ash/system_tray_delegate_chromeos_unittest.cc",
      "../browser/ui/ash/window_positioner_unittest.cc",
      "../browser/ui/window_sizer/window_sizer_ash_unittest.cc",
    ]
    deps += [
      "//ash/resources",
      "//ash/strings",
      "//ash/test:ash_with_aura_test_support",
      "//ash/test:test_support_with_content",
    ]

    # Chrome OS uses window_sizer_ash_unittest.cc
    sources -= [ "../browser/ui/window_sizer/window_sizer_unittest.cc" ]
  }
  if (use_aura) {
    deps += [
      "//ui/aura:test_support",
      "//ui/views:test_support",
      "//ui/wm",
    ]
  }
  if (!is_chromeos && is_linux) {
    sources += [
      "../browser/password_manager/native_backend_kwallet_x_unittest.cc",
      "../browser/shell_integration_linux_unittest.cc",
      "../browser/ui/input_method/input_method_engine_unittest.cc",
    ]
  }
  if (!is_android && !is_chromeos) {
    sources += [
      "../browser/net/disk_cache_dir_policy_handler_unittest.cc",
      "//chrome/browser/profiles/profile_list_desktop_unittest.cc",
      "//chrome/browser/profiles/profile_statistics_unittest.cc",
      "//chrome/browser/ui/startup/default_browser_infobar_delegate_unittest.cc",
      "//chrome/browser/ui/startup/startup_browser_creator_impl_unittest.cc",
      "//chrome/browser/ui/startup/startup_tab_provider_unittest.cc",
    ]
  }
  if (use_gio) {
    deps += [ "//build/linux/libgio" ]
  }
  if (!is_chromeos && !use_ozone && is_linux) {
    deps += [ "//chrome/browser/ui/libgtkui" ]
  }

  if (enable_mdns) {
    sources += [
      "../browser/local_discovery/local_domain_resolver_unittest.cc",
      "../browser/local_discovery/service_discovery_client_unittest.cc",
      "../browser/printing/cloud_print/privet_device_lister_unittest.cc",
      "../browser/printing/cloud_print/privet_local_printer_lister_unittest.cc",
    ]
  }
  if (enable_service_discovery) {
    sources += [
      "../browser/devtools/device/cast_device_provider_unittest.cc",
      "../browser/local_discovery/service_discovery_client_mac_unittest.mm",
      "../browser/printing/cloud_print/cloud_print_printer_list_unittest.cc",
      "../browser/printing/cloud_print/gcd_api_flow_unittest.cc",
      "../browser/printing/cloud_print/privet_confirm_api_flow_unittest.cc",
      "../browser/printing/cloud_print/privet_http_unittest.cc",
      "../browser/printing/cloud_print/privet_notifications_unittest.cc",
      "../browser/printing/cloud_print/privet_url_fetcher_unittest.cc",
    ]
  }

  if (safe_browsing_mode > 0) {
    sources += [
      "../browser/safe_browsing/certificate_reporting_service_unittest.cc",
      "../browser/safe_browsing/safe_browsing_blocking_page_unittest.cc",
      "../browser/safe_browsing/threat_details_unittest.cc",
      "../browser/safe_browsing/ui_manager_unittest.cc",
      "../common/safe_browsing/file_type_policies_test_util.cc",
      "../common/safe_browsing/file_type_policies_test_util.h",
      "../common/safe_browsing/file_type_policies_unittest.cc",
    ]
  }
  if (safe_browsing_mode == 1) {
    # TODO(sgurun): enable tests for safe_browsing==2.
    sources += [
      "../browser/safe_browsing/browser_feature_extractor_unittest.cc",
      "../browser/safe_browsing/chunk_range_unittest.cc",
      "../browser/safe_browsing/client_side_detection_host_unittest.cc",
      "../browser/safe_browsing/client_side_detection_service_unittest.cc",
      "../browser/safe_browsing/client_side_model_loader_unittest.cc",
      "../browser/safe_browsing/download_feedback_service_unittest.cc",
      "../browser/safe_browsing/download_feedback_unittest.cc",
      "../browser/safe_browsing/download_protection_service_unittest.cc",
      "../browser/safe_browsing/incident_reporting/binary_integrity_analyzer_mac_unittest.cc",
      "../browser/safe_browsing/incident_reporting/binary_integrity_analyzer_win_unittest.cc",
      "../browser/safe_browsing/incident_reporting/binary_integrity_incident_unittest.cc",
      "../browser/safe_browsing/incident_reporting/blacklist_load_analyzer_win_unittest.cc",
      "../browser/safe_browsing/incident_reporting/blacklist_load_incident_unittest.cc",
      "../browser/safe_browsing/incident_reporting/delayed_callback_runner_unittest.cc",
      "../browser/safe_browsing/incident_reporting/download_metadata_manager_unittest.cc",
      "../browser/safe_browsing/incident_reporting/environment_data_collection_win_unittest.cc",
      "../browser/safe_browsing/incident_reporting/extension_data_collection_unittest.cc",
      "../browser/safe_browsing/incident_reporting/incident_report_uploader_impl_unittest.cc",
      "../browser/safe_browsing/incident_reporting/incident_reporting_service_unittest.cc",
      "../browser/safe_browsing/incident_reporting/last_download_finder_unittest.cc",
      "../browser/safe_browsing/incident_reporting/mock_incident_receiver.cc",
      "../browser/safe_browsing/incident_reporting/mock_incident_receiver.h",
      "../browser/safe_browsing/incident_reporting/module_integrity_unittest_util_win.cc",
      "../browser/safe_browsing/incident_reporting/module_integrity_unittest_util_win.h",
      "../browser/safe_browsing/incident_reporting/module_integrity_verifier_win_unittest.cc",
      "../browser/safe_browsing/incident_reporting/module_load_analyzer_win_unittest.cc",
      "../browser/safe_browsing/incident_reporting/platform_state_store_unittest.cc",
      "../browser/safe_browsing/incident_reporting/platform_state_store_win_unittest.cc",
      "../browser/safe_browsing/incident_reporting/preference_validation_delegate_unittest.cc",
      "../browser/safe_browsing/incident_reporting/resource_request_detector_unittest.cc",
      "../browser/safe_browsing/incident_reporting/state_store_unittest.cc",
      "../browser/safe_browsing/incident_reporting/suspicious_module_incident_unittest.cc",
      "../browser/safe_browsing/incident_reporting/tracked_preference_incident_unittest.cc",
      "../browser/safe_browsing/incident_reporting/variations_seed_signature_incident_unittest.cc",
      "../browser/safe_browsing/local_database_manager_unittest.cc",
      "../browser/safe_browsing/local_two_phase_testserver.cc",
      "../browser/safe_browsing/notification_image_reporter_unittest.cc",
      "../browser/safe_browsing/path_sanitizer_unittest.cc",
      "../browser/safe_browsing/permission_reporter_unittest.cc",
      "../browser/safe_browsing/protocol_manager_unittest.cc",
      "../browser/safe_browsing/protocol_parser_unittest.cc",
      "../browser/safe_browsing/safe_browsing_database_unittest.cc",
      "../browser/safe_browsing/safe_browsing_navigation_observer_unittest.cc",
      "../browser/safe_browsing/safe_browsing_store_file_unittest.cc",
      "../browser/safe_browsing/safe_browsing_store_unittest.cc",
      "../browser/safe_browsing/sandboxed_dmg_analyzer_mac_unittest.cc",
      "../browser/safe_browsing/sandboxed_zip_analyzer_unittest.cc",
      "../browser/safe_browsing/signature_evaluator_mac_unittest.cc",
      "../browser/safe_browsing/two_phase_uploader_unittest.cc",
      "../common/safe_browsing/binary_feature_extractor_mac_unittest.cc",
      "../common/safe_browsing/binary_feature_extractor_unittest.cc",
      "../common/safe_browsing/binary_feature_extractor_win_unittest.cc",
      "../common/safe_browsing/download_protection_util_unittest.cc",
      "../common/safe_browsing/ipc_protobuf_message_test_messages.h",
      "../common/safe_browsing/ipc_protobuf_message_unittest.cc",
      "../common/safe_browsing/mach_o_image_reader_mac_unittest.cc",
      "../common/safe_browsing/pe_image_reader_win_unittest.cc",
      "../renderer/safe_browsing/features_unittest.cc",
      "../renderer/safe_browsing/murmurhash3_util_unittest.cc",
      "../renderer/safe_browsing/phishing_term_feature_extractor_unittest.cc",
      "../renderer/safe_browsing/phishing_url_feature_extractor_unittest.cc",
      "../renderer/safe_browsing/scorer_unittest.cc",
      "../utility/safe_browsing/mac/dmg_test_utils.cc",
      "../utility/safe_browsing/mac/hfs_unittest.cc",
      "../utility/safe_browsing/mac/read_stream_unittest.cc",
      "../utility/safe_browsing/mac/udif_unittest.cc",
    ]
    deps += [
      ":test_proto",
      "//components/safe_browsing:base_ping_manager_unittest",
      "//components/safe_browsing_db:v4_test_util",
    ]

    if (is_mac) {
      deps += [ ":mac_safe_browsing_test_data" ]
      data += [ "$root_out_dir/test_data/chrome/safe_browsing_dmg/" ]
    }
  }

  if (enable_plugins) {
    sources += [
      "../browser/component_updater/component_installers_unittest.cc",
      "../browser/metrics/chrome_stability_metrics_provider_unittest.cc",
      "../browser/metrics/plugin_metrics_provider_unittest.cc",
      "../browser/plugins/chrome_plugin_service_filter_unittest.cc",
      "../browser/plugins/flash_download_interception_unittest.cc",
      "../browser/plugins/flash_temporary_permission_tracker_unittest.cc",
      "../browser/plugins/plugin_finder_unittest.cc",
      "../browser/plugins/plugin_info_message_filter_unittest.cc",
      "../browser/plugins/plugin_installer_unittest.cc",
      "../browser/plugins/plugin_metadata_unittest.cc",
      "../browser/plugins/plugin_prefs_unittest.cc",
      "../common/pepper_permission_util_unittest.cc",
    ]
  }

  if (enable_print_preview) {
    sources += [
      "../browser/printing/cloud_print/cloud_print_proxy_service_unittest.cc",
      "../browser/printing/print_job_unittest.cc",
      "../browser/printing/print_preview_dialog_controller_unittest.cc",
      "../browser/printing/print_preview_test.cc",
      "../browser/printing/print_preview_test.h",
      "../browser/printing/print_view_manager_unittest.cc",
      "../browser/ui/webui/print_preview/extension_printer_handler_unittest.cc",
      "../browser/ui/webui/print_preview/print_preview_ui_unittest.cc",
      "../browser/ui/webui/print_preview/printer_capabilities_unittest.cc",
      "../common/cloud_print/cloud_print_helpers_unittest.cc",
      "../common/service_process_util_mac_unittest.mm",
      "../common/service_process_util_unittest.cc",
      "../service/cloud_print/cloud_print_service_helpers_unittest.cc",
      "../service/cloud_print/cloud_print_token_store_unittest.cc",
      "../service/cloud_print/cloud_print_url_fetcher_unittest.cc",
      "../service/cloud_print/connector_settings_unittest.cc",
      "../service/cloud_print/printer_job_handler_unittest.cc",
      "../service/cloud_print/printer_job_queue_handler_unittest.cc",
      "../service/service_ipc_server_unittest.cc",
      "../service/service_process_prefs_unittest.cc",
      "../utility/cloud_print/pwg_encoder_unittest.cc",
    ]

    deps += [
      "//ipc",
      "//printing:test_support",
    ]
  }

  if (enable_media_router) {
    sources += [
      "../browser/media/cast_remoting_connector_unittest.cc",
      "../browser/media/router/browser_presentation_connection_proxy_unittest.cc",
      "../browser/media/router/create_presentation_connection_request_unittest.cc",
      "../browser/media/router/discovery/media_sink_internal_unittest.cc",
      "../browser/media/router/issue_manager_unittest.cc",
      "../browser/media/router/issue_unittest.cc",
      "../browser/media/router/media_route_unittest.cc",
      "../browser/media/router/media_router_base_unittest.cc",
      "../browser/media/router/media_router_dialog_controller_unittest.cc",
      "../browser/media/router/media_router_factory_unittest.cc",
      "../browser/media/router/media_router_metrics_unittest.cc",
      "../browser/media/router/media_sink_unittest.cc",
      "../browser/media/router/media_sinks_observer_unittest.cc",
      "../browser/media/router/media_source_helper_unittest.cc",
      "../browser/media/router/media_source_unittest.cc",
      "../browser/media/router/offscreen_presentation_manager_factory_unittest.cc",
      "../browser/media/router/offscreen_presentation_manager_unittest.cc",
      "../browser/media/router/presentation_media_sinks_observer_unittest.cc",
      "../browser/media/router/presentation_request_unittest.cc",
      "../browser/media/router/presentation_service_delegate_impl_unittest.cc",
    ]
    deps += [ "//chrome/browser/media/router:test_support" ]
    if (!is_android) {
      sources += [
        # TODO(crbug.com/646627):
        # Move media_router_ui_service_factory_unittest.cc to chrome/browser/ui.
        "../browser/media/router/media_router_ui_service_factory_unittest.cc",
        "../browser/media/router/mojo/media_router_mojo_impl_unittest.cc",
        "../browser/media/router/mojo/media_router_mojo_metrics_unittest.cc",
        "../browser/media/router/mojo/media_router_struct_traits_unittest.cc",
        "../browser/ui/toolbar/media_router_action_controller_unittest.cc",
        "../browser/ui/toolbar/media_router_action_unittest.cc",
        "../browser/ui/toolbar/media_router_contextual_menu_unittest.cc",
        "../browser/ui/toolbar/mock_media_router_action_controller.cc",
        "../browser/ui/toolbar/mock_media_router_action_controller.h",
        "../browser/ui/webui/media_router/cast_modes_with_media_sources_unittest.cc",
        "../browser/ui/webui/media_router/media_cast_mode_unittest.cc",
        "../browser/ui/webui/media_router/media_router_dialog_controller_impl_unittest.cc",
        "../browser/ui/webui/media_router/media_router_ui_unittest.cc",
        "../browser/ui/webui/media_router/media_router_web_ui_test.cc",
        "../browser/ui/webui/media_router/media_router_web_ui_test.h",
        "../browser/ui/webui/media_router/media_router_webui_message_handler_unittest.cc",
        "../browser/ui/webui/media_router/query_result_manager_unittest.cc",
      ]
    }
  }
  if (enable_captive_portal_detection) {
    sources += [
      "../browser/captive_portal/captive_portal_service_unittest.cc",
      "../browser/captive_portal/captive_portal_tab_helper_unittest.cc",
      "../browser/captive_portal/captive_portal_tab_reloader_unittest.cc",
    ]
  }
  if (enable_session_service) {
    sources += [
      "../browser/sessions/session_restore_stats_collector_unittest.cc",
      "../browser/sessions/session_service_unittest.cc",
      "../browser/sessions/tab_loader_unittest.cc",
    ]

    if (is_mac && !mac_views_browser) {
      sources += [ "../browser/ui/startup/session_crashed_infobar_delegate_unittest.cc" ]
    }
  }
  if (enable_webrtc) {
    sources += [
      "../browser/media/webrtc/webrtc_log_uploader_unittest.cc",
      "../browser/media/webrtc/webrtc_log_util_unittest.cc",
      "../browser/media/webrtc/webrtc_rtp_dump_handler_unittest.cc",
      "../browser/media/webrtc/webrtc_rtp_dump_writer_unittest.cc",
      "../renderer/media/chrome_webrtc_log_message_delegate_unittest.cc",
    ]
  }
  if (is_chromeos) {
    deps += [
      "//chrome/browser/chromeos:unit_tests",
      "//chromeos/ime:gencode",
    ]
    sources -= [
      "../browser/policy/cloud/user_policy_signin_service_unittest.cc",
      "../browser/signin/signin_manager_unittest.cc",
    ]
    sources += [
      "../browser/task_manager/providers/arc/arc_process_filter_unittest.cc",
      "base/ash_test_environment_chrome.cc",
      "base/ash_test_environment_chrome.h",
    ]
  }
  if (use_x11) {
    deps += [ "//ui/events/devices" ]
  } else {
    sources -= [ "../browser/password_manager/password_store_x_unittest.cc" ]
  }
  if (use_gnome_keyring && current_cpu == "x64") {
    # Only add this test for 64 bit builds because otherwise we need the 32
    # bit library on 64 bit systems when running this test.
    sources +=
        [ "../browser/password_manager/native_backend_gnome_x_unittest.cc" ]
    configs += [
      "//components/os_crypt:gnome_keyring",
      "//components/os_crypt:gnome_keyring_direct",
    ]
  }
  if (is_linux && !is_chromeos && !use_ozone) {
    sources +=
        [ "../browser/password_manager/native_backend_libsecret_unittest.cc" ]
    deps += [ "//third_party/libsecret" ]
  }
  if (is_linux && use_aura) {
    deps += [ "//ui/aura:test_support" ]
    if (use_dbus) {
      deps += [ "//dbus:test_support" ]
    }
  }
  if (is_linux && is_chrome_branded && current_cpu == "x86") {
    ldflags = [ "-Wl,--strip-debug" ]
  }
  if (is_mac) {
    sources -= [
      # This tests the function GetSpellCheckLanguages which is not used on
      # Mac.
      "../browser/spellchecker/spellcheck_service_unittest.cc",
      "../browser/ui/tests/ui_gfx_image_unittest.cc",

      # This tests Chrome's spellchecker which Mac doesn't use.
      "../tools/convert_dict/convert_dict_unittest.cc",
    ]

    # The test fetches resources which means Mac need the app bundle to exist
    # on disk so it can pull from it.
    deps += [
      "//third_party/google_toolbox_for_mac",
      "//third_party/ocmock",
    ]

    sources +=
        [ "../browser/ui/cocoa/applescript/apple_event_util_unittest.mm" ]

    if (mac_views_browser) {
      # TODO(tapted): Add chrome_unit_tests_views_non_mac_sources.
    } else {
      sources += [
        "../browser/ui/cocoa/accelerators_cocoa_unittest.mm",
        "../browser/ui/cocoa/animatable_image_unittest.mm",
        "../browser/ui/cocoa/animatable_view_unittest.mm",
        "../browser/ui/cocoa/app_menu/app_menu_button_cell_unittest.mm",
        "../browser/ui/cocoa/app_menu/app_menu_controller_unittest.mm",
        "../browser/ui/cocoa/app_menu/menu_tracked_root_view_unittest.mm",
        "../browser/ui/cocoa/autofill/autofill_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/autofill/autofill_pop_up_button_unittest.mm",
        "../browser/ui/cocoa/autofill/autofill_textfield_unittest.mm",
        "../browser/ui/cocoa/autofill/autofill_tooltip_controller_unittest.mm",
        "../browser/ui/cocoa/autofill/down_arrow_popup_menu_cell_unittest.mm",
        "../browser/ui/cocoa/autofill/layout_view_unittest.mm",
        "../browser/ui/cocoa/autofill/password_generation_popup_view_cocoa_unittest.mm",
        "../browser/ui/cocoa/autofill/save_card_bubble_view_unittest.mm",
        "../browser/ui/cocoa/autofill/simple_grid_layout_unittest.mm",
        "../browser/ui/cocoa/background_gradient_view_unittest.mm",
        "../browser/ui/cocoa/base_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_all_tabs_controller_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_bar_bridge_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_bar_controller_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_bar_folder_button_cell_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_bar_folder_controller_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_bar_folder_hover_state_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_bar_folder_view_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_bar_folder_window_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_bar_toolbar_view_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_bar_unittest_helper.h",
        "../browser/ui/cocoa/bookmarks/bookmark_bar_unittest_helper.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_bar_view_cocoa_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_button_cell_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_button_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_editor_base_controller_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_editor_controller_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_folder_target_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_menu_bridge_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_model_observer_for_cocoa_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_name_folder_controller_unittest.mm",
        "../browser/ui/cocoa/bookmarks/bookmark_tree_browser_cell_unittest.mm",
        "../browser/ui/cocoa/browser/zoom_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/browser_window_cocoa_unittest.mm",
        "../browser/ui/cocoa/browser_window_controller_unittest.mm",
        "../browser/ui/cocoa/browser_window_layout_unittest.mm",
        "../browser/ui/cocoa/browser_window_touch_bar_unittest.mm",
        "../browser/ui/cocoa/browser_window_utils_unittest.mm",
        "../browser/ui/cocoa/bubble_anchor_helper_views_unittest.mm",
        "../browser/ui/cocoa/bubble_view_unittest.mm",
        "../browser/ui/cocoa/chrome_browser_window_unittest.mm",
        "../browser/ui/cocoa/clickhold_button_cell_unittest.mm",
        "../browser/ui/cocoa/confirm_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/confirm_quit_panel_controller_unittest.mm",
        "../browser/ui/cocoa/constrained_window/constrained_window_alert_unittest.mm",
        "../browser/ui/cocoa/constrained_window/constrained_window_button_unittest.mm",
        "../browser/ui/cocoa/constrained_window/constrained_window_custom_window_unittest.mm",
        "../browser/ui/cocoa/constrained_window/constrained_window_sheet_controller_unittest.mm",
        "../browser/ui/cocoa/content_settings/collected_cookies_mac_unittest.mm",
        "../browser/ui/cocoa/content_settings/cookie_details_unittest.mm",
        "../browser/ui/cocoa/content_settings/cookie_details_view_controller_unittest.mm",
        "../browser/ui/cocoa/custom_frame_view_unittest.mm",
        "../browser/ui/cocoa/download/download_item_button_unittest.mm",
        "../browser/ui/cocoa/download/download_item_cell_unittest.mm",
        "../browser/ui/cocoa/download/download_item_controller_unittest.mm",
        "../browser/ui/cocoa/download/download_shelf_controller_unittest.mm",
        "../browser/ui/cocoa/download/download_shelf_mac_unittest.mm",
        "../browser/ui/cocoa/download/download_shelf_view_cocoa_unittest.mm",
        "../browser/ui/cocoa/download/download_util_mac_unittest.mm",
        "../browser/ui/cocoa/draggable_button_unittest.mm",
        "../browser/ui/cocoa/extensions/browser_actions_container_view_unittest.mm",
        "../browser/ui/cocoa/extensions/chooser_dialog_cocoa_controller_unittest.mm",
        "../browser/ui/cocoa/extensions/extension_install_prompt_test_utils.h",
        "../browser/ui/cocoa/extensions/extension_install_prompt_test_utils.mm",
        "../browser/ui/cocoa/extensions/extension_install_view_controller_unittest.mm",
        "../browser/ui/cocoa/extensions/extension_installed_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/extensions/media_galleries_dialog_cocoa_unittest.mm",
        "../browser/ui/cocoa/extensions/toolbar_actions_bar_bubble_mac_unittest.mm",
        "../browser/ui/cocoa/find_bar/find_bar_bridge_unittest.mm",
        "../browser/ui/cocoa/find_bar/find_bar_cocoa_controller_unittest.mm",
        "../browser/ui/cocoa/find_bar/find_bar_text_field_cell_unittest.mm",
        "../browser/ui/cocoa/find_bar/find_bar_text_field_unittest.mm",
        "../browser/ui/cocoa/find_bar/find_bar_view_unittest.mm",
        "../browser/ui/cocoa/find_pasteboard_unittest.mm",
        "../browser/ui/cocoa/first_run_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/floating_bar_backing_view_unittest.mm",
        "../browser/ui/cocoa/framed_browser_window_unittest.mm",
        "../browser/ui/cocoa/fullscreen/fullscreen_toolbar_controller_unittest.mm",
        "../browser/ui/cocoa/fullscreen_low_power_coordinator_unittest.mm",
        "../browser/ui/cocoa/fullscreen_window_unittest.mm",
        "../browser/ui/cocoa/gradient_button_cell_unittest.mm",
        "../browser/ui/cocoa/history_menu_bridge_unittest.mm",
        "../browser/ui/cocoa/history_menu_cocoa_controller_unittest.mm",
        "../browser/ui/cocoa/history_overlay_controller_unittest.mm",
        "../browser/ui/cocoa/hover_close_button_unittest.mm",
        "../browser/ui/cocoa/hung_renderer_controller_unittest.mm",
        "../browser/ui/cocoa/image_button_cell_unittest.mm",
        "../browser/ui/cocoa/info_bubble_view_unittest.mm",
        "../browser/ui/cocoa/info_bubble_window_unittest.mm",
        "../browser/ui/cocoa/infobars/confirm_infobar_controller_unittest.mm",
        "../browser/ui/cocoa/infobars/infobar_container_controller_unittest.mm",
        "../browser/ui/cocoa/infobars/infobar_gradient_view_unittest.mm",
        "../browser/ui/cocoa/infobars/mock_confirm_infobar_delegate.cc",
        "../browser/ui/cocoa/infobars/mock_confirm_infobar_delegate.h",
        "../browser/ui/cocoa/infobars/translate_infobar_unittest.mm",
        "../browser/ui/cocoa/location_bar/autocomplete_text_field_cell_unittest.mm",
        "../browser/ui/cocoa/location_bar/autocomplete_text_field_editor_unittest.mm",
        "../browser/ui/cocoa/location_bar/autocomplete_text_field_unittest.mm",
        "../browser/ui/cocoa/location_bar/autocomplete_text_field_unittest_helper.mm",
        "../browser/ui/cocoa/location_bar/image_decoration_unittest.mm",
        "../browser/ui/cocoa/location_bar/keyword_hint_decoration_unittest.mm",
        "../browser/ui/cocoa/location_bar/location_bar_view_mac_unittest.mm",
        "../browser/ui/cocoa/location_bar/manage_passwords_decoration_unittest.mm",
        "../browser/ui/cocoa/location_bar/security_state_bubble_decoration_unittest.mm",
        "../browser/ui/cocoa/location_bar/selected_keyword_decoration_unittest.mm",
        "../browser/ui/cocoa/location_bar/zoom_decoration_unittest.mm",
        "../browser/ui/cocoa/media_picker/desktop_media_picker_controller_unittest.mm",
        "../browser/ui/cocoa/menu_button_unittest.mm",
        "../browser/ui/cocoa/notifications/notification_builder_mac_unittest.mm",
        "../browser/ui/cocoa/notifications/notification_response_builder_mac_unittest.mm",
        "../browser/ui/cocoa/nsmenuitem_additions_unittest.mm",
        "../browser/ui/cocoa/omnibox/omnibox_popup_cell_unittest.mm",
        "../browser/ui/cocoa/omnibox/omnibox_popup_matrix_unittest.mm",
        "../browser/ui/cocoa/omnibox/omnibox_popup_separator_view_unittest.mm",
        "../browser/ui/cocoa/omnibox/omnibox_popup_view_mac_unittest.mm",
        "../browser/ui/cocoa/omnibox/omnibox_view_mac_unittest.mm",
        "../browser/ui/cocoa/page_info/permission_selector_button_unittest.mm",
        "../browser/ui/cocoa/page_info/website_settings_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/passwords/account_chooser_view_controller_unittest.mm",
        "../browser/ui/cocoa/passwords/autosignin_prompt_view_controller_unittest.mm",
        "../browser/ui/cocoa/passwords/base_passwords_controller_test.h",
        "../browser/ui/cocoa/passwords/base_passwords_controller_test.mm",
        "../browser/ui/cocoa/passwords/confirmation_password_saved_view_controller_unittest.mm",
        "../browser/ui/cocoa/passwords/manage_passwords_view_controller_unittest.mm",
        "../browser/ui/cocoa/passwords/passwords_bubble_cocoa_unittest.mm",
        "../browser/ui/cocoa/passwords/passwords_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/passwords/passwords_list_view_controller_unittest.mm",
        "../browser/ui/cocoa/passwords/save_pending_password_view_controller_unittest.mm",
        "../browser/ui/cocoa/passwords/signin_promo_view_controller_unittest.mm",
        "../browser/ui/cocoa/passwords/update_pending_password_view_controller_unittest.mm",
        "../browser/ui/cocoa/permission_bubble/permission_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/profiles/avatar_button_controller_unittest.mm",
        "../browser/ui/cocoa/profiles/avatar_button_unittest.mm",
        "../browser/ui/cocoa/profiles/avatar_icon_controller_unittest.mm",
        "../browser/ui/cocoa/profiles/profile_chooser_controller_unittest.mm",
        "../browser/ui/cocoa/profiles/profile_menu_controller_unittest.mm",
        "../browser/ui/cocoa/profiles/user_manager_mac_unittest.mm",
        "../browser/ui/cocoa/screen_capture_notification_ui_cocoa_unittest.mm",
        "../browser/ui/cocoa/spinner_view_unittest.mm",
        "../browser/ui/cocoa/sprite_view_unittest.mm",
        "../browser/ui/cocoa/status_bubble_mac_unittest.mm",
        "../browser/ui/cocoa/status_icons/status_icon_mac_unittest.mm",
        "../browser/ui/cocoa/styled_text_field_cell_unittest.mm",
        "../browser/ui/cocoa/styled_text_field_unittest.mm",
        "../browser/ui/cocoa/tab_contents/sad_tab_mac_unittest.mm",
        "../browser/ui/cocoa/tabs/alert_indicator_button_cocoa_unittest.mm",
        "../browser/ui/cocoa/tabs/tab_controller_unittest.mm",
        "../browser/ui/cocoa/tabs/tab_strip_controller_unittest.mm",
        "../browser/ui/cocoa/tabs/tab_strip_view_unittest.mm",
        "../browser/ui/cocoa/tabs/tab_view_unittest.mm",
        "../browser/ui/cocoa/test/cocoa_profile_test.h",
        "../browser/ui/cocoa/test/cocoa_profile_test.mm",
        "../browser/ui/cocoa/test/run_loop_testing_unittest.mm",
        "../browser/ui/cocoa/test/styled_text_field_test_helper.h",
        "../browser/ui/cocoa/test/styled_text_field_test_helper.mm",
        "../browser/ui/cocoa/toolbar/app_toolbar_button_cell_unittest.mm",
        "../browser/ui/cocoa/toolbar/reload_button_unittest.mm",
        "../browser/ui/cocoa/toolbar/toolbar_button_unittest.mm",
        "../browser/ui/cocoa/toolbar/toolbar_controller_unittest.mm",
        "../browser/ui/cocoa/toolbar/toolbar_view_unittest.mm",
        "../browser/ui/cocoa/translate/translate_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/url_drop_target_unittest.mm",
        "../browser/ui/cocoa/validation_message_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/vertical_gradient_view_unittest.mm",
        "../browser/ui/cocoa/view_resizer_pong.h",
        "../browser/ui/cocoa/view_resizer_pong.mm",
        "../browser/ui/cocoa/window_size_autosaver_unittest.mm",
      ]
    }

    # TODO(mark): We really want this for all non-static library targets,
    # but when we tried to pull it up to the common.gypi level, it broke
    # other things like the ui and startup tests. *shrug*
    ldflags = [ "-Wl,-ObjC" ]
  }
  if (!is_mac) {
    deps += [
      "//chrome:packed_resources",
      "//chrome/tools/convert_dict:lib",
      "//third_party/hunspell",
    ]
  }
  if (is_win || is_mac) {
    sources += [
      "../browser/media_galleries/fileapi/itunes_file_util_unittest.cc",
      "../browser/media_galleries/fileapi/picasa_file_util_unittest.cc",
      "../utility/media_galleries/itunes_library_parser_unittest.cc",
      "../utility/media_galleries/picasa_album_table_reader_unittest.cc",
      "../utility/media_galleries/picasa_albums_indexer_unittest.cc",
      "../utility/media_galleries/pmp_column_reader_unittest.cc",
    ]
  }
  if (is_win || is_mac || is_chromeos) {
    sources += [ "../browser/extensions/api/networking_private/networking_private_crypto_unittest.cc" ]
  }
  if (enable_rlz_support) {
    sources += [ "../browser/rlz/chrome_rlz_tracker_delegate_unittest.cc" ]
    deps += [
      "//chrome/browser:rlz",
      "//components/rlz",
      "//rlz:test_support",
    ]
  }
  if (is_win) {
    if (!is_component_build) {
      # The PDB gets too large for incremental linking.
      configs -= [ "//build/config/win:default_incremental_linking" ]
      configs +=
          [ "//build/config/win:default_large_module_incremental_linking" ]
    }

    sources += [
      "../browser/ui/desktop_ios_promotion/desktop_ios_promotion_controller_unittest.cc",
      "../browser/ui/desktop_ios_promotion/desktop_ios_promotion_util_unittest.cc",
      "../browser/ui/desktop_ios_promotion/sms_service_unittest.cc",
      "../browser/ui/input_method/input_method_engine_unittest.cc",
      "../test/data/resource.rc",
    ]
    deps += [
      "//chrome:other_version",
      "//chrome/app:chrome_dll_resources",
      "//chrome/install_static:install_static_util",
      "//chrome/installer/util:strings",
      "//chrome_elf:blacklist_test_dll_1",
      "//third_party/iaccessible2",
      "//third_party/isimpledom",
      "//third_party/wtl",
      "//ui/resources",
    ]
    data_deps += [
      "//chrome/browser/safe_browsing/incident_reporting/verifier_test:verifier_test_dll_1",
      "//chrome/browser/safe_browsing/incident_reporting/verifier_test:verifier_test_dll_2",
      ":conflicts_dll",
    ]

    libs = [
      "comsupp.lib",
      "oleacc.lib",
      "rpcrt4.lib",
      "urlmon.lib",
      "winmm.lib",
    ]
    if (!is_chrome_branded) {
      sources -= [ "../browser/google/google_update_win_unittest.cc" ]
    }
  }
  if (is_android) {
    sources -= [
      "../browser/ui/bookmarks/bookmark_ui_utils_desktop_unittest.cc",
      "../browser/ui/sync/sync_promo_ui_unittest.cc",
    ]
  }
  if (!is_android && !is_chromeos) {
    sources += [
      "../browser/media/webrtc/native_desktop_media_list_unittest.cc",
      "../browser/metrics/desktop_session_duration/desktop_session_duration_tracker_unittest.cc",
      "../browser/signin/signin_global_error_unittest.cc",
      "../browser/ui/webui/signin/signin_create_profile_handler_unittest.cc",
      "../browser/ui/webui/signin/sync_confirmation_handler_unittest.cc",
      "../browser/upgrade_detector_impl_unittest.cc",
    ]
  }
  if (toolkit_views) {
    deps += [
      "//components/web_modal:test_support",
      "//ui/views",
      "//ui/views:test_support",
    ]
    sources += [
      "../../ui/views/controls/webview/webview_unittest.cc",
      "../browser/ui/views/apps/app_info_dialog/app_info_dialog_views_unittest.cc",
      "../browser/ui/views/apps/app_info_dialog/app_info_permissions_panel_unittest.cc",
      "../browser/ui/views/confirm_bubble_views_unittest.cc",
      "../browser/ui/views/global_error_bubble_view_unittest.cc",
      "../browser/ui/views/page_info/website_settings_popup_view_unittest.cc",
      "../browser/ui/views/payments/credit_card_editor_view_controller_unittest.cc",
      "../browser/ui/views/payments/payment_request_item_list_unittest.cc",
      "../browser/ui/views/payments/validating_textfield_unittest.cc",
      "../browser/ui/views/payments/view_stack_unittest.cc",
    ]
    if (is_chromeos) {
      sources += [ "../browser/ui/views/ime_driver/input_method_bridge_chromeos_unittest.cc" ]
    }
    if (!is_chromeos && (!is_mac || mac_views_browser)) {
      sources += [
        "../browser/ui/views/frame/opaque_browser_frame_view_layout_unittest.cc",
        "../browser/ui/views/sync/one_click_signin_dialog_view_unittest.cc",
      ]
    }
    if (!is_mac || mac_views_browser) {
      sources += [
        "../browser/ui/views/accelerator_table_unittest.cc",
        "../browser/ui/views/accelerator_table_unittest_mac.mm",
        "../browser/ui/views/bookmarks/bookmark_bar_view_unittest.cc",
        "../browser/ui/views/bookmarks/bookmark_bubble_view_unittest.cc",
        "../browser/ui/views/bookmarks/bookmark_context_menu_unittest.cc",
        "../browser/ui/views/bookmarks/bookmark_editor_view_unittest.cc",
        "../browser/ui/views/bookmarks/bookmark_menu_delegate_unittest.cc",
        "../browser/ui/views/device_chooser_content_view_unittest.cc",
        "../browser/ui/views/download/download_item_view_unittest.cc",
        "../browser/ui/views/extensions/chooser_dialog_view_unittest.cc",
        "../browser/ui/views/extensions/media_galleries_dialog_views_unittest.cc",
        "../browser/ui/views/frame/browser_non_client_frame_view_unittest.cc",
        "../browser/ui/views/frame/browser_view_layout_unittest.cc",
        "../browser/ui/views/frame/browser_view_unittest.cc",
        "../browser/ui/views/frame/test_with_browser_view.cc",
        "../browser/ui/views/frame/test_with_browser_view.h",
        "../browser/ui/views/frame/web_contents_close_handler_unittest.cc",
        "../browser/ui/views/location_bar/icon_label_bubble_view_unittest.cc",
        "../browser/ui/views/omnibox/omnibox_view_views_unittest.cc",
        "../browser/ui/views/status_icons/status_tray_win_unittest.cc",
        "../browser/ui/views/sync/bubble_sync_promo_view_unittest.cc",
        "../browser/ui/views/tab_contents/chrome_web_contents_view_delegate_views_unittest.cc",
        "../browser/ui/views/tabs/alert_indicator_button_unittest.cc",
        "../browser/ui/views/tabs/fake_base_tab_strip_controller.cc",
        "../browser/ui/views/tabs/fake_base_tab_strip_controller.h",
        "../browser/ui/views/tabs/stacked_tab_strip_layout_unittest.cc",
        "../browser/ui/views/tabs/tab_strip_layout_unittest.cc",
        "../browser/ui/views/tabs/tab_strip_unittest.cc",
        "../browser/ui/views/tabs/tab_unittest.cc",
        "../browser/ui/views/toolbar/reload_button_unittest.cc",
        "../browser/ui/views/toolbar/toolbar_action_view_unittest.cc",
        "../browser/ui/views/toolbar/toolbar_actions_bar_bubble_views_unittest.cc",
        "../browser/ui/views/translate/translate_bubble_view_unittest.cc",
        "../browser/ui/views/webshare/webshare_target_picker_view_unittest.cc",
      ]
    }
    if (use_aura) {
      sources += [
        "../browser/ui/views/apps/shaped_app_window_targeter_unittest.cc",

        # Get these compiling on Mac - see http://crbug.com/657883.
        "../browser/ui/views/crypto_module_password_dialog_view_unittest.cc",
        "../browser/ui/views/desktop_capture/desktop_media_picker_views_unittest.cc",
        "../browser/ui/views/first_run_bubble_unittest.cc",
      ]
    }
  }
  if (!is_android && use_nss_certs) {
    sources += [ "../common/net/x509_certificate_model_unittest.cc" ]
  }
  if (enable_supervised_users) {
    sources += [
      "../browser/content_settings/content_settings_supervised_provider_unittest.cc",
      "../browser/supervised_user/child_accounts/family_info_fetcher_unittest.cc",
      "../browser/supervised_user/child_accounts/permission_request_creator_apiary_unittest.cc",
      "../browser/supervised_user/experimental/safe_search_url_reporter_unittest.cc",
      "../browser/supervised_user/supervised_user_bookmarks_handler_unittest.cc",
      "../browser/supervised_user/supervised_user_pref_store_unittest.cc",
      "../browser/supervised_user/supervised_user_service_unittest.cc",
      "../browser/supervised_user/supervised_user_settings_service_unittest.cc",
      "../browser/supervised_user/supervised_user_url_filter_unittest.cc",
      "../browser/supervised_user/supervised_user_whitelist_service_unittest.cc",
    ]
  }
  if (enable_supervised_users && !is_android) {
    # TODO(bauerb): This code should be removed (on desktop) once child account
    # support has launched (https://crbug.com/505443).
    sources += [
      "../browser/supervised_user/legacy/supervised_user_pref_mapping_service_unittest.cc",
      "../browser/supervised_user/legacy/supervised_user_refresh_token_fetcher_unittest.cc",
      "../browser/supervised_user/legacy/supervised_user_registration_utility_unittest.cc",
      "../browser/supervised_user/legacy/supervised_user_shared_settings_service_unittest.cc",
      "../browser/supervised_user/legacy/supervised_user_shared_settings_update_unittest.cc",
      "../browser/supervised_user/legacy/supervised_user_sync_service_unittest.cc",
    ]
  }
  if (enable_supervised_users && !is_android && !is_chromeos) {
    sources += [
      "../browser/supervised_user/supervised_user_creation_policy_handler_unittest.cc",
      "../browser/ui/webui/signin/signin_supervised_user_import_handler_unittest.cc",
    ]
  }
  if (safe_browsing_mode == 1 && enable_extensions) {
    sources += [ "../browser/extensions/blacklist_unittest.cc" ]
  }
  if (enable_app_list) {
    sources += [
      "../browser/apps/drive/drive_app_mapping_unittest.cc",
      "../browser/ui/app_list/app_context_menu_unittest.cc",
      "../browser/ui/app_list/app_list_service_unittest.cc",
      "../browser/ui/app_list/app_list_syncable_service_unittest.cc",
      "../browser/ui/app_list/app_list_test_util.cc",
      "../browser/ui/app_list/app_list_test_util.h",
      "../browser/ui/app_list/arc/arc_app_test.cc",
      "../browser/ui/app_list/arc/arc_app_test.h",
      "../browser/ui/app_list/arc/arc_app_unittest.cc",
      "../browser/ui/app_list/extension_app_model_builder_unittest.cc",
      "../browser/ui/app_list/profile_loader_unittest.cc",
      "../browser/ui/app_list/search/app_search_provider_unittest.cc",
      "../browser/ui/app_list/search/history_unittest.cc",
      "../browser/ui/app_list/search/launcher_search/launcher_search_icon_image_loader_unittest.cc",
      "../browser/ui/app_list/search/omnibox_result_unittest.cc",
      "../browser/ui/app_list/search/suggestions/suggestions_search_provider_unittest.cc",
      "../browser/ui/app_list/speech_auth_helper_unittest.cc",
      "../browser/ui/app_list/test/fake_profile.cc",
      "../browser/ui/app_list/test/fake_profile.h",
      "../browser/ui/app_list/test/fake_profile_store.cc",
      "../browser/ui/app_list/test/fake_profile_store.h",
      "../browser/ui/views/apps/app_info_dialog/app_info_dialog_ash_unittest.cc",
    ]
    deps += [
      "//components/arc:arc_test_support",
      "//ui/app_list:test_support",
    ]
  }
}

if (safe_browsing_mode == 1 && is_mac) {
  action("mac_safe_browsing_test_data") {
    script = "//build/gn_run_binary.py"
    shell_script = "//chrome/test/data/safe_browsing/dmg/generate_test_data.sh"
    inputs = [
      script,
      shell_script,
      "data/safe_browsing/dmg/make_hfs.sh",
      "data/safe_browsing/mach_o/executablefat",
      "data/safe_browsing/mach_o/lib64.dylib",
    ]
    _output_dir = "$root_out_dir/test_data/chrome/safe_browsing_dmg"
    outputs = [
      "$_output_dir/dmg_UDBZ_GPTSPUD.dmg",
      "$_output_dir/dmg_UDBZ_NONE.dmg",
      "$_output_dir/dmg_UDBZ_SPUD.dmg",
      "$_output_dir/dmg_UDCO_GPTSPUD.dmg",
      "$_output_dir/dmg_UDCO_NONE.dmg",
      "$_output_dir/dmg_UDCO_SPUD.dmg",
      "$_output_dir/dmg_UDRO_GPTSPUD.dmg",
      "$_output_dir/dmg_UDRO_NONE.dmg",
      "$_output_dir/dmg_UDRO_SPUD.dmg",
      "$_output_dir/dmg_UDRW_GPTSPUD.dmg",
      "$_output_dir/dmg_UDRW_NONE.dmg",
      "$_output_dir/dmg_UDRW_SPUD.dmg",
      "$_output_dir/dmg_UDSP_GPTSPUD.sparseimage",
      "$_output_dir/dmg_UDSP_NONE.sparseimage",
      "$_output_dir/dmg_UDSP_SPUD.sparseimage",
      "$_output_dir/dmg_UDTO_GPTSPUD.cdr",
      "$_output_dir/dmg_UDTO_NONE.cdr",
      "$_output_dir/dmg_UDTO_SPUD.cdr",
      "$_output_dir/dmg_UDZO_GPTSPUD.dmg",
      "$_output_dir/dmg_UDZO_NONE.dmg",
      "$_output_dir/dmg_UDZO_SPUD.dmg",
      "$_output_dir/dmg_UFBI_GPTSPUD.dmg",
      "$_output_dir/dmg_UFBI_NONE.dmg",
      "$_output_dir/dmg_UFBI_SPUD.dmg",
      "$_output_dir/hfs_plus.img",
      "$_output_dir/hfsx_case_sensitive.img",
      "$_output_dir/mach_o_in_dmg.dmg",
    ]
    args = [
      rebase_path(shell_script, root_out_dir),
      rebase_path(_output_dir, root_out_dir),
    ]
  }
}

if (!is_android) {
  # TODO(609855): Make this compile on Android and run on the bots.
  test("chrome_app_unittests") {
    sources = [
      "../app/chrome_watcher_client_unittest_win.cc",
      "../app/chrome_watcher_client_win.cc",
      "../app/chrome_watcher_command_line_win.cc",
      "../app/chrome_watcher_command_line_win_unittest.cc",
      "../app/resources/resources_unittest.cc",
      "../common/crash_keys.cc",
      "../common/crash_keys.h",
    ]
    deps = [
      ":test_support",
      "//base/test:run_all_unittests",
      "//base/test:test_support",
      "//breakpad:client",
      "//chrome/browser",
      "//chrome/child",
      "//components/crash/core/common",
      "//components/flags_ui:switches",
    ]
  }
}

if (!is_android && !is_chromecast) {
  test("performance_browser_tests") {
    sources = [
      "../app/chrome_version.rc.version",
      "../browser/extensions/api/cast_streaming/performance_test.cc",
      "../browser/extensions/api/tab_capture/tab_capture_performancetest.cc",
      "../browser/extensions/browsertest_util.cc",
      "../browser/extensions/chrome_extension_test_notification_observer.cc",
      "../browser/extensions/chrome_extension_test_notification_observer.h",
      "../browser/extensions/extension_apitest.cc",
      "../browser/extensions/extension_browsertest.cc",
      "../browser/extensions/updater/extension_cache_fake.cc",
      "../browser/extensions/updater/extension_cache_fake.h",
      "base/browser_perf_tests_main.cc",
      "base/chrome_render_view_test.cc",
      "base/chrome_render_view_test.h",
      "perf/mach_ports_performancetest.cc",
      "perf/url_parse_perftest.cc",
    ]

    defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]

    deps = [
      ":test_support",
      ":test_support_ui",
      "//base",
      "//base:i18n",
      "//base/test:test_support",
      "//chrome/app:chrome_dll_resources",
      "//chrome/browser",
      "//chrome/renderer",
      "//components/about_handler",
      "//components/autofill/content/renderer:test_support",
      "//components/spellcheck:build_features",
      "//content/test:test_support",
      "//extensions/features",
      "//media/cast:test_support",
      "//testing/gmock",
      "//testing/gtest",
      "//testing/perf",
    ]

    data = [
      "//chrome/test/data/extensions/api_test/",

      # Needed for isolate script to execute.
      "//testing/scripts/common.py",
      "//testing/xvfb.py",
      "//testing/scripts/run_gtest_perf_test.py",
      "//tools/perf/generate_legacy_perf_dashboard_json.py",
    ]

    if (is_win) {
      configs -= [ "//build/config/win:default_incremental_linking" ]
      configs +=
          [ "//build/config/win:default_large_module_incremental_linking" ]
      deps += [ "//chrome/app:command_ids" ]
    } else {
      sources -= [ "../app/chrome_version.rc.version" ]
    }
    if (!is_mac) {
      sources -= [ "perf/mach_ports_performancetest.cc" ]
    }

    if (is_linux || is_win) {
      data += [
        "$root_out_dir/chrome_100_percent.pak",
        "$root_out_dir/chrome_200_percent.pak",
        "$root_out_dir/locales/en-US.pak",
        "$root_out_dir/locales/fr.pak",
        "$root_out_dir/resources.pak",
      ]
    }

    # This target should not require the Chrome executable to run.
    assert_no_deps = [ "//chrome" ]
  }
}

static_library("test_support_unit") {
  testonly = true
  sources = [
    "base/run_all_unittests.cc",
  ]

  public_deps = [
    ":test_support",
    "//base",
    "//chrome:resources",
    "//chrome:strings",
    "//chrome/browser",
    "//chrome/common",
    "//mojo/edk/test:test_support",
  ]

  if (is_win) {
    deps = [
      "//chrome/install_static/test:test_support",
    ]
  }
}

if (is_android) {
  android_library("unit_tests_java") {
    java_files = [ "android/unit_tests_apk/src/org/chromium/chrome/unit_tests_apk/ChromeNativeTestApplication.java" ]
    deps = [
      "//base:base_java",
      "//chrome/android:app_hooks_java",
      "//chrome/android:chrome_java",
      "//content/public/android:content_java",
    ]
  }
}

if (is_chromeos && enable_package_mash_services) {
  # TODO(GYP_GONE): Delete this after we've converted everything to GN.
  # The _run targets exist only for compatibility w/ GYP.
  group("mash_browser_tests_run") {
    testonly = true
    deps = [
      ":mash_browser_tests",
    ]
  }

  group("mash_browser_tests") {
    testonly = true
    data_deps = [
      ":browser_tests",
      "//chrome/app/mash:mash_service_overrides",
    ]
  }

  service_manifest("mash_browser_tests_manifest") {
    name = "mash_browser_tests"

    source = "base/mash_browser_tests_manifest.json"
    packaged_services = [
      "//ash/autoclick/mus:manifest",
      "//ash/mus:manifest",
      "//ash/touch_hud/mus:manifest",
      "//mash/catalog_viewer:manifest",
      "//mash/quick_launch:manifest",
      "//mash/session:manifest",
      "//mash/task_viewer:manifest",
      "//services/ui:manifest",
      "//services/ui/ime/test_ime_driver:manifest",
    ]

    if (is_linux && !is_android) {
      packaged_services += [ "//components/font_service:manifest" ]
    }
  }

  catalog("mash_browser_tests_catalog") {
    testonly = true
    embedded_services = [ ":mash_browser_tests_manifest" ]
    standalone_services = [ "//services/tracing:manifest" ]
    catalog_deps = [ "//chrome/app:catalog_for_mash" ]
  }

  copy("mash_browser_tests_catalog_copy") {
    testonly = true
    sources = get_target_outputs(":mash_browser_tests_catalog")
    outputs = [
      "${root_out_dir}/mash_browser_tests_catalog.json",
    ]
    deps = [
      ":mash_browser_tests_catalog",
    ]
  }
}

if (is_win) {
  loadable_module("conflicts_dll") {
    testonly = true
    sources = [
      "conflicts/conflicts_dll.cc",
    ]
  }
}
