diff --git a/test/bau/CMakeLists.txt b/test/bau/CMakeLists.txt new file mode 100644 index 000000000..969ffb3c2 --- /dev/null +++ b/test/bau/CMakeLists.txt @@ -0,0 +1,42 @@ +cmake_minimum_required (VERSION 3.5) + +project(test-tlv-test) + +set (BTSTACK_ROOT ${CMAKE_SOURCE_DIR}/../../) + +# pkgconfig required to link cpputest +find_package(PkgConfig REQUIRED) + +# CppuTest +pkg_check_modules(CPPUTEST REQUIRED CppuTest) +include_directories(${CPPUTEST_INCLUDE_DIRS}) +link_directories(${CPPUTEST_LIBRARY_DIRS}) +link_libraries(${CPPUTEST_LIBRARIES}) + +include_directories(../../3rd-party/micro-ecc) +include_directories(../../3rd-party/rijndael) +include_directories(../../platform/embedded) +include_directories(../../platform/posix) +include_directories(../../src) +include_directories(..) + +# Enable ASAN +add_compile_options( -g -fsanitize=address) +add_link_options( -fsanitize=address) + +# create test targets +file(GLOB TARGETS_CPP "*_test.cpp") +# create targets +foreach(TARGET_FILE ${TARGETS_CPP}) + get_filename_component(TEST ${TARGET_FILE} NAME_WE) + message("test/btstack_util: ${TEST}") + message("${TEST} - ${TARGET_FILE} - ${BTSTACK_ROOT}/src/le_audio/broadcast_audio_uri_builder.c") + add_executable(${TEST} + ${TARGET_FILE} + ${BTSTACK_ROOT}/src/btstack_util.c + ${BTSTACK_ROOT}/src/hci_dump.c + ${BTSTACK_ROOT}/src/le-audio/broadcast_audio_uri_builder.c + ) +endforeach(TARGET_FILE) + + diff --git a/test/bau/bau_encoder_test.cpp b/test/bau/bau_encoder_test.cpp new file mode 100644 index 000000000..2b8284c4e --- /dev/null +++ b/test/bau/bau_encoder_test.cpp @@ -0,0 +1,45 @@ +// + +#include +#include + +#include "le-audio/broadcast_audio_uri_builder.h" +#include "bluetooth.h" +#include "btstack_util.h" +#include "bluetooth_company_id.h" + +int main(int argc, const char ** argv){ + (void) argc; + (void) argv; + + bd_addr_t adv_addr; + sscanf_bd_addr("11:22:33:44:55:66", adv_addr); + uint8_t broadcast_code[16]; + memset(broadcast_code, 0xcc, sizeof(broadcast_code)); + + broadcast_audio_uri_builder_t builder; + uint8_t uri[256]; + memset(uri, 0, sizeof(uri)); + broadcast_audio_uri_builder_init(&builder, uri, sizeof(uri)); + broadcast_audio_uri_builder_append_string(&builder, "BLUETOOTH:UUID:184F;"); + // + broadcast_audio_uri_builder_append_broadcast_name(&builder, "Broadcast Name"); + broadcast_audio_uri_builder_append_advertiser_address_type(&builder, BD_ADDR_TYPE_LE_PUBLIC); + broadcast_audio_uri_builder_append_advertiser_address(&builder, adv_addr); + broadcast_audio_uri_builder_append_broadcast_id(&builder, 0x123456); + broadcast_audio_uri_builder_append_broadcast_code(&builder, broadcast_code); + broadcast_audio_uri_builder_append_standard_quality(&builder, true); + broadcast_audio_uri_builder_append_high_quality(&builder, false); + broadcast_audio_uri_builder_append_vendor_specific(&builder, BLUETOOTH_COMPANY_ID_BLUEKITCHEN_GMBH, NULL, 0); + // + broadcast_audio_uri_builder_append_advertising_sid(&builder, 0x01); + broadcast_audio_uri_builder_append_pa_interval(&builder, 0x1000); + broadcast_audio_uri_builder_append_num_subgroups(&builder, 1); + broadcast_audio_uri_builder_append_bis_sync(&builder, 1); + broadcast_audio_uri_builder_append_sg_number_of_bises(&builder, 1); + broadcast_audio_uri_builder_append_sg_metadata(&builder, NULL, 0); + broadcast_audio_uri_builder_append_public_broadcast_announcement_metadata(&builder, NULL, 0); + // + broadcast_audio_uri_builder_append_string(&builder, ";"); + puts((const char*)uri); +} \ No newline at end of file