tests: Introduce running tests with GNU autotest in OpenBSC
The quality of the tests is of different value but it is good to get started and improve from here.
This commit is contained in:
parent
d5b3ca621b
commit
6c88217c19
|
@ -52,4 +52,10 @@ tests/sccp/sccp_test
|
|||
tests/sms/sms_test
|
||||
tests/timer/timer_test
|
||||
|
||||
tests/atconfig
|
||||
tests/package.m4
|
||||
tests/testsuite
|
||||
tests/testsuite.log
|
||||
|
||||
|
||||
src/openbsc.cfg*
|
||||
|
|
|
@ -4,6 +4,7 @@ AC_INIT([openbsc],
|
|||
[openbsc-devel@lists.openbsc.org])
|
||||
|
||||
AM_INIT_AUTOMAKE([dist-bzip2])
|
||||
AC_CONFIG_TESTDIR(tests)
|
||||
|
||||
dnl kernel style compile messages
|
||||
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
||||
|
|
|
@ -2,4 +2,48 @@ SUBDIRS = debug gsm0408 db channel mgcp
|
|||
|
||||
if BUILD_NAT
|
||||
SUBDIRS += bsc-nat
|
||||
ENABLE_NAT_TEST = echo 'm4_define([ENABLE_NAT_TEST], [1])';
|
||||
else
|
||||
ENABLE_NAT_TEST = echo '';
|
||||
endif
|
||||
|
||||
|
||||
# The `:;' works around a Bash 3.2 bug when the output is not writeable.
|
||||
$(srcdir)/package.m4: $(top_srcdir)/configure.ac $(top_builddir)/config.log
|
||||
:;{ \
|
||||
echo '# Signature of the current package.' && \
|
||||
echo 'm4_define([AT_PACKAGE_NAME],' && \
|
||||
echo ' [$(PACKAGE_NAME)])' && \
|
||||
echo 'm4_define([AT_PACKAGE_TARNAME],' && \
|
||||
echo ' [$(PACKAGE_TARNAME)])' && \
|
||||
echo 'm4_define([AT_PACKAGE_VERSION],' && \
|
||||
echo ' [$(PACKAGE_VERSION)])' && \
|
||||
echo 'm4_define([AT_PACKAGE_STRING],' && \
|
||||
echo ' [$(PACKAGE_STRING)])' && \
|
||||
echo 'm4_define([AT_PACKAGE_BUGREPORT],' && \
|
||||
echo ' [$(PACKAGE_BUGREPORT)])'; \
|
||||
echo 'm4_define([AT_PACKAGE_URL],' && \
|
||||
echo ' [$(PACKAGE_URL)])'; \
|
||||
$(ENABLE_NAT_TEST) \
|
||||
} >'$(srcdir)/package.m4'
|
||||
|
||||
EXTRA_DIST = testsuite.at $(srcdir)/package.m4 $(TESTSUITE)
|
||||
TESTSUITE = $(srcdir)/testsuite
|
||||
|
||||
check-local: atconfig $(TESTSUITE)
|
||||
$(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS)
|
||||
|
||||
installcheck-local: atconfig $(TESTSUITE)
|
||||
$(SHELL) '$(TESTSUITE)' AUTOTEST_PATH='$(bindir)' \
|
||||
$(TESTSUITEFLAGS)
|
||||
|
||||
clean-local:
|
||||
test ! -f '$(TESTSUITE)' || \
|
||||
$(SHELL) '$(TESTSUITE)' --clean
|
||||
$(RM) -f atconfig
|
||||
|
||||
AUTOM4TE = $(SHELL) $(top_srcdir)/missing --run autom4te
|
||||
AUTOTEST = $(AUTOM4TE) --language=autotest
|
||||
$(TESTSUITE): $(srcdir)/testsuite.at $(srcdir)/package.m4
|
||||
$(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at
|
||||
mv $@.tmp $@
|
||||
|
|
|
@ -2,7 +2,7 @@ INCLUDES = $(all_includes) -I$(top_srcdir)/include
|
|||
AM_CFLAGS=-Wall -ggdb3 $(LIBOSMOCORE_CFLAGS) $(LIBOSMOGSM_CFLAGS) $(LIBOSMOSCCP_CFLAGS) $(LIBOSMOABIS_CFLAGS) $(COVERAGE_CFLAGS)
|
||||
AM_LDFLAGS = $(COVERAGE_LDFLAGS)
|
||||
|
||||
EXTRA_DIST = bsc_data.c
|
||||
EXTRA_DIST = bsc_nat_test.ok
|
||||
|
||||
noinst_PROGRAMS = bsc_nat_test
|
||||
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
Testing BSS Filtering.
|
||||
Going to test item: 0
|
||||
Going to test item: 1
|
||||
Going to test item: 2
|
||||
Going to test item: 3
|
||||
Going to test item: 4
|
||||
Going to test item: 5
|
||||
Going to test item: 6
|
||||
Going to test item: 7
|
||||
Going to test item: 8
|
||||
Going to test item: 9
|
||||
Going to test item: 10
|
||||
Going to test item: 11
|
||||
Going to test item: 12
|
||||
Testing connection tracking.
|
||||
Testing paging by lac.
|
||||
Testing MGCP.
|
||||
Testing finding of a BSC Connection
|
||||
Testing rewriting MGCP messages.
|
||||
Testing MGCP response parsing.
|
||||
Testing execution completed.
|
|
@ -1,6 +1,8 @@
|
|||
INCLUDES = $(all_includes) -I$(top_srcdir)/include
|
||||
AM_CFLAGS=-Wall -ggdb3 $(LIBOSMOCORE_CFLAGS) $(LIBOSMOGSM_CFLAGS)
|
||||
|
||||
EXTRA_DIST = channel_test.ok
|
||||
|
||||
noinst_PROGRAMS = channel_test
|
||||
|
||||
channel_test_SOURCES = channel_test.c
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
Testing the gsm_subscriber chan logic
|
||||
Reached, didn't crash, test passed
|
|
@ -2,6 +2,8 @@ INCLUDES = $(all_includes) -I$(top_srcdir)/include
|
|||
AM_CFLAGS=-Wall -ggdb3 $(LIBOSMOCORE_CFLAGS) $(LIBOSMOGSM_CFLAGS) $(LIBOSMOABIS_CFLAGS) $(COVERAGE_CFLAGS)
|
||||
AM_LDFLAGS = $(COVERAGE_LDFLAGS)
|
||||
|
||||
EXTRA_DIST = db_test.ok
|
||||
|
||||
noinst_PROGRAMS = db_test
|
||||
|
||||
db_test_SOURCES = db_test.c
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
Testing subscriber database code.
|
||||
DB: Database initialized.
|
||||
DB: Database prepared.
|
||||
Done
|
|
@ -2,6 +2,8 @@ INCLUDES = $(all_includes) -I$(top_srcdir)/include
|
|||
AM_CFLAGS=-Wall $(LIBOSMOCORE_CFLAGS) $(LIBOSMOGSM_CFLAGS)
|
||||
noinst_PROGRAMS = gsm0408_test
|
||||
|
||||
EXTRA_DIST = gsm0408_test.ok
|
||||
|
||||
gsm0408_test_SOURCES = gsm0408_test.c
|
||||
gsm0408_test_LDADD = $(top_builddir)/src/libbsc/libbsc.a \
|
||||
$(top_builddir)/src/libmsc/libmsc.a \
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
Testing test location area identifier
|
||||
Testing parsing and generating TMSI/IMSI
|
||||
hex: 17 08 99 78 56 34 12 90 78 36
|
||||
hex: 17 09 91 78 56 34 12 90 78 56 f4
|
||||
Done.
|
|
@ -2,6 +2,8 @@ INCLUDES = $(all_includes) -I$(top_srcdir)/include
|
|||
AM_CFLAGS=-Wall -ggdb3 $(LIBOSMOCORE_CFLAGS) $(LIBOSMOSCCP_CFLAGS) $(COVERAGE_CFLAGS)
|
||||
AM_LDFLAGS = $(COVERAGE_LDFLAGS)
|
||||
|
||||
EXTRA_DIST = mgcp_test.ok
|
||||
|
||||
noinst_PROGRAMS = mgcp_test
|
||||
|
||||
mgcp_test_SOURCES = mgcp_test.c
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
Testing AUEP
|
||||
Done
|
|
@ -0,0 +1,39 @@
|
|||
AT_INIT
|
||||
AT_BANNER([Regression tests.])
|
||||
|
||||
AT_SETUP([gsm0408])
|
||||
AT_KEYWORDS([gsm0408])
|
||||
cat $abs_srcdir/gsm0408/gsm0408_test.ok > expout
|
||||
AT_CHECK([$abs_top_builddir/tests/gsm0408/gsm0408_test], [], [expout], [ignore])
|
||||
AT_CLEANUP
|
||||
|
||||
AT_SETUP([db])
|
||||
AT_KEYWORDS([db])
|
||||
cat $abs_srcdir/db/db_test.ok > expout
|
||||
AT_CHECK([$abs_top_builddir/tests/db/db_test], [], [expout], [ignore])
|
||||
AT_CLEANUP
|
||||
|
||||
AT_SETUP([channel])
|
||||
AT_KEYWORDS([channel])
|
||||
cat $abs_srcdir/channel/channel_test.ok > expout
|
||||
AT_CHECK([$abs_top_builddir/tests/channel/channel_test], [], [expout], [ignore])
|
||||
AT_CLEANUP
|
||||
|
||||
AT_SETUP([mgcp])
|
||||
AT_KEYWORDS([mgcp])
|
||||
cat $abs_srcdir/mgcp/mgcp_test.ok > expout
|
||||
AT_CHECK([$abs_top_builddir/tests/mgcp/mgcp_test], [], [expout], [ignore])
|
||||
AT_CLEANUP
|
||||
|
||||
AT_SETUP([gprs])
|
||||
AT_KEYWORDS([gprs])
|
||||
cat $abs_srcdir/gprs/gprs_test.ok > expout
|
||||
AT_CHECK([$abs_top_builddir/tests/gprs/gprs_test], [], [expout], [ignore])
|
||||
AT_CLEANUP
|
||||
|
||||
m4_ifdef([ENABLE_NAT_TEST],[
|
||||
AT_SETUP([bsc-nat])
|
||||
AT_KEYWORDS([bsc-nat])
|
||||
cat $abs_srcdir/bsc-nat/bsc_nat_test.ok > expout
|
||||
AT_CHECK([$abs_top_builddir/tests/bsc-nat/bsc_nat_test], [], [expout], [ignore])
|
||||
AT_CLEANUP])
|
Loading…
Reference in New Issue