Commit 8eb6542f authored by Glenn Morris's avatar Glenn Morris
Browse files

Disable logging in the short form of the test Makefile rules

* test/automated/Makefile.in (WRITE_LOG): New variable.
(%.log): Use WRITE_LOG.
(test_template): Disable logging.
parent 7ac67e08
2014-06-28 Glenn Morris <rgm@gnu.org> 2014-06-28 Glenn Morris <rgm@gnu.org>
* automated/Makefile.in (WRITE_LOG): New variable.
(%.log): Use WRITE_LOG.
(test_template): Disable logging.
* automated/Makefile.in (TESTS): New list of short PHONY aliases. * automated/Makefile.in (TESTS): New list of short PHONY aliases.
(test_template): New definition. Apply to TESTS. (test_template): New definition. Apply to TESTS.
......
...@@ -20,10 +20,10 @@ ...@@ -20,10 +20,10 @@
### Commentary: ### Commentary:
## Some targets: ## Some targets:
## check: re-run all tests ## check: re-run all tests, writing to .log files.
## check-maybe: run all tests whose .log file needs updating ## check-maybe: run all tests whose .log file needs updating
## filename.log: run tests from filename.el(c) if .log file needs updating ## filename.log: run tests from filename.el(c) if .log file needs updating
## filename: re-run tests from filename.el(c) ## filename: re-run tests from filename.el(c), with no logging
### Code: ### Code:
...@@ -60,10 +60,9 @@ all: check ...@@ -60,10 +60,9 @@ all: check
@$(emacs) -f batch-byte-compile $< @$(emacs) -f batch-byte-compile $<
## Ignore any test errors so we can continue to test other files. ## Ignore any test errors so we can continue to test other files.
## (It would be nice if we could get an error when running an
## individual test, but not when running check.)
## But compilation errors are always fatal. ## But compilation errors are always fatal.
## WRITE_LOG = >& $@ || { stat=ERROR; cat $@; }; echo $$stat: $@
## I'd prefer to use -emacs -f ert-run-tests-batch-and-exit rather ## I'd prefer to use -emacs -f ert-run-tests-batch-and-exit rather
## than || true, since the former makes problems more obvious. ## than || true, since the former makes problems more obvious.
## I'd also prefer to @-hide the grep part and not the ## I'd also prefer to @-hide the grep part and not the
...@@ -74,7 +73,7 @@ all: check ...@@ -74,7 +73,7 @@ all: check
## basename duplicates a file in lisp/ (eg eshell.el). ## basename duplicates a file in lisp/ (eg eshell.el).
## ii) Although -l basename will automatically load .el or .elc, ## ii) Although -l basename will automatically load .el or .elc,
## -l ./basename treats basename as a literal file (it would be nice ## -l ./basename treats basename as a literal file (it would be nice
## to change this). ## to change this; bug#17848 - if that gets done, this can be simplified).
## ##
## Beware: it approximates `no-byte-compile', so watch out for false-positives! ## Beware: it approximates `no-byte-compile', so watch out for false-positives!
%.log: ${srcdir}/%.el %.log: ${srcdir}/%.el
...@@ -87,10 +86,7 @@ all: check ...@@ -87,10 +86,7 @@ all: check
echo Testing $$loadfile; \ echo Testing $$loadfile; \
stat=OK ; \ stat=OK ; \
$(emacs) -l ert -l $$loadfile \ $(emacs) -l ert -l $$loadfile \
-f ert-run-tests-batch-and-exit >& $@ || { \ -f ert-run-tests-batch-and-exit ${WRITE_LOG}
stat=ERROR; \
cat $@; }; \
echo $$stat: $@
ELFILES = $(wildcard ${srcdir}/*.el) ELFILES = $(wildcard ${srcdir}/*.el)
LOGFILES = $(patsubst %.el,%.log,$(notdir ${ELFILES})) LOGFILES = $(patsubst %.el,%.log,$(notdir ${ELFILES}))
...@@ -102,11 +98,11 @@ TESTS = ${LOGFILES:.log=} ...@@ -102,11 +98,11 @@ TESTS = ${LOGFILES:.log=}
.PHONY: ${TESTS} .PHONY: ${TESTS}
## The short aliases that always re-run the tests. ## The short aliases that always re-run the tests, with no logging.
define test_template define test_template
$(1): $(1):
@test ! -f $(1).log || mv $(1).log $(1).log~ @test ! -f $(1).log || mv $(1).log $(1).log~
@${MAKE} $(1).log @${MAKE} $(1).log WRITE_LOG=
endef endef
$(foreach test,${TESTS},$(eval $(call test_template,${test}))) $(foreach test,${TESTS},$(eval $(call test_template,${test})))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment