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

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

  if (host_os == "linux") {
    deps += [ ":syscalls_test($host_toolchain)" ]
  }
}

if (host_os == "linux") {
  test("syscalls_test") {
    sources = [
      "restart_read_test.cc",
      "terminal_test.cc",
      "trivial_test.cc",
    ]
    deps = [
      "//src/lib/fxl/test:gtest_main",
      "//third_party/googletest:gtest",
    ]
  }
}
