910e62b5创建于 1月15日历史提交
# Copyright 2024 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/chromeos/ui_mode.gni")

assert(is_chromeos)

static_library("floating_sso") {
  sources = [
    "cookie_sync_conversions.cc",
    "cookie_sync_conversions.h",
    "cookie_sync_data_type_controller.cc",
    "cookie_sync_data_type_controller.h",
    "floating_sso_service.cc",
    "floating_sso_service.h",
    "floating_sso_service_factory.cc",
    "floating_sso_service_factory.h",
    "floating_sso_sync_bridge.cc",
    "floating_sso_sync_bridge.h",
  ]

  deps = [
    "//ash/constants",
    "//base",
    "//chrome/browser/ash/floating_workspace:utils",
    "//chrome/browser/profiles:profile",
    "//chrome/browser/sync:factories",
    "//chrome/common",
    "//chromeos/ash/components/browser_context_helper",
    "//chromeos/ash/components/channel",
    "//chromeos/constants",
    "//components/google/core/common",
    "//components/keyed_service/core",
    "//components/prefs",
    "//components/sync/service",
    "//components/url_matcher",
    "//components/user_manager",
    "//content/public/browser",
    "//net",
  ]

  allow_circular_includes_from =
      [ "//chrome/browser/ash/floating_workspace:utils" ]
}

static_library("test_support") {
  testonly = true

  sources = [
    "cookie_sync_test_util.cc",
    "cookie_sync_test_util.h",
  ]

  deps = [
    ":floating_sso",
    "//base",
    "//components/sync/protocol",
    "//components/sync/protocol:util",
  ]

  # TODO(crbug.com/40031409): Fix code that adds exit-time destructors and
  # enable the diagnostic by removing this line.
  configs += [ "//build/config/compiler:no_exit_time_destructors" ]
}

source_set("unit_tests") {
  testonly = true

  sources = [
    "cookie_sync_conversions_unittest.cc",
    "floating_sso_sync_bridge_unittest.cc",
  ]

  deps = [
    ":floating_sso",
    ":test_support",
    "//base/test:test_support",
    "//components/sync:test_support",
    "//components/sync/service",
    "//net",
    "//testing/gtest",
    "//url",
  ]
}

source_set("browser_tests") {
  testonly = true

  defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]

  sources = [ "floating_sso_browsertest.cc" ]

  deps = [
    ":floating_sso",
    ":test_support",
    "//base/test:test_support",
    "//chrome/browser/ash/floating_workspace:utils",
    "//chrome/browser/policy:test_support",
    "//chrome/browser/profiles:profile",
    "//chrome/browser/sync",
    "//chrome/browser/ui",
    "//chrome/test:test_support",
    "//chromeos/constants",
    "//components/keyed_service/content",
    "//components/keyed_service/core",
    "//content/test:test_support",
  ]
}