# Copyright 2020 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/chromeos/ui_mode.gni") import("//build/config/ui.gni") import("//third_party/protobuf/proto_library.gni") assert(is_chromeos) component("account_manager_core") { sources = [ "account.cc", "account.h", "account_addition_options.h", "account_addition_result.cc", "account_addition_result.h", "account_manager_facade.cc", "account_manager_facade.h", "account_manager_facade_impl.cc", "account_manager_facade_impl.h", "account_manager_util.cc", "account_manager_util.h", "chromeos/access_token_fetcher.cc", "chromeos/access_token_fetcher.h", "chromeos/account_manager.cc", "chromeos/account_manager.h", "chromeos/account_manager_facade_factory.h", "chromeos/account_manager_mojo_service.cc", "chromeos/account_manager_mojo_service.h", "chromeos/account_manager_ui.cc", "chromeos/account_manager_ui.h", "pref_names.cc", "pref_names.h", ] deps = [ "//base", "//build:chromeos_buildflags", "//chromeos/crosapi/mojom", "//components/prefs:prefs", "//google_apis:google_apis", "//mojo/public/cpp/bindings", "//services/network/public/cpp:cpp", ] if (is_chromeos_lacros) { sources += [ "chromeos/account_manager_facade_factory_lacros.cc" ] deps += [ "//chromeos/lacros:lacros" ] } public_deps = [ ":account_manager_proto", "//third_party/abseil-cpp:absl", ] defines = [ "IS_ACCOUNT_MANAGER_CORE_IMPL" ] } source_set("test_support") { testonly = true sources = [ "account_manager_test_util.cc", "account_manager_test_util.h", "chromeos/fake_account_manager_ui.cc", "chromeos/fake_account_manager_ui.h", "mock_account_manager_facade.cc", "mock_account_manager_facade.h", ] public_deps = [ "//base", "//google_apis", "//testing/gmock", ] deps = [ ":account_manager_core" ] } source_set("unit_tests") { testonly = true sources = [ "account_manager_facade_impl_unittest.cc", "chromeos/account_manager_mojo_service_unittest.cc", "chromeos/account_manager_unittest.cc", ] deps = [ ":account_manager_core", ":test_support", "//base/test:test_support", "//chromeos/crosapi/mojom", "//components/prefs:test_support", "//google_apis:google_apis", "//services/network:test_support", "//services/network/public/cpp:cpp", "//testing/gtest", ] } proto_library("account_manager_proto") { visibility = [ ":*" ] sources = [ "chromeos/tokens.proto" ] proto_out_dir = "components/account_manager_core/chromeos" }