# 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.

source_set("actor") {
  sources = [
    "glic_actor_journal_handler.cc",
    "glic_actor_journal_handler.h",
    "glic_actor_policy_checker.cc",
    "glic_actor_policy_checker.h",
    "glic_actor_task_manager.cc",
    "glic_actor_task_manager.h",
  ]

  deps = [
    "//base",
    "//chrome/browser:browser_process",
    "//chrome/browser/actor",
    "//chrome/browser/actor/ui",
    "//chrome/browser/feedback",
    "//chrome/browser/glic",
    "//chrome/browser/glic:glic_metrics",
    "//chrome/browser/glic:mojo_bindings",
    "//chrome/browser/signin",
    "//chrome/common:actor_webui_mojom",
    "//components/actor/public/mojom:mojo_bindings",
    "//components/enterprise/buildflags",
    "//components/enterprise/connectors/core",
    "//components/feedback/content",
    "//components/tabs:public",
    "//components/variations/service",
    "//mojo/public/mojom/base:protobuf_support",
  ]

  public_deps = [
    "//chrome/browser/profiles:profile",
    "//components/actor/core:journal",
  ]
}

source_set("browser_tests") {
  testonly = true
  defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]

  sources = [
    "glic_actor_attempt_otp_filling_browsertest.cc",
    "glic_actor_task_lifecycle_browsertest.cc",
    "new_glic_actor_functional_browsertest.h",
  ]

  deps = [
    ":actor",
    ":test_support",
    "//chrome/browser/actor",
    "//chrome/browser/actor:test_support",
    "//chrome/browser/affiliations",
    "//chrome/browser/autofill",
    "//chrome/browser/glic",
    "//chrome/browser/glic:glic_metrics",
    "//chrome/browser/glic/test_support",
    "//chrome/common:actor_webui_mojom",
    "//chrome/test:test_support",
    "//components/affiliations/core/browser:test_support",
  ]

  if (!is_android) {
    sources += [
      "glic_actor_action_execution_browsertest.cc",
      "glic_actor_context_fetch_browsertest.cc",
      "glic_actor_functional_browsertest.cc",
      "glic_actor_functional_browsertest.h",
      "glic_actor_metrics_functional_browsertest.cc",
      "glic_actor_tab_functional_browsertest.cc",
    ]
  }
}

source_set("test_support") {
  sources = [
    "glic_actor_test_util.cc",
    "glic_actor_test_util.h",
  ]

  public_deps = [
    "//base",
    "//components/actor/core",
    "//components/optimization_guide/proto:optimization_guide_proto",
  ]
}
