| # Copyright 2026 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. | |
| load("//build/bazel/rules/idk:idk_cc_source_library.bzl", "idk_cc_source_library") | |
| package(default_applicable_licenses = ["//:license"]) | |
| # Simplifies and supports deriving test fixtures with an event loop that | |
| # supports multi-process tests, and can exercise FIDL. | |
| idk_cc_source_library( | |
| name = "cpp", | |
| srcs = ["real_loop.cc"], | |
| hdrs = ["include/lib/async-loop/testing/cpp/real_loop.h"], | |
| api_area = "Kernel", | |
| category = "partner", | |
| idk_name = "async-loop-testing", | |
| public_configs = [ | |
| ":include", | |
| ], | |
| stable = True, | |
| target_compatible_with = ["@platforms//os:fuchsia"], | |
| # Widely used in GN, so GN visibility stays open via raw_overwrite; Bazel | |
| # visibility is limited to actual Bazel dependents. | |
| visibility = [ | |
| "//src/lib/testing/loop_fixture:__pkg__", | |
| ], # @bazel2gn:raw_overwrite:[ "//*" ] | |
| deps = [ | |
| # <real_loop.h> has #include <lib/async/cpp/executor.h> | |
| "//sdk/lib/async:async-cpp", | |
| # <real_loop.h> has #include <lib/async-loop/cpp/loop.h> | |
| "//sdk/lib/async-loop:async-loop-cpp", | |
| # <real_loop.h> has #include <lib/async-loop/default.h> | |
| "//sdk/lib/async-loop:async-loop-default", | |
| # <real_loop.h> has #include <lib/fit/function.h> | |
| "//sdk/lib/fit", | |
| # <real_loop.h> has #include <lib/zx/time.h> | |
| "//zircon/system/ulib/zx", | |
| ], | |
| ) |