# 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 = "partner"
  stable = true
  sdk_area = "Unknown"

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

  enable_hlcpp = true
}

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

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