# 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("developer") {
  testonly = true
  deps = [
    ":tests",
    "debug",
    "ffx",
    "forensics",
    "fuchsia-criterion",
    "lib",
    "remote-control",
  ]
}

group("tests") {
  testonly = true

  deps = [
    "adb:tests",
    "build_info:tests",
    "debug:tests",
    "fastboot:tests",
    "ffx:package_deps_for_host_tests",
    "ffx:tests",
    "forensics:tests",
    "fuchsia-criterion:tests",
    "hw_info:tests",
    "lib:tests",
    "memory:tests",
    "process_explorer:tests",
    "remote-control:tests",
    "sshd-host:tests",
    "sys_info:tests",
  ]
}

group("e2e_tests") {
  testonly = true
  deps = [ "ffx:e2e_tests" ]
}
