blob: 4b3b856d0726ffc7ce9d91a38e1093ba667bf909 [file] [log] [blame]
# Copyright 2017 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/bazel/bazel_fuchsia_test_package.gni")
import("//build/fuzz.gni")
import("//build_overrides/pigweed.gni")
import("$dir_pw_fuzzer/fuzzer.gni")
import("$dir_pw_unit_test/test.gni")
dir_public_gap = "../public/pw_bluetooth_sapphire/internal/host/gap"
pw_source_set("definitions") {
public = [ "$dir_public_gap/gap.h" ]
sources = [ "gap.cc" ]
deps = [ "//src/connectivity/bluetooth/core/bt-host/common" ]
}
pw_source_set("gap") {
public = [
"$dir_public_gap/adapter.h",
"$dir_public_gap/adapter_state.h",
"$dir_public_gap/android_vendor_capabilities.h",
"$dir_public_gap/bonding_data.h",
"$dir_public_gap/bredr_connection.h",
"$dir_public_gap/bredr_connection_manager.h",
"$dir_public_gap/bredr_connection_request.h",
"$dir_public_gap/bredr_discovery_manager.h",
"$dir_public_gap/bredr_interrogator.h",
"$dir_public_gap/discovery_filter.h",
"$dir_public_gap/event_masks.h",
"$dir_public_gap/generic_access_client.h",
"$dir_public_gap/identity_resolving_list.h",
"$dir_public_gap/low_energy_address_manager.h",
"$dir_public_gap/low_energy_advertising_manager.h",
"$dir_public_gap/low_energy_connection.h",
"$dir_public_gap/low_energy_connection_handle.h",
"$dir_public_gap/low_energy_connection_manager.h",
"$dir_public_gap/low_energy_connection_request.h",
"$dir_public_gap/low_energy_connector.h",
"$dir_public_gap/low_energy_discovery_manager.h",
"$dir_public_gap/low_energy_interrogator.h",
"$dir_public_gap/low_energy_state.h",
"$dir_public_gap/pairing_delegate.h",
"$dir_public_gap/pairing_state.h",
"$dir_public_gap/peer.h",
"$dir_public_gap/peer_cache.h",
"$dir_public_gap/peer_metrics.h",
"$dir_public_gap/types.h",
]
sources = [
"adapter.cc",
"android_vendor_capabilities.cc",
"bredr_connection.cc",
"bredr_connection_manager.cc",
"bredr_connection_request.cc",
"bredr_discovery_manager.cc",
"bredr_interrogator.cc",
"discovery_filter.cc",
"generic_access_client.cc",
"identity_resolving_list.cc",
"low_energy_address_manager.cc",
"low_energy_advertising_manager.cc",
"low_energy_connection.cc",
"low_energy_connection_handle.cc",
"low_energy_connection_manager.cc",
"low_energy_connection_request.cc",
"low_energy_connector.cc",
"low_energy_discovery_manager.cc",
"low_energy_interrogator.cc",
"pairing_state.cc",
"peer.cc",
"peer_cache.cc",
"peer_metrics.cc",
"types.cc",
]
public_deps = [
":definitions",
"$dir_pw_async:heap_dispatcher",
"$dir_pw_bluetooth",
"$dir_pw_third_party/fuchsia:fit",
"//src/connectivity/bluetooth/core/bt-host/common",
"//src/connectivity/bluetooth/core/bt-host/gatt",
"//src/connectivity/bluetooth/core/bt-host/hci",
"//src/connectivity/bluetooth/core/bt-host/iso",
"//src/connectivity/bluetooth/core/bt-host/l2cap",
"//src/connectivity/bluetooth/core/bt-host/sco",
"//src/connectivity/bluetooth/core/bt-host/sdp",
"//src/connectivity/bluetooth/core/bt-host/sm",
]
}
pw_source_set("testing") {
testonly = true
testonly = pw_unit_test_TESTONLY
public = [
"$dir_public_gap/fake_adapter.h",
"$dir_public_gap/fake_pairing_delegate.h",
]
sources = [
"fake_adapter.cc",
"fake_pairing_delegate.cc",
]
public_deps = [
":gap",
"$dir_pw_unit_test",
"//src/connectivity/bluetooth/core/bt-host/l2cap:testing",
]
}
pw_test("tests") {
sources = [
"adapter_test.cc",
"android_vendor_capabilities_test.cc",
"bredr_connection_manager_test.cc",
"bredr_connection_request_test.cc",
"bredr_discovery_manager_test.cc",
"bredr_interrogator_test.cc",
"discovery_filter_test.cc",
"fake_pairing_delegate_test.cc",
"identity_resolving_list_test.cc",
"low_energy_address_manager_test.cc",
"low_energy_advertising_manager_test.cc",
"low_energy_connection_manager_test.cc",
"low_energy_discovery_manager_test.cc",
"low_energy_interrogator_test.cc",
"pairing_state_test.cc",
"peer_cache_test.cc",
"peer_test.cc",
"types_test.cc",
]
deps = [
":gap",
":testing",
"//src/connectivity/bluetooth/core/bt-host/common",
"//src/connectivity/bluetooth/core/bt-host/gatt:testing",
"//src/connectivity/bluetooth/core/bt-host/hci:testing",
"//src/connectivity/bluetooth/core/bt-host/l2cap:testing",
"//src/connectivity/bluetooth/core/bt-host/sm:testing",
"//src/connectivity/bluetooth/core/bt-host/testing",
]
test_main = "//src/connectivity/bluetooth/core/bt-host/testing:gtest_main"
}
fuchsia_library_fuzzer("peer_cache_fuzzer") {
sources = [ "peer_cache_fuzztest.cc" ]
deps = [
":gap",
"$dir_pw_async:fake_dispatcher",
"$dir_pw_random:fuzzer_generator",
"//src/connectivity/bluetooth/core/bt-host/testing:fuzzing",
"//src/connectivity/bluetooth/core/bt-host/testing:fuzztest_driver",
]
}
pw_fuzzer("pw_peer_cache_fuzzer") {
sources = [ "peer_cache_fuzztest.cc" ]
deps = [
":gap",
"$dir_pw_async:fake_dispatcher",
"$dir_pw_random:fuzzer_generator",
"//src/connectivity/bluetooth/core/bt-host/testing:fuzzing",
]
}
pw_test_group("tests_and_fuzzers") {
tests = [
":tests",
":pw_peer_cache_fuzzer_test",
]
}
bazel_fuchsia_test_package("test_pkg") {
test_package_name = "gap_tests"
test_component_names = [ "gap_test_autogen_cml" ]
}