# 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.

import("//build/fidl/fidl.gni")
import("//tools/fidl/measure-tape/measure_tape.gni")

fidl("fuchsia.test") {
  sdk_category = "internal"

  sources = [ "suite.fidl" ]
  public_deps = [ "//zircon/vdso/zx" ]
}

measure_tape("hlcpp_measure_tape_for_case") {
  fidls = [ "//sdk/fidl/fuchsia.test" ]
  target_type = "fuchsia.test/Case"
  target_binding = "hlcpp"
}

measure_tape("rust_measure_tape_for_case") {
  fidls = [ "//sdk/fidl/fuchsia.test" ]
  target_type = "fuchsia.test/Case"
  target_binding = "rust"
}
