# Copyright 2023 The Pigweed Authors # # Licensed under the Apache License, Version 2.0 (the "License"); you may not # use this file except in compliance with the License. You may obtain a copy of # the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations under # the License. import("//build_overrides/pigweed.gni") import("$dir_pw_fuzzer/fuzzer.gni") import("$dir_pw_unit_test/test.gni") config("public_include_path") { include_dirs = [ "public" ] } # Basic target with protocol definitions and no logic, suitable for test # emulation. pw_source_set("definitions") { sources = [ "data_element.cc", "error.cc", "service_record.cc", ] public = [ "public/pw_bluetooth_sapphire/internal/host/sdp/data_element.h", "public/pw_bluetooth_sapphire/internal/host/sdp/error.h", "public/pw_bluetooth_sapphire/internal/host/sdp/sdp.h", "public/pw_bluetooth_sapphire/internal/host/sdp/service_record.h", ] public_configs = [ ":public_include_path" ] public_deps = [ "$dir_pw_bluetooth_sapphire/host/common" ] } pw_source_set("sdp") { sources = [ "client.cc", "pdu.cc", "server.cc", "service_discoverer.cc", ] public = [ "public/pw_bluetooth_sapphire/internal/host/sdp/client.h", "public/pw_bluetooth_sapphire/internal/host/sdp/pdu.h", "public/pw_bluetooth_sapphire/internal/host/sdp/server.h", "public/pw_bluetooth_sapphire/internal/host/sdp/service_discoverer.h", ] public_configs = [ ":public_include_path" ] public_deps = [ ":definitions", "$dir_pw_bluetooth_sapphire/host/l2cap", "$dir_pw_third_party/fuchsia:fit", ] } pw_test("sdp_test") { enable_if = pw_unit_test_BACKEND == "$dir_pw_unit_test:googletest" sources = [ "client_test.cc", "data_element_test.cc", "pdu_test.cc", "server_test.cc", "service_discoverer_test.cc", "service_record_test.cc", ] test_main = "$dir_pw_bluetooth_sapphire/host/testing:gtest_main" deps = [ ":sdp", "$dir_pw_bluetooth_sapphire/host/common", "$dir_pw_bluetooth_sapphire/host/l2cap:testing", "$dir_pw_bluetooth_sapphire/host/testing", "$dir_pw_bluetooth_sapphire/host/testing:fake_controller", "$dir_pw_bluetooth_sapphire/host/testing:gtest_helpers", "$dir_pw_bluetooth_sapphire/host/testing:test_helpers", ] } pw_fuzzer("data_element_fuzzer") { sources = [ "data_element_fuzztest.cc" ] deps = [ ":definitions" ] } pw_fuzzer("pdu_fuzzer") { sources = [ "pdu_fuzztest.cc" ] deps = [ ":sdp" ] } pw_test_group("tests") { tests = [ ":sdp_test", ":data_element_fuzzer_test", ":pdu_fuzzer_test", ] }