# 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("//ppapi/features/features.gni")
import("//remoting/remoting_enable.gni")
import("//services/service_manager/public/service_manifest.gni")
import("//testing/test.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/common:test_support",
    "//chrome/renderer:test_support",
    "//components/bookmarks/test",
    "//components/gcm_driver:test_support",
    "//components/gcm_driver/instance_id:test_support",
    "//components/history/core/test:test",
    "//components/metrics:test_support",
    "//components/omnibox/browser:test_support",
    "//components/password_manager/core/browser:test_support",
    "//components/pref_registry:test_support",
    "//components/prefs:test_support",
    "//components/rappor:test_support",
    "//components/search_engines: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/zoom:test_support",
    "//content/public/app:both",
    "//content/test:test_support",
    "//extensions/features",
    "//net",
    "//net:test_support",
    "//printing/features",
    "//skia",
    "//sql",
    "//sql:test_support",
    "//testing/gmock",
    "//testing/gtest",
    "//third_party/zlib",
    "//ui/gfx:test_support",
    "//ui/message_center:test_support",
  ]

  if (!is_ios) {
    public_deps += [
      "//chrome/child",
      "//chrome/renderer",
      "//chrome/utility",
      "//components/autofill/core/browser:test_support",
      "//components/captive_portal:test_support",
      "//components/gcm_driver/crypto:test_support",
      "//components/guest_view/browser:test_support",
      "//components/infobars/core",
      "//components/network_time:network_time_test_support",
      "//components/offline_pages:test_support",
      "//components/sessions:test_support",
      "//components/web_resource:test_support",
      "//content/public/child",
      "//content/public/common",
      "//content/public/renderer",
      "//content/public/utility",
      "//google_apis:test_support",
      "//ipc:test_support",
      "//media:test_support",
      "//sql:test_support",
      "//third_party/leveldatabase",
      "//ui/base",
      "//ui/events:events_base",
      "//ui/gl",
    ]
  }
  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 += [
      "//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:install_static_util",
      "//components/crash/content/app",
      "//third_party/wtl",
    ]
  }
  if (is_chromeos) {
    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 (enable_plugins && enable_pdf) {
    public_deps += [ "//pdf" ]
  }

  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 += [
      "//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_test_run") {
  testonly = true
  deps = [
    ":telemetry_gpu_test",
  ]
}

group("telemetry_gpu_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_telemetry_benchmark_as_googletest.py",

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

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

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

# 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 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 = [
      "base/in_process_browser_test.cc",
      "base/in_process_browser_test.h",
      "base/in_process_browser_test_mac.cc",
      "base/ui_test_utils.cc",
      "base/ui_test_utils.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/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/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/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/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/",
      "//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/pyftpdlib/",
      "//third_party/pywebsocket/",
      "//third_party/tlslite/",
      "//third_party/zlib/google/test/data/",
      "//tools/metrics/histograms/histograms.xml",
      "$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 = [
      ":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/page_action_image_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/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",
          "../browser/ui/views/website_settings/website_settings_popup_view_interactive_uitest.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" ]
            if (use_gtk3) {
              configs += [ "//build/config/linux/gtk3:gtk3_internal_config" ]
            } else {
              configs += [ "//build/config/linux/gtk2:gtk2_internal_config" ]
            }
          }
        }
      }
      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) {
        # TODO(ekaramad): These tests are activated for aura and mac only. They
        # should be moved to 'interactive_ui_tests' sources for all platforms
        # once https://crbug.com/578168 is fixed.
        sources += [ "//chrome/browser/renderer_host/site_per_process_text_input_browsertest.cc" ]
        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/speech_monitor.cc",
        "../browser/chromeos/accessibility/speech_monitor.h",
        "../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",
        "//chromeos",
      ]

      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",
        ]
      }
    }

    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" ]
      data_deps += [ "//tools/xdisplaycheck" ]
    }

    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/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",
      ]
      if (is_chromeos) {
        sources -= [
          # Use only the _chromeos version on ChromeOS.
          "base/view_event_test_platform_part_default.cc",
        ]
      }
      deps += [ "//ash/test:interactive_ui_test_support" ]
    }

    if (enable_notifications) {
      sources += [
        "../browser/extensions/api/notifications/notifications_apitest.cc",
        "../browser/notifications/message_center_notifications_browsertest.cc",
      ]

      # Non-ChromeOS notifications tests (ChromeOS does not use cross-platform
      # panels).
      if (!is_chromeos) {
        sources += [
          "../browser/notifications/notification_interactive_uitest.cc",
          "../browser/notifications/platform_notification_service_interactive_uitest.cc",
        ]
      }

      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",
        ]
      }
    }  # enable_notifications

    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/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/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/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("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/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_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/plugins_browsertest.js",
      "data/webui/polymer_browser_test_base.js",
      "data/webui/print_preview.js",
      "data/webui/sandboxstatus_browsertest.js",
      "data/webui/settings/advanced_page_browsertest.js",
      "data/webui/settings/animation_browsertest.js",
      "data/webui/settings/basic_page_browsertest.js",
      "data/webui/settings/bluetooth_page_browsertest_chromeos.js",
      "data/webui/settings/cr_settings_browsertest.js",
      "data/webui/settings/easy_unlock_browsertest_chromeos.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_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/text_defaults_browsertest.js",
      "data/webui/webui_resource_async_browsertest.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",
        "data/webui/settings/bluetooth_page_browsertest_chromeos.js",
        "data/webui/settings/easy_unlock_browsertest_chromeos.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",
    ]
  }

  # 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",
    ]
  }
}

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

  deps = [
    ":test_support",
  ]

  if (is_chromeos) {
    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",
      "//services/service_manager/background:lib",
    ]

    data_deps = [
      ":mash_browser_tests_manifest",
      "//chrome/app:service_manifests",
      "//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",
    "//printing/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_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",
      ]
    }
  }

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

    enable_multidex = true
  } else {
    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/apps/window_controls_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/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_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/collected_cookies_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/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/notification_provider/notification_provider_apitest.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/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/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/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/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_perf_browsertest.cc",
      "../browser/media/webrtc/webrtc_simulcast_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/page_load_metrics/observers/https_engagement_metrics/https_engagement_page_load_metrics_observer_browsertest.cc",
      "../browser/page_load_metrics/page_load_metrics_browsertest.cc",
      "../browser/password_manager/credential_manager_browsertest.cc",
      "../browser/password_manager/password_manager_browsertest.cc",
      "../browser/payments/site_per_process_payments_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/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/services/gcm/fake_gcm_profile_service.cc",
      "../browser/services/gcm/fake_gcm_profile_service.h",
      "../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/spellchecker/spellcheck_service_browsertest.cc",
      "../browser/ssl/captive_portal_blocking_page_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/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/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/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/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/website_settings/mock_permission_prompt.cc",
      "../browser/ui/website_settings/mock_permission_prompt.h",
      "../browser/ui/website_settings/mock_permission_prompt_factory.cc",
      "../browser/ui/website_settings/mock_permission_prompt_factory.h",
      "../browser/ui/website_settings/permission_bubble_browser_test_util.cc",
      "../browser/ui/website_settings/permission_bubble_browser_test_util.h",
      "../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/web_ui_test_handler.cc",
      "../browser/ui/webui/web_ui_test_handler.h",
      "../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/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/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/test_chrome_web_ui_controller_factory_browsertest.cc",
      "base/tracing_browsertest.cc",
      "base/web_ui_browser_test.cc",
      "base/web_ui_browser_test.h",
      "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/browser/resources:extension_resource_demo",
      "//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/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/libjingle",
      "//third_party/webrtc/modules/desktop_capture",
      "//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/",
      "//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/resources/extension/",
      "$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_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/chrome_extension_test_notification_observer.cc",
        "../browser/extensions/chrome_extension_test_notification_observer.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",
      ]

      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/shelf_browsertest.cc",
        "../browser/ui/ash/system_tray_delegate_chromeos_browsertest_chromeos.cc",
        "../browser/ui/ash/system_tray_tray_cast_browsertest_media_router_chromeos.cc",
        "../browser/ui/ash/volume_controller_browsertest_chromeos.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 (use_aura || toolkit_views) {
      deps += [ "//ui/events:test_support" ]
    }
    if (toolkit_views) {
      sources += [
        "../browser/ui/global_error/global_error_service_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/select_file_dialog_extension_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.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/media_router/media_router_ui_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 (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_auth_service_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/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/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/enterprise_enrollment_helper_mock.cc",
        "../browser/chromeos/login/enrollment/enterprise_enrollment_helper_mock.h",
        "../browser/chromeos/login/enrollment/mock_auto_enrollment_check_screen.cc",
        "../browser/chromeos/login/enrollment/mock_auto_enrollment_check_screen.h",
        "../browser/chromeos/login/enrollment/mock_enrollment_screen.cc",
        "../browser/chromeos/login/enrollment/mock_enrollment_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",

        # TODO(nkostylev) Re-enable ResourceLoaderBrowserTest.
        #"browser/chromeos/login/resource_loader_browsertest.cc",
        "../browser/chromeos/login/proxy_auth_dialog_browsertest.cc",
        "../browser/chromeos/login/reset_browsertest.cc",
        "../browser/chromeos/login/saml/saml_browsertest.cc",
        "../browser/chromeos/login/screens/hid_detection_screen_browsertest.cc",
        "../browser/chromeos/login/screens/mock_base_screen_delegate.cc",
        "../browser/chromeos/login/screens/mock_base_screen_delegate.h",
        "../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/app_window_waiter.cc",
        "../browser/chromeos/login/test/app_window_waiter.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/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",

        # inline login UI is disabled on chromeos
        "../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 += [
        "//chromeos/ime:gencode",
        "//components/arc:arc_test_support",
        "//components/user_manager:test_support",
        "//ui/login:resources",
      ]

      if (use_dbus) {
        deps += [ "//dbus:test_support" ]
      }
    } else {
      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 (use_ash) {
        sources -= [ "../browser/ui/ash/keyboard_controller_browsertest.cc" ]
      }
      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 (enable_web_speech) {
      sources += [
        "../browser/speech/extension_api/tts_extension_apitest.cc",
        "../browser/speech/speech_recognition_browsertest.cc",
      ]
    }
    if (safe_browsing_mode == 1) {
      sources += [
        "../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_perf_browsertest.cc",
        "../browser/media/webrtc/webrtc_simulcast_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_chromeos && use_ash) {
      sources -= [
        # On Windows and Linux, we currently don't support enough of the
        # ash environment to run these unit tests.
        #
        # TODO: enable these on windows and linux.
        "../browser/ui/ash/accelerator_commands_browsertest.cc",
        "../browser/ui/ash/accelerator_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/shelf_browsertest.cc",
      ]

      if (toolkit_views) {
        sources -= [ "../browser/ui/views/frame/browser_non_client_frame_view_ash_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/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/applescript/browsercrapplication+applescript_test.mm",
          "../browser/ui/cocoa/applescript/window_applescript_test.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/zoom_decoration_browsertest.mm",
          "../browser/ui/cocoa/omnibox/omnibox_view_mac_browsertest.mm",
          "../browser/ui/cocoa/passwords/passwords_bubble_browsertest.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",
          "../browser/ui/cocoa/website_settings/permission_bubble_cocoa_browser_test.mm",
        ]
      }
    }
    if (is_mac || is_win) {
      sources += [
        "../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/app_list_service_views_browsertest.cc",
        "../browser/ui/app_list/search/webstore/webstore_provider_browsertest.cc",
        "../browser/ui/app_list/speech_recognizer_browsertest.cc",
      ]
      if (is_mac) {
        # This assumes the AppList is views-based, but Mac only links
        # browser parts for the Cocoa implementation.
        sources -=
            [ "../browser/ui/app_list/app_list_service_views_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/extensions/api/gcd_private/gcd_private_apitest.cc",
        "../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_x11) {
      deps += [ "//tools/xdisplaycheck" ]
    }

    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_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_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/",
    ]

    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_wifi_credentials_sync_test.cc",
        "../browser/sync/test/integration/two_client_arc_package_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) {
    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/google_now/background_unittest.gtestjs",
    "../browser/resources/google_now/cards_unittest.gtestjs",
    "../browser/resources/google_now/utility_unittest.gtestjs",
    "../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/google_now/background.js",
    "../browser/resources/google_now/background_test_util.js",
    "../browser/resources/google_now/cards.js",
    "../browser/resources/google_now/common_test_util.js",
    "../browser/resources/google_now/utility.js",
    "../browser/resources/google_now/utility_test_util.js",
    "../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" ]
    extra_js_files +=
        [ "../browser/resources/chromeos/braille_ime/braille_ime.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/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",

    # TODO(newt): move this to test_support_unit?
    "../browser/android/chrome_backup_agent_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/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_test_util.cc",
    "../browser/browsing_data/browsing_data_remover_test_util.h",
    "../browser/browsing_data/browsing_data_remover_unittest.cc",
    "../browser/browsing_data/browsing_data_service_worker_helper_unittest.cc",
    "../browser/browsing_data/cookies_tree_model_unittest.cc",
    "../browser/browsing_data/origin_filter_builder_unittest.cc",
    "../browser/browsing_data/registrable_domain_filter_builder_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/character_encoding_unittest.cc",
    "../browser/chrome_browser_application_mac_unittest.mm",
    "../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/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/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/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_eviction_policy_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/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/image_holder_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/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/metrics/time_ticks_experiment_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/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/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/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/service_worker_page_load_metrics_observer_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/delegation_tracker_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/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/policy_path_parser_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/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/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/services/gcm/fake_gcm_profile_service.cc",
    "../browser/services/gcm/fake_gcm_profile_service.h",
    "../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/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/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/website_settings/mock_permission_prompt.cc",
    "../browser/ui/website_settings/mock_permission_prompt.h",
    "../browser/ui/website_settings/mock_permission_prompt_factory.cc",
    "../browser/ui/website_settings/mock_permission_prompt_factory.h",
    "../browser/ui/website_settings/website_settings_unittest.cc",
    "../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/win/chrome_elf_init_unittest.cc",
    "../browser/win/enumerate_modules_model_unittest.cc",
    "../common/chrome_content_client_unittest.cc",
    "../common/chrome_paths_unittest.cc",
    "../common/component_flash_hint_file_linux_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",
    "../common/variations/child_process_field_trial_syncer_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 = [
    "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" ]
  }

  defines = []

  deps = [
    # NOTE: New dependencies should generally be added in the OS!="ios"
    # dependencies block below, rather than here.
    # Unit tests should only depend on:
    # 1) everything that the chrome binaries depend on:
    "//chrome:browser_dependencies",
    "//chrome:child_dependencies",

    # 2) test-specific support libraries:
    ":test_support",
    ":test_support_unit",
    "//base/test:test_support",
    "//components/browser_sync:test_support",
    "//components/content_settings/core/test:test_support",
    "//components/resources",
    "//components/sync:test_support_driver",
    "//components/sync:test_support_model",
    "//components/sync_sessions:test_support",
    "//content/public/app:both",
    "//content/test:test_support",
    "//crypto:platform",
    "//crypto:test_support",
    "//net",
    "//net:test_support",
    "//testing/gmock",
    "//testing/gtest",

    # 3) anything tests directly depend on
    "//chrome:resources",
    "//chrome:strings",
    "//components/component_updater:test_support",
    "//components/safe_browsing_db:test_database_manager",
    "//components/spellcheck:build_features",
    "//components/subresource_filter/core/browser:test_support",
    "//components/version_info:generate_version_info",
    "//courgette:courgette_lib",
    "//extensions/features",
    "//google_apis",
    "//ppapi/features",
    "//skia",
    "//third_party/cacheinvalidation",
    "//third_party/icu",
    "//third_party/libxml",
    "//ui/base:test_support",
    "//ui/display:test_support",
    "//ui/gfx:test_support",
    "//ui/resources",
  ]
  data_deps = []

  if (!is_ios) {
    deps += [
      "//chrome/browser/ntp_snippets:test_support",
      "//components/autofill/content/renderer: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/safe_browsing_db",
      "//components/safe_json:test_support",
      "//components/strings",
      "//components/webdata_services:test_support",
      "//content/app/resources",
      "//device/base:mocks",
      "//device/bluetooth:mocks",
      "//device/usb:test_support",
      "//gpu:test_support",
      "//media:test_support",
      "//third_party/leveldatabase",
      "//third_party/libaddressinput",
      "//third_party/libjingle",
      "//third_party/libphonenumber",
      "//third_party/webrtc/modules/desktop_capture",
      "//ui/gl",
      "//v8",
    ]
  }

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

  if (is_android) {
    # Offline pages are currently only on Android.
    sources += [
      "../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/request_coordinator_factory_unittest.cc",
      "../browser/android/offline_pages/test_offline_page_model_builder.cc",
      "../browser/android/offline_pages/test_offline_page_model_builder.h",
    ]
    sources -= [ "../browser/policy/policy_path_parser_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:test_support",
      "//v8:v8_external_startup_data_assets",
    ]
    deps -= [ "//third_party/libaddressinput" ]

    android_manifest =
        "//chrome/test/android/unit_tests_apk/AndroidManifest.xml"
    enable_multidex = true
  } else {
    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",
      "../browser/importer/firefox_profile_lock_unittest.cc",
      "../browser/importer/profile_writer_unittest.cc",
      "../browser/media/combined_desktop_media_list_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",
      "../browser/net/firefox_proxy_settings_unittest.cc",
      "../browser/permissions/permission_request_manager_unittest.cc",
      "../browser/platform_util_unittest.cc",
      "../browser/power/process_power_collector_unittest.cc",
      "../browser/power_usage_monitor/power_usage_monitor_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",

      # GCMDriverAndroid is not yet implemented.
      "../browser/services/gcm/gcm_profile_service_unittest.cc",
      "../browser/sessions/persistent_tab_restore_service_unittest.cc",
      "../browser/sync/sessions/sessions_sync_manager_unittest.cc",
      "../browser/sync/sync_ui_util_unittest.cc",  # Sync setup uses native ui.
      "../browser/translate/translate_manager_render_view_host_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/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/mock_component_toolbar_actions_factory.cc",
      "../browser/ui/toolbar/mock_component_toolbar_actions_factory.h",
      "../browser/ui/toolbar/mock_media_router_action_controller.cc",
      "../browser/ui/toolbar/mock_media_router_action_controller.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/website_settings/permission_menu_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/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_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/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" ]
  }

  if (!is_ios && !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/country_combobox_model_unittest.cc",
      "../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/google_now/",
      "$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_ios || is_chromeos) {
    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/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_handlers/api_file_handler_util_unittest.cc",
      "../browser/extensions/api/file_handlers/directory_util_unittest.cc",
      "../browser/extensions/api/file_handlers/mime_util_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/component_migration_helper_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/cast_remoting_sender_unittest.cc",
      "../browser/media/cast_transport_host_filter_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/notifications/notification_conversion_helper_unittest.cc",
      "../browser/renderer_context_menu/context_menu_content_type_unittest.cc",
      "../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/signin/mutable_profile_oauth2_token_service_delegate_unittest.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_icon_set_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_sandboxed_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/gcd_private/privet_v3_context_getter_unittest.cc",
        "../browser/extensions/api/gcd_private/privet_v3_session_unittest.cc",
        "../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 (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_application_menu_item_model_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_state_delegate_chromeos_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/common/strings",
      "//ash/resources",
      "//ash/test:ash_with_aura_test_support",
      "//ash/test:test_support_with_content",
    ]

    # We eventually want to compile both in Win Aura builds, see
    # http://crbug.com/155545.
    if (!is_win) {
      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_ios && !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) {
    if (use_gtk3) {
      deps += [ "//chrome/browser/ui/libgtkui:libgtk3ui" ]
    } else {
      deps += [ "//chrome/browser/ui/libgtkui:libgtk2ui" ]
    }
  }

  if (enable_task_manager) {
    sources += [
      "../browser/task_manager/providers/browser_process_task_unittest.cc",
      "../browser/task_manager/providers/child_process_task_unittest.cc",
      "../browser/task_manager/sampling/shared_sampler_unittest_win.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",
    ]
  }
  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 (enable_web_speech) {
    sources += [
      "../browser/speech/extension_api/extension_manifests_tts_unittest.cc",
      "../browser/speech/tts_controller_unittest.cc",
    ]
  }
  if (enable_notifications) {
    sources += [
      "../browser/notifications/desktop_notification_profile_util_unittest.cc",
      "../browser/notifications/message_center_notifications_unittest.cc",
      "../browser/notifications/message_center_settings_controller_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_notification_center_mac.h",
      "../browser/notifications/stub_notification_center_mac.mm",
    ]
    if (is_android) {
      sources -= [
        # Android does not use the Message Center notification system.
        "../browser/notifications/message_center_notifications_unittest.cc",
        "../browser/notifications/message_center_settings_controller_unittest.cc",
      ]
    }
  }

  if (safe_browsing_mode > 0) {
    sources += [
      "../browser/safe_browsing/ping_manager_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/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_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/ui/webui/print_preview/extension_printer_handler_unittest.cc",
      "../browser/ui/webui/print_preview/print_preview_ui_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",
    ]
  }

  if (enable_media_router) {
    sources += [
      "../browser/media/cast_remoting_connector_unittest.cc",
      "../browser/media/router/create_presentation_connection_request_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/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_type_converters_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/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",
      "../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 += [
      "base/ash_test_environment_chrome.cc",
      "base/ash_test_environment_chrome.h",
    ]
  }
  if (use_x11) {
    deps += [ "//ui/events/devices" ]
    data_deps += [ "//tools/xdisplaycheck" ]
  } 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",
    ]

    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/applescript/apple_event_util_unittest.mm",
        "../browser/ui/cocoa/applescript/bookmark_applescript_utils_unittest.h",
        "../browser/ui/cocoa/applescript/bookmark_applescript_utils_unittest.mm",
        "../browser/ui/cocoa/applescript/bookmark_folder_applescript_unittest.mm",
        "../browser/ui/cocoa/applescript/bookmark_item_applescript_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_utils_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/cocoa_profile_test.h",
        "../browser/ui/cocoa/cocoa_profile_test.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_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/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_deprecated_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/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/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/avatar_menu_bubble_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/run_loop_testing_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_test_helper.h",
        "../browser/ui/cocoa/styled_text_field_test_helper.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/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/website_settings/permission_bubble_controller_unittest.mm",
        "../browser/ui/cocoa/website_settings/permission_selector_button_unittest.mm",
        "../browser/ui/cocoa/website_settings/website_settings_bubble_controller_unittest.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_android) {
    sources += [
      "../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",
    ]
  }
  if (!is_mac && !is_ios) {
    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/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",
    ]

    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 || is_ios) {
    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/cross_device_promo_unittest.cc",
      "../browser/signin/signin_global_error_unittest.cc",
      "../browser/sync/sync_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 (enable_themes) {
    sources += [
      "../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/ui/webui/theme_source_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/website_settings/website_settings_popup_view_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/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/chooser_content_view_unittest.cc",
        "../browser/ui/views/confirm_bubble_views_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",
      ]
    }
    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/desktop_media_picker_views_deprecated_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 && !is_ios) {
    # 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/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_positioner_unittest.cc",
      "../browser/ui/app_list/app_list_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/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/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/app_list/test/fast_show_pickler_unittest.cc",
      "../browser/ui/views/app_list/linux/app_list_linux_unittest.cc",
    ]
    deps += [ "//ui/app_list:test_support" ]
  }
  if (enable_app_list && is_chromeos) {
    sources += [
      "../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/search/launcher_search/launcher_search_icon_image_loader_unittest.cc",
      "../browser/ui/views/apps/app_info_dialog/app_info_dialog_ash_unittest.cc",
    ]
    sources -=
        [ "../browser/ui/views/app_list/linux/app_list_linux_unittest.cc" ]
    deps += [ "//components/arc:arc_test_support" ]
  }
  if (enable_plugins && !enable_plugin_installation) {
    sources -= [ "../browser/plugins/plugin_installer_unittest.cc" ]
  }
}

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",
      "//third_party/kasko:kasko_features",
    ]
  }
}

if (!is_android && !is_ios && !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 = [
      # 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" ]
    }

    # 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_android && use_ash) {
    sources += [
      "../browser/ui/ash/launcher/test/launcher_application_menu_item_model_test_api.cc",
      "../browser/ui/ash/launcher/test/launcher_application_menu_item_model_test_api.h",
      "../browser/ui/ash/launcher/test/test_chrome_launcher_app_menu_item.cc",
      "../browser/ui/ash/launcher/test/test_chrome_launcher_app_menu_item.h",
    ]
  }
}

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:chrome_java",
      "//content/public/android:content_java",
    ]
  }
}

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

    source = "base/mash_browser_tests_manifest.json"
    deps = [
      "//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",
    ]
    packaged_services = [
      "accessibility_autoclick",
      "ash",
      "catalog_viewer",
      "mash_session",
      "quick_launch",
      "task_viewer",
      "test_ime_driver",
      "touch_hud",
      "ui",
    ]

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