# Copyright 2018 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/test/test_package.gni")
import("//build/testing/environments.gni")

rustc_library("wlan-sme") {
  name = "wlan_sme"
  version = "0.1.0"
  with_unit_tests = true
  edition = "2018"

  deps = [
    "//garnet/lib/wlan/fidl:sme-rustc",
    "//garnet/public/rust/fuchsia-inspect",
    "//garnet/public/rust/fuchsia-inspect-contrib",
    "//garnet/public/rust/fuchsia-zircon",
    "//sdk/fidl/fuchsia.wlan.common:fuchsia.wlan.common-rustc",
    "//sdk/fidl/fuchsia.wlan.mesh:fuchsia.wlan.mesh-rustc",
    "//sdk/fidl/fuchsia.wlan.mlme:fuchsia.wlan.mlme-rustc",
    "//src/connectivity/wlan/lib/common/rust:wlan-common",
    "//src/connectivity/wlan/lib/eapol",
    "//src/connectivity/wlan/lib/inspect:wlan-inspect",
    "//src/connectivity/wlan/lib/rsn:wlan-rsn",
    "//src/connectivity/wlan/lib/wep_deprecated",
    "//third_party/rust_crates:bytes",
    "//third_party/rust_crates:failure",
    "//third_party/rust_crates:futures-preview",
    "//third_party/rust_crates:hex",
    "//third_party/rust_crates:log",
    "//third_party/rust_crates:nom",
    "//third_party/rust_crates:parking_lot",
    "//zircon/public/fidl/fuchsia-inspect:fuchsia-inspect-rustc",
  ]
}

test_package("wlan-sme-tests") {
  deps = [
    ":wlan-sme_test",
  ]

  tests = [
    {
      name = "wlan_sme_lib_test"
      environments = basic_envs
    },
  ]
}
