chromium/components/password_manager/content/browser/BUILD.gn

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

static_library("browser") {
  sources = [
    "bad_message.cc",
    "bad_message.h",
    "content_credential_manager.cc",
    "content_credential_manager.h",
    "content_password_manager_driver.cc",
    "content_password_manager_driver.h",
    "content_password_manager_driver_factory.cc",
    "content_password_manager_driver_factory.h",
    "form_meta_data.cc",
    "form_meta_data.h",
    "form_submission_tracker_util.cc",
    "form_submission_tracker_util.h",
    "password_manager_log_router_factory.cc",
    "password_manager_log_router_factory.h",
    "password_requirements_service_factory.cc",
    "password_requirements_service_factory.h",
  ]

  if (is_android) {
    sources += [
      "keyboard_replacing_surface_visibility_controller.h",
      "keyboard_replacing_surface_visibility_controller_impl.cc",
      "keyboard_replacing_surface_visibility_controller_impl.h",
    ]
  }

  public_deps = [ "//components/autofill/content/common/mojom" ]

  deps = [
    "//base",
    "//components/autofill/content/browser",
    "//components/autofill/core/common",
    "//components/keyed_service/content",
    "//components/password_manager/core/browser",
    "//components/password_manager/core/browser/features:password_features",
    "//components/password_manager/core/common",
    "//components/prefs",
    "//components/user_prefs",
    "//content/public/browser",
    "//content/public/common",
    "//mojo/public/cpp/system",
    "//net",
  ]

  configs += [ "//build/config/compiler:wexit_time_destructors" ]
}

source_set("test_support") {
  testonly = true
  deps = [ "//base" ]
  public_deps = [ ":browser" ]
  sources = [
    "content_password_manager_driver_factory_test_api.cc",
    "content_password_manager_driver_factory_test_api.h",
  ]

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

    deps += [ "//testing/gmock" ]
  }
}

source_set("unit_tests") {
  testonly = true
  sources = [
    "content_password_manager_driver_factory_unittest.cc",
    "content_password_manager_driver_unittest.cc",
    "form_submission_tracker_util_unittest.cc",
    "password_manager_log_router_factory_unittest.cc",
  ]

  if (is_android) {
    sources +=
        [ "keyboard_replacing_surface_visibility_controller_impl_unittest.cc" ]
  }

  deps = [
    ":browser",
    ":test_support",
    "//components/autofill/core/browser:test_support",
    "//components/password_manager/core/browser:test_support",
    "//components/prefs:test_support",
    "//components/safe_browsing:buildflags",
    "//content/test:test_support",
    "//testing/gmock",
    "//testing/gtest",
  ]
}