# 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")

executable("bin") {
  testonly = true

  output_name = "coding_tables_tests"

  sources = [ "coding_tables_tests.cc" ]

  deps = [
    ":fidl.test.example.codingtables_llcpp",
    "//sdk/lib/fdio",
    "//zircon/public/lib/fbl",
    "//zircon/public/lib/fidl",
    "//zircon/public/lib/zx",
    "//zircon/public/lib/zxtest",
  ]
}

fidl("fidl.test.example.codingtablesdeps") {
  visibility = [ ":*" ]
  sources = [ "coding_tables_deps.test.fidl" ]
}

fidl("fidl.test.example.codingtables") {
  visibility = [ ":*" ]
  sources = [ "coding_tables.test.fidl" ]
  public_deps = [ ":fidl.test.example.codingtablesdeps" ]
}
