# 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")

group("tests") {
  testonly = true
  deps = [ ":memfs-tests" ]
}

test("memfs-test") {
  sources = [ "memfs-tests.cc" ]
  deps = [
    "//sdk/lib/fdio",
    "//zircon/public/lib/async",
    "//zircon/public/lib/async-cpp",
    "//zircon/public/lib/sync",
    "//zircon/public/lib/zircon-internal",
    "//zircon/public/lib/zxtest",
    "//zircon/system/ulib/async-default",
    "//zircon/system/ulib/async-loop",
    "//zircon/system/ulib/async-loop:async-loop-cpp",
    "//zircon/system/ulib/async-loop:async-loop-default",
    "//zircon/system/ulib/fs",
    "//zircon/system/ulib/memfs",
    "//zircon/system/ulib/memfs:memfs-cpp",
  ]
}

fuchsia_unittest_package("memfs-tests") {
  manifest = "memfs-unit-test.cmx"
  deps = [ ":memfs-test" ]
}
