Bug 782658 - Make make -C mailnews xpcshell-tests show failures nicely (improve the current hack). r=Callek
--- a/mailnews/Makefile.in
+++ b/mailnews/Makefile.in
@@ -7,16 +7,17 @@ DEPTH = @DEPTH@
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
MODULE = mailnews
+# If adding to these, consider if you need to add to XPCSHELL_TEST_DIRS below.
PARALLEL_DIRS += \
addrbook \
base/search/src \
compose \
db/gloda \
db/msgdb \
extensions\
imap \
@@ -54,17 +55,23 @@ libs::
$(INSTALL) $(wildcard $(srcdir)/test/fakeserver/*.js) $(MOZDEPTH)/_tests/xpcshell/mailnews/fakeserver
# We provide an xpcshell-tests target here because the top-level target acts
# differently to the specific directory one. We want our developers to be able
# to run "make -C mailnews xpcshell-tests" so we do this short-cut here. This
# list is kept in the same order as the effective DIRS just so things turn up
# in the same order as the build.
-TEST_DIRS = base $(PARALLEL_DIRS) extensions/bayesian-spam-filter extensions/mdn
+XPCSHELL_TEST_DIRS = addrbook base compose db/gloda db/msgdb extensions/bayesian-spam-filter extensions/mdn imap import local mime news
xpcshell-tests::
- for dir in $(TEST_DIRS); do \
- if test -d $$dir/test; then \
- $(MAKE) -C $$dir/test xpcshell-tests; \
- fi; \
- done
+ $(PYTHON) -u $(MOZILLA_DIR)/config/pythonpath.py \
+ -I$(MOZILLA_DIR)/build -I$(MOZDEPTH)/_tests/mozbase/mozinfo \
+ $(MOZILLA_SRCDIR)/testing/xpcshell/runxpcshelltests.py \
+ --symbols-path=$(DIST)/crashreporter-symbols \
+ --build-info-json=$(MOZDEPTH)/mozinfo.json \
+ --tests-root-dir=$(testxpcobjdir) \
+ --xunit-file=$(testxpcobjdir)/mailnews/results.xml \
+ --xunit-suite-name=xpcshell \
+ $(EXTRA_TEST_ARGS) \
+ $(LIBXUL_DIST)/bin/xpcshell \
+ $(foreach dir,$(XPCSHELL_TEST_DIRS),$(testxpcobjdir)/mailnews/$(dir)/test/unit)
endif