# Copyright 2018 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/package.gni")
import("//build/test/test_package.gni")
import("//build/testing/environments.gni")

test_package("tests") {
  package_name = "bluetooth-tests"

  deps = [
    "integration:bt-integration-tests",
    "//src/connectivity/bluetooth/core/bt-host:tests",
    "//src/connectivity/bluetooth/lib/fidl:tests",
    "//src/lib/syslog/rust:syslog",
  ]

  tests = [
    {
      name = "bt-host-unittests"
      environments = basic_envs
    },
    {
      name = "bt_integration_tests"
      dest = "bt-integration-tests"
      environments = [
        {
          dimensions = {
            device_type = "QEMU"
          }
          tags = [ "flaky" ]  # fxbug.dev/49570
        },
      ]
    },
    {
      name = "bt-lib-fidl-unittests"
      environments = basic_envs
    },
  ]
}
