# Copyright 2020 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("//build/test.gni")
import("//tools/fidl/measure-tape/measure_tape.gni")

test("hlcpp-tests") {
  sources = [ "hlcpp_test.cc" ]

  deps = [
    ":measure_tape_for_toplevelunion",
    "//src/lib/fxl/test:gtest_main",
    "//src/lib/testing/loop_fixture",
    "//tools/fidl/measure-tape/testdata:measuretape_hlcpp",
  ]
}

measure_tape("measure_tape_for_toplevelunion") {
  testonly = true
  target_binding = "hlcpp"
  target_types = [
    "test.measuretape/TopLevelUnion",
    "test.measuretape/AnotherTopLevelThing",
  ]
  fidls = [ "//tools/fidl/measure-tape/testdata:measuretape" ]
}
