# 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.

group("connectivity") {
  testonly = true
  deps = [
    ":tests",
    "bluetooth",
    "location",
    "lowpan",
    "openthread",
    "overnet",
    "ppp",
    "telephony",
    "weave",
    "wlan",
  ]
}

group("tools") {
  testonly = true
  public_deps = [
    "//src/connectivity/management/network_manager_cli",
    "//src/connectivity/network/dhcpd-cli",
    "//src/connectivity/network/netdump",
    "//src/connectivity/network/netstack:tools",
    "//src/connectivity/wlan:tools",
  ]
}

group("tests") {
  testonly = true
  deps = [
    "bluetooth:tests",
    "ethernet:tests",
    "lib:tests",
    "location:tests",
    "lowpan:tests",
    "management:tests",
    "network:tests",
    "openthread:tests",
    "overnet:tests",
    "ppp:tests",
    "weave:tests",
    "wlan:tests",
  ]
}
