btstack/test/sdp_client/service_search_query.c
2016-02-18 10:30:06 +01:00

74 lines
1.9 KiB
C

// *****************************************************************************
//
// test rfcomm query tests
//
// *****************************************************************************
#include "btstack_config.h"
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "btstack_event.h"
#include "btstack_memory.h"
#include "btstack_run_loop.h"
#include "hci.h"
#include "hci_cmd.h"
#include "hci_dump.h"
#include "l2cap.h"
#include "mock.h"
#include "classic/sdp_util.h"
#include "CppUTest/TestHarness.h"
#include "CppUTest/CommandLineTestRunner.h"
static uint8_t sdp_test_record_list[] = {
0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01,
0x00, 0x00, 0x00, 0x02,
0x00, 0x00, 0x00, 0x03,
0x00, 0x00, 0x00, 0x04,
0x00, 0x00, 0x00, 0x05,
0x00, 0x00, 0x00, 0x06,
0x00, 0x00, 0x00, 0x07,
0x00, 0x00, 0x00, 0x08,
0x00, 0x00, 0x00, 0x09,
0x00, 0x00, 0x00, 0x0A
};
static void handle_sdp_parser_event(uint8_t packet_type, uint16_t channel, uint8_t *packet, uint16_t size){
static uint32_t record_handle = sdp_test_record_list[0];
switch (packet[0]){
case SDP_EVENT_QUERY_SERVICE_RECORD_HANDLE:
CHECK_EQUAL(sdp_event_query_service_record_handle_get_record_handle(packet), record_handle);
record_handle++;
break;
case SDP_EVENT_QUERY_COMPLETE:
printf("General query done with status %d.\n", sdp_event_query_complete_get_status(packet));
break;
}
}
TEST_GROUP(SDPClient){
void setup(void){
sdp_parser_init(&handle_sdp_parser_event);
sdp_parser_init_service_search();
}
};
TEST(SDPClient, QueryData){
uint16_t test_size = sizeof(sdp_test_record_list)/4;
sdp_parser_handle_service_search(sdp_test_record_list, test_size, test_size);
}
int main (int argc, const char * argv[]){
return CommandLineTestRunner::RunAllTests(argc, argv);
}