# 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("src") {
  testonly = true
  deps = [
    ":tests",
    "cobalt",
    "connectivity",
    "developer",
    "graphics",
    "identity",
    "ledger",
    "lib",
    "media",
    "modular",
    "recovery",
    "speech",
    "sys",
    "testing",
    "ui",
    "virtualization",
  ]
}

group("tests") {
  testonly = true

  data_deps = [
    "cobalt:tests",
    "connectivity:tests",
    "developer:tests",
    "fuzzing:tests",
    "identity:tests",
    "ledger:tests",
    "lib:tests",
    "media:tests",
    "modular:tests",
    "recovery:tests",
    "speech:tests",
    "testing:tests",
    "ui:tests",
  ]
}
