Commit c0280bcb authored by Sandrine Avakian's avatar Sandrine Avakian
Browse files

Merge branch 'master' of git.linphone.org:linphone into dev_msfactory

# Conflicts:
#	mediastreamer2
parents 8177fddc 14289196
This diff is collapsed.
......@@ -80,8 +80,9 @@ static unsigned char curses = 0;
char* xml_file = "CUnitAutomated-Results.xml";
int xml_enabled = 0;
char * suite_name;
char * test_name;
char * suite_name = NULL;
char * test_name = NULL;
char * tag_name = NULL;
static long max_vm_kb = 0;
void (*tester_printf_va)(int level, const char *format, va_list args);
......@@ -93,14 +94,38 @@ void bc_tester_printf(int level, const char *format, ...) {
va_end (args);
}
int bc_tester_run_suite(test_suite_t *suite) {
int bc_tester_run_suite(test_suite_t *suite, const char *tag_name) {
int i;
CU_pSuite pSuite = CU_add_suite(suite->name, suite->before_all, suite->after_all);
for (i = 0; i < suite->nb_tests; i++) {
if (NULL == CU_add_test(pSuite, suite->tests[i].name, suite->tests[i].func)) {
return CU_get_error();
CU_pSuite pSuite;
if (tag_name != NULL) {
int j;
int nb_tests_for_tag = 0;
for (i = 0; i < suite->nb_tests; i++) {
for (j = 0; j < (sizeof(suite->tests[i].tags) / sizeof(suite->tests[i].tags[0])); j++) {
if ((suite->tests[i].tags[j] != NULL) && (strcasecmp(tag_name, suite->tests[i].tags[j]) == 0)) {
nb_tests_for_tag++;
}
}
}
if (nb_tests_for_tag > 0) {
pSuite = CU_add_suite(suite->name, suite->before_all, suite->after_all);
for (i = 0; i < suite->nb_tests; i++) {
for (j = 0; j < (sizeof(suite->tests[i].tags) / sizeof(suite->tests[i].tags[0])); j++) {
if ((suite->tests[i].tags[j] != NULL) && (strcasecmp(tag_name, suite->tests[i].tags[j]) == 0)) {
if (NULL == CU_add_test(pSuite, suite->tests[i].name, suite->tests[i].func)) {
return CU_get_error();
}
}
}
}
}
} else {
pSuite = CU_add_suite(suite->name, suite->before_all, suite->after_all);
for (i = 0; i < suite->nb_tests; i++) {
if (NULL == CU_add_test(pSuite, suite->tests[i].name, suite->tests[i].func)) {
return CU_get_error();
}
}
}
......@@ -251,7 +276,7 @@ static void test_complete_message_handler(const CU_pTest pTest, const CU_pSuite
}
#endif
int bc_tester_run_tests(const char *suite_name, const char *test_name) {
int bc_tester_run_tests(const char *suite_name, const char *test_name, const char *tag_name) {
int i;
/* initialize the CUnit test registry */
......@@ -259,7 +284,7 @@ int bc_tester_run_tests(const char *suite_name, const char *test_name) {
return CU_get_error();
for (i = 0; i < nb_test_suites; i++) {
bc_tester_run_suite(test_suite[i]);
bc_tester_run_suite(test_suite[i], tag_name);
}
#ifdef HAVE_CU_GET_SUITE
CU_set_suite_start_handler(suite_start_message_handler);
......@@ -284,13 +309,21 @@ int bc_tester_run_tests(const char *suite_name, const char *test_name) {
CU_pSuite suite;
suite=CU_get_suite(suite_name);
if (!suite) {
bc_tester_printf(bc_printf_verbosity_error, "Could not find suite '%s'. Available suites are:", suite_name);
if (tag_name != NULL) {
bc_tester_printf(bc_printf_verbosity_error, "Could not find suite '%s' or this suite has no tests with tag '%s'. Available suites are:", suite_name, tag_name);
} else {
bc_tester_printf(bc_printf_verbosity_error, "Could not find suite '%s'. Available suites are:", suite_name);
}
bc_tester_list_suites();
return -1;
} else if (test_name) {
CU_pTest test=CU_get_test_by_name(test_name, suite);
if (!test) {
bc_tester_printf(bc_printf_verbosity_error, "Could not find test '%s' in suite '%s'. Available tests are:", test_name, suite_name);
if (tag_name != NULL) {
bc_tester_printf(bc_printf_verbosity_error, "Could not find test '%s' in suite '%s' or this test is not tagged '%s'. Available tests are:", test_name, suite_name, tag_name);
} else {
bc_tester_printf(bc_printf_verbosity_error, "Could not find test '%s' in suite '%s'. Available tests are:", test_name, suite_name);
}
// do not use suite_name here, since this method is case sensitive
bc_tester_list_tests(suite->pName);
return -2;
......@@ -464,9 +497,12 @@ int bc_tester_parse_args(int argc, char **argv, int argid)
} else if (strcmp(argv[i],"--test")==0){
CHECK_ARG("--test", ++i, argc);
test_name=argv[i];
}else if (strcmp(argv[i],"--suite")==0){
} else if (strcmp(argv[i],"--suite")==0){
CHECK_ARG("--suite", ++i, argc);
suite_name=argv[i];
} else if (strcmp(argv[i], "--tag") == 0) {
CHECK_ARG("--tag", ++i, argc);
tag_name = argv[i];
} else if (strcmp(argv[i],"--list-suites")==0){
bc_tester_list_suites();
return 0;
......@@ -518,7 +554,7 @@ int bc_tester_start(const char* prog_name) {
free(xml_tmp_file);
}
ret = bc_tester_run_tests(suite_name, test_name);
ret = bc_tester_run_tests(suite_name, test_name, tag_name);
return ret;
}
......
......@@ -46,8 +46,16 @@ typedef int (*pre_post_function_t)(void);
typedef struct {
const char *name;
test_function_t func;
const char *tags[2];
} test_t;
#define TEST_NO_TAG(name, func) \
{ name, func, { NULL, NULL } }
#define TEST_ONE_TAG(name, func, tag) \
{ name, func, { tag, NULL } }
#define TEST_TWO_TAGS(name, func, tag1, tag2) \
{ name, func, { tag1, tag2 } }
typedef struct {
const char *name; /*suite name*/
pre_post_function_t
......@@ -89,8 +97,8 @@ void bc_tester_list_suites(void);
void bc_tester_list_tests(const char *suite_name);
const char * bc_tester_suite_name(int suite_index);
const char * bc_tester_test_name(const char *suite_name, int test_index);
int bc_tester_run_suite(test_suite_t *suite);
int bc_tester_run_tests(const char *suite_name, const char *test_name);
int bc_tester_run_suite(test_suite_t *suite, const char *tag_name);
int bc_tester_run_tests(const char *suite_name, const char *test_name, const char *tag_name);
int bc_tester_suite_index(const char *suite_name);
const char * bc_tester_current_suite_name(void);
const char * bc_tester_current_test_name(void);
......
......@@ -343,12 +343,12 @@ static void call_invite_200ok_without_contact_header(void) {
static test_t tests[] = {
{ "SIP UPDATE within incoming reinvite without sdp", sip_update_within_icoming_reinvite_with_no_sdp },
{ "Call with audio mline before video in sdp", call_with_audio_mline_before_video_in_sdp },
{ "Call with video mline before audio in sdp", call_with_video_mline_before_audio_in_sdp },
{ "Call with multiple audio mline in sdp", call_with_multiple_audio_mline_in_sdp },
{ "Call with multiple video mline in sdp", call_with_multiple_video_mline_in_sdp },
{ "Call invite 200ok without contact header", call_invite_200ok_without_contact_header }
TEST_NO_TAG("SIP UPDATE within incoming reinvite without sdp", sip_update_within_icoming_reinvite_with_no_sdp),
TEST_NO_TAG("Call with audio mline before video in sdp", call_with_audio_mline_before_video_in_sdp),
TEST_NO_TAG("Call with video mline before audio in sdp", call_with_video_mline_before_audio_in_sdp),
TEST_NO_TAG("Call with multiple audio mline in sdp", call_with_multiple_audio_mline_in_sdp),
TEST_NO_TAG("Call with multiple video mline in sdp", call_with_multiple_video_mline_in_sdp),
TEST_NO_TAG("Call invite 200ok without contact header", call_invite_200ok_without_contact_header)
};
test_suite_t complex_sip_call_test_suite = {
......
......@@ -165,13 +165,13 @@ static void send_dtmf_rfc2833_opus(void) {
}
test_t dtmf_tests[] = {
{ "Send DTMF using RFC2833",send_dtmf_rfc2833},
{ "Send DTMF using SIP INFO",send_dtmf_sip_info},
{ "Send DTMF sequence using RFC2833",send_dtmfs_sequence_rfc2833},
{ "Send DTMF sequence using SIP INFO",send_dtmfs_sequence_sip_info},
{ "DTMF sequence not sent if invalid call",send_dtmfs_sequence_not_ready},
{ "DTMF sequence canceled if call state changed",send_dtmfs_sequence_call_state_changed},
{ "Send DTMF using RFC2833 using Opus",send_dtmf_rfc2833_opus},
TEST_NO_TAG("Send DTMF using RFC2833",send_dtmf_rfc2833),
TEST_NO_TAG("Send DTMF using SIP INFO",send_dtmf_sip_info),
TEST_NO_TAG("Send DTMF sequence using RFC2833",send_dtmfs_sequence_rfc2833),
TEST_NO_TAG("Send DTMF sequence using SIP INFO",send_dtmfs_sequence_sip_info),
TEST_NO_TAG("DTMF sequence not sent if invalid call",send_dtmfs_sequence_not_ready),
TEST_NO_TAG("DTMF sequence canceled if call state changed",send_dtmfs_sequence_call_state_changed),
TEST_NO_TAG("Send DTMF using RFC2833 using Opus",send_dtmf_rfc2833_opus)
};
test_suite_t dtmf_test_suite = {"DTMF", NULL, NULL, liblinphone_tester_before_each, liblinphone_tester_after_each,
......
......@@ -359,15 +359,15 @@ static void publish_without_expires(void){
}
test_t event_tests[] = {
{ "Subscribe declined" , subscribe_test_declined },
{ "Subscribe terminated by subscriber", subscribe_test_terminated_by_subscriber },
{ "Subscribe with custom headers", subscribe_test_with_custom_header },
{ "Subscribe refreshed", subscribe_test_refreshed },
{ "Subscribe manually refreshed", subscribe_test_manually_refreshed },
{ "Subscribe terminated by notifier", subscribe_test_terminated_by_notifier },
{ "Publish", publish_test },
{ "Publish without expires", publish_without_expires },
{ "Publish without automatic refresh",publish_no_auto_test }
TEST_NO_TAG("Subscribe declined", subscribe_test_declined),
TEST_NO_TAG("Subscribe terminated by subscriber", subscribe_test_terminated_by_subscriber),
TEST_NO_TAG("Subscribe with custom headers", subscribe_test_with_custom_header),
TEST_NO_TAG("Subscribe refreshed", subscribe_test_refreshed),
TEST_NO_TAG("Subscribe manually refreshed", subscribe_test_manually_refreshed),
TEST_NO_TAG("Subscribe terminated by notifier", subscribe_test_terminated_by_notifier),
TEST_NO_TAG("Publish", publish_test),
TEST_NO_TAG("Publish without expires", publish_without_expires),
TEST_NO_TAG("Publish without automatic refresh",publish_no_auto_test)
};
test_suite_t event_test_suite = {"Event", NULL, NULL, liblinphone_tester_before_each, liblinphone_tester_after_each,
......
......@@ -1082,30 +1082,30 @@ static void test_list_subscribe (void) {
test_t flexisip_tests[] = {
{ "Subscribe forking", subscribe_forking },
{ "Message forking", message_forking },
{ "Message forking with unreachable recipients", message_forking_with_unreachable_recipients },
{ "Message forking with all recipients unreachable", message_forking_with_all_recipients_unreachable},
{ "Call forking", call_forking },
{ "Call forking cancelled", call_forking_cancelled },
{ "Call forking declined globaly", call_forking_declined_globaly },
{ "Call forking declined localy", call_forking_declined_localy },
{ "Call forking with urgent reply", call_forking_with_urgent_reply },
{ "Call forking with push notification (single)", call_forking_with_push_notification_single },
{ "Call forking with push notification (multiple)", call_forking_with_push_notification_multiple },
{ "Call forking not responded", call_forking_not_responded },
{ "Early-media call forking", early_media_call_forking },
{ "Call with sips", call_with_sips },
{ "Call with sips not achievable", call_with_sips_not_achievable },
{ "Call with ipv6", call_with_ipv6 },
{ "Subscribe Notify with sipp publisher", test_subscribe_notify_with_sipp_publisher },
{ "Subscribe Notify with sipp double publish", test_subscribe_notify_with_sipp_publisher_double_publish },
{ "Publish/unpublish", test_publish_unpublish },
{ "List subscribe", test_list_subscribe },
{ "File transfer message rcs to external body client", file_transfer_message_rcs_to_external_body_client },
{ "File transfer message external body to rcs client", file_transfer_message_external_body_to_rcs_client },
{ "File transfer message external body to external body client", file_transfer_message_external_body_to_external_body_client },
{ "DoS module trigger by sending a lot of chat messages", dos_module_trigger }
TEST_NO_TAG("Subscribe forking", subscribe_forking),
TEST_NO_TAG("Message forking", message_forking),
TEST_NO_TAG("Message forking with unreachable recipients", message_forking_with_unreachable_recipients),
TEST_NO_TAG("Message forking with all recipients unreachable", message_forking_with_all_recipients_unreachable),
TEST_NO_TAG("Call forking", call_forking),
TEST_NO_TAG("Call forking cancelled", call_forking_cancelled),
TEST_NO_TAG("Call forking declined globaly", call_forking_declined_globaly),
TEST_NO_TAG("Call forking declined localy", call_forking_declined_localy),
TEST_NO_TAG("Call forking with urgent reply", call_forking_with_urgent_reply),
TEST_NO_TAG("Call forking with push notification (single)", call_forking_with_push_notification_single),
TEST_NO_TAG("Call forking with push notification (multiple)", call_forking_with_push_notification_multiple),
TEST_NO_TAG("Call forking not responded", call_forking_not_responded),
TEST_NO_TAG("Early-media call forking", early_media_call_forking),
TEST_NO_TAG("Call with sips", call_with_sips),
TEST_NO_TAG("Call with sips not achievable", call_with_sips_not_achievable),
TEST_NO_TAG("Call with ipv6", call_with_ipv6),
TEST_NO_TAG("Subscribe Notify with sipp publisher", test_subscribe_notify_with_sipp_publisher),
TEST_NO_TAG("Subscribe Notify with sipp double publish", test_subscribe_notify_with_sipp_publisher_double_publish),
TEST_NO_TAG("Publish/unpublish", test_publish_unpublish),
TEST_NO_TAG("List subscribe", test_list_subscribe),
TEST_NO_TAG("File transfer message rcs to external body client", file_transfer_message_rcs_to_external_body_client),
TEST_NO_TAG("File transfer message external body to rcs client", file_transfer_message_external_body_to_rcs_client),
TEST_NO_TAG("File transfer message external body to external body client", file_transfer_message_external_body_to_external_body_client),
TEST_NO_TAG("DoS module trigger by sending a lot of chat messages", dos_module_trigger)
};
test_suite_t flexisip_test_suite = {"Flexisip", NULL, NULL, liblinphone_tester_before_each, liblinphone_tester_after_each,
......
......@@ -317,11 +317,11 @@ static void upload_collected_traces(void) {
}
test_t log_collection_tests[] = {
{ "No file when disabled", collect_files_disabled},
{ "Collect files filled when enabled", collect_files_filled},
{ "Logs collected into small file", collect_files_small_size},
{ "Logs collected when decreasing max size", collect_files_changing_size},
{ "Upload collected traces", upload_collected_traces}
TEST_NO_TAG("No file when disabled", collect_files_disabled),
TEST_NO_TAG("Collect files filled when enabled", collect_files_filled),
TEST_NO_TAG("Logs collected into small file", collect_files_small_size),
TEST_NO_TAG("Logs collected when decreasing max size", collect_files_changing_size),
TEST_NO_TAG("Upload collected traces", upload_collected_traces)
};
test_suite_t log_collection_test_suite = {"LogCollection", NULL, NULL, liblinphone_tester_before_each, liblinphone_tester_after_each,
......
......@@ -1705,54 +1705,54 @@ void file_transfer_with_http_proxy(void) {
}
test_t message_tests[] = {
{"Text message", text_message},
{"Text message within call dialog", text_message_within_call_dialog},
{"Text message with credentials from auth callback", text_message_with_credential_from_auth_callback},
{"Text message with privacy", text_message_with_privacy},
{"Text message compatibility mode", text_message_compatibility_mode},
{"Text message with ack", text_message_with_ack},
{"Text message with send error", text_message_with_send_error},
{"Text message with external body", text_message_with_external_body},
{"Transfer message", transfer_message},
{"Transfer message with http proxy", file_transfer_with_http_proxy},
{"Transfer message with upload io error", transfer_message_with_upload_io_error},
{"Transfer message with download io error", transfer_message_with_download_io_error},
{"Transfer message upload cancelled", transfer_message_upload_cancelled},
{"Transfer message download cancelled", transfer_message_download_cancelled},
{"Transfer message using external body url", file_transfer_using_external_body_url},
{"Transfer 2 messages simultaneously", file_transfer_2_messages_simultaneously},
{"Text message denied", text_message_denied},
{"Info message", info_message},
{"Info message with body", info_message_with_body},
{"IsComposing notification", is_composing_notification},
TEST_NO_TAG("Text message", text_message),
TEST_NO_TAG("Text message within call dialog", text_message_within_call_dialog),
TEST_NO_TAG("Text message with credentials from auth callback", text_message_with_credential_from_auth_callback),
TEST_NO_TAG("Text message with privacy", text_message_with_privacy),
TEST_NO_TAG("Text message compatibility mode", text_message_compatibility_mode),
TEST_NO_TAG("Text message with ack", text_message_with_ack),
TEST_NO_TAG("Text message with send error", text_message_with_send_error),
TEST_NO_TAG("Text message with external body", text_message_with_external_body),
TEST_NO_TAG("Transfer message", transfer_message),
TEST_NO_TAG("Transfer message with http proxy", file_transfer_with_http_proxy),
TEST_NO_TAG("Transfer message with upload io error", transfer_message_with_upload_io_error),
TEST_NO_TAG("Transfer message with download io error", transfer_message_with_download_io_error),
TEST_NO_TAG("Transfer message upload cancelled", transfer_message_upload_cancelled),
TEST_NO_TAG("Transfer message download cancelled", transfer_message_download_cancelled),
TEST_NO_TAG("Transfer message using external body url", file_transfer_using_external_body_url),
TEST_NO_TAG("Transfer 2 messages simultaneously", file_transfer_2_messages_simultaneously),
TEST_NO_TAG("Text message denied", text_message_denied),
TEST_NO_TAG("Info message", info_message),
TEST_NO_TAG("Info message with body", info_message_with_body),
TEST_NO_TAG("IsComposing notification", is_composing_notification),
#ifdef HAVE_LIME
{"Lime text message", lime_text_message},
{"Lime text message to non lime", lime_text_message_to_non_lime},
{"Lime transfer message", lime_transfer_message},
{"Lime transfer message without encryption", lime_transfer_message_without_encryption},
{"Lime unitary", lime_unit},
TEST_NO_TAG("Lime text message", lime_text_message),
TEST_NO_TAG("Lime text message to non lime", lime_text_message_to_non_lime),
TEST_NO_TAG("Lime transfer message", lime_transfer_message),
TEST_NO_TAG("Lime transfer message without encryption", lime_transfer_message_without_encryption),
TEST_NO_TAG("Lime unitary", lime_unit),
#endif /* HAVE_LIME */
#ifdef MSG_STORAGE_ENABLED
{"Database migration", database_migration},
{"History range", history_range},
{"History count", history_count},
TEST_NO_TAG("Database migration", database_migration),
TEST_NO_TAG("History range", history_range),
TEST_NO_TAG("History count", history_count),
#endif
{"Text status after destroying chat room", text_status_after_destroying_chat_room},
{"Transfer not sent if invalid url", file_transfer_not_sent_if_invalid_url},
{"Transfer not sent if host not found", file_transfer_not_sent_if_host_not_found},
{"Transfer not sent if url moved permanently", file_transfer_not_sent_if_url_moved_permanently},
{"Transfer io error after destroying chatroom", file_transfer_io_error_after_destroying_chatroom},
{"Real Time Text message", real_time_text_message},
{"Real Time Text conversation", real_time_text_conversation},
{"Real Time Text without audio", real_time_text_without_audio},
{"Real Time Text with srtp", real_time_text_srtp},
{"Real Time Text with ice", real_time_text_ice},
{"Real Time Text message compatibility crlf", real_time_text_message_compat_crlf},
{"Real Time Text message compatibility lf", real_time_text_message_compat_lf},
{"Real Time Text message with accented characters", real_time_text_message_accented_chars},
{"Real Time Text offer answer with different payload numbers (sender side)", real_time_text_message_different_text_codecs_payload_numbers_sender_side},
{"Real Time Text offer answer with different payload numbers (receiver side)", real_time_text_message_different_text_codecs_payload_numbers_receiver_side},
{"Real Time Text copy paste", real_time_text_copy_paste},
TEST_NO_TAG("Text status after destroying chat room", text_status_after_destroying_chat_room),
TEST_NO_TAG("Transfer not sent if invalid url", file_transfer_not_sent_if_invalid_url),
TEST_NO_TAG("Transfer not sent if host not found", file_transfer_not_sent_if_host_not_found),
TEST_NO_TAG("Transfer not sent if url moved permanently", file_transfer_not_sent_if_url_moved_permanently),
TEST_NO_TAG("Transfer io error after destroying chatroom", file_transfer_io_error_after_destroying_chatroom),
TEST_NO_TAG("Real Time Text message", real_time_text_message),
TEST_NO_TAG("Real Time Text conversation", real_time_text_conversation),
TEST_NO_TAG("Real Time Text without audio", real_time_text_without_audio),
TEST_NO_TAG("Real Time Text with srtp", real_time_text_srtp),
TEST_NO_TAG("Real Time Text with ice", real_time_text_ice),
TEST_NO_TAG("Real Time Text message compatibility crlf", real_time_text_message_compat_crlf),
TEST_NO_TAG("Real Time Text message compatibility lf", real_time_text_message_compat_lf),
TEST_NO_TAG("Real Time Text message with accented characters", real_time_text_message_accented_chars),
TEST_NO_TAG("Real Time Text offer answer with different payload numbers (sender side)", real_time_text_message_different_text_codecs_payload_numbers_sender_side),
TEST_NO_TAG("Real Time Text offer answer with different payload numbers (receiver side)", real_time_text_message_different_text_codecs_payload_numbers_receiver_side),
TEST_NO_TAG("Real Time Text copy paste", real_time_text_copy_paste),
};
test_suite_t message_test_suite = {
......
......@@ -825,22 +825,22 @@ void eject_from_3_participants_remote_conference(void) {
}
test_t multi_call_tests[] = {
{ "Call waiting indication", call_waiting_indication },
{ "Call waiting indication with privacy", call_waiting_indication_with_privacy },
{ "Incoming call accepted when outgoing call in progress", incoming_call_accepted_when_outgoing_call_in_progress},
{ "Incoming call accepted when outgoing call in outgoing ringing", incoming_call_accepted_when_outgoing_call_in_outgoing_ringing},
{ "Incoming call accepted when outgoing call in outgoing ringing early media", incoming_call_accepted_when_outgoing_call_in_outgoing_ringing_early_media},
{ "Simple conference", simple_conference },
{ "Simple conference with ICE", simple_conference_with_ice},
{ "Simple ZRTP conference with ICE",simple_zrtp_conference_with_ice},
{ "Eject from 3 participants conference", eject_from_3_participants_local_conference },
{ "Eject from 4 participants conference", eject_from_4_participants_conference },
{ "Simple call transfer", simple_call_transfer },
{ "Unattended call transfer", unattended_call_transfer },
{ "Unattended call transfer with error", unattended_call_transfer_with_error },
{ "Call transfer existing call outgoing call", call_transfer_existing_call_outgoing_call },
{ "Simple remote conference", simple_remote_conference },
{ "Eject from 3 participants in remote conference", eject_from_3_participants_remote_conference }
TEST_NO_TAG("Call waiting indication", call_waiting_indication),
TEST_NO_TAG("Call waiting indication with privacy", call_waiting_indication_with_privacy),
TEST_NO_TAG("Incoming call accepted when outgoing call in progress", incoming_call_accepted_when_outgoing_call_in_progress),
TEST_NO_TAG("Incoming call accepted when outgoing call in outgoing ringing", incoming_call_accepted_when_outgoing_call_in_outgoing_ringing),
TEST_NO_TAG("Incoming call accepted when outgoing call in outgoing ringing early media", incoming_call_accepted_when_outgoing_call_in_outgoing_ringing_early_media),
TEST_NO_TAG("Simple conference", simple_conference),
TEST_ONE_TAG("Simple conference with ICE", simple_conference_with_ice, "ICE"),
TEST_ONE_TAG("Simple ZRTP conference with ICE", simple_zrtp_conference_with_ice, "ICE"),
TEST_NO_TAG("Eject from 3 participants conference", eject_from_3_participants_local_conference),
TEST_NO_TAG("Eject from 4 participants conference", eject_from_4_participants_conference),
TEST_NO_TAG("Simple call transfer", simple_call_transfer),
TEST_NO_TAG("Unattended call transfer", unattended_call_transfer),
TEST_NO_TAG("Unattended call transfer with error", unattended_call_transfer_with_error),
TEST_NO_TAG("Call transfer existing call outgoing call", call_transfer_existing_call_outgoing_call),
TEST_NO_TAG("Simple remote conference", simple_remote_conference),
TEST_NO_TAG("Eject from 3 participants in remote conference", eject_from_3_participants_remote_conference)
};
test_suite_t multi_call_test_suite = {"Multi call", NULL, NULL, liblinphone_tester_before_each, liblinphone_tester_after_each,
......
......@@ -244,13 +244,13 @@ static void early_media_with_multicast_video(void) {
#endif
test_t multicast_call_tests[] = {
{ "Multicast audio call",call_multicast},
{ "Multicast call with pause/resume",multicast_audio_with_pause_resume},
{ "Early media multicast audio call",early_media_with_multicast_audio},
{ "Unicast incoming call with multicast activated",unicast_incoming_with_multicast_audio_on},
TEST_NO_TAG("Multicast audio call",call_multicast),
TEST_NO_TAG("Multicast call with pause/resume",multicast_audio_with_pause_resume),
TEST_NO_TAG("Early media multicast audio call",early_media_with_multicast_audio),
TEST_NO_TAG("Unicast incoming call with multicast activated",unicast_incoming_with_multicast_audio_on),
#ifdef VIDEO_ENABLED
{ "Multicast video call",call_multicast_video},
{ "Early media multicast video call",early_media_with_multicast_video},
TEST_NO_TAG("Multicast video call",call_multicast_video),
TEST_NO_TAG("Early media multicast video call",early_media_with_multicast_video),
#endif
};
......
......@@ -489,55 +489,55 @@ end:
#endif
static test_t offeranswer_tests[] = {
{ "Start with no config", start_with_no_config },
{ "Call failed because of codecs", call_failed_because_of_codecs },
{ "Simple call with different codec mappings", simple_call_with_different_codec_mappings},
{ "AVP to AVP call", avp_to_avp_call },
{ "AVP to AVPF call", avp_to_avpf_call },
{ "AVP to SAVP call", avp_to_savp_call },
{ "AVP to SAVPF call", avp_to_savpf_call },
{ "AVPF to AVP call", avpf_to_avp_call },
{ "AVPF to AVPF call", avpf_to_avpf_call },
{ "AVPF to SAVP call", avpf_to_savp_call },
{ "AVPF to SAVPF call", avpf_to_savpf_call },
{ "SAVP to AVP call", savp_to_avp_call },
{ "SAVP to AVPF call", savp_to_avpf_call },
{ "SAVP to SAVP call", savp_to_savp_call },
{ "SAVP to SAVPF call", savp_to_savpf_call },
{ "SAVPF to AVP call", savpf_to_avp_call },
{ "SAVPF to AVPF call", savpf_to_avpf_call },
{ "SAVPF to SAVP call", savpf_to_savp_call },
{ "SAVPF to SAVPF call", savpf_to_savpf_call },
{ "SAVPF/DTLS to SAVPF/DTLS call", savpf_dtls_to_savpf_dtls_call},
{ "SAVPF/DTLS to SAVPF/DTLS encryption mandatory call", savpf_dtls_to_savpf_dtls_encryption_mandatory_call},
{ "SAVPF/DTLS to SAVPF call", savpf_dtls_to_savpf_call},
{ "SAVPF/DTLS to SAVPF encryption mandatory call", savpf_dtls_to_savpf_encryption_mandatory_call},
{ "SAVPF/DTLS to AVPF call", savpf_dtls_to_avpf_call},
TEST_NO_TAG("Start with no config", start_with_no_config),
TEST_NO_TAG("Call failed because of codecs", call_failed_because_of_codecs),
TEST_NO_TAG("Simple call with different codec mappings", simple_call_with_different_codec_mappings),
TEST_NO_TAG("AVP to AVP call", avp_to_avp_call),
TEST_NO_TAG("AVP to AVPF call", avp_to_avpf_call),
TEST_NO_TAG("AVP to SAVP call", avp_to_savp_call),
TEST_NO_TAG("AVP to SAVPF call", avp_to_savpf_call),
TEST_NO_TAG("AVPF to AVP call", avpf_to_avp_call),
TEST_NO_TAG("AVPF to AVPF call", avpf_to_avpf_call),
TEST_NO_TAG("AVPF to SAVP call", avpf_to_savp_call),
TEST_NO_TAG("AVPF to SAVPF call", avpf_to_savpf_call),
TEST_NO_TAG("SAVP to AVP call", savp_to_avp_call),
TEST_NO_TAG("SAVP to AVPF call", savp_to_avpf_call),
TEST_NO_TAG("SAVP to SAVP call", savp_to_savp_call),
TEST_NO_TAG("SAVP to SAVPF call", savp_to_savpf_call),
TEST_NO_TAG("SAVPF to AVP call", savpf_to_avp_call),
TEST_NO_TAG("SAVPF to AVPF call", savpf_to_avpf_call),
TEST_NO_TAG("SAVPF to SAVP call", savpf_to_savp_call),
TEST_NO_TAG("SAVPF to SAVPF call", savpf_to_savpf_call),
TEST_NO_TAG("SAVPF/DTLS to SAVPF/DTLS call", savpf_dtls_to_savpf_dtls_call),
TEST_NO_TAG("SAVPF/DTLS to SAVPF/DTLS encryption mandatory call", savpf_dtls_to_savpf_dtls_encryption_mandatory_call),
TEST_NO_TAG("SAVPF/DTLS to SAVPF call", savpf_dtls_to_savpf_call),
TEST_NO_TAG("SAVPF/DTLS to SAVPF encryption mandatory call", savpf_dtls_to_savpf_encryption_mandatory_call),
TEST_NO_TAG("SAVPF/DTLS to AVPF call", savpf_dtls_to_avpf_call),
#ifdef VIDEO_ENABLED
{ "AVP to AVP video call", avp_to_avp_video_call },
{ "AVP to AVPF video call", avp_to_avpf_video_call },
{ "AVP to SAVP video call", avp_to_savp_video_call },
{ "AVP to SAVPF video call", avp_to_savpf_video_call },
{ "AVPF to AVP video call", avpf_to_avp_video_call },
{ "AVPF to AVPF video call", avpf_to_avpf_video_call },
{ "AVPF to SAVP video call", avpf_to_savp_video_call },
{ "AVPF to SAVPF video call", avpf_to_savpf_video_call },
{ "SAVP to AVP video call", savp_to_avp_video_call },
{ "SAVP to AVPF video call", savp_to_avpf_video_call },
{ "SAVP to SAVP video call", savp_to_savp_video_call },
{ "SAVP to SAVPF video call", savp_to_savpf_video_call },
{ "SAVPF to AVP video call", savpf_to_avp_video_call },
{ "SAVPF to AVPF video call", savpf_to_avpf_video_call },
{ "SAVPF to SAVP video call", savpf_to_savp_video_call },
{ "SAVPF to SAVPF video call", savpf_to_savpf_video_call },
{ "SAVPF/DTLS to SAVPF/DTLS video call", savpf_dtls_to_savpf_dtls_video_call},
{ "SAVPF/DTLS to SAVPF/DTLS encryption mandatory video call", savpf_dtls_to_savpf_dtls_encryption_mandatory_video_call},
{ "SAVPF/DTLS to SAVPF video call", savpf_dtls_to_savpf_video_call},
{ "SAVPF/DTLS to SAVPF encryption mandatory video call", savpf_dtls_to_savpf_encryption_mandatory_video_call},
{ "SAVPF/DTLS to AVPF call", savpf_dtls_to_avpf_video_call},
{ "Compatible AVPF features", compatible_avpf_features },
{ "Incompatible AVPF features", incompatible_avpf_features },
TEST_NO_TAG("AVP to AVP video call", avp_to_avp_video_call),
TEST_NO_TAG("AVP to AVPF video call", avp_to_avpf_video_call),
TEST_NO_TAG("AVP to SAVP video call", avp_to_savp_video_call),
TEST_NO_TAG("AVP to SAVPF video call", avp_to_savpf_video_call),
TEST_NO_TAG("AVPF to AVP video call", avpf_to_avp_video_call),
TEST_NO_TAG("AVPF to AVPF video call", avpf_to_avpf_video_call),
TEST_NO_TAG("AVPF to SAVP video call", avpf_to_savp_video_call),
TEST_NO_TAG("AVPF to SAVPF video call", avpf_to_savpf_video_call),
TEST_NO_TAG("SAVP to AVP video call", savp_to_avp_video_call),
TEST_NO_TAG("SAVP to AVPF video call", savp_to_avpf_video_call),
TEST_NO_TAG("SAVP to SAVP video call", savp_to_savp_video_call),
TEST_NO_TAG("SAVP to SAVPF video call", savp_to_savpf_video_call),
TEST_NO_TAG("SAVPF to AVP video call", savpf_to_avp_video_call),
TEST_NO_TAG("SAVPF to AVPF video call", savpf_to_avpf_video_call),
TEST_NO_TAG("SAVPF to SAVP video call", savpf_to_savp_video_call),
TEST_NO_TAG("SAVPF to SAVPF video call", savpf_to_savpf_video_call),
TEST_NO_TAG("SAVPF/DTLS to SAVPF/DTLS video call", savpf_dtls_to_savpf_dtls_video_call),
TEST_NO_TAG("SAVPF/DTLS to SAVPF/DTLS encryption mandatory video call", savpf_dtls_to_savpf_dtls_encryption_mandatory_video_call),
TEST_NO_TAG("SAVPF/DTLS to SAVPF video call", savpf_dtls_to_savpf_video_call),
TEST_NO_TAG("SAVPF/DTLS to SAVPF encryption mandatory video call", savpf_dtls_to_savpf_encryption_mandatory_video_call),
TEST_NO_TAG("SAVPF/DTLS to AVPF call", savpf_dtls_to_avpf_video_call),
TEST_NO_TAG("Compatible AVPF features", compatible_avpf_features),
TEST_NO_TAG("Incompatible AVPF features", incompatible_avpf_features)
#endif
};
......
......@@ -98,9 +98,9 @@ static void sintel_trailer_opus_vp8_test(void) {
}
test_t player_tests[] = {
{ "Sintel trailer opus/h264" , sintel_trailer_opus_h264_test },
{ "Sintel trailer pcmu/h264" , sintel_trailer_pcmu_h264_test },
{ "Sintel trailer opus/VP8" , sintel_trailer_opus_vp8_test }
TEST_NO_TAG("Sintel trailer opus/h264", sintel_trailer_opus_h264_test),
TEST_NO_TAG("Sintel trailer pcmu/h264", sintel_trailer_pcmu_h264_test),