Neels Hofmeyr | 00c0697 | 2017-01-31 01:19:27 +0100 | [diff] [blame] | 1 | SUBDIRS = \ |
| 2 | auc \ |
Neels Hofmeyr | 9850946 | 2017-10-09 17:28:53 +0200 | [diff] [blame] | 3 | db \ |
Neels Hofmeyr | ad868e2 | 2019-11-20 02:36:45 +0100 | [diff] [blame] | 4 | gsup \ |
Neels Hofmeyr | 5b65461 | 2019-10-31 02:03:48 +0100 | [diff] [blame] | 5 | db_upgrade \ |
Oliver Smith | bf7deda | 2019-11-20 10:56:35 +0100 | [diff] [blame] | 6 | mslookup \ |
Neels Hofmeyr | 00c0697 | 2017-01-31 01:19:27 +0100 | [diff] [blame] | 7 | $(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 | |
| 27 | EXTRA_DIST = \ |
| 28 | testsuite.at \ |
| 29 | $(srcdir)/package.m4 \ |
| 30 | $(TESTSUITE) \ |
Neels Hofmeyr | 86d09ec | 2017-10-15 04:58:50 +0200 | [diff] [blame] | 31 | test_nodes.vty \ |
Neels Hofmeyr | 183e700 | 2017-10-06 02:59:54 +0200 | [diff] [blame] | 32 | test_subscriber.vty \ |
Neels Hofmeyr | 50e4de7 | 2017-10-15 03:24:43 +0200 | [diff] [blame] | 33 | test_subscriber.sql \ |
| 34 | test_subscriber.ctrl \ |
Neels Hofmeyr | 00c0697 | 2017-01-31 01:19:27 +0100 | [diff] [blame] | 35 | $(NULL) |
| 36 | |
| 37 | TESTSUITE = $(srcdir)/testsuite |
| 38 | |
| 39 | DISTCLEANFILES = \ |
| 40 | atconfig \ |
| 41 | $(NULL) |
| 42 | |
Neels Hofmeyr | f95ce04 | 2017-09-25 23:22:02 +0200 | [diff] [blame] | 43 | if ENABLE_EXT_TESTS |
Neels Hofmeyr | 183e700 | 2017-10-06 02:59:54 +0200 | [diff] [blame] | 44 | python-tests: |
| 45 | # don't run vty and ctrl tests concurrently so that the ports don't conflict |
| 46 | $(MAKE) vty-test |
Neels Hofmeyr | 50e4de7 | 2017-10-15 03:24:43 +0200 | [diff] [blame] | 47 | $(MAKE) ctrl-test |
Neels Hofmeyr | 5b65461 | 2019-10-31 02:03:48 +0100 | [diff] [blame] | 48 | $(MAKE) db-upgrade-equivalence-test |
Neels Hofmeyr | ccdb970 | 2018-09-18 15:05:17 +0200 | [diff] [blame] | 49 | else |
| 50 | python-tests: |
| 51 | echo "Not running python-based external tests (determined at configure-time)" |
| 52 | endif |
Neels Hofmeyr | 183e700 | 2017-10-06 02:59:54 +0200 | [diff] [blame] | 53 | |
| 54 | VTY_TEST_DB = hlr_vty_test.db |
Neels Hofmeyr | 6b305b4 | 2019-11-11 18:13:47 +0100 | [diff] [blame] | 55 | VTY_TEST ?= *.vty |
Neels Hofmeyr | 183e700 | 2017-10-06 02:59:54 +0200 | [diff] [blame] | 56 | |
| 57 | # To update the VTY script from current application behavior, |
| 58 | # pass -u to vty_script_runner.py by doing: |
| 59 | # make vty-test U=-u |
| 60 | vty-test: |
| 61 | -rm -f $(VTY_TEST_DB) |
Oliver Smith | ef64b23 | 2019-01-22 14:44:28 +0100 | [diff] [blame] | 62 | sqlite3 $(VTY_TEST_DB) < $(top_srcdir)/sql/hlr.sql |
| 63 | sqlite3 $(VTY_TEST_DB) < $(srcdir)/test_subscriber.vty.sql |
Neels Hofmeyr | 183e700 | 2017-10-06 02:59:54 +0200 | [diff] [blame] | 64 | osmo_verify_transcript_vty.py -v \ |
| 65 | -n OsmoHLR -p 4258 \ |
Neels Hofmeyr | 99a14c8 | 2017-10-27 02:46:11 +0200 | [diff] [blame] | 66 | -r "$(top_builddir)/src/osmo-hlr -c $(top_srcdir)/doc/examples/osmo-hlr.cfg -l $(VTY_TEST_DB)" \ |
Neels Hofmeyr | 6b305b4 | 2019-11-11 18:13:47 +0100 | [diff] [blame] | 67 | $(U) $(srcdir)/$(VTY_TEST) |
| 68 | -rm -f $(VTY_TEST_DB) $(VTY_TEST_DB)-* |
Neels Hofmeyr | 50e4de7 | 2017-10-15 03:24:43 +0200 | [diff] [blame] | 69 | |
| 70 | CTRL_TEST_DB = hlr_ctrl_test.db |
| 71 | |
Pau Espin Pedrol | 83a4147 | 2022-06-17 17:02:38 +0200 | [diff] [blame] | 72 | # Run a specific test with: 'make ctrl-test CTRL_TEST=test_subscriber.ctrl' |
| 73 | CTRL_TEST ?= *.ctrl |
| 74 | |
Neels Hofmeyr | 50e4de7 | 2017-10-15 03:24:43 +0200 | [diff] [blame] | 75 | # To update the CTRL script from current application behavior, |
| 76 | # pass -u to ctrl_script_runner.py by doing: |
| 77 | # make ctrl-test U=-u |
| 78 | ctrl-test: |
| 79 | -rm -f $(CTRL_TEST_DB) |
| 80 | sqlite3 $(CTRL_TEST_DB) < $(top_srcdir)/sql/hlr.sql |
| 81 | sqlite3 $(CTRL_TEST_DB) < $(srcdir)/test_subscriber.sql |
| 82 | osmo_verify_transcript_ctrl.py -v \ |
| 83 | -p 4259 \ |
Neels Hofmeyr | 99a14c8 | 2017-10-27 02:46:11 +0200 | [diff] [blame] | 84 | -r "$(top_builddir)/src/osmo-hlr -c $(top_srcdir)/doc/examples/osmo-hlr.cfg -l $(CTRL_TEST_DB)" \ |
Pau Espin Pedrol | 83a4147 | 2022-06-17 17:02:38 +0200 | [diff] [blame] | 85 | $(U) $(srcdir)/$(CTRL_TEST) |
Neels Hofmeyr | 50e4de7 | 2017-10-15 03:24:43 +0200 | [diff] [blame] | 86 | -rm -f $(CTRL_TEST_DB) |
Vadim Yanitskiy | 05fe023 | 2018-07-30 21:54:17 +0700 | [diff] [blame] | 87 | -rm $(CTRL_TEST_DB)-* |
Neels Hofmeyr | 50e4de7 | 2017-10-15 03:24:43 +0200 | [diff] [blame] | 88 | |
Neels Hofmeyr | 5b65461 | 2019-10-31 02:03:48 +0100 | [diff] [blame] | 89 | db-upgrade-equivalence-test: |
| 90 | $(MAKE) -C db_upgrade upgrade-equivalence-test |
| 91 | |
Neels Hofmeyr | 00c0697 | 2017-01-31 01:19:27 +0100 | [diff] [blame] | 92 | check-local: atconfig $(TESTSUITE) |
| 93 | $(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS) |
Neels Hofmeyr | f95ce04 | 2017-09-25 23:22:02 +0200 | [diff] [blame] | 94 | $(MAKE) $(AM_MAKEFLAGS) python-tests |
Neels Hofmeyr | 00c0697 | 2017-01-31 01:19:27 +0100 | [diff] [blame] | 95 | |
| 96 | installcheck-local: atconfig $(TESTSUITE) |
| 97 | $(SHELL) '$(TESTSUITE)' AUTOTEST_PATH='$(bindir)' \ |
| 98 | $(TESTSUITEFLAGS) |
| 99 | |
| 100 | clean-local: |
| 101 | test ! -f '$(TESTSUITE)' || \ |
| 102 | $(SHELL) '$(TESTSUITE)' --clean |
| 103 | |
| 104 | AUTOM4TE = $(SHELL) $(top_srcdir)/missing --run autom4te |
| 105 | AUTOTEST = $(AUTOM4TE) --language=autotest |
| 106 | $(TESTSUITE): $(srcdir)/testsuite.at $(srcdir)/package.m4 |
| 107 | $(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at |
| 108 | mv $@.tmp $@ |