blob: f8591a572ee3abd0fa443481a24641fbfbb85e6d [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 Hofmeyr5b654612019-10-31 02:03:48 +01005 db_upgrade \
Neels Hofmeyr00c06972017-01-31 01:19:27 +01006 $(NULL)
7
8# The `:;' works around a Bash 3.2 bug when the output is not writeable.
9$(srcdir)/package.m4: $(top_srcdir)/configure.ac
10 :;{ \
11 echo '# Signature of the current package.' && \
12 echo 'm4_define([AT_PACKAGE_NAME],' && \
13 echo ' [$(PACKAGE_NAME)])' && \
14 echo 'm4_define([AT_PACKAGE_TARNAME],' && \
15 echo ' [$(PACKAGE_TARNAME)])' && \
16 echo 'm4_define([AT_PACKAGE_VERSION],' && \
17 echo ' [$(PACKAGE_VERSION)])' && \
18 echo 'm4_define([AT_PACKAGE_STRING],' && \
19 echo ' [$(PACKAGE_STRING)])' && \
20 echo 'm4_define([AT_PACKAGE_BUGREPORT],' && \
21 echo ' [$(PACKAGE_BUGREPORT)])'; \
22 echo 'm4_define([AT_PACKAGE_URL],' && \
23 echo ' [$(PACKAGE_URL)])'; \
24 } >'$(srcdir)/package.m4'
25
26EXTRA_DIST = \
27 testsuite.at \
28 $(srcdir)/package.m4 \
29 $(TESTSUITE) \
Neels Hofmeyr86d09ec2017-10-15 04:58:50 +020030 test_nodes.vty \
Neels Hofmeyr183e7002017-10-06 02:59:54 +020031 test_subscriber.vty \
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020032 test_subscriber.sql \
33 test_subscriber.ctrl \
Neels Hofmeyr00c06972017-01-31 01:19:27 +010034 $(NULL)
35
36TESTSUITE = $(srcdir)/testsuite
37
38DISTCLEANFILES = \
39 atconfig \
40 $(NULL)
41
Neels Hofmeyrf95ce042017-09-25 23:22:02 +020042if ENABLE_EXT_TESTS
Neels Hofmeyr183e7002017-10-06 02:59:54 +020043python-tests:
44# don't run vty and ctrl tests concurrently so that the ports don't conflict
45 $(MAKE) vty-test
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020046 $(MAKE) ctrl-test
Neels Hofmeyr5b654612019-10-31 02:03:48 +010047 $(MAKE) db-upgrade-equivalence-test
Neels Hofmeyrccdb9702018-09-18 15:05:17 +020048else
49python-tests:
50 echo "Not running python-based external tests (determined at configure-time)"
51endif
Neels Hofmeyr183e7002017-10-06 02:59:54 +020052
53VTY_TEST_DB = hlr_vty_test.db
Neels Hofmeyr6b305b42019-11-11 18:13:47 +010054VTY_TEST ?= *.vty
Neels Hofmeyr183e7002017-10-06 02:59:54 +020055
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 Hofmeyr6b305b42019-11-11 18:13:47 +010066 $(U) $(srcdir)/$(VTY_TEST)
67 -rm -f $(VTY_TEST_DB) $(VTY_TEST_DB)-*
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020068
69CTRL_TEST_DB = hlr_ctrl_test.db
70
71# To update the CTRL script from current application behavior,
72# pass -u to ctrl_script_runner.py by doing:
73# make ctrl-test U=-u
74ctrl-test:
75 -rm -f $(CTRL_TEST_DB)
76 sqlite3 $(CTRL_TEST_DB) < $(top_srcdir)/sql/hlr.sql
77 sqlite3 $(CTRL_TEST_DB) < $(srcdir)/test_subscriber.sql
78 osmo_verify_transcript_ctrl.py -v \
79 -p 4259 \
Neels Hofmeyr99a14c82017-10-27 02:46:11 +020080 -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 +020081 $(U) $(srcdir)/*.ctrl
82 -rm -f $(CTRL_TEST_DB)
Vadim Yanitskiy05fe0232018-07-30 21:54:17 +070083 -rm $(CTRL_TEST_DB)-*
Neels Hofmeyr50e4de72017-10-15 03:24:43 +020084
Neels Hofmeyr5b654612019-10-31 02:03:48 +010085db-upgrade-equivalence-test:
86 $(MAKE) -C db_upgrade upgrade-equivalence-test
87
Neels Hofmeyr00c06972017-01-31 01:19:27 +010088check-local: atconfig $(TESTSUITE)
89 $(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS)
Neels Hofmeyrf95ce042017-09-25 23:22:02 +020090 $(MAKE) $(AM_MAKEFLAGS) python-tests
Neels Hofmeyr00c06972017-01-31 01:19:27 +010091
92installcheck-local: atconfig $(TESTSUITE)
93 $(SHELL) '$(TESTSUITE)' AUTOTEST_PATH='$(bindir)' \
94 $(TESTSUITEFLAGS)
95
96clean-local:
97 test ! -f '$(TESTSUITE)' || \
98 $(SHELL) '$(TESTSUITE)' --clean
99
100AUTOM4TE = $(SHELL) $(top_srcdir)/missing --run autom4te
101AUTOTEST = $(AUTOM4TE) --language=autotest
102$(TESTSUITE): $(srcdir)/testsuite.at $(srcdir)/package.m4
103 $(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at
104 mv $@.tmp $@