# Copyright 2024 The Fuchsia 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/components.gni")
import("//build/rust/rustc_library.gni")

rustc_library("detect-stall") {
  version = "0.1.0"
  edition = "2021"
  with_unit_tests = true

  deps = [
    "//src/lib/fidl/rust/fidl",
    "//src/lib/fuchsia-async",
    "//src/lib/zircon/rust:fuchsia-zircon",
    "//third_party/rust_crates:futures",
  ]

  test_deps = [
    "//sdk/fidl/fuchsia.io:fuchsia.io_rust",
    "//src/lib/fuchsia",
    "//src/lib/fuchsia-component/tests:fuchsia.component.client.test_rust",
    "//third_party/rust_crates:assert_matches",
  ]

  sources = [
    "src/lib.rs",
    "src/stream.rs",
  ]

  # TODO(https://fxbug.dev/326626515): Avoid widely taking on users until we
  # get some experience stopping some components.
  visibility = [
    ":*",
    "//src/connectivity/policy/http-client:*",
    "//src/lib/fuchsia-component:*",
    "//src/sys/component_manager/tests/*",
    "//src/sys/pkg/bin/system-update-committer:*",
  ]
}

fuchsia_unittest_package("detect-stall-unittests") {
  deps = [ ":detect-stall_test" ]
}

group("tests") {
  testonly = true
  deps = [ ":detect-stall-unittests" ]
}
