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

import("//build/package.gni")

group("devices") {
  deps = [
    "bin",
    "bind",
    "lib",
    "tools",
  ]
}

group("tests") {
  testonly = true
  deps = [
    "bin:tests",
    "bind/debugger:tests",
    "block:tests",
    "board:tests",
    "bus:tests",
    "clock:tests",
    "cpu:tests",
    "gpio:tests",
    "i2c:tests",
    "lib:tests",
    "light-sensor:tests",
    "mcu:tests",
    "misc:tests",
    "ml:tests",
    "nand:tests",
    "pci:tests",
    "power:tests",
    "pwm:tests",
    "ram:tests",
    "registers:tests",
    "rtc:tests",
    "scpi:tests",
    "securemem:tests",
    "serial:tests",
    "shareddma:tests",
    "spi:tests",
    "sysmem:tests",
    "tee:tests",
    "temperature:tests",
    "testing:tests",
    "tests",
    "tests:tests",
    "thermal:tests",
    "tools:tests",
    "usb:tests",
    "usb/tests",
  ]
}
