blob: 9015494b4fa51076fe59762f867ef3ab918a4b67 [file] [log] [blame]
Neels Hofmeyr00c06972017-01-31 01:19:27 +01001SUBDIRS = \
2 auc \
Neels Hofmeyrcab2fcd2017-03-15 00:07:43 +01003 gsup_server \
Neels Hofmeyr98509462017-10-09 17:28:53 +02004 db \
Neels Hofmeyrf13a8bc2019-11-20 02:36:45 +01005 gsup \
Neels Hofmeyr5b654612019-10-31 02:03:48 +01006 db_upgrade \
Oliver Smith2bdcc8e2019-11-20 10:56:35 +01007 mslookup \
Neels Hofmeyr00c06972017-01-31 01:19:27 +01008 $(NULL)
9
10# The `:;' works around a Bash 3.2 bug when the output is not writeable.
11$(srcdir)/package.m4: $(top_srcdir)/configure.ac
12 :;{ \
13 echo '# Signature of the current package.' && \
14 echo 'm4_define([AT_PACKAGE_NAME],' && \
15 echo ' [$(PACKAGE_NAME)])' && \
16 echo 'm4_define([AT_PACKAGE_TARNAME],' && \
17 echo ' [$(PACKAGE_TARNAME)])' && \
18 echo 'm4_define([AT_PACKAGE_VERSION],' && \
19 echo ' [$(PACKAGE_VERSION)])' && \
20 echo 'm4_define([AT_PACKAGE_STRING],' && \
21 echo ' [$(PACKAGE_STRING)])' && \
22 echo 'm4_define([AT_PACKAGE_BUGREPORT],' && \
23 echo ' [$(PACKAGE_BUGREPORT)])'; \
24 echo 'm4_define([AT_PACKAGE_URL],' && \
25 echo ' [$(PACKAGE_URL)])'; \
26 } >'$(srcdir)/package.m4'
27
28EXTRA_DIST = \
29 testsuite.at \
30 $(srcdir)/package.m4 \
31 $(TESTSUITE) \
Neels Hofmeyr86d09ec2017-10-15 04:58:50 +020032 test_nodes.vty \
Neels Hofmeyr183e7002017-10-06 02:59:54 +020033 test_subscriber.vty \
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020034 test_subscriber.sql \
35 test_subscriber.ctrl \
Neels Hofmeyr00c06972017-01-31 01:19:27 +010036 $(NULL)
37
38TESTSUITE = $(srcdir)/testsuite
39
40DISTCLEANFILES = \
41 atconfig \
42 $(NULL)
43
Neels Hofmeyrf95ce042017-09-25 23:22:02 +020044if ENABLE_EXT_TESTS
Neels Hofmeyr183e7002017-10-06 02:59:54 +020045python-tests:
46# don't run vty and ctrl tests concurrently so that the ports don't conflict
47 $(MAKE) vty-test
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020048 $(MAKE) ctrl-test
Neels Hofmeyr5b654612019-10-31 02:03:48 +010049 $(MAKE) db-upgrade-equivalence-test
Neels Hofmeyrccdb9702018-09-18 15:05:17 +020050else
51python-tests:
52 echo "Not running python-based external tests (determined at configure-time)"
53endif
Neels Hofmeyr183e7002017-10-06 02:59:54 +020054
55VTY_TEST_DB = hlr_vty_test.db
Neels Hofmeyr6b305b42019-11-11 18:13:47 +010056VTY_TEST ?= *.vty
Neels Hofmeyr183e7002017-10-06 02:59:54 +020057
58# To update the VTY script from current application behavior,
59# pass -u to vty_script_runner.py by doing:
60# make vty-test U=-u
61vty-test:
62 -rm -f $(VTY_TEST_DB)
Oliver Smithef64b232019-01-22 14:44:28 +010063 sqlite3 $(VTY_TEST_DB) < $(top_srcdir)/sql/hlr.sql
64 sqlite3 $(VTY_TEST_DB) < $(srcdir)/test_subscriber.vty.sql
Neels Hofmeyr183e7002017-10-06 02:59:54 +020065 osmo_verify_transcript_vty.py -v \
66 -n OsmoHLR -p 4258 \
Neels Hofmeyr99a14c82017-10-27 02:46:11 +020067 -r "$(top_builddir)/src/osmo-hlr -c $(top_srcdir)/doc/examples/osmo-hlr.cfg -l $(VTY_TEST_DB)" \
Neels Hofmeyr6b305b42019-11-11 18:13:47 +010068 $(U) $(srcdir)/$(VTY_TEST)
69 -rm -f $(VTY_TEST_DB) $(VTY_TEST_DB)-*
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020070
71CTRL_TEST_DB = hlr_ctrl_test.db
72
73# To update the CTRL script from current application behavior,
74# pass -u to ctrl_script_runner.py by doing:
75# make ctrl-test U=-u
76ctrl-test:
77 -rm -f $(CTRL_TEST_DB)
78 sqlite3 $(CTRL_TEST_DB) < $(top_srcdir)/sql/hlr.sql
79 sqlite3 $(CTRL_TEST_DB) < $(srcdir)/test_subscriber.sql
80 osmo_verify_transcript_ctrl.py -v \
81 -p 4259 \
Neels Hofmeyr99a14c82017-10-27 02:46:11 +020082 -r "$(top_builddir)/src/osmo-hlr -c $(top_srcdir)/doc/examples/osmo-hlr.cfg -l $(CTRL_TEST_DB)" \
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020083 $(U) $(srcdir)/*.ctrl
84 -rm -f $(CTRL_TEST_DB)
Vadim Yanitskiy05fe0232018-07-30 21:54:17 +070085 -rm $(CTRL_TEST_DB)-*
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020086
Neels Hofmeyr5b654612019-10-31 02:03:48 +010087db-upgrade-equivalence-test:
88 $(MAKE) -C db_upgrade upgrade-equivalence-test
89
Neels Hofmeyr00c06972017-01-31 01:19:27 +010090check-local: atconfig $(TESTSUITE)
91 $(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS)
Neels Hofmeyrf95ce042017-09-25 23:22:02 +020092 $(MAKE) $(AM_MAKEFLAGS) python-tests
Neels Hofmeyr00c06972017-01-31 01:19:27 +010093
94installcheck-local: atconfig $(TESTSUITE)
95 $(SHELL) '$(TESTSUITE)' AUTOTEST_PATH='$(bindir)' \
96 $(TESTSUITEFLAGS)
97
98clean-local:
99 test ! -f '$(TESTSUITE)' || \
100 $(SHELL) '$(TESTSUITE)' --clean
101
102AUTOM4TE = $(SHELL) $(top_srcdir)/missing --run autom4te
103AUTOTEST = $(AUTOM4TE) --language=autotest
104$(TESTSUITE): $(srcdir)/testsuite.at $(srcdir)/package.m4
105 $(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at
106 mv $@.tmp $@