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

group("tests") {
  testonly = true

  deps = [ ":mpmc_tests" ]
}

rustc_library("mpmc") {
  name = "mpmc"
  edition = "2018"
  deps = [
    "//third_party/rust_crates:crossbeam",
    "//third_party/rust_crates:futures",
  ]

  sources = [ "src/lib.rs" ]
}

rustc_test("mpmc_lib_test") {
  edition = "2018"
  source_root = "src/test.rs"
  deps = [
    ":mpmc",
    "//src/lib/fuchsia-async",
    "//third_party/rust_crates:futures",
  ]

  sources = [ "src/test.rs" ]
}

fuchsia_unittest_package("mpmc_tests") {
  deps = [ ":mpmc_lib_test" ]
}
