# Copyright 2021 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/components.gni")

group("echo") {
  testonly = true
  deps = [
    ":echo-example",
    ":tests",
  ]
}

group("tests") {
  testonly = true
  deps = [
    "cpp:tests",
    "rust:tests",
  ]
}

fuchsia_package("echo-example") {
  deps = [
    "cpp:cpp-component",
    "rust:rust-component",
  ]
}
