blob: 357fbac41ed5f7d72e3b29509ded7c31348819e6 [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 Hofmeyr9d307ec2018-05-04 16:06:32 +02005 gsup \
Neels Hofmeyr5b654612019-10-31 02:03:48 +01006 db_upgrade \
Neels Hofmeyr00c06972017-01-31 01:19:27 +01007 $(NULL)
8
9# The `:;' works around a Bash 3.2 bug when the output is not writeable.
10$(srcdir)/package.m4: $(top_srcdir)/configure.ac
11 :;{ \
12 echo '# Signature of the current package.' && \
13 echo 'm4_define([AT_PACKAGE_NAME],' && \
14 echo ' [$(PACKAGE_NAME)])' && \
15 echo 'm4_define([AT_PACKAGE_TARNAME],' && \
16 echo ' [$(PACKAGE_TARNAME)])' && \
17 echo 'm4_define([AT_PACKAGE_VERSION],' && \
18 echo ' [$(PACKAGE_VERSION)])' && \
19 echo 'm4_define([AT_PACKAGE_STRING],' && \
20 echo ' [$(PACKAGE_STRING)])' && \
21 echo 'm4_define([AT_PACKAGE_BUGREPORT],' && \
22 echo ' [$(PACKAGE_BUGREPORT)])'; \
23 echo 'm4_define([AT_PACKAGE_URL],' && \
24 echo ' [$(PACKAGE_URL)])'; \
25 } >'$(srcdir)/package.m4'
26
27EXTRA_DIST = \
28 testsuite.at \
29 $(srcdir)/package.m4 \
30 $(TESTSUITE) \
Neels Hofmeyr86d09ec2017-10-15 04:58:50 +020031 test_nodes.vty \
Neels Hofmeyr183e7002017-10-06 02:59:54 +020032 test_subscriber.vty \
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020033 test_subscriber.sql \
34 test_subscriber.ctrl \
Neels Hofmeyr00c06972017-01-31 01:19:27 +010035 $(NULL)
36
37TESTSUITE = $(srcdir)/testsuite
38
39DISTCLEANFILES = \
40 atconfig \
41 $(NULL)
42
Neels Hofmeyrf95ce042017-09-25 23:22:02 +020043if ENABLE_EXT_TESTS
Neels Hofmeyr183e7002017-10-06 02:59:54 +020044python-tests:
45# don't run vty and ctrl tests concurrently so that the ports don't conflict
46 $(MAKE) vty-test
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020047 $(MAKE) ctrl-test
Neels Hofmeyr5b654612019-10-31 02:03:48 +010048 $(MAKE) db-upgrade-equivalence-test
Neels Hofmeyrccdb9702018-09-18 15:05:17 +020049else
50python-tests:
51 echo "Not running python-based external tests (determined at configure-time)"
52endif
Neels Hofmeyr183e7002017-10-06 02:59:54 +020053
54VTY_TEST_DB = hlr_vty_test.db
55
56# To update the VTY script from current application behavior,
57# pass -u to vty_script_runner.py by doing:
58# make vty-test U=-u
59vty-test:
60 -rm -f $(VTY_TEST_DB)
Oliver Smithef64b232019-01-22 14:44:28 +010061 sqlite3 $(VTY_TEST_DB) < $(top_srcdir)/sql/hlr.sql
62 sqlite3 $(VTY_TEST_DB) < $(srcdir)/test_subscriber.vty.sql
Neels Hofmeyr183e7002017-10-06 02:59:54 +020063 osmo_verify_transcript_vty.py -v \
64 -n OsmoHLR -p 4258 \
Neels Hofmeyr99a14c82017-10-27 02:46:11 +020065 -r "$(top_builddir)/src/osmo-hlr -c $(top_srcdir)/doc/examples/osmo-hlr.cfg -l $(VTY_TEST_DB)" \
Neels Hofmeyr183e7002017-10-06 02:59:54 +020066 $(U) $(srcdir)/*.vty
67 -rm -f $(VTY_TEST_DB)
Vadim Yanitskiy05fe0232018-07-30 21:54:17 +070068 -rm $(VTY_TEST_DB)-*
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020069
70CTRL_TEST_DB = hlr_ctrl_test.db
71
72# To update the CTRL script from current application behavior,
73# pass -u to ctrl_script_runner.py by doing:
74# make ctrl-test U=-u
75ctrl-test:
76 -rm -f $(CTRL_TEST_DB)
77 sqlite3 $(CTRL_TEST_DB) < $(top_srcdir)/sql/hlr.sql
78 sqlite3 $(CTRL_TEST_DB) < $(srcdir)/test_subscriber.sql
79 osmo_verify_transcript_ctrl.py -v \
80 -p 4259 \
Neels Hofmeyr99a14c82017-10-27 02:46:11 +020081 -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 +020082 $(U) $(srcdir)/*.ctrl
83 -rm -f $(CTRL_TEST_DB)
Vadim Yanitskiy05fe0232018-07-30 21:54:17 +070084 -rm $(CTRL_TEST_DB)-*
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020085
Neels Hofmeyr5b654612019-10-31 02:03:48 +010086db-upgrade-equivalence-test:
87 $(MAKE) -C db_upgrade upgrade-equivalence-test
88
Neels Hofmeyr00c06972017-01-31 01:19:27 +010089check-local: atconfig $(TESTSUITE)
90 $(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS)
Neels Hofmeyrf95ce042017-09-25 23:22:02 +020091 $(MAKE) $(AM_MAKEFLAGS) python-tests
Neels Hofmeyr00c06972017-01-31 01:19:27 +010092
93installcheck-local: atconfig $(TESTSUITE)
94 $(SHELL) '$(TESTSUITE)' AUTOTEST_PATH='$(bindir)' \
95 $(TESTSUITEFLAGS)
96
97clean-local:
98 test ! -f '$(TESTSUITE)' || \
99 $(SHELL) '$(TESTSUITE)' --clean
100
101AUTOM4TE = $(SHELL) $(top_srcdir)/missing --run autom4te
102AUTOTEST = $(AUTOM4TE) --language=autotest
103$(TESTSUITE): $(srcdir)/testsuite.at $(srcdir)/package.m4
104 $(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at
105 mv $@.tmp $@