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

source_set("private_ai") {
  sources = [
    "private_ai_service_factory.cc",
    "private_ai_service_factory.h",
  ]
  public_deps = [
    "//chrome/browser:browser_public_dependencies",
    "//components/private_ai",
    "//components/private_ai/phosphor",
  ]
  deps = [
    "//base",
    "//chrome/browser:browser_process",
    "//chrome/browser/glic/suggestions",
    "//chrome/browser/profiles:profile",
    "//chrome/browser/signin",
    "//components/keyed_service/core",
    "//components/optimization_guide/core",
    "//components/prefs",
    "//components/private_ai:proto",
    "//components/private_ai/common",
    "//components/private_ai/content",
    "//components/signin/public/base",
    "//components/signin/public/identity_manager",
    "//content/public/browser",
    "//google_apis",
  ]
}

source_set("unit_tests") {
  testonly = true
  sources = [ "private_ai_service_factory_unittest.cc" ]
  deps = [
    ":private_ai",
    "//base/test:test_support",
    "//chrome/browser/profiles:test_support",
    "//chrome/test:test_support",
    "//components/private_ai:features",
    "//components/private_ai/phosphor:test_support",
    "//components/signin/public/identity_manager:test_support",
    "//content/test:test_support",
    "//testing/gmock",
    "//testing/gtest",
  ]
}

source_set("browser_tests") {
  testonly = true
  defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
  sources = [
    "connection_factory_impl_browsertest.cc",
    "private_ai_service_browsertest.cc",
    "secure_session_async_impl_browsertest.cc",
    "websocket_client_browsertest.cc",
  ]

  deps = [
    ":private_ai",
    "//base",
    "//base/test:test_support",
    "//chrome/browser",
    "//chrome/browser/ui/omnibox",
    "//chrome/test:test_support",
    "//components/private_ai",
    "//components/private_ai:proto",
    "//components/private_ai:proto_extras",
    "//components/private_ai:testing",
    "//components/private_ai/common",
    "//components/private_ai/content",
    "//components/private_ai/crypto",
    "//components/private_ai/crypto:test_support",
    "//components/private_ai/phosphor:test_support",
    "//content/test:test_support",
    "//net/third_party/quiche:blind_sign_auth",
    "//testing/gmock",
    "//third_party/oak:oak_proto",
    "//third_party/oak:oak_proto_extras",
    "//third_party/oak:oak_proto_test_extras",
  ]
}
