[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