提交 7724270d authored 作者: William King's avatar William King

FS-8233 convert unit tests frameworks to non-recursive makefiles

上级 967245bf
EXTRA_DIST =
SUBDIRS = . src build tests/unit
SUBDIRS = . src build
AUTOMAKE_OPTIONS = foreign subdir-objects
NAME = freeswitch
......@@ -775,3 +775,15 @@ support:
@cp support-d/.screenrc ~
@cp support-d/.bashrc ~
@test -f ~/.cc-mode-installed || sh support-d/install-cc-mode.sh && touch ~/.cc-mode-installed
# Using a non-recursive Makefile structure for the automated tests so that the tests have visibility into
# targets in the rest of the FreeSWITCH tree. This greatly simplifies dependency tracking at the expense
# of longer test target names. Since the tests are expected to be run easily and rapidly after minor source
# changes this is the most effective structure.
TESTS =
check_PROGRAMS =
include tests/unit/unit.mk
......@@ -1671,7 +1671,6 @@ ac_cv_file_dbd_apr_dbd_mysql_c=no
AC_CONFIG_FILES([Makefile
build/Makefile
src/Makefile
tests/unit/Makefile
src/mod/Makefile
src/mod/applications/mod_abstraction/Makefile
src/mod/applications/mod_avmd/Makefile
......
AUTOMAKE_OPTIONS = foreign
FSLD = $(top_builddir)/libfreeswitch.la $(top_builddir)/libs/apr/libapr-1.la $(top_builddir)/libs/apr-util/libaprutil-1.la
TESTS =
check_PROGRAMS =
if HAVE_TAP
TESTS += switch_event
check_PROGRAMS += switch_event
switch_event_SOURCES = switch_event.c
switch_event_CFLAGS = $(SWITCH_AM_CFLAGS)
switch_event_LDADD = $(FSLD)
switch_event_LDFLAGS = $(SWITCH_AM_LDFLAGS) -ltap
TESTS += switch_hash
check_PROGRAMS += switch_hash
switch_hash_SOURCES = switch_hash.c
switch_hash_CFLAGS = $(SWITCH_AM_CFLAGS)
switch_hash_LDADD = $(FSLD)
switch_hash_LDFLAGS = $(SWITCH_AM_LDFLAGS) -ltap
else
check: error
error:
$(error You must install libtap-dev to build these unit tests)
endif
......@@ -9,7 +9,7 @@ int main () {
switch_bool_t verbose = SWITCH_TRUE;
const char *err = NULL;
switch_time_t start_ts, end_ts;
int rc = 0, loops = 10;
int rc = 0, loops = 10, x = 0;
switch_status_t status = SWITCH_STATUS_SUCCESS;
char **index = NULL;
unsigned long long micro_total = 0;
......@@ -31,7 +31,7 @@ int main () {
}
index = calloc(loops, sizeof(char *));
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
index[x] = switch_mprintf("%d", x);
}
......@@ -42,13 +42,13 @@ int main () {
ok( status == SWITCH_STATUS_SUCCESS,"Create Event");
#ifndef BENCHMARK
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
status = switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, index[x], index[x]);
ok( status == SWITCH_STATUS_SUCCESS,"Add header to event");
}
#else
small_start_ts = switch_time_now();
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
if ( switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, index[x], index[x]) != SWITCH_STATUS_SUCCESS) {
fail("Failed to add header to event");
}
......@@ -64,12 +64,12 @@ int main () {
#ifndef BENCHMARK
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
is(switch_event_get_header(event, index[x]), index[x], "correct header value returned");
}
#else
small_start_ts = switch_time_now();
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
if ( !switch_event_get_header(event, index[x])) {
fail("Failed to lookup event header value");
}
......@@ -89,7 +89,7 @@ int main () {
end_ts = switch_time_now();
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
free(index[x]);
}
free(index);
......
......@@ -13,7 +13,8 @@ int main () {
unsigned long long micro_total = 0;
double micro_per = 0;
double rate_per_sec = 0;
int x = 0;
#ifdef BENCHMARK
switch_time_t small_start_ts, small_end_ts;
#endif
......@@ -42,7 +43,7 @@ int main () {
}
index = calloc(loops, sizeof(char *));
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
index[x] = switch_mprintf("%d", x);
}
......@@ -51,13 +52,13 @@ int main () {
/* Insertion */
#ifndef BENCHMARK
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
status = switch_core_hash_insert(hash, index[x], (void *) index[x]);
ok(status == SWITCH_STATUS_SUCCESS, "Insert into the hash");
}
#else
small_start_ts = switch_time_now();
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
switch_core_hash_insert(hash, index[x], (void *) index[x]);
}
small_end_ts = switch_time_now();
......@@ -72,7 +73,7 @@ int main () {
/* Lookup */
#ifndef BENCHMARK
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
char *data = NULL;
data = switch_core_hash_find(hash, index[x]);
ok(data != NULL, "Successful lookup");
......@@ -80,7 +81,7 @@ int main () {
}
#else
small_start_ts = switch_time_now();
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
if ( ! switch_core_hash_find(hash, index[x])) {
fail("Failed to properly locate one of the values");
}
......@@ -97,7 +98,7 @@ int main () {
/* Delete */
#ifndef BENCHMARK
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
char *data = NULL;
data = switch_core_hash_delete(hash, index[x]);
ok(data != NULL, "Create a new hash");
......@@ -105,7 +106,7 @@ int main () {
}
#else
small_start_ts = switch_time_now();
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
if ( !switch_core_hash_delete(hash, index[x])) {
fail("Failed to delete and return the value");
}
......@@ -124,7 +125,7 @@ int main () {
/* END LOOPS */
switch_core_hash_destroy(&hash);
for ( int x = 0; x < loops; x++) {
for ( x = 0; x < loops; x++) {
free(index[x]);
}
free(index);
......
AUTOMAKE_OPTIONS = foreign
FSLD = $(top_builddir)/libfreeswitch.la $(top_builddir)/libs/apr/libapr-1.la $(top_builddir)/libs/apr-util/libaprutil-1.la
TESTS += tests/unit/switch_event
check_PROGRAMS += tests/unit/switch_event
tests_unit_switch_event_SOURCES = tests/unit/switch_event.c
tests_unit_switch_event_CFLAGS = $(SWITCH_AM_CFLAGS)
tests_unit_switch_event_LDADD = $(FSLD)
tests_unit_switch_event_LDFLAGS = $(SWITCH_AM_LDFLAGS) -ltap
TESTS += tests/unit/switch_hash
check_PROGRAMS += tests/unit/switch_hash
tests_unit_switch_hash_SOURCES = tests/unit/switch_hash.c
tests_unit_switch_hash_CFLAGS = $(SWITCH_AM_CFLAGS)
tests_unit_switch_hash_LDADD = $(FSLD)
tests_unit_switch_hash_LDFLAGS = $(SWITCH_AM_LDFLAGS) -ltap
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论