diff --git a/tester/call_tester.c b/tester/call_tester.c index d16fd8926..eeb8c81f2 100644 --- a/tester/call_tester.c +++ b/tester/call_tester.c @@ -4377,7 +4377,7 @@ test_t call_tests[] = { test_suite_t call_test_suite = { "Single Call", - NULL, + liblinphone_tester_setup, NULL, sizeof(call_tests) / sizeof(call_tests[0]), call_tests diff --git a/tester/dtmf_tester.c b/tester/dtmf_tester.c index 2d8068e87..38d6c3579 100644 --- a/tester/dtmf_tester.c +++ b/tester/dtmf_tester.c @@ -173,7 +173,7 @@ test_t dtmf_tests[] = { test_suite_t dtmf_test_suite = { "DTMF", - NULL, + liblinphone_tester_setup, NULL, sizeof(dtmf_tests) / sizeof(dtmf_tests[0]), dtmf_tests diff --git a/tester/eventapi_tester.c b/tester/eventapi_tester.c index d564f2f42..e45cfea31 100644 --- a/tester/eventapi_tester.c +++ b/tester/eventapi_tester.c @@ -242,10 +242,11 @@ static void subscribe_test_with_args2(bool_t terminated_by_subscriber, RefreshTe BC_ASSERT_TRUE(wait_for_list(lcs,&marie->stat.number_of_LinphoneSubscriptionOutgoingInit,1,1000)); BC_ASSERT_TRUE(wait_for_list(lcs,&pauline->stat.number_of_LinphoneSubscriptionIncomingReceived,1,3000)); - /*check good receipt of custom headers*/ - BC_ASSERT_STRING_EQUAL(linphone_event_get_custom_header(pauline->lev,"My-Header"),"pouet"); - BC_ASSERT_STRING_EQUAL(linphone_event_get_custom_header(pauline->lev,"My-Header2"),"pimpon"); - + if (pauline->stat.number_of_LinphoneSubscriptionIncomingReceived == 1) { + /*check good receipt of custom headers*/ + BC_ASSERT_STRING_EQUAL(linphone_event_get_custom_header(pauline->lev,"My-Header"),"pouet"); + BC_ASSERT_STRING_EQUAL(linphone_event_get_custom_header(pauline->lev,"My-Header2"),"pimpon"); + } BC_ASSERT_TRUE(wait_for_list(lcs,&marie->stat.number_of_LinphoneSubscriptionActive,1,5000)); BC_ASSERT_TRUE(wait_for_list(lcs,&pauline->stat.number_of_LinphoneSubscriptionActive,1,5000)); @@ -368,7 +369,7 @@ test_t event_tests[] = { test_suite_t event_test_suite = { "Event", - NULL, + liblinphone_tester_setup, NULL, sizeof(event_tests) / sizeof(event_tests[0]), event_tests diff --git a/tester/flexisip_tester.c b/tester/flexisip_tester.c index 4148869be..850b64ef2 100644 --- a/tester/flexisip_tester.c +++ b/tester/flexisip_tester.c @@ -936,7 +936,7 @@ test_t flexisip_tests[] = { test_suite_t flexisip_test_suite = { "Flexisip", - NULL, + liblinphone_tester_setup, NULL, sizeof(flexisip_tests) / sizeof(flexisip_tests[0]), flexisip_tests diff --git a/tester/liblinphone_tester.h b/tester/liblinphone_tester.h index c60ca9c77..63af31569 100644 --- a/tester/liblinphone_tester.h +++ b/tester/liblinphone_tester.h @@ -52,6 +52,7 @@ extern test_suite_t video_test_suite; extern test_suite_t multicast_call_test_suite; extern test_suite_t multi_call_test_suite; extern test_suite_t proxy_config_test_suite; +extern int manager_count; extern int liblinphone_tester_ipv6_available(void); @@ -329,5 +330,7 @@ static const int audio_cmp_max_shift=20; int linphone_core_manager_get_max_audio_down_bw(const LinphoneCoreManager *mgr); int linphone_core_manager_get_max_audio_up_bw(const LinphoneCoreManager *mgr); void video_call_base_2(LinphoneCoreManager* pauline,LinphoneCoreManager* marie, bool_t using_policy,LinphoneMediaEncryption mode, bool_t callee_video_enabled, bool_t caller_video_enabled); -#endif /* LIBLINPHONE_TESTER_H_ */ +int liblinphone_tester_setup(); + +#endif /* LIBLINPHONE_TESTER_H_ */ diff --git a/tester/log_collection_tester.c b/tester/log_collection_tester.c index fa339a710..663b13777 100644 --- a/tester/log_collection_tester.c +++ b/tester/log_collection_tester.c @@ -326,7 +326,7 @@ test_t log_collection_tests[] = { test_suite_t log_collection_test_suite = { "LogCollection", - NULL, + liblinphone_tester_setup, NULL, sizeof(log_collection_tests) / sizeof(log_collection_tests[0]), log_collection_tests diff --git a/tester/message_tester.c b/tester/message_tester.c index eeba447ca..7574ba421 100644 --- a/tester/message_tester.c +++ b/tester/message_tester.c @@ -1717,7 +1717,7 @@ test_t message_tests[] = { test_suite_t message_test_suite = { "Message", - NULL, + liblinphone_tester_setup, NULL, sizeof(message_tests) / sizeof(message_tests[0]), message_tests diff --git a/tester/multi_call_tester.c b/tester/multi_call_tester.c index a1ca03ec3..612858a1c 100644 --- a/tester/multi_call_tester.c +++ b/tester/multi_call_tester.c @@ -283,9 +283,9 @@ static void simple_encrypted_conference_with_ice(LinphoneMediaEncryption mode) { ... linphone_core_iterate() at linphonecore.c:2 620 ... - + linphone_core_set_stun_server() initiates an asynchronous resolution, but it needs a few iteration before it is completed. - By calling private function linphone_core_get_stun_server_addrinfo() we make sure to wait that the resolution is done before the + By calling private function linphone_core_get_stun_server_addrinfo() we make sure to wait that the resolution is done before the test calls actually start. */ linphone_core_get_stun_server_addrinfo(marie->lc); @@ -555,7 +555,7 @@ test_t multi_call_tests[] = { test_suite_t multi_call_test_suite = { "Multi call", - NULL, + liblinphone_tester_setup, NULL, sizeof(multi_call_tests) / sizeof(multi_call_tests[0]), multi_call_tests diff --git a/tester/multicast_call_tester.c b/tester/multicast_call_tester.c index 4c85ea9ee..4bb4f0334 100644 --- a/tester/multicast_call_tester.c +++ b/tester/multicast_call_tester.c @@ -271,7 +271,7 @@ test_t multicast_call_tests[] = { test_suite_t multicast_call_test_suite = { "Multicast Call", - NULL, + liblinphone_tester_setup, NULL, sizeof(multicast_call_tests) / sizeof(multicast_call_tests[0]), multicast_call_tests diff --git a/tester/offeranswer_tester.c b/tester/offeranswer_tester.c index 8a5667391..2b25f9252 100644 --- a/tester/offeranswer_tester.c +++ b/tester/offeranswer_tester.c @@ -418,7 +418,7 @@ static test_t offeranswer_tests[] = { test_suite_t offeranswer_test_suite = { "Offer-answer", - NULL, + liblinphone_tester_setup, NULL, sizeof(offeranswer_tests) / sizeof(offeranswer_tests[0]), offeranswer_tests diff --git a/tester/player_tester.c b/tester/player_tester.c index 909fdffe9..9e6ec1a0b 100644 --- a/tester/player_tester.c +++ b/tester/player_tester.c @@ -84,7 +84,7 @@ test_t player_tests[] = { test_suite_t player_test_suite = { "Player", - NULL, + liblinphone_tester_setup, NULL, sizeof(player_tests) / sizeof(test_t), player_tests diff --git a/tester/presence_tester.c b/tester/presence_tester.c index 7ce6dc599..68bc99eb3 100644 --- a/tester/presence_tester.c +++ b/tester/presence_tester.c @@ -484,7 +484,7 @@ test_t presence_tests[] = { test_suite_t presence_test_suite = { "Presence", - NULL, + liblinphone_tester_setup, NULL, sizeof(presence_tests) / sizeof(presence_tests[0]), presence_tests diff --git a/tester/proxy_config_tester.c b/tester/proxy_config_tester.c index 15b1a0797..e9c04aec9 100644 --- a/tester/proxy_config_tester.c +++ b/tester/proxy_config_tester.c @@ -68,7 +68,7 @@ test_t proxy_config_tests[] = { test_suite_t proxy_config_test_suite = { "Proxy config", - NULL, + liblinphone_tester_setup, NULL, sizeof(proxy_config_tests) / sizeof(proxy_config_tests[0]), proxy_config_tests diff --git a/tester/quality_reporting_tester.c b/tester/quality_reporting_tester.c index 81040e438..8fd70f44a 100644 --- a/tester/quality_reporting_tester.c +++ b/tester/quality_reporting_tester.c @@ -396,7 +396,7 @@ test_t quality_reporting_tests[] = { test_suite_t quality_reporting_test_suite = { "QualityReporting", - NULL, + liblinphone_tester_setup, NULL, sizeof(quality_reporting_tests) / sizeof(quality_reporting_tests[0]), quality_reporting_tests diff --git a/tester/register_tester.c b/tester/register_tester.c index e97bd63c2..dd414bd01 100644 --- a/tester/register_tester.c +++ b/tester/register_tester.c @@ -314,6 +314,7 @@ static void simple_authenticated_register(){ counters = &lcm->stat; register_with_refresh(lcm,FALSE,auth_domain,route); BC_ASSERT_EQUAL(counters->number_of_auth_info_requested,0, int, "%d"); + linphone_core_manager_destroy(lcm); } static void ha1_authenticated_register(){ @@ -329,6 +330,7 @@ static void ha1_authenticated_register(){ counters = &lcm->stat; register_with_refresh(lcm,FALSE,auth_domain,route); BC_ASSERT_EQUAL(counters->number_of_auth_info_requested,0, int, "%d"); + linphone_core_manager_destroy(lcm); } static void authenticated_register_with_no_initial_credentials(){ @@ -892,7 +894,7 @@ test_t register_tests[] = { test_suite_t register_test_suite = { "Register", - NULL, + liblinphone_tester_setup, NULL, sizeof(register_tests) / sizeof(register_tests[0]), register_tests diff --git a/tester/setup_tester.c b/tester/setup_tester.c index 444dc773d..fe243d288 100644 --- a/tester/setup_tester.c +++ b/tester/setup_tester.c @@ -268,7 +268,7 @@ static void devices_reload_test(void) { static void codec_usability_test(void) { LinphoneCoreManager *mgr = linphone_core_manager_new2("empty_rc", FALSE); PayloadType *pt = linphone_core_find_payload_type(mgr->lc, "PCMU", 8000, -1); - + BC_ASSERT_TRUE(pt!=NULL); if (!pt) goto end; /*no limit*/ @@ -279,12 +279,12 @@ static void codec_usability_test(void) { linphone_core_set_upload_bandwidth(mgr->lc, 50); linphone_core_set_download_bandwidth(mgr->lc, 50); BC_ASSERT_FALSE(linphone_core_check_payload_type_usability(mgr->lc, pt)); - + /*reasonable limit*/ linphone_core_set_upload_bandwidth(mgr->lc, 200); linphone_core_set_download_bandwidth(mgr->lc, 200); BC_ASSERT_TRUE(linphone_core_check_payload_type_usability(mgr->lc, pt)); - + end: linphone_core_manager_destroy(mgr); } @@ -308,7 +308,7 @@ test_t setup_tests[] = { test_suite_t setup_test_suite = { "Setup", - NULL, + liblinphone_tester_setup, NULL, sizeof(setup_tests) / sizeof(setup_tests[0]), setup_tests diff --git a/tester/stun_tester.c b/tester/stun_tester.c index 03aa1ac13..89762cab3 100644 --- a/tester/stun_tester.c +++ b/tester/stun_tester.c @@ -112,7 +112,7 @@ test_t stun_tests[] = { test_suite_t stun_test_suite = { "Stun", - NULL, + liblinphone_tester_setup, NULL, sizeof(stun_tests) / sizeof(stun_tests[0]), stun_tests diff --git a/tester/tester.c b/tester/tester.c index 42e5140f7..7c5c83a7d 100644 --- a/tester/tester.c +++ b/tester/tester.c @@ -32,7 +32,7 @@ static bool_t liblinphone_tester_ipv6_enabled=FALSE; static int liblinphone_tester_keep_accounts_flag = 0; static int liblinphone_tester_keep_record_files = FALSE; -static int manager_count = 0; +int manager_count = 0; const char* test_domain="sipopen.example.org"; const char* auth_domain="sip.example.org"; @@ -233,6 +233,7 @@ bool_t transport_supported(LinphoneTransportType transport) { return supported; } + LinphoneCoreManager* linphone_core_manager_init(const char* rc_file) { LinphoneCoreManager* mgr= ms_new0(LinphoneCoreManager,1); char *rc_path = NULL; @@ -441,3 +442,11 @@ int linphone_core_manager_get_max_audio_up_bw(const LinphoneCoreManager *mgr) { return linphone_core_manager_get_max_audio_bw_base(mgr->stat.audio_upload_bandwidth , sizeof(mgr->stat.audio_upload_bandwidth)/sizeof(int)); } + +int liblinphone_tester_setup() { + if (manager_count != 0) { + ms_error("%d linphone core manager still alive!", manager_count); + return 1; + } + return 0; +} diff --git a/tester/tunnel_tester.c b/tester/tunnel_tester.c index 4355fd9e1..98a28e7c1 100644 --- a/tester/tunnel_tester.c +++ b/tester/tunnel_tester.c @@ -270,7 +270,7 @@ test_t tunnel_tests[] = { test_suite_t tunnel_test_suite = { "Tunnel", - NULL, + liblinphone_tester_setup, NULL, sizeof(tunnel_tests) / sizeof(tunnel_tests[0]), tunnel_tests diff --git a/tester/upnp_tester.c b/tester/upnp_tester.c index 3f39b0c9c..a081f91c1 100644 --- a/tester/upnp_tester.c +++ b/tester/upnp_tester.c @@ -58,7 +58,7 @@ test_t upnp_tests[] = { test_suite_t upnp_test_suite = { "Upnp", - NULL, + liblinphone_tester_setup, NULL, sizeof(upnp_tests) / sizeof(upnp_tests[0]), upnp_tests diff --git a/tester/video_tester.c b/tester/video_tester.c index 99e656f4e..5d0115562 100644 --- a/tester/video_tester.c +++ b/tester/video_tester.c @@ -538,7 +538,7 @@ test_t video_tests[] = { test_suite_t video_test_suite = { "Video", - NULL, + liblinphone_tester_setup, NULL, sizeof(video_tests) / sizeof(video_tests[0]), video_tests