# Copyright 2025 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/components.gni")
import("//build/test.gni")
import("//build/testing/cc_test_executable.gni")

assert(is_fuchsia, "test helpers only valid for Fuchsia tests")

source_set("runtime_dir_helper") {
  testonly = true
  sources = [
    "runtime_dir_helper.cc",
    "runtime_dir_helper.h",
  ]

  public_deps = [
    "//sdk/fidl/fuchsia.io:fuchsia.io_cpp",
    "//sdk/lib/async-loop:async-loop-cpp",
    "//sdk/lib/async-loop:async-loop-default",
    "//sdk/lib/syslog/cpp",
    "//src/storage/lib/vfs/cpp",
    "//third_party/googletest:gtest",
    "//zircon/system/ulib/fbl",
  ]
}
