# 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/test.gni")
import("//build/test/test_package.gni")

source_set("key_util") {
  sources = [
    "key_util.cc",
    "key_util.h",
  ]
  public_deps = [
    "//sdk/fidl/fuchsia.ui.input",
    "//sdk/fidl/fuchsia.ui.input2",
    "//zircon/public/lib/hid",
    "//zircon/system/ulib/hid-parser",
  ]
}

test("key_util_test") {
  sources = [ "key_util_unittest.cc" ]
  deps = [
    "//garnet/public/lib/gtest",
    "//src/lib/fxl/test:gtest_main",
    "//src/ui/lib/key_util",
  ]
}

unittest_package("test") {
  package_name = "key_util_test"
  deps = [ ":key_util_test" ]
  tests = [
    {
      name = "key_util_test"
      environments = basic_envs
    },
  ]
}
