X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/c7bef6a4f033fa6b22906de0be6da54958d5b3c3..02d7069fef8fdb27847a168a05cae4afd303bc12:/CONTRIBUTE diff --git a/CONTRIBUTE b/CONTRIBUTE index 323f9b9d06..71bbebb7da 100644 --- a/CONTRIBUTE +++ b/CONTRIBUTE @@ -263,7 +263,7 @@ Emacs uses ERT, Emacs Lisp Regression Testing, for testing. See (info for more information on writing and running tests. If your test lasts longer than some few seconds, mark it in its -`ert-deftest' definition with ":tags '(:expensive-test)". +'ert-deftest' definition with ":tags '(:expensive-test)". To run tests on the entire Emacs tree, run "make check" from the top-level directory. Most tests are in the directory @@ -274,7 +274,20 @@ top-level directory. Most tests are in the directory Tests which are tagged ":expensive-test" are enabled additionally, if you run "make check-expensive" from the top-level directory. "make " as mentioned above incorporates expensive tests for -.el(c). +.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 + SELECTOR='$(SELECTOR_DEFAULT)'" runs all tests for +.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 SELECTOR='\"foo$$\"'" . ** Understanding Emacs Internals.