# 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("//src/sys/build/fuchsia_unittest_package.gni")

test("register-state") {
  output_name = "register-state-test"
  configs += [ "//build/unification/config:zircon-migrated" ]
  sources = [ "register-state-test.cc" ]
  deps = [
    "//sdk/lib/fdio",
    "//zircon/public/lib/zxtest",
  ]
}

fuchsia_unittest_package("register-state-test-pkg") {
  package_name = "register-state-test"
  deps = [ ":register-state" ]
}

group("tests") {
  testonly = true
  if (target_cpu == "x64") {
    deps = [ ":register-state-test-pkg" ]
  }
}
