# Copyright 2022 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("tests") {
  testonly = true
  deps = [
    "compat:tests",
    "compat-globals:tests",
    "compat-node-group:tests",
    "compat-runtime:tests",
    "compat-runtime-v1:tests",
    "ddk-init-test:tests",
    "devfs_exporter:tests",
    "driver-runner-integration:tests",
    "dynamic_offers:tests",
    "init-child-first:tests",
    "inspect:tests",
    "interop:tests",
    "node_group:tests",
    "rebind:tests",
    "reload-driver:tests",
    "replace-driver:tests",
    "restart-on-crash:tests",
    "runtime-dispatcher:tests",
    "runtime-protocol:tests",
    "services:tests",
  ]
}

group("drivers") {
  testonly = true
  deps = [
    "compat:drivers",
    "compat-globals:drivers",
    "compat-node-group:drivers",
    "compat-runtime:drivers",
    "compat-runtime-v1:drivers",
    "ddk-init-test:drivers",
    "devfs_exporter:root",
    "dynamic_offers:leaf",
    "dynamic_offers:root",
    "init-child-first:drivers",
    "inspect:root",
    "interop:leaf",
    "interop:root",
    "interop:v1",
    "node_group:leaf",
    "node_group:root",
    "rebind:drivers",
    "reload-driver:drivers",
    "replace-driver:drivers",
    "restart-on-crash:drivers",
    "runtime-dispatcher:leaf",
    "runtime-dispatcher:root",
    "runtime-protocol:leaf",
    "runtime-protocol:root",
    "services:root",
  ]
}
