# 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.
#
# WARNING: This file was machine-generated from previous json files and
# will eventually be deleted.

group("voila") {
  testonly = true
  public_deps = [
    "//peridot/bin/voila",
    "//src/ledger/cloud_provider_in_memory/bin",
  ]
}

group("cloud_provider_memory_diff") {
  testonly = true
  public_deps = [
    "//src/ledger/cloud_provider_memory_diff",
  ]
}

group("all") {
  testonly = true
  public_deps = [
    "//peridot/packages/tools:cloud_provider_memory_diff",
    "//peridot/packages/tools:voila",
  ]
}
