summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTE22
-rw-r--r--Makefile.in4
-rw-r--r--test/README58
3 files changed, 64 insertions, 20 deletions
diff --git a/CONTRIBUTE b/CONTRIBUTE
index 5a5cb5db5a..d8e102dc7f 100644
--- a/CONTRIBUTE
+++ b/CONTRIBUTE
@@ -257,26 +257,8 @@ If your test lasts longer than some few seconds, mark it in its
To run tests on the entire Emacs tree, run "make check" from the
top-level directory. Most tests are in the directory
"test/automated". From the "test/automated" directory, run "make
-<filename>" to run the tests for <filename>.el(c). See
-"test/automated/Makefile" for more information.
-
-Tests which are tagged ":expensive-test" are enabled additionally, if
-you run "make check-expensive" from the top-level directory. "make
-<filename>" as mentioned above incorporates expensive tests for
-<filename>.el(c). You can also define any ert selector on the command
-line. So "make check SELECTOR=nil" is equivalent to "make
-check-expensive".
-
-You could also use predefined selectors of the Makefile. "make
-<filename> SELECTOR='$(SELECTOR_DEFAULT)'" runs all tests for
-<filename>.el(c) except the tests tagged as expensive.
-
-Selectors can be defined with different methods, see (info "(ert)Test
-Selectors") or
-https://www.gnu.org/software/emacs/manual/html_node/ert/Test-Selectors.html
-If your test file contains the tests "test-foo", "test2-foo" and
-"test-foo-remote", and you want to run only the former two tests, you
-could use a regexp: "make <filename> SELECTOR='\"foo$$\"'" .
+<filename>" to run the tests for <filename>.el(c). See "test/README"
+for more information.
** Understanding Emacs Internals.
diff --git a/Makefile.in b/Makefile.in
index 75fd15001a..b212c914e5 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -57,6 +57,10 @@
#
# make docs
# Make Emacs documentation files from their sources; requires makeinfo.
+#
+# make check or make check-expensive
+# Run Emacs test suite. check-expensive runs also tests which
+# take more time to perform.
SHELL = @SHELL@
diff --git a/test/README b/test/README
index 244832decd..d2aee9bf57 100644
--- a/test/README
+++ b/test/README
@@ -1,4 +1,62 @@
+Copyright (C) 2008-2016 Free Software Foundation, Inc.
+See the end of the file for license conditions.
+
This directory contains files intended to test various aspects of
Emacs's functionality. Please help add tests!
+Emacs uses ERT, Emacs Lisp Regression Testing, for testing. See (info
+"(ert)") or https://www.gnu.org/software/emacs/manual/html_node/ert/
+for more information on writing and running tests.
+
+All ERT test files are supposed to run from subdirectory automated/.
+The Makefile in that directory supports the following targets:
+
+* make check
+ Run all tests as defined in the directory. Expensive tests are
+ suppressed. The result of the tests for <filename>.el is stored in
+ <filename>.log.
+
+* make check-maybe
+ Like "make check", but run only the tests for files which have
+ unresolved prerequisites.
+
+* make check-expensive
+ Like "make check", but run also the tests marked as expensive.
+
+* make <filename> or make <filename>.log
+ Run all tests declared in <filename>.el. This includes expensive
+ tests. In the former case the output is shown on the terminal, in
+ the latter case the output is written to <filename>.log.
+
+ERT offers selectors, which make it possible to filter out which test
+cases shall run. The make variable $(SELECTOR) gives you a simple
+mean to use your own selectors. The ERT manual describes how
+selectors are constructed, see (info "(ert)Test Selectors") or
+https://www.gnu.org/software/emacs/manual/html_node/ert/Test-Selectors.html
+
+You could use predefined selectors of the Makefile. "make <filename>
+SELECTOR='$(SELECTOR_DEFAULT)'" runs all tests for <filename>.el
+except the tests tagged as expensive.
+
+If your test file contains the tests "test-foo", "test2-foo" and
+"test-foo-remote", and you want to run only the former two tests, you
+could use a selector regexp: "make <filename> SELECTOR='\"foo$$\"'".
+
+
(Also, see etc/compilation.txt for compilation mode font lock tests.)
+
+
+This file is part of GNU Emacs.
+
+GNU Emacs is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.