# 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",
    "cmd",
    "debug",
    "development-bridge",
    "feedback",
    "fuchsia-criterion",
    "kcounter_inspect",
    "remote-control",
    "tracing",
  ]
}

group("tests") {
  testonly = true

  deps = [
    "//src/developer/cmd:tests",
    "//src/developer/debug:tests",
    "//src/developer/development-bridge:tests",
    "//src/developer/exception_broker/tests",
    "//src/developer/feedback: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/tracing:tests",
  ]
}
