hfp: include all tests in ag

This commit is contained in:
Milanka Ringwald 2015-08-12 13:54:40 +02:00
parent 0179abaad3
commit a722a0b488
3 changed files with 20 additions and 15 deletions

View File

@ -536,8 +536,10 @@ void hfp_parse(hfp_connection_t * context, uint8_t byte){
break;
case HFP_CMD_AVAILABLE_CODECS:
// printf("Received codec %s\n", context->line_buffer);
context->remote_codecs[context->remote_codecs_nr] = (uint16_t)atoi((char*)context->line_buffer);
context->remote_codecs_nr++;
// context->remote_codecs[context->remote_codecs_nr] = (uint16_t)atoi((char*)context->line_buffer);
context->remote_codecs[context->parser_item_index] = (uint16_t)atoi((char*)context->line_buffer);
context->parser_item_index++;
context->remote_codecs_nr = context->parser_item_index;
break;
case HFP_CMD_INDICATOR_STATUS:
// printf("Indicator %d with status: %s\n", context->parser_item_index+1, context->line_buffer);
@ -560,9 +562,9 @@ void hfp_parse(hfp_connection_t * context, uint8_t byte){
context->remote_call_services_nr++;
break;
case HFP_CMD_GENERIC_STATUS_INDICATOR:
context->generic_status_indicators[context->generic_status_indicators_nr].uuid = (uint16_t)atoi((char*)context->line_buffer);
context->generic_status_indicators_nr++;
context->generic_status_indicators[context->parser_item_index].uuid = (uint16_t)atoi((char*)context->line_buffer);
context->parser_item_index++;
context->generic_status_indicators_nr = context->parser_item_index;
break;
case HFP_CMD_GENERIC_STATUS_INDICATOR_STATE:
// HF parses inital AG gen. ind. state
@ -628,8 +630,8 @@ void hfp_parse(hfp_connection_t * context, uint8_t byte){
context->line_buffer[context->line_size] = 0;
context->line_size = 0;
//printf("Indicator %d: %s (", context->ag_indicators_nr+1, context->line_buffer);
strcpy((char *)context->ag_indicators[context->ag_indicators_nr].name, (char *)context->line_buffer);
context->ag_indicators[context->ag_indicators_nr].index = context->ag_indicators_nr+1;
strcpy((char *)context->ag_indicators[context->parser_item_index].name, (char *)context->line_buffer);
context->ag_indicators[context->parser_item_index].index = context->parser_item_index+1;
break;
}
if (byte == '('){ // parse indicator range
@ -643,7 +645,7 @@ void hfp_parse(hfp_connection_t * context, uint8_t byte){
context->parser_state = HFP_PARSER_CMD_INDICATOR_MAX_RANGE;
context->line_buffer[context->line_size] = 0;
//printf("%d, ", atoi((char *)&context->line_buffer[0]));
context->ag_indicators[context->ag_indicators_nr].min_range = atoi((char *)context->line_buffer);
context->ag_indicators[context->parser_item_index].min_range = atoi((char *)context->line_buffer);
context->line_size = 0;
break;
}
@ -655,9 +657,10 @@ void hfp_parse(hfp_connection_t * context, uint8_t byte){
context->parser_state = HFP_PARSER_CMD_SEQUENCE;
context->line_buffer[context->line_size] = 0;
//printf("%d)\n", atoi((char *)&context->line_buffer[0]));
context->ag_indicators[context->ag_indicators_nr].max_range = atoi((char *)context->line_buffer);
context->ag_indicators[context->parser_item_index].max_range = atoi((char *)context->line_buffer);
context->line_size = 0;
context->ag_indicators_nr++;
context->parser_item_index++;
context->ag_indicators_nr = context->parser_item_index;
break;
}

View File

@ -71,7 +71,7 @@ TEST_GROUP(HFPParser){
memset(packet,0, sizeof(packet));
}
};
/*
TEST(HFPParser, HFP_AG_SUPPORTED_FEATURES){
sprintf(packet, "\r\nAT%s=0000001111101111\r\n", HFP_SUPPORTED_FEATURES);
for (pos = 0; pos < strlen(packet); pos++){
@ -97,7 +97,7 @@ TEST(HFPParser, HFP_AG_AVAILABLE_CODECS){
TEST(HFPParser, HFP_AG_GENERIC_STATUS_INDICATOR){
sprintf(packet, "\r\nAT%s=0,1\r\n", HFP_GENERIC_STATUS_INDICATOR);
context.sent_command = HFP_CMD_GENERIC_STATUS_INDICATOR;
for (pos = 0; pos < strlen(packet); pos++){
hfp_parse(&context, packet[pos]);
}
@ -118,11 +118,14 @@ TEST(HFPParser, HFP_AG_ENABLE_INDICATOR_STATUS_UPDATE){
CHECK_EQUAL(HFP_CMD_ENABLE_INDICATOR_STATUS_UPDATE, context.command);
CHECK_EQUAL(1, context.enable_status_update_for_ag_indicators);
}
*/
TEST(HFPParser, HFP_AG_ENABLE_INDIVIDUAL_INDICATOR_STATUS_UPDATE){
set_hfp_generic_status_indicators((hfp_generic_status_indicators_t *)&hf_indicators, hf_indicators_nr);
context.generic_status_indicators_nr = hf_indicators_nr;
memcpy(context.generic_status_indicators, hf_indicators, hf_indicators_nr * sizeof(hfp_generic_status_indicators_t));
for (pos = 0; pos < hf_indicators_nr; pos++){
CHECK_EQUAL(get_hfp_generic_status_indicators()[pos].uuid, hf_indicators[pos].uuid);
CHECK_EQUAL(get_hfp_generic_status_indicators()[pos].state, hf_indicators[pos].state);

View File

@ -101,8 +101,7 @@ TEST(HFPParser, HFP_HF_INDICATORS){
offset += snprintf(packet+offset, sizeof(packet)-offset, "\"%s\", (%d, %d)\r\n", ag_indicators[pos].name, ag_indicators[pos].min_range, ag_indicators[pos].max_range);
context.sent_command = HFP_CMD_INDICATOR;
context.ag_indicators_nr = 0;
for (pos = 0; pos < strlen(packet); pos++){
hfp_parse(&context, packet[pos]);
}