# 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("lib") {
  testonly = true
  deps = [
    "async-generator",
    "blobfs",
    "bounded-node",
    "epoch",
    "event-queue",
    "far:lib",
    "fidl-fuchsia-amber-ext",
    "fidl-fuchsia-update-ext",
    "fidl-fuchsia-update-installer-ext",
    "forced-fdr",
    "fuchsia-hash",
    "fuchsia-merkle",
    "fuchsia-pkg",
    "fuchsia-pkg-testing",
    "isolated-ota",
    "isolated-swd",
    "omaha-client",
    "pkgfs",
    "repo",
    "system-image",
    "tuf",
    "update-package",
    "version",
  ]
}

group("tests") {
  testonly = true
  deps = [
    "async-generator:tests",
    "blobfs:tests",
    "bounded-node:tests",
    "epoch:tests",
    "event-queue:tests",
    "far:tests",
    "fidl-fuchsia-amber-ext:tests",
    "fidl-fuchsia-update-ext:tests",
    "fidl-fuchsia-update-installer-ext:tests",
    "forced-fdr:tests",
    "fuchsia-hash:tests",
    "fuchsia-merkle:tests",
    "fuchsia-pkg:tests",
    "fuchsia-pkg-testing:tests",
    "isolated-swd:tests",
    "merkle:tests",
    "omaha-client:tests",
    "pkgfs:tests",
    "repo:tests",
    "sse:tests",
    "system-image:tests",
    "tuf:tests",
    "update-package:tests",
    "version:tests",
  ]
}
