# Copyright 2018 The Chromium 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("//chromecast/chromecast.gni")
import("//testing/test.gni")

cast_source_set("util") {
  sources = [
    "bluetooth_util.cc",
    "bluetooth_util.h",
  ]

  deps = [
    "//base",
    "//chromecast/public",
  ]
}

test("cast_bluetooth_unittests") {
  sources = [
    "bluetooth_util_test.cc",
  ]

  deps = [
    ":util",
    "//base",
    "//base/test:run_all_unittests",
    "//base/test:test_support",
    "//chromecast/device/bluetooth/le:unittests",
    "//testing/gmock:gmock",
    "//testing/gtest:gtest",
  ]
}
