# 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/zircon/zx_library.gni")

zx_library("async-testing") {
  sdk = "source"
  sdk_publishable = "partner"
  sdk_headers = [
    "lib/async-testing/dispatcher_stub.h",
    "lib/async-testing/test_loop.h",
    "lib/async-testing/test_loop_dispatcher.h",
    "lib/async-testing/test_subloop.h",
  ]
  sources = [
    "dispatcher_stub.cc",
    "test_loop.cc",
    "test_loop_dispatcher.cc",
  ]
  public_deps = [
    # <lib/async-testing/dispatcher.h_stub> has #include <lib/async/dispatcher.h>.
    "//zircon/system/ulib/async",

    # <lib/async-testing/dispatcher.h_stub> has #include <lib/zx/time.h>.
    "//zircon/system/ulib/zx",
  ]
  deps = [
    "//sdk/lib/fdio",
    "//zircon/system/ulib/async",
    "//zircon/system/ulib/async:async-cpp",
    "//zircon/system/ulib/async-default",
    "//zircon/system/ulib/zx",
  ]
}

group("tests") {
  testonly = true
  deps = [ "test" ]
}
