# Copyright 2023 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("fidl_fuchsia_net_filter_ext") {
  with_unit_tests = true
  edition = "2021"
  deps = [
    "//sdk/fidl/fuchsia.hardware.network:fuchsia.hardware.network_rust",
    "//sdk/fidl/fuchsia.net:fuchsia.net_rust",
    "//sdk/fidl/fuchsia.net.filter:fuchsia.net.filter_rust",
    "//sdk/fidl/fuchsia.net.interfaces:fuchsia.net.interfaces_rust",
    "//src/connectivity/lib/net-types",
    "//src/lib/async-utils",
    "//src/lib/fidl/rust/fidl",
    "//src/lib/network/fidl_fuchsia_net_ext",
    "//third_party/rust_crates:futures",
    "//third_party/rust_crates:thiserror",
  ]
  test_deps = [
    "//src/connectivity/lib/net-declare",
    "//src/lib/const-unwrap",
    "//src/lib/fuchsia-async",
    "//third_party/rust_crates:assert_matches",
    "//third_party/rust_crates:test-case",
  ]
  sources = [ "src/lib.rs" ]
  configs -= [ "//build/config/rust/lints:allow_unused_results" ]
}

fuchsia_unittest_package("fidl-fuchsia-net-filter-ext-tests") {
  deps = [ ":fidl_fuchsia_net_filter_ext_test" ]
}

group("tests") {
  testonly = true
  public_deps = [ ":fidl-fuchsia-net-filter-ext-tests" ]
}
