[telepathy-mission-control/master] Run each test with MC writing to its own temporary directory
Simon McVittie
simon.mcvittie at collabora.co.uk
Wed May 27 04:55:05 PDT 2009
This avoids having to worry about whether accounts.cfg is still around
from a previous run.
---
.gitignore | 1 +
test/twisted/Makefile.am | 47 ++++++++++++++++++++++++++++++++-------------
2 files changed, 34 insertions(+), 14 deletions(-)
diff --git a/.gitignore b/.gitignore
index 97f3fea..b35e548 100644
--- a/.gitignore
+++ b/.gitignore
@@ -78,5 +78,6 @@ test/twisted/tools/exec-with-log.sh
test/twisted/tools/missioncontrol-*.log
test/twisted/tools/tmp-session-bus.conf
/test/twisted/tools/*.service
+/test/twisted/tmp-*/
util/mc-account-convert
util/mc-tool
diff --git a/test/twisted/Makefile.am b/test/twisted/Makefile.am
index 7320a83..796666b 100644
--- a/test/twisted/Makefile.am
+++ b/test/twisted/Makefile.am
@@ -59,18 +59,20 @@ INCLUDES = \
TESTS =
+TMPSUFFIX = foo
+
BASIC_TESTS_ENVIRONMENT = \
PYTHONPATH=@abs_top_srcdir@/test/twisted:@abs_top_builddir@/test/twisted \
MC_DEBUG=2 \
MC_TP_DEBUG=all \
MC_FILTER_PLUGIN_DIR=@abs_top_builddir@/test/twisted/.libs \
- MC_CHANDLERS_DIR=@abs_top_builddir@/test/twisted/chandlers \
- MC_ACCOUNT_DIR=@abs_top_builddir@/test/twisted/accounts \
- XDG_DATA_HOME=@abs_top_builddir@/test/twisted \
+ MC_CHANDLERS_DIR=@abs_top_srcdir@/test/twisted/chandlers \
+ MC_ACCOUNT_DIR=@abs_top_builddir@/test/twisted/tmp-$(TMPSUFFIX) \
+ XDG_DATA_HOME=@abs_top_builddir@/test/twisted/tmp-$(TMPSUFFIX) \
XDG_DATA_DIRS=@abs_top_srcdir@/test/twisted \
- XDG_CACHE_DIR=@abs_top_builddir@/test/twisted \
- MC_CLIENTS_DIR=@abs_top_builddir@/test/twisted/telepathy/clients \
- MC_MANAGER_DIR=@abs_top_builddir@/test/twisted/telepathy/managers \
+ XDG_CACHE_DIR=@abs_top_builddir@/test/twisted/tmp-$(TMPSUFFIX) \
+ MC_CLIENTS_DIR=@abs_top_srcdir@/test/twisted/telepathy/clients \
+ MC_MANAGER_DIR=@abs_top_srcdir@/test/twisted/telepathy/managers \
G_DEBUG=fatal_criticals
WITH_SESSION_BUS = \
@@ -94,19 +96,36 @@ check-twisted:
$(MAKE) -C tools
rm -f tools/core
rm -f tools/missioncontrol-*.log
- rm -f accounts/accounts.cfg
- rm -f accounts/.mc_connections
- env $(BASIC_TESTS_ENVIRONMENT) $(WITH_SESSION_BUS) $(MAKE) check-TESTS \
- TESTS='$$(TWISTED_BASIC_TESTS)' \
- TESTS_ENVIRONMENT='$$(COMBINED_TESTS_ENVIRONMENT)'
- $(MAKE) check-TESTS \
- TESTS='$$(TWISTED_SEPARATE_TESTS)' \
- TESTS_ENVIRONMENT='$$(SEPARATE_TESTS_ENVIRONMENT)'
+ mkdir tmp-$$$$ && { \
+ $(MAKE) check-combined TMPSUFFIX=$$$$; \
+ e=$$?; \
+ rm -rf tmp-$$$$; \
+ exit $$e; }
+ for TESTS in $(TWISTED_SEPARATE_TESTS); do export TESTS; ( \
+ rm -rf tmp-$$$$ && mkdir tmp-$$$$ && { \
+ e=0; \
+ $(MAKE) check-separate \
+ TMPSUFFIX=$$$$ \
+ TESTS=$$TESTS \
+ || e=$$?; \
+ rm -rf tmp-$$$$; \
+ }; exit $$e ) || exit $$?; done
@if test -e tools/core; then\
echo "Core dump exists: tools/core";\
exit 1;\
fi
+check-combined:
+ env $(BASIC_TESTS_ENVIRONMENT) $(WITH_SESSION_BUS) \
+ $(MAKE) check-TESTS \
+ TESTS='$$(TWISTED_BASIC_TESTS)' \
+ TESTS_ENVIRONMENT='$$(COMBINED_TESTS_ENVIRONMENT)'
+
+check-separate:
+ echo "Running $(TESTS) in tmp-$(TMPSUFFIX)"
+ $(MAKE) check-TESTS \
+ TESTS_ENVIRONMENT='$$(SEPARATE_TESTS_ENVIRONMENT)'
+
EXTRA_DIST = \
$(TWISTED_BASIC_TESTS) \
$(TWISTED_SEPARATE_TESTS) \
--
1.5.6.5
More information about the telepathy-commits
mailing list