[next] telepathy-haze: Add basic support for installed tests, similar to telepathy-idle-1
Simon McVittie
smcv at kemper.freedesktop.org
Mon May 12 02:03:36 PDT 2014
Module: telepathy-haze
Branch: next
Commit: 132b3b73140ca37638b1fb8a606440dbd155e1b2
URL: http://cgit.freedesktop.org/telepathy/telepathy-haze/commit/?id=132b3b73140ca37638b1fb8a606440dbd155e1b2
Author: Simon McVittie <simon.mcvittie at collabora.co.uk>
Date: Mon May 12 09:43:36 2014 +0100
Add basic support for installed tests, similar to telepathy-idle-1
---
configure.ac | 8 +++++
tests/Makefile.am | 2 --
tests/twisted/Makefile.am | 42 ++++++++++++++++++++-------
tests/twisted/tools/Makefile.am | 39 ++++++++++++++++++++++---
tests/twisted/tools/tmp-session-bus.conf.in | 2 +-
5 files changed, 75 insertions(+), 18 deletions(-)
diff --git a/configure.ac b/configure.ac
index 33bebc0..321c58f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -112,6 +112,14 @@ AC_MSG_RESULT([$TEST_PYTHON])
AC_SUBST(TEST_PYTHON)
AM_CONDITIONAL([WANT_TWISTED_TESTS], test false != "$TEST_PYTHON")
+AC_ARG_ENABLE([installed-tests],
+ [AC_HELP_STRING([--enable-installed-tests],
+ [enable as-installed regression tests])],
+ [],
+ [enable_installed_tests=no])
+AM_CONDITIONAL([ENABLE_INSTALLED_TESTS],
+ [test "x$enable_installed_tests" = xyes])
+
#AS_AC_EXPAND(DATADIR, $datadir)
#DBUS_SERVICES_DIR="$DATADIR/dbus-1/services"
#AC_SUBST(DBUS_SERVICES_DIR)
diff --git a/tests/Makefile.am b/tests/Makefile.am
index af9cb85..efde446 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,7 +1,5 @@
SUBDIRS = .
-if WANT_TWISTED_TESTS
SUBDIRS += twisted
-endif
CLEANFILES = haze-testing.log
diff --git a/tests/twisted/Makefile.am b/tests/twisted/Makefile.am
index f932229..3915b6d 100644
--- a/tests/twisted/Makefile.am
+++ b/tests/twisted/Makefile.am
@@ -23,8 +23,9 @@ TWISTED_TESTS = \
text/test-text-no-body.py \
text/test-text.py
-
+if WANT_TWISTED_TESTS
check-local: check-twisted
+endif
CHECK_TWISTED_SLEEP=0
@@ -41,30 +42,49 @@ check-twisted: $(BUILT_SOURCES)
HAZE_TEST_SLEEP=$$haze_test_sleep \
./run-test.sh "$(TWISTED_TESTS)"
-EXTRA_DIST = \
+dist_test_data = \
$(TWISTED_TESTS) \
constants.py \
gabbletest.py \
hazetest.py \
- run-test.sh.in \
sasl/saslutil.py \
servicetest.py \
- ns.py
+ ns.py \
+ $(NULL)
+
+EXTRA_DIST = \
+ $(dist_test_data) \
+ run-test.sh.in \
+ $(NULL)
haze-twisted-tests.list: Makefile
$(AM_V_GEN)echo $(TWISTED_TESTS) > $@
+built_test_data = \
+ haze-twisted-tests.list \
+ $(NULL)
+
+built_test_scripts = \
+ run-test.sh \
+ $(NULL)
+
BUILT_SOURCES = \
- haze-twisted-tests.list \
- run-test.sh \
- $(NULL)
+ $(built_test_data) \
+ $(built_test_scripts) \
+ $(NULL)
+
+testsdir = ${datadir}/telepathy-haze-1-tests
+twistedtestsdir = ${testsdir}/twisted
+
+if ENABLE_INSTALLED_TESTS
+nobase_dist_twistedtests_DATA = $(dist_test_data)
+twistedtests_DATA = $(built_test_data)
+twistedtests_SCRIPTS = $(built_test_scripts)
+endif
-# We don't really use hazetestsdir yet - we only support uninstalled testing
-# so far - but I'm substituting it to keep the script more similar to Gabble's.
-# ${pkglibexecdir}/tests is what GNOME's InstalledTests goal recommends.
run-test.sh: run-test.sh.in Makefile
$(AM_V_GEN)sed \
- -e 's![@]hazetestsdir[@]!${pkglibexecdir}/tests!' \
+ -e 's![@]hazetestsdir[@]!${testsdir}!' \
-e 's![@]TEST_PYTHON[@]!$(TEST_PYTHON)!' \
< $< > $@.tmp && \
chmod +x $@.tmp && \
diff --git a/tests/twisted/tools/Makefile.am b/tests/twisted/tools/Makefile.am
index 8e928e1..861a4aa 100644
--- a/tests/twisted/tools/Makefile.am
+++ b/tests/twisted/tools/Makefile.am
@@ -1,5 +1,10 @@
-%.conf: %.conf.in
- $(AM_V_GEN)sed -e "s|[@]abs_top_builddir[@]|@abs_top_builddir@|g" $< > $@
+%.conf: %.conf.in Makefile
+ $(AM_V_GEN)sed -e "s|[@]servicedir[@]|@abs_top_builddir@/tests/twisted/tools|g" $< > $@
+
+servicedir = $(datadir)/dbus-1/services
+
+installed/%.conf: %.conf.in Makefile
+ $(AM_V_GEN)sed -e "s|[@]servicedir[@]|$(servicedir)|g" $< > $@
# We don't use the full filename for the .in because > 99 character filenames
# in tarballs are non-portable (and automake 1.8 doesn't let us build
@@ -16,16 +21,42 @@ service_files = im.telepathy.v1.ConnectionManager.haze.service
conf_in_files = tmp-session-bus.conf.in
conf_files = $(conf_in_files:.conf.in=.conf)
-BUILT_SOURCES = $(service_files) $(conf_files)
+BUILT_SOURCES = \
+ $(built_test_data) \
+ $(conf_files) \
+ $(service_files) \
+ $(NULL)
+
+dist_test_scripts = \
+ with-session-bus.sh \
+ $(NULL)
+
+dist_test_data = \
+ $(NULL)
+
+built_test_data = \
+ installed/tmp-session-bus.conf \
+ $(NULL)
EXTRA_DIST = \
+ $(dist_test_data) \
+ $(dist_test_scripts) \
$(service_in_files) \
$(conf_in_files) \
exec-with-log.sh \
- with-session-bus.sh \
$(NULL)
CLEANFILES = \
$(BUILT_SOURCES) \
haze-testing.log \
$(NULL)
+
+testsdir = ${datadir}/telepathy-haze-1-tests
+twistedtestsdir = ${testsdir}/twisted
+twistedtoolsdir = ${twistedtestsdir}/tools
+
+if ENABLE_INSTALLED_TESTS
+dist_twistedtools_SCRIPTS = ${dist_test_scripts}
+dist_twistedtools_DATA = ${dist_test_data}
+twistedtools_DATA = ${built_test_data}
+endif
diff --git a/tests/twisted/tools/tmp-session-bus.conf.in b/tests/twisted/tools/tmp-session-bus.conf.in
index 84d8d65..1cde692 100644
--- a/tests/twisted/tools/tmp-session-bus.conf.in
+++ b/tests/twisted/tools/tmp-session-bus.conf.in
@@ -10,7 +10,7 @@
<listen>unix:tmpdir=/tmp</listen>
- <servicedir>@abs_top_builddir@/tests/twisted/tools</servicedir>
+ <servicedir>@servicedir@</servicedir>
<policy context="default">
<!-- Allow everything to be sent -->
More information about the telepathy-commits
mailing list