# 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("profile") {
  output_name = "profile-test"
  configs += [ "//build/unification/config:zircon-migrated" ]
  sources = [ "profile.cc" ]
  deps = [
    "//sdk/fidl/fuchsia.scheduler:fuchsia.scheduler_c",
    "//sdk/lib/fdio",
    "//zircon/public/lib/zx",
    "//zircon/public/lib/zxtest",
    "//zircon/system/ulib/profile",
  ]
}

fuchsia_unittest_package("profile-test-pkg") {
  manifest = "meta/profile-test.cmx"
  deps = [ ":profile" ]
}

group("tests") {
  testonly = true
  deps = [ ":profile-test-pkg" ]
}
