On 09/02/2011 10:21 AM, Bruno Haible wrote: > Pádraig Brady wrote: >> You can do this: >> >> make check SHELL=bash >> >> I'll document that now. > > If that's the way you wish prereleases to be tested, you can add this also > to the prerelease announcement template.
I'm applying this. cheers, Pádraig. commit 885d7c36562f855fe9dd697eb45c72138bb1279c Author: Pádraig Brady <[email protected]> Date: Fri Sep 2 11:33:42 2011 +0100 doc: describe test control variables * HACKING (Add tests): Mention the variables and default values. * README-release (Pre-release testing): Mention that setting the SHELL variable may be required. Suggested by Bruno Haible. diff --git a/HACKING b/HACKING index 51c4acd..0adec79 100644 --- a/HACKING +++ b/HACKING @@ -430,6 +430,16 @@ as possible. Note to run tests/misc/new-test in isolation you can do: (cd tests && make check TESTS=misc/new-test VERBOSE=yes) +Variables that are significant for tests with their default values are: + + VERBOSE=yes + RUN_EXPENSIVE_TESTS=no + RUN_VERY_EXPENSIVE_TESTS=no + SHELL=/bin/sh + NON_ROOT_USERNAME=nobody + NON_ROOT_GROUP=$(id -g $NON_ROOT_USERNAME) + COREUTILS_GROUPS=$(id -G) + There are hundreds of tests in the tests/ directories. You can use tests/sample-test as a template, or one of the various Perl-based ones in tests/misc. diff --git a/README-release b/README-release index 729ab89..af2610a 100644 --- a/README-release +++ b/README-release @@ -34,6 +34,10 @@ FIXME: enable excluded programs like arch? to get their manual pages? && make distcheck \ && make -j$n check RUN_VERY_EXPENSIVE_TESTS=yes RUN_EXPENSIVE_TESTS=yes + If testing on systems with a non standard default shell, spurious failures + may occur. Often there are other shells available, and you can select + those by using for example, SHELL=bash in the commands above. + Note that the use of -j$n tells make to use approximately half of the available processing units. If you use -jN, for larger N, some of the expensive tests are likely to interfere with concurrent performance-measuring
