# Copyright 2019 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")

rustc_library("fuchsia-async-testloop") {
  name = "fuchsia_async_testloop"
  edition = "2021"
  deps = [
    "//src/lib/fuchsia-async",
    "//src/lib/zircon/rust:fuchsia-zircon",
    "//third_party/rust_crates:futures",
    "//third_party/rust_crates:pin-utils",
  ]

  sources = [
    "src/ffi.rs",
    "src/lib.rs",
    "src/subloop.rs",
  ]
}

group("tests") {
  public_deps = [ "test:fuchsia-async-testloop-tests" ]

  testonly = true
}
