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

source_set("small_tests") {
  testonly = true

  sources = [
    "mutex_leak.cc",
    # Enable this when it is compilable
    # "thread_test.cc",
  ]
  deps = [
    "//third_party/googletest:gtest",
  ]
}

source_set("small_tests_broken") {
  testonly = true

  sources = [
    "cond_timedwait.cc",

    # Disable this to run other broken tests as this kills gtests
    "cond_wait_test.cc",
  ]
  deps = [
    "//third_party/googletest:gtest",
  ]

  # TODO(fxbug.dev/58162): delete the below and fix compiler warnings
  configs += [ "//build/config:Wno-conversion" ]
}

source_set("large_tests_broken") {
  testonly = true

  sources = [
    "many_threads_sequential.cc",
  ]
  deps = [
    "//third_party/googletest:gtest",
  ]
}
