# 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.

# DO NOT MANUALLY EDIT!
# Generated by //scripts/sdk/gn/generate.py.


import("../../build/fuchsia_sdk_pkg.gni")

fuchsia_sdk_pkg("async-testing") {
  sources = [
    "dispatcher_stub.cc",
    "test_loop.cc",
    "test_loop_dispatcher.cc",
    "include/lib/async-testing/dispatcher_stub.h",
    "include/lib/async-testing/test_loop.h",
    "include/lib/async-testing/test_loop_dispatcher.h",
    "include/lib/async-testing/test_subloop.h",
  ]
  include_dirs = [ "include" ]
  public_deps = [
    "../async",
    "../async-cpp",
    "../async-default",
    "../fdio",
    "../zx",
  ]
}

group("all"){
  deps = [
    ":async-testing",
  ]
}
