# Copyright 2020 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/rust/rustc_library.gni")
import("//src/sys/build/components.gni")

rustc_library("async-utils") {
  name = "async_utils"
  edition = "2018"
  with_unit_tests = true
  deps = [
    "//src/lib/fidl/rust/fidl",
    "//third_party/rust_crates:futures",
    "//third_party/rust_crates:parking_lot",
    "//third_party/rust_crates:pin-utils",
    "//third_party/rust_crates:slab",
  ]

  test_deps = [
    "//src/lib/fuchsia-async",
    "//third_party/rust_crates:anyhow",
    "//third_party/rust_crates:futures-test",
    "//third_party/rust_crates:matches",
    "//third_party/rust_crates:proptest",
  ]

  sources = [
    "src/channel.rs",
    "src/event.rs",
    "src/fold.rs",
    "src/futures.rs",
    "src/hanging_get/client.rs",
    "src/hanging_get/mod.rs",
    "src/lib.rs",
    "src/mutex_ticket.rs",
    "src/stream.rs",
    "src/stream/future_map.rs",
    "src/stream/stream_map.rs",
    "src/traits.rs",
  ]
}

fuchsia_unittest_package("async-utils-tests") {
  deps = [ ":async-utils_test" ]
}

group("tests") {
  testonly = true
  deps = [ ":async-utils-tests" ]
}
