mirror of
https://github.com/signalwire/freeswitch.git
synced 2026-10-26 05:04:14 +00:00
[Unit-tests] Place module tests into their module's Makefile.am, fix tests, add missing Makefile.am to mod_png, implement recursive make check.
This commit is contained in:
1 parent
5e83ef7e7b
commit
751d5ff55b
20 files changed
+186
-89
No files matched your search
@@ -10,5 +10,12 @@ mod_test_la_SOURCES =
|
||||
mod_test_la_LIBADD = $(switch_builddir)/libfreeswitch.la $(SOFIALA) libtestmod.la
|
||||
mod_test_la_LDFLAGS = -avoid-version -module -no-undefined -shared
|
||||
|
||||
SUBDIRS=. test
|
||||
noinst_PROGRAMS = test/test_asr
|
||||
|
||||
test_test_asr_SOURCES = test/test_asr.c
|
||||
test_test_asr_CFLAGS = $(AM_CFLAGS) -I. -DSWITCH_TEST_BASE_DIR_FOR_CONF=\"${abs_builddir}/test\" -DSWITCH_TEST_BASE_DIR_OVERRIDE=\"${abs_builddir}/test\"
|
||||
test_test_asr_LDFLAGS = $(AM_LDFLAGS) -avoid-version -no-undefined $(freeswitch_LDFLAGS) $(switch_builddir)/libfreeswitch.la $(CORE_LIBS) $(APR_LIBS)
|
||||
test_test_asr_LDADD = libtestmod.la
|
||||
|
||||
TESTS = $(noinst_PROGRAMS)
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
include $(top_srcdir)/build/modmake.rulesam
|
||||
noinst_PROGRAMS = test_asr
|
||||
test_asr_CFLAGS = $(AM_CFLAGS) -I../
|
||||
test_asr_LDFLAGS = $(AM_LDFLAGS) -avoid-version -no-undefined $(freeswitch_LDFLAGS) $(switch_builddir)/libfreeswitch.la $(CORE_LIBS) $(APR_LIBS)
|
||||
test_asr_LDADD = ../libtestmod.la
|
||||
TESTS = $(noinst_PROGRAMS)
|
||||
@@ -73,12 +73,14 @@ FST_TEARDOWN_END()
|
||||
|
||||
FST_TEST_BEGIN(core_asr)
|
||||
{
|
||||
char path[1024];
|
||||
const char* session_id = "123435";
|
||||
char *grammar = switch_core_sprintf(fst_pool, "{start-input-timers=true,no-input-timeout=5000,speech-timeout=10000,channel-uuid=%s}default", session_id);
|
||||
fst_test_core_asr_open("test");
|
||||
sprintf(path, "%s%s%s%s", "file_string://silence_stream://3000,0!", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav!silence_stream://3000,0");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"file_string://silence_stream://3000,0!sounds/agent.wav!silence_stream://3000,0");
|
||||
path);
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "agent");
|
||||
fst_test_core_asr_resume();
|
||||
fst_test_core_asr(
|
||||
@@ -86,9 +88,10 @@ FST_TEST_BEGIN(core_asr)
|
||||
"silence_stream://30000,0");
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "no_input");
|
||||
fst_test_core_asr_resume();
|
||||
sprintf(path, "%s%s%s%s", "file_string://", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav!silence_stream://3000,0");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"file_string://sounds/agent.wav!silence_stream://3000,0");
|
||||
path);
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "agent");
|
||||
fst_test_core_asr_resume();
|
||||
fst_test_core_asr(
|
||||
@@ -96,22 +99,24 @@ FST_TEST_BEGIN(core_asr)
|
||||
"silence_stream://30000,0");
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "no_input");
|
||||
fst_test_core_asr_resume();
|
||||
sprintf(path, "%s%s%s%s", "file_string://", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav!silence_stream://3000,0");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"file_string://sounds/agent.wav!silence_stream://3000,0");
|
||||
path);
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "agent");
|
||||
fst_test_core_asr_pause();
|
||||
fst_test_core_asr_resume();
|
||||
sprintf(path, "%s%s%s%s", "file_string://", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav!silence_stream://3000,0");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"file_string://sounds/agent.wav!silence_stream://3000,0");
|
||||
path);
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "agent");
|
||||
fst_test_core_asr_close();
|
||||
|
||||
fst_test_core_asr_open("test");
|
||||
sprintf(path, "%s%s%s%s", "file_string://silence_stream://1000,0!", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/ivr-please_state_your_name_and_reason_for_calling.wav!silence_stream://3000,0");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"file_string://silence_stream://1000,0!sounds/ivr-please_state_your_name_and_reason_for_calling.wav!silence_stream://3000,0");
|
||||
path);
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "agent");
|
||||
fst_test_core_asr_close();
|
||||
}
|
||||
@@ -119,35 +124,40 @@ FST_TEST_END()
|
||||
|
||||
FST_TEST_BEGIN(core_asr_auto_resume)
|
||||
{
|
||||
char path[1024];
|
||||
const char* session_id = "123435";
|
||||
char *grammar = switch_core_sprintf(fst_pool, "{start-input-timers=true,no-input-timeout=5000,speech-timeout=10000,channel-uuid=%s}default", session_id);
|
||||
fst_test_core_asr_open("test");
|
||||
switch_set_flag(&ah, SWITCH_ASR_FLAG_AUTO_RESUME);
|
||||
sprintf(path, "%s%s%s%s", "file_string://silence_stream://3000,0!", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav!silence_stream://3000,0");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"file_string://silence_stream://3000,0!sounds/agent.wav!silence_stream://3000,0");
|
||||
path);
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "agent");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"silence_stream://30000,0");
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "no_input");
|
||||
sprintf(path, "%s%s%s%s", "file_string://", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav!silence_stream://3000,0");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"file_string://sounds/agent.wav!silence_stream://3000,0");
|
||||
path);
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "agent");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"silence_stream://30000,0");
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "no_input");
|
||||
fst_test_core_asr_resume();
|
||||
sprintf(path, "%s%s%s%s", "file_string://", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav!silence_stream://3000,0");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"file_string://sounds/agent.wav!silence_stream://3000,0");
|
||||
path);
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "agent");
|
||||
fst_test_core_asr_resume();
|
||||
sprintf(path, "%s%s%s%s", "file_string://silence_stream://1000,0!", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/ivr-please_state_your_name_and_reason_for_calling.wav!silence_stream://3000,0");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"file_string://silence_stream://1000,0!sounds/ivr-please_state_your_name_and_reason_for_calling.wav!silence_stream://3000,0");
|
||||
path);
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "agent");
|
||||
fst_test_core_asr_close();
|
||||
}
|
||||
@@ -155,21 +165,24 @@ FST_TEST_END()
|
||||
|
||||
FST_TEST_BEGIN(core_asr_abuse)
|
||||
{
|
||||
char path[1024];
|
||||
const char* session_id = "5351514";
|
||||
char *grammar = switch_core_sprintf(fst_pool, "{start-input-timers=true,no-input-timeout=5000,speech-timeout=10000,channel-uuid=%s}default", session_id);
|
||||
fst_test_core_asr_open("test");
|
||||
sprintf(path, "%s%s%s%s", "file_string://silence_stream://3000,0!", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav!silence_stream://3000,0");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"file_string://silence_stream://3000,0!sounds/agent.wav!silence_stream://3000,0");
|
||||
path);
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "agent");
|
||||
fst_test_core_asr_resume();
|
||||
fst_test_core_asr_resume();
|
||||
fst_test_core_asr_resume();
|
||||
fst_test_core_asr_pause();
|
||||
fst_test_core_asr_resume();
|
||||
sprintf(path, "%s%s%s%s", "file_string://", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav!silence_stream://3000,0");
|
||||
fst_test_core_asr(
|
||||
grammar,
|
||||
"file_string://sounds/agent.wav!silence_stream://3000,0");
|
||||
path);
|
||||
fst_check_string_equals(get_query_result_text(fst_pool, fst_asr_result), "agent");
|
||||
fst_test_core_asr_resume();
|
||||
|
||||
@@ -181,24 +194,30 @@ FST_TEST_END()
|
||||
|
||||
FST_SESSION_BEGIN(play_and_detect_1)
|
||||
{
|
||||
char path[1024];
|
||||
char path2[1024];
|
||||
const char *result_text = NULL;
|
||||
char *grammar = switch_core_session_sprintf(fst_session, "{start-input-timers=false,no-input-timeout=5000,speech-timeout=10000,channel-uuid=%s}default", switch_core_session_get_uuid(fst_session));
|
||||
fst_play_and_detect_speech_test_begin();
|
||||
|
||||
/* initial welcome and request */
|
||||
sprintf(path, "%s%s%s", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/ivr-please_state_your_name_and_reason_for_calling.wav");
|
||||
sprintf(path2, "%s%s%s", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav");
|
||||
fst_play_and_detect_speech_app_test("test",
|
||||
grammar,
|
||||
"sounds/ivr-please_state_your_name_and_reason_for_calling.wav",
|
||||
"sounds/agent.wav");
|
||||
path,
|
||||
path2);
|
||||
result_text = get_query_result_text(fst_pool, fst_asr_result);
|
||||
fst_requires(result_text != NULL);
|
||||
fst_check_string_equals(result_text, "agent");
|
||||
|
||||
/* follow up request */
|
||||
sprintf(path, "%s%s%s", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/ivr-please_state_your_name_and_reason_for_calling.wav");
|
||||
sprintf(path2, "%s%s%s%s", "file_string://1000,0!", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav");
|
||||
fst_play_and_detect_speech_app_test("test",
|
||||
grammar,
|
||||
"sounds/ivr-please_state_your_name_and_reason_for_calling.wav",
|
||||
"file_string://1000,0!sounds/agent.wav");
|
||||
path,
|
||||
path2);
|
||||
result_text = get_query_result_text(fst_pool, fst_asr_result);
|
||||
fst_requires(result_text != NULL);
|
||||
fst_check_string_equals(result_text, "agent");
|
||||
@@ -209,23 +228,28 @@ FST_SESSION_END()
|
||||
|
||||
FST_SESSION_BEGIN(play_and_detect_no_input_follow_up)
|
||||
{
|
||||
char path[1024];
|
||||
char path2[1024];
|
||||
const char *result_text = NULL;
|
||||
char *grammar = switch_core_session_sprintf(fst_session, "{start-input-timers=false,no-input-timeout=5000,speech-timeout=10000,channel-uuid=%s}", switch_core_session_get_uuid(fst_session));
|
||||
|
||||
switch_ivr_schedule_hangup(switch_epoch_time_now(NULL) + 60, switch_core_session_get_uuid(fst_session), SWITCH_CAUSE_NORMAL_CLEARING, SWITCH_FALSE);
|
||||
fst_play_and_detect_speech_test_begin();
|
||||
sprintf(path, "%s%s%s", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/ivr-please_state_your_name_and_reason_for_calling.wav");
|
||||
sprintf(path2, "%s%s%s%s", "file_string://silence_stream://4000,0!", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/agent.wav");
|
||||
fst_play_and_detect_speech_app_test("test",
|
||||
grammar,
|
||||
"sounds/ivr-please_state_your_name_and_reason_for_calling.wav",
|
||||
"file_string://silence_stream://4000,0!sounds/agent.wav");
|
||||
path,
|
||||
path2);
|
||||
result_text = get_query_result_text(fst_pool, fst_asr_result);
|
||||
fst_requires(result_text != NULL);
|
||||
fst_check_string_equals(result_text, "agent");
|
||||
|
||||
/* follow up request - no input */
|
||||
sprintf(path, "%s%s%s", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/ivr-please_state_your_name_and_reason_for_calling.wav");
|
||||
fst_play_and_detect_speech_app_test("test",
|
||||
grammar,
|
||||
"sounds/ivr-please_state_your_name_and_reason_for_calling.wav",
|
||||
path,
|
||||
"silence_stream://10000,0");
|
||||
result_text = get_query_result_text(fst_pool, fst_asr_result);
|
||||
fst_requires(result_text != NULL);
|
||||
@@ -237,15 +261,17 @@ FST_SESSION_END()
|
||||
|
||||
FST_SESSION_BEGIN(play_and_detect_no_input)
|
||||
{
|
||||
char path[1024];
|
||||
const char *result_text = NULL;
|
||||
|
||||
switch_ivr_schedule_hangup(switch_epoch_time_now(NULL) + 60, switch_core_session_get_uuid(fst_session), SWITCH_CAUSE_NORMAL_CLEARING, SWITCH_FALSE);
|
||||
fst_play_and_detect_speech_test_begin();
|
||||
sprintf(path, "%s%s%s", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/ivr-please_state_your_name_and_reason_for_calling.wav");
|
||||
fst_play_and_detect_speech_app_test("test",
|
||||
switch_core_session_sprintf(fst_session,
|
||||
"{start-input-timers=false,no-input-timeout=5000,speech-timeout=10000,channel-uuid=%s}default",
|
||||
switch_core_session_get_uuid(fst_session)),
|
||||
"sounds/ivr-please_state_your_name_and_reason_for_calling.wav",
|
||||
path,
|
||||
"silence_stream://10000,0");
|
||||
result_text = get_query_result_text(fst_pool, fst_asr_result);
|
||||
fst_requires(result_text != NULL);
|
||||
@@ -257,16 +283,17 @@ FST_SESSION_END()
|
||||
|
||||
FST_SESSION_BEGIN(play_and_detect_start_input_timers)
|
||||
{
|
||||
char path[1024];
|
||||
const char *result_text = NULL;
|
||||
|
||||
switch_ivr_schedule_hangup(switch_epoch_time_now(NULL) + 60, switch_core_session_get_uuid(fst_session), SWITCH_CAUSE_NORMAL_CLEARING, SWITCH_FALSE);
|
||||
fst_play_and_detect_speech_test_begin();
|
||||
|
||||
sprintf(path, "%s%s%s", SWITCH_GLOBAL_dirs.conf_dir, SWITCH_PATH_SEPARATOR, "sounds/ivr-please_state_your_name_and_reason_for_calling.wav");
|
||||
fst_play_and_detect_speech_app_test("test",
|
||||
switch_core_session_sprintf(fst_session,
|
||||
"{start-input-timers=true,no-input-timeout=5000,speech-timeout=10000,channel-uuid=%s}default",
|
||||
switch_core_session_get_uuid(fst_session)),
|
||||
"sounds/ivr-please_state_your_name_and_reason_for_calling.wav",
|
||||
path,
|
||||
"silence_stream://10000,0");
|
||||
result_text = get_query_result_text(fst_pool, fst_asr_result);
|
||||
fst_requires(result_text != NULL);
|
||||
@@ -282,7 +309,7 @@ FST_TEST_BEGIN(unload_test)
|
||||
{
|
||||
const char *err = NULL;
|
||||
switch_sleep(1000000);
|
||||
fst_check(switch_loadable_module_unload_module((char *)"../.libs", (char *)"mod_test", SWITCH_FALSE, &err) == SWITCH_STATUS_SUCCESS);
|
||||
fst_check(switch_loadable_module_unload_module(SWITCH_GLOBAL_dirs.mod_dir, (char *)"mod_test", SWITCH_FALSE, &err) == SWITCH_STATUS_SUCCESS);
|
||||
}
|
||||
FST_TEST_END()
|
||||
|
||||
|
||||
Reference in new issue
Block a user