# 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",
    "build_info:build-info-service",
    "debug",
    "ffx",
    "forensics",
    "fuchsia-criterion",
    "kcounter_inspect",
    "remote-control",
    "tracing",
  ]
}

group("tests") {
  testonly = true

  deps = [
    "//src/developer/build_info:tests",
    "//src/developer/debug:tests",
    "//src/developer/ffx:tests",
    "//src/developer/forensics:tests",
    "//src/developer/fuchsia-criterion:fuchsia-criterion-tests",
    "//src/developer/kcounter_inspect/tests:kcounter_inspect_tests",
    "//src/developer/remote-control:tests",
    "//src/developer/shell:tests",
    "//src/developer/system_monitor:tests",
    "//src/developer/tracing:tests",
  ]
}
